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 112Go to page 3Go to page 2
Avatar
pizman82
From: ETSI, Germany
Posts: 6010
Supporter
1. Joybuttons über Mobiflight.
Offset 3340-3363. (Guck dazu die FSUIPC Documentation)
Jedes Dword (4 Byte) entspricht einen Joystick ... also 9 Sticks nummeriert in FSUIPC als Nr 64-73
Diese jeweils 4 Byte beinhalten 4*8 =32 Bit. Und jeder Bit ist somit EIN Joystickbutton.

Willst du also mit einer Taste einen solchen Button simulieren dann wählst du als Device FSUIPC Offset und verwendest genau den des Joysticks deiner Wahl.
Für Joystick 64 wäre das Offset 3340 4 Byte. In der Bitmask siehst du jetzt die kompletten 32 Bit (0-31) .
Willst du z.b. den Button 7 des Joysticks mit deinen Taster im Cockpit steuern, dann löscht du alle Hacken bei der Bitmask raus bis auf den bei Bit 7.
Jetzt sagst du nur noch bei "On Push" setze Wert auf 1 und bei "On Release" nimmst den gleichen Offset und Bitmask und setzt Wert auf 0.
(Natürlich reicht es auch nur den Byte zu laden wo der Button liegt und nicht alle 4.... Aber das kriegste selber raus wenn du dich ein wenig reinarbeitest)

2. Gamecontroller
Ich habe das vor über nen Jahr mal gemacht und 2 Boards geflasht. Liegen seit dem im Schrank :-) Das Programm hies "MegaJoy" bzw "UnoJoy" https://github.com/AlanChatham/UnoJoy/tree/master/MegaJoy . Die Anleitung hat aber damals nicht ganz funktioniert und ich musste mit "Atmel Flip" den Bootloader selber laden. Einfach mal googlen. Ne genaue Anleitung kann ich dir grad nicht geben weils wirklich schon ewig her ist.

3. Lua Basteln
Wie gesagt... Lua selbst hat nix mit dem Joystick zu tun. Du kannst scripts auch mit Offsets steuern oder direkt in FSUIPC eingliedern. Probier es mal. Macht Spass aber ist halt schon ne Hausnummer die man nicht in 3 Stunden nebenbei lernt. :( Zum Testen kannst auch deinen normalen Joystick nehmen und temporär eine Taste verwenden um deine Luaprojekte zu steuern.
Good Luck !
2017-01-14 16:21
Avatar
pizman82
From: ETSI, Germany
Posts: 6010
Supporter
So.... Der Freie Tag ist gekommen :) Sorry das es ein wenig gedauert hat.

Musste für das ganze tatsächlich erstmal ein wenig rausfinden wie die Preconditions bei so "verschachtelten" Aktionen arbeiten. Bin auf interesante Dinge gestoßen aber leider auch auf ein Problem. Aber womöglich auch gut so, da dadurch Sebastian mal schauen kann was da schief läuft bzw ob das so sein soll.

Zu deiner Config:

Ich erkläre es mal grob.... Wenns für dich reicht ok. Falls nicht dann schlick mir bitte eine Email... Pizman@freenet.de. Kann dir im Zweifel auch ne mcc Datei schicken falls nötig.

Du brauchst für das Ganze 6 Config Zeilen im Output Bereich. (Erstelle erst mal alle 6 Zeilen ohne Einträge, damit du die Precondition einstellen kannst, oder füge die Preconditions erst später ein.... Logischerweise kannst du diese erst wählen wenn besagte Config bereits existiert)

1. "GUW Manifold ON" Offset : 0BEC (Nose Gear) 4 Byte INT........ Compare : If Value =0 , THEN 1, Else 0 ....... Device : Deine LED und/oder Alarmgeber
Precondition: 1. "READ Manifold L" kleiner als <18432 Operator AND ............ 2. "READ Manifold R" kleiner als <18432 Operator AND

2. "GUW Flaps ON" Offset : 0BEC (Nose Gear) 4 Byte INT........ Compare : If Value =0 , THEN 1, Else 0 ....... Device : Deine LED (ALLES wie bei Config 1)
Precondition: 1. "READ Flaps" ist =16383

ZUSATZ zu den Compares in Config 1 und 2:
Wie du siehst definiere ich " Wenn Fahrwerk Oben dann Wert 1, Alles ander 0" . Folgerlich geht der Alarm nicht nur aus wenn du Schub gibst, oder die Flaps einziehst.... Er geht auch aus wenn das Gear ausgefahren wird (vermutlich wie in echt auch). Hier kannst du aber noch definieren ob er ausgehen soll sobald das gear ausfährt ODER erst wenn es ausgefahren ist.... Oben verwende ich "If Value =0 Then 1 else 0" was heist auch im Transit (ausfahren) erkennt er das Gear als drausen und deaktiviert den Alarm.
Falls du willst das der Alarm erst ausgeht wenn das Gear ganz draußen ist dann nehme bei beiden Configs als Compare: If Value = 16383 Then 0 Else 1 .... Jetzt ist es für die Warnlampe so, das das gear solange als "Up" gilt bis es komplett ausgefahren wurde.

3. "READ Manifold L" Offset 08C0 2 Byte INT ( Vermutung. Du kennst ja DEINEN Offset. Falls Compare musst du selber wissen ) KEIN Device.... Ist nur ein Vergleichswert.

4. "READ Manifold R" Offset 0958 2 Byte INT ( ebenfalls Vermutung. Wäre der Gegenwert zu Config 3 für das rechte Triebwerk) KEIN Device

5. "READ FLAPS" Offset 0BDC 4 Byte INT KEIN Device

6. " GUW OFF" Offset EGAL ( Wir brauchen einen Fake Wert für diese Config der immer 0 ist. Ich verwende dafür irgendeinen Offset 1 Byte . (Oder z.b. den vom Gear 0BEC)
Im Compare sagst du If Wert= 0 Then 0 else 0 Somit ist er IMMER Null !
Als Device verwendest du wieder die besagte LED die du auch in den Configs 1 und 2 hast.
Precondition :
1. "READ Manifold L größer als >18432 Operator OR ......... 2. "READ Manifold R größer als > 18432 Operator AND ...... 3. "READ Flaps" kleiner als <16383 Operator OR
(Übersetzt... Arbeite wenn Flaps nicht Ausgefahren oder wenn mindestens 1 von 2 Manifold über der Schwelle)

Grob Zusammengefasst....
Config 1 lässt deine LED leuchten wenn BEIDE Triebwerke unter der Schwelle sind, Gear Up ist und Flaps nicht wzingend auf Full
Config 2 lässt deine LED leuchten wenn Die Flaps auf Full sind, Gear Up und deine Manifold aber trotzdem Ok wäre.
Falls sowohl Flaps als auch Manifold beider Engines zutreffen arbeiten beide Configs gleichzeitig (Was aber Mobiflight nicht stört)
Config 6 ist zuständig, das die LED ausgeschaltet wird sobald keine der Config 1 und 2 aktiv arbeiten .
Theoretisch schalten auch Config 1 und 2 parallel die LED aus wenn z.b. Flapps Full und Gear Down zutrifft... Aber auch das ist Mobiflight egal.

In meinen Testlauf hats geklappt.... Aber ich hatte nicht die Originaloffsets sondern hab mit Testwerten gearbeitet....
Melde dich ob es geklappt hat !


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

Zu den "Entdeckungen über Preconditions" mache ich später einen neuen Thread..... das wäre jetzt OT.

lg. Pizi
Good Luck !
2017-01-18 20:45
Avatar
avidflyer
Posts: 138
Vielen Dank!!!!!!!:w00t: :thumbup:

Kann leider erst am Wochenende Testen melde mich aber umgehend .

Das ist super und echt umwerfend, dass du deine Zeit für mich aufgewendet hast. Vlt kann ich mich ja mal revanchieren.

Lg Christian
2017-01-18 22:11
Avatar
DocMoebiuz
Moderator
From: EDSH, Germany
Posts: 1516
Pizman ist echt super!
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-01-20 04:37
Avatar
avidflyer
Posts: 138
Hello Pizman,

Es läuft leider nicht. Ich habe dir mein mcc und screenshots via mail zugesandt.

Grüsse Christian
2017-01-21 14:02
Avatar
pizman82
From: ETSI, Germany
Posts: 6010
Supporter
Servus Christian

Habe deine Mail bereits gestern erhalten..... Die Config verbessert und an dich mit neuer mcc zurückgesendet. (20.01.17 16.20 Uhr) Bitte check ob dein Spamfilter vielleicht dicht gemacht hat.
Sollte eigenltich jetzt passen..... Hab auch dazu geschrieben wo das Problem war.

Falls sie nicht angekommen ist sag bescheid dann sende ich nochmal.

Lg.
Good Luck !
2017-01-21 14:09
Avatar
avidflyer
Posts: 138
Hallo Pizman,

es funktioniert! Vielen Dank für deine Unterstützung!!!:thumbup:

Ich habe gerade eben mit einem Laptop mit FSX und einer Mega + LED getestet. Erst wolltes es nicht laufen aber nachdem ich den Outputpin gewechselt habe (von 13 auf 12) ging es ohne Probleme. Versuche es am WE in mein PiT zu integrieren.

Grüße Christian
:thumbup: :lol:
2017-01-23 18:26
Go to page 1Go to page 112Go to page 3Go to page 2