Welcome to the forum for MobiFlight! Feel free to reach out to the community in case you have questions, issues or just want to share great ideas or details about your latest home cockpit project.
You like MobiFlight? Donate via PayPal and support the MobiFlight development. Thanks!
05/03/2024 - This forum is read-only
The community support for MobiFlight has moved exclusively over to our Discord server. Register for free and enjoy more interactive functions like image and video upload, voice chat. More than 7,000 registered users around the world make it a great experience!
A HUGE Thank You to everyone who participated in the forum, especially obviously to Pizman and Stephan who did an outstanding job over so many years providing an incredible service to the MobiFlight community.
The forum is still providing a lot of good content, hence we keep this information accessible.
Hallo,
aufgrund Schlechtwetter habe ich heute wieder einmal ein bißchen "gebastelt" und stehe jetzt auf der Leitung:
OUTPUT Offset 56CB - 1 Byte - (Wenn 1, dann 1 sonst 0)
funktioniert perfekt, sobald ich die entsprechende Taste drücke schaltet sich wie vorgesehen die LED "FAULT" ein.
Allerdings sollte es kurz nach dem Triebwerksstart erlöschen - ich setze also eine Vorbedingung zu folgendem Config-Eintrag: ENG _1_JET_N1 = 0 - da dieser output (ENG _1_JET_N1) das Offset 0898 (2 Bytes) ausliest - und dort steht: Vergleichen < 300 setze 0, sonst 1.
Auch hier klappt zunächst alles: Zuerst ist der Ausgabe-Wert auf 0 (solange der fsuipc-Wert unter 300), nachdem die Triebswerksleistung 300 überschreitet, wechselt der Wert auf 1 - jetzt müßte doch die LED von OUTPUT Offset 56CB ausgehen, da dessen o. a. Vorbedingung nicht mehr erfüllt ist ?!?!? Tut es aber nicht!
Komme derzeit nicht weiter! - Hoffe das war halbwegs verständlich!
Gruß
Günter
P.S. wenn ich aus dem Output ENG _1_JET_N1 eine LED direkt anspreche, geht es: unter 300 ist es aus, darüber an ?!
Hi
Erstmal bitte beim nächsten Request sagen worum es geht..... Hab mit google mal rausgefunden das es um Wilco Airbus gehen müsste . Hoffe das stimmt !
Da ich kein Airbus Spezialist bin weis ich nicht genau was du mit deiner LED darstellen willst.....
Ich vermute mal du willst den FAULT Anaunciator darstellen.... Also wenn Fault dann soll die LED dieser Config leuchten.... wenn kein Fault dann soll sie ausgehen.
Falls das so stimmt dann denkst du viel zu Kompliziert und du musst dafür auch nicht 0898 comparen oder als Precondition nehmen.....
56CB :::::: BYTE 1:::::R Gen 1 Status
Bit 0: ON/OFF
Bit 1: FAULT
Corresponds to the following values:
0: OFF, No fault (00)
1: ON, No fault (01)
2: OFF, FAULT (10)
3: ON, FAULT (11)
Somit 2 Möglichkeiten:
1. Mit Compare.....
Fault ist laut beschreibung an wenn der Wert 2 oder 3 ist.....
Also Compare "Wenn 1 dann 0 sonst $" Somit.... 0=0...1=0...2=2...3=3 ( Die LED arbeitet auch wenn der Wert mehr als 1 ist.... Alles was Positiv ist bedeuted AN)
Du könntest zum besseren verständnis auch sagen "Wenn Größer Eins >1 dann 1 Sonst 0" Dann Wäre 0=0...1=0...2=1...3=1. Komt auf das gleiche raus.
Ergebnis.... Fault muss an sein bei Wert 2 oder 3 ...... Mit diesen Compare erreichst du genau das.
2. Bitread
Wie im Handbuch beschrieben ist der 1. Bit ( Bit-0) des Offsets der Status ON/OF und der 2. Bit (Bit-1) ist der Status ob Fault oder nicht Fault.
Somit müsstest du schlicht eine Bitmask machen und nur den 2. Bit ( Bit-1) auslesen.
Ist Fault an, dann ist dieser Bit "1".... Ist kein Fault an dann ist dieser Bit "0"
****************
Falls ich deine Planung falsch verstanden habe und du was ganz anderes mit der LED anzeigen wolltest dann erkläre bitte GENAU was sie machen soll. Dann kann ich dir helfen.
PS..... hab vergessen deine eingehende Frage zu beantworten:
Dein System funktioniert deshalb nicht, weil du keine "Off Config" hast......
Eine LED muss immer (zu jeder zeit) von einer Config gesteuert werden....
In deinen Fall geht die LED an wenn du aus dem Wilko Offset die Info kriegst.
Du hast aber keine Config die die LED wieder abschaltet..... Nur weil deine Config die sie anmachte jetzt plötzlich Inaktiv ist kann deine LED leider nicht ausgehen.....
Die LED bleibt solange an bis diese ( oder eine andere Config) ihr SAGT das sie ausgehen soll.
Somit Merksatz: Eine LED Ausschlaten indem man schlicht die aktive Config per Precondition deaktiviert geht nicht.... Es muss über eine Config gemacht werden.
Da ich keinen Wilco habe muss ich mich mit den Google treffern begnügen.... Natürlich keine Ahnung wie aktuell die Liste ist die ich da gefunden habe.
Melde dich einfach ob es klappt.
Wenn du mit Preconditions und einer On bzw OFF Config abreitest ist das OK.... Bedenke aber das je mehr Configs du machst das System Komplexer wird.
Ich persönlich arbeite da etwas konservativ und versuche Configlines so weit es geht zu sparen.
Ich kann also nur Empfehlen in obigen fall lieber mit einer Zeile zu arbeiten anstatt mit 3 Configs und Preconditions. ABER. Grundsätzlich arbeitet es auch so wie du es gemacht hast.
Bei Displays haben wir die gleiche Logik....
Zeigt eine Config einen Wert X auf ein Display und du deaktivierst diese, dann bleibt de letzte gesendete Wert auf dem Display stehen bis du etwas neues sendest.
Auch hier arbeitet man dann mit 2 Configs....
Eine Read Config benötigen wir für den Status ob das Display an oder aus sein soll..... zb. den master Battery switch oder einen Blank Offset wie in der PMDG
Config 1 liest z.b. den Wert aus dem FSX und stellt ihn auf dem Display dar.
Config 2 Sendet an das Display "Leerzeichen" so viele wie stellen benutzt werden.... Leerzeichen heist für das Display die Stelle BLANK zu machen
Auch hier wieder jeweils ne Vorbedingung.... Die Originale arbeitet wenn Battery an ist.... Die Duplizierte Blank Config arbeitet wenn Battery aus ist
Also das gleiche Prinzip wie bei der LED..... Deaktivierst du die Config per Precondition MUSS eine andere Aktiv werden die dem Display sagt das es NICHTS anzeigen soll.