MobiFlight Community Support

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!

See you on our MobiFlight Community Discord server.

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.

Go to page 1Go to page 012Go to page 2Go to page 2
Avatar
Boby
Posts: 14
Hallo liebe Freunde,

Ich habe meine PMDG 737 MCP mit Arduino soweit fertig, alle Schalter und Led mit MF Conektor programmiert. Funktioniert alles gut. Jetzt bin ich dabei alle 7 Segment Led mit Arcaze zum leuchten bringen.
Da brauche ich Euere Hilfe. Ich bin kein Programmierer!
Kann jemand kurze Anleitung schreiben mit welchen Offsets, Vorbedienungen u.s.w. die Encoder und 7 Segment Led für MCP programmieren sein sollten.
Das wehre sehr lieb und hilfreich.

Danke für Ihre Unterstützung.

Danke
Ivan
2016-01-14 10:54
Avatar
pizman82
From: ETSI, Germany
Posts: 6010
Supporter
Hiho.

Ich nutze leider kein Arcaze sondern mache meine 7 Segmenter mit Max7219 und Arduino.

Ich kann dir also nicht helfen wie du deine Displays im Conector anwählst und verkabelst.....

Aber ich kann dir bei Bedarf meine Configeinträge, Offsets und Vorbedingungen hier auflisten.
Grundsätzlich ist das kein Problem. Falls du es "sehr" realistisch willst musst du aber ein wenig Zeitaufwand mitbringen, da man dann eine Handvoll Vorbedingungen mehr braucht !

Sag bescheid obn du das willst dann such ich es dir die Tage raus !
Good Luck !
2016-01-14 13:48
Avatar
Boby
Posts: 14
Hallo pizman,
Arcaze ist angeschlossen und Segmente leuchten. Ich brauche die Configeinträge und ich will das realistisch haben,die Liste wehre sehr große Hilfe für mich.
Vielen Dank für die mühe.
Gruß
Ivan
2016-01-14 15:58
Avatar
pizman82
From: ETSI, Germany
Posts: 6010
Supporter
Ok. Wird ein längerer Text. Ich versuchs heute nacht noch zu erledigen. Hab etz einen Termin !
Good Luck !
2016-01-14 16:42
Avatar
pizman82
From: ETSI, Germany
Posts: 6010
Supporter
Hiho.

Vorweg... 2 Dinge sind meines Wissens aktuell nicht umsetzbar....
1. Das Blinkende A bzw B bei der Speedanzeige. Der Buchstabe kann simuliert werden.... das blinken nicht.
2. Das "+" Symbol bei positiver Vertical Speed. Das Minus geht... Das Plus kann mit 7 Segmenten nicht dargestellt werden.

Wie gewünscht die vermutlich realistischte Umsetzung....

********** Die Einfachen

Course Links:
Offset 6520 , 2 Bytes INT Multi 1 , 3 Stellen, Left Padding JA - NULL , Kein Vergleich, Keine Vorbedingung

Course Rechts:
Offset 6522 , 2 Bytes INT Multi 1 , 3 Stellen, Left Padding JA - NULL , Kein Vergleich, Keine Vorbedingung

Heading:
Offset 652C , 2 Bytes INT Multi 1 , 3 Stellen, Left Padding JA - NULL , Kein Vergleich, Keine Vorbedingung

Altitude:
Offset 652E , 2 Bytes INT Multi 1 , 5 Stellen, Left Padding JA - SPACE
Da PMDG die Höhe nur bis 32600 Fuß ausgiebt und danach der Wert Negativ wird brauchen wir hier einen Vergleich:
WENN Wert Kleiner Null " < 0 " DANN Wert Plus 65536 " $+65536 " SONST Wert " $ "

********* Etwas Komplizierter

Vert Speed:
Offset 6530, 2 Bytes INT Multi 1 , 5 Stellen, Left Padding JA SPACE
VS hat Zwei Schönheitsfehler.... Zum einen wird das Display nicht Blank nachdem man VS wieder deaktiviert sondern er zeigt dauerhaft -1696 an.... Zum anderen wird bei Null nur "0" angezeigt und nicht wie in der PMDG "0000"
Beide Dinge kann man einzelln über einen Vergleich abstellen (Aber nur EINS zur gleichen Zeit) Will man beide "Fehler" bereinigen braucht man einen zusätzlichen Configeintrag.

A: Die 2 Vergleiche
Entweder für Blank : WENN Wert Kleiner al Minus 10000 " < -10000 " Dann setze 5 Leerzeichen "Bei Dann setze einfach 5 mal Space drücken" Sonst Wert "$"
Oder für die 0000 : Wenn Wert ist Null " =0 " Dann setze 4 Nuller " 0000" Sonst Wert "$"

B: Um Beide "Fehler" zu beheben....
Zuerst einen Zusätzlichen configeintrag...
VS BLANK
Offset 6532 1 Byte INT , Multi 1 , 5 Stellen Left Padding NEIN (Diesen Eintrag für das gleiche Display und die gleichen Stellen wie VS)
Vergleich: Wenn Wert Ist 1 " =1" dann setze 5 Leerzeichen "Bei Dann setze einfach 5 mal Space drücken"
Vorbedingung Nur Anwenden Wenn Config Eintrag von VS (Name hast du selber Bestimmt) Kleiner als Minus 10000 "< -10000"
Weiterhin muss im Original VS Configeintrag folgendes eingefügt werden ....
Vergleich : Wie Oben beschrieben für die Nuller .... Wenn Wert ist Null " =0 " Dann setze 4 Nuller " 0000" Sonst Wert "$"
Vorbedingung : Nur Anwenden wenn 2. "VS BLANK" Configeinrag gleich Null ist "=0"

Jetzt regelt der 1. Eintrag die vier Nuller und der 2. Eintrag Deaktiviert das Display sofern VS nicht an ist !



***** Und jetzt zum Sorgenkind der IAS Mach Anzeige.
Hierfür benötigen wir Grundsätzlich ZWEI Configeinträge. Falls du auch Willst das die Anzeige wie in Echt aus geht sobald VNAV an brauchen wir VIER. Wenn auch das A bzw B für Over und Underspeed Angezeigt werden sollen brauchen wir SECHS !

Zuerst die 2 Grundeinträge:
IAS:
Offset 6524 4 Byte Float Multi 1 , 3 Stellen Left Padding NEIN
Vorbedingung : (Dafür musst du erst den folgenden Eintrag erstellt haben) Nur Anwenden wenn MACH Configeintrag Größer als 1000 " >1000"

MACH:
Offset 6524 4 Byte Float Multi 1000 (TAUSEND) , 3 Stellen DEZIMALPUNKT an der Linken der 3 Stellen , Left Padding JA - SPACE ( Hier das gleiche Display und Stellen wie bei IAS)
Vergleich Wenn Wert Größer Null ">0" dann setze Runden Klammer - Wert durch 10 - Komma Null - Klammer " Round($/10,0) " Hiermit wird der Kommawert des Offsets in eine Gerundete lesbare Zahl auf das Display gebracht !
Vorbedingung : Nur Anwenden wenn IAS Configeintrag kleiner als 10 "< 10" .

**
Jetzt die Blank Funktion das das Display Leer ist wenn VNAV Angeschalten wird....
1. Eintrag für Blank:
Offset 6528 1 Byte INT Multi 1 3 Stellen (Falls du auch das Over Underspeed Willst VIER Stellen) Left Padding JA SPACE
Als Display und Stellen das gleiche wie bei IAS Mach verwenden. (Bei 4 Stellen zusätzlich die Display Stelle nehmen wo die Overspeed Warnung gezeigt werden soll)
Vergleich: Wenn Wert ist 1 "=1" dann setze 4 Leerzeichen "Bei Dann setze einfach 4 mal Space drücken"
Vorbedingung : Nur Anwenden wenn "Pseudo Blank Eintrag" (Den ich gleich erkläre) Wert ist 1 "=1"

2. Eintrag für "Pseudo Blank"
Offset 6528 1Byte INT Multi 1 Keine Displayzuweisung, Keine Vorbedingung oder Vergleich. (Dieser Wert dient nur für einen Verlgiech bei den anderen Einträgen)

Zu guter Letzt musst du nun noch bei den Originalen IAS und bei dem MACH Configeintrag eine zweite Vorbedingung einfügen....
Jeweils zu der bestehenden Vorbedingung fügst du bei BEIDEN mit dem Operator "AND" noch ein ... Nur Ausführen wenn "Pseudo Blank" ist 0 "=0"

Jetzt hast du eine Duale Speedanzeige für IAS und MAch auf einen Display, das ausgeht wenn VANV an ist.

*
Als letzten Schritt kannst du noch das Over und Underspeed integrieren.

Overspeed:
Offset 6529 1 Byte INT Multi 1 1 Stelle Left Padding NEIN ( i.d.R. 1 Stelle Links von der Speed Anzeige)
Vergleich : Wenn Wert ist 1 "=1" dann setzte Acht "8" SONST setze Space ( 1x Leertaste)
Vorbedingung: Nur Anwenden wenn "Underspeed" Configeintrag (Wird gleich erklärt) Ungleich A " !=A"

Underspeed:
Offset 652A 1 Byte INT Multi 1 1 Stelle Left Padding NEIN ( Das Gleiche Display wie Overspeed)
Vergleich : Wenn Wert ist 1 "=1" dann setze A "A" SONST setze Space (1 x Leertaste)
Vorbedingung: Nur Anwenden wenn "Overspeed" Configeintrag Ungleich 8 "!=8"

**********************

Bei mir passt alles. Hoffe du hast alles verstanden und kannst das umsetzen.
Bei Fragem melde dich !


PS: Falls Sebastian oder die anderen PMDG Profis diese config als "gut" befinden und ich das so richtig gemacht habe dann könnte man dieses "Preset" vielleicht irgendwo einbinden bzw als Turtorial verwenden. Gibt sicher viele PMDG nutzer die das auch brauchen. Bin auch gerne Offen für Verbesserungen!
[Last edited by pizman82, 2017-09-08 16:15]
Good Luck !
2016-01-15 02:44
Avatar
Boby
Posts: 14
Hallo Piznamm,
ich muss mich bei Dir sehr bedanken für deine großartige Anleitung. Das Du das so schnell und noch um 2 Uhr Morgens geschrieben hast, finde ich großartig!!!!!
Mit Sicherheit kann der Sebastian dein Arbeit als Tutorial oder sogar als fertiges Modul für PMDG benutzen und anbieten.

VIELEN DANK
Gruß
Ivan
2016-01-15 09:01
Avatar
DocMoebiuz
Moderator
From: EDSH, Germany
Posts: 1516
Ich würde mich freuen, wenn wir untereinander schon die fertigen Configs austauschen könnten.

Wir können auch Presets erweitern.
Einerseits die FSUIPC Default Offsets. Aber auch für andere Flieger.

Ich würde mich sehr über Eure Unterstützung dabei freuen.

Vorschläge:
PMDG
Jeehell
A2A Cessna
iFly 737

Ausserdem wäre es perfekt, wenn wir sogar komplette Configs inklusive der für das Board teilen.

Da ich nicht alle Addons habe wäre es cool, wenn wir uns da gegenseitig austauschen.
Have a great day!
Sebastian

MobiFlight - Simply build your own home cockpit for your favorite flight sim - MSFS2020, FSX, Prepar3D (FSUIPC), X-Plane (XPUIPC)
2016-01-15 13:05
Avatar
pizman82
From: ETSI, Germany
Posts: 6010
Supporter
@ Boby

keine Ursache ! Bin eh ein Nachtmensch !

@ Sebastian

Grundsätzlich eine gute Idee. Würde mich da auch gerne einbringen wenn auch mein Wissen noch ziemlich am Anfang steht.

Bei allen Vorteilen die Configs und Presets haben sollte man aber bedenken, das das ganze HC Thema ziemlich individuell ist. Eine Config für das Board halte ich für wenig Sinnvoll. Ich verarbeite z.b. viele Flachbandkabel und belege meine Pins nach der Steckerlogik. Denke die Device Belegung des Boards würde kaum jemanden nützen,da wohl jeder sein eigenes Verkabelungsprinzip hat.
Auch Presets für Dinge wie die IAS Mach Anzeige sind schwer.... Gibt Zig Kombis wie man das machen kann. Wenn dann würde ich eine Config wie die Obere eher als "Example" ansehen wo sich jemand dann die Elemente die er will abschauen kann bzw die man nach den eignen Wünschen modifiziert !

Zusätzlich zu Configs teilen bzw als Download bereitstellen und überarbeiteteten Presets würde ich mich auch für ein sehr ausgiebiges Turtorial stark machen.
Denkbar wäre es z.b. das MCP der PMDG737 komplett als Schritt für Schritt Anleitung zu veröffentlichen. Mit Offsets und Configs für jeden Schalter bzw Output.
Denke da wäre alles bis auf Stepper und Servo dabei und ein Anfänger würde dabei viel lernen und verstehen.... Besonders was Vorbedingungen und Vergleiche angeht !

MFG
Good Luck !
2016-01-16 00:49
Avatar
gtr
Posts: 24
Hi Pizaman

Pls give us some more light about VS BLANK Offset 6532 1 byte INT.

i try this code+6530 or just 6532 for blank and i get the number 1696 insted of turning the display off.

pls advice

regards
guy
2017-04-06 23:47
Avatar
gtr
Posts: 24
Hi all

OK,

offset 6530
byte 2
mask 0xffff
multiply by 1

compre

if current value is < -10000

set it to (hitiing space bar 5 times )

i mange to make it work whean v-spd turns OFF also the display turns OFF but when i turn v-spd ON at the pmdg 737 its shows "0000" and my display show just one zero,other numbers working fine include the minus sign but no plus sign.

how can i make 4 zeros when v-spd turns ON ?
[Last edited by gtr, 2017-04-07 14:00]
2017-04-07 10:33
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 6010
Supporter
Hi Guy....

I see you found the german guide i told you :P

Short translation....

VS Speed got 2 Problems...
1: It not go Blank by itself and show -1696 instead of blank.
2. it shows 0 instead of 0000 like in PMDG.

With a comapare you can FIx only ONE of this 2 Problems same time .
Fix Blank: IF Value < -10000 the "5 times Space" ELSE $
Fix Zero: IF Value = 0 then 0000 ELSE $

To fix both same time you need to make a second config and use Preconditions for this

Second Config:
Name for example " VS Blank"
Offset 6532.... 1Byte.... INT No Transform ..... Display Setting Left Padding NO ... ( Same Display and Diggits like the Original VS Config)
Compere: If Value = 1 THEN " 5 Times Space"
Precondition: ONLY WORK if : Standard VS Config < -10000 ( Less then MINUS 10000 )

The original Config must be modified....
Compare for the Zeors ( IF Value = 0 then 0000 ELSE $ )
Precondition: ONLY WORK IF : VS BLANK Config = 0

Now the Original Config manage the 0000 Problem..... And is Disabled if Display shoold be blank... The Second Config is Working if Display should be blank and use 5 time Space to set it blank all the time !


Hope this helps !
Good Luck !
2017-04-08 01:42
Avatar
gtr
Posts: 24
hi pizaman

thank you for your replay,

let me see if i understand this....

for display OFF
offset 6530
byte 2 int
compare , if <-10000 than set to 5 times space bar else set to $

for "0000" display

i add another line with
offset 6532
byte 1 int
compare. if = "0" set to 0000 else set it to $
precondition. type "config item" ,if current value is = 0
apply,

its not realy working for me,what im doing wrong?

regards
guy
[Last edited by gtr, 2017-04-08 18:33]
2017-04-08 18:27
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 6010
Supporter
No.
Please do the workflow i told you above.... With these 2 Config solution the FIRST Config must be used for the "Zero Compare"
The Seccond ( With Offset 6532 MUST used for the "Blank" And both must have a precondition that only one config is active same time

BUT... I think at the moment if we can get this work by a ELSEIF in the Transform field... ( the Transform was not availibe in Mobiflight when i write the guide above)

I´m not on my FlightSim Computer at the moment and can´t test this.....
If you like you can try out this formula in the Transform field of the Basic Display Config ( Offset 6530 .. 2 Byte)
Transform : if($<-10000,#####,if($=0,0000,$))
(Get Shure there are 5 Space instead of the # between the decimal after 10000 and the Decimal before the second if. I Can´t write space Signs here in Forum)

AGAIN: Nor shure if this work.... Maby yes... If not use the way i show you above... this workes 100%
Good Luck !
2017-04-09 21:42
Avatar
gtr
Posts: 24
hi pizaman

i follow your steps,

6532 , byte 2 with transform "($ < -10000, #####, if ($ = 0.0000," gives "0000" but mobiflight dont want to "run" ,i press the the mobiflight "run/play" button and it works for split second and stop.like there is conflict some where in the two lines (6530,6532)

pls advice

regards
guy
2017-04-10 07:59
Avatar
DocMoebiuz
Moderator
From: EDSH, Germany
Posts: 1516
There is an "if" missing at the beginning in front of the first bracket.

There is also a bracket missing at the end.

Please try first the other method that pizman suggested. The one with the preconditions. It would be easier.

If you wanna follow the second approach with the formula make sure you got the right syntax.

if(TEST, TRUE Case, FALSE Case)
[Last edited by DocMoebiuz, 2017-04-15 23:20]
Have a great day!
Sebastian

MobiFlight - Simply build your own home cockpit for your favorite flight sim - MSFS2020, FSX, Prepar3D (FSUIPC), X-Plane (XPUIPC)
2017-04-15 23:10
Go to page 1Go to page 012Go to page 2Go to page 2