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! 

Go to page 1Go to page 012Go to page 2Go to page 2
Avatar
Reensel
From: Berlin - EDDB, Germany
Posts: 17
Hi Leute.

Ich bin derzeit dabei mein Auto Brake Panel zu finalisieren - z.T. mit OEM Bauteilen wie alle 4 Korrys und OEM Auto Brake Switch.

An sich läuft alles ABER:

1. Inputs bleiben zum Teil aus - hier fand ich einen Lösungsansatz mit dem "Logging aktiviert" und DEBUG - ich glaube so funktioniert es tatsächlich besser ODER gibt es da noch eine Alternative?

2. Ab einem bestimmten Zeitpunkt fängt er an wie wild das zu "loggen"
10.06.2019 19:50:27(659): FSUIPC2Cache: skipping Process(), last read (6) less than 90
10.06.2019 19:50:27(475): FSUIPC2Cache: skipping Process(), last read (11) less than 90
10.06.2019 19:50:27(277): FSUIPC2Cache: skipping Process(), last read (8) less than 90

UND das die ganze Zeit - d.h. die In und Outputs werden mit Zeitversatz executed - Ich weiß ehrlich nicht was der da macht, ist auf jeden Fall ein Performance blocker :-/ Siehe Bild



3. Für die OEM Korrys nutze ich ein 4-Channel Relais Board mithilfe von Outputs. Ist der Weg so korrekt? Denn diese prinzipiell immer scharf geschalten (also AN :) und ich kann diese nur via VERGLEICHEN im Ruhezustand ausschalten (WENN = 0 DANN 1 SONST 0).
Ist das prinzipiell so bei Nutzung von Relaisboards?

PS: NIcht wundern über die OFFSETS die ich nutze - ich habe ProSim und nutze "erfundene" Offsets zur Kommunikation mit Mobiflight.

Danke im Voraus
[Last edited by Reensel, 2019-06-10 20:03]
2019-06-10 19:55
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 2958
Supporter
Servus.

1.Relais.

Ich kenne deinen Schalter jetzt nicht und kann mir den grad auch nicht vorstellen.... Dazu müsstest mal nen Link setzten bzw genau erklären warum du hier Relais baust und wa dieser "Vergleich" genau soll.
Da du dich eher fortgeschritten anhörst denke ich du wirst schon wissen was du machst. Vermutlich stehe ich nur auf dem Schlauch und kanns mir grad nicht vorstellen.

2. Zu den Missing Events.

Mobiflight hat seit vielen Jahren ein komisches Problem das offenbar nur einen Teil der User betrifft. Wir wissen bis heute nicht woran es liegt. Ich sage an der Systemleistung oder einen bestimmten Part davon.... Seb denkt eher es ist ein PlugIn wie die RuntimeDll oder sowas. Unabhängig davon ist es aber da und verursacht bei 20-30 % der User "missing Inputs" .
FRÜHER war die Paradelösung den Logging Mode an zu stellen. Das Löste das Problem..... Die Outputs waren davon nicht betroffen..... Nur die Encoder gingen damit nicht mehr perfekt.
Um das zu lösen kam im Januar ein Patch.
JETZT darf man den Logging Mode nicht mehr verwenden. Dieser führt zu masssiven Lags in den Outputs.
Aktuell soll man den Log Mode deaktivieren und den FSUIPC Poll Wert auf ein LEvel setzten bei dem die Fehler nicht mehr kommen.
Bei mir sind es 400. Bei Seb gehen auch 100 und 200..... Stephan hat glaub ich 300.

Bitte probiere das aus..... Also Logging OFF .... Polling auf XXX

Schreib obs geholfen hat.
Good Luck !
2019-06-11 06:31
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 2958
Supporter
UPDATE:

Ganz vergessen noch was zu den Offsets zu sagen....
iconReensel:


PS: NIcht wundern über die OFFSETS die ich nutze - ich habe ProSim und nutze "erfundene" Offsets zur Kommunikation mit Mobiflight.



VORSICHT:
Ganz so einfach wie du es dir machst ist es nicht !

Du kannst zwar bei ProSim die Offsets selber festlegen ABER du darfst hier nicht einfach welche "erfinden" wie du es nennst.
FSUIPC erkennt nicht das du ProSim nutzt und ordnet sich nicht "unter" dieses PlugIn.
Das heist wenn FSUIPC z.b. Offset XYZ als Schreibgeschützt intern festlegt dann kannst du diesen nicht beschreiben. Wenn FSUIPCeinen OFfset aktiv nutzt dann kannst du zwar unter umständen schreiben aber FSUIPC resettet ihn danach wieder.

Somit: Du darfst/sollst in ProSim selber Offsets vergeben.... Diese müssen aber gezielt ausgesucht werden nach dem Standpunkt ob sie "Frei" sind.
Nutze am besten mit der ProSim den Bereich ab 66C0 ( Offizieller freier Bereich) ODER nutze die PMDG Range . Da du ja Prosim Nimmst hast du in dem Moment keine PMDG aktiv.... Folgerlich ist der Bereich den PMDG nutzt in dem Moment leer.
Good Luck !
2019-06-11 06:48
Avatar
Reensel
From: Berlin - EDDB, Germany
Posts: 17
Moin,

1. Relais ist für das Betreiben der OEM Korry wo man sonst eigentlich nur 5V LED nutzt - die OEM Korry laufen mit 28 Volt und ich muss diese gegen GND schalten.

In diesem Bild sieht man die Schaltung in der Mitte (Type 1) - der Anschluss (2) wird via GND geschaltet.


Und wenn ich die Relais via LED Output ansteuere sind sie prinzipiell alle geschaltet bei einem FSUIPC Value von "0" - daher kehre ich das mit der Vergleichen Funktion um, sodass wenn Value 0 ist er 1 setzen soll sodass das Relais entlastet ist und nur bei ei 1 schaltet was durch die Vergleichen Funktion auf 0 gesetzt wird (demnach geschaltet wird)

ODER gibt es ggf. einen besseren Weg als mit Relais? :) Wahrscheinlich nicht wegen den 28Volt oder?

Hier mal ein Bild von der Rückseite - das ganze Auto Brake Panel verschlingt tatsächlich 29 Inputs, 4 Outputs und 2 Servo - das sind wie beim Original so ziemlich alle Funktionen dann. Die meisten Inputs verschlingen die N1 und SPD Ref Rotarys mit dem Springload to the middle Einstellknob welcher 2 Geschwindigkeiten je Richtung inne hat.



Hier mal ein Vergleich des Backlights - OEM (rechts) vs. Autobrake Replica Panel - hat ein wenig gedauert bis ich fast das gleiche Ergebnis hatte :) (Orange Folie und Diffusor Folie)


2. zu den Inputs - hat soweit erstmal geklappt. Hatte mit deiner Empfehlung soweit keine Aussetzer :) Werde ich beobachten

Liegt es evtl. an den Mega Board Varianten? GGF funktioniert es immer mit einem Originalen Arduino und mit Nachbauten (was ich auch nutze von Elegoo) weniger.
[Last edited by Reensel, 2019-06-11 11:08]
2019-06-11 09:45
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 2958
Supporter
Hi again.

Das mit den Boards ist nicht der Grund.
Bei besagten Problem lässt sich nachvollziehen das eigentlich IMMER alle Inputs bei Mobiflight ankommen. Das Problem ist die Schnittstelle zu FSUIPC. Wenn man keine Outputs hat ( War früher mal so) dann gab es keine Probleme. Da wir aber auch bei Inputs gleichzeitig Outputs haben ( Wir lesen ja den Offset vor dem Schalten um z.b. $+1 zu sagen.... Somit muss $ erstmal durch einen READ definiert werden) kommt es zu Problemen.

Offenbar wird ein Input nicht an FSUIPC sauber übermittelt (bzw dort ausgeführt) wenn in der gleichen Millisekunde ein Read gemacht wird.
Sebastian hat das aktuell gelöst indem er die Reads unterbindet wenn ein Input kommt..... Das hat aber bei einen Encoder den blöden Nebeneffekt, das eben keine Reads mehr kommen weil dieser ja zig Inputs pro Sekunde schickt..... Und dadurch hängen die Outputs eben nach.

Desto schneller das Polling desto eher wird wieder gelesen (Teils zwischen den Inputs) ..... Somit ist aktuell die Lösung hier einen guten Wert zu finden.
Wir hoffen aber (In zusammenarbeit mit Pete Dowson) hier eine perfekte Lösung in Zukunft zu finden.


******
Zu den Relais.

Jepp. Wenn du echte Korrys hast ( By the Way Kompliment.... Sau teuer die Teile) und die arbeiten über 5v dann brauchst ein Relais.
Aus sicht von Mobiflight ist es egal ob du eine LED oder ein Relais steuerst. Somit ist der Weg korrekt.

Stephan kann vielleicht was zu der 1/0 Logik sagen. Bin kein Elektronik Freak.... Womöglich hast du im bezug auf "öffner" und "schließer" nur die Falschen Relais. Zumindest meine ich mal welche gehabt zu haben (bei nen User Problem) die bei "1" den Kreis geschlossen haben und bei "0" unterbrochen.
Unabhängig davon..... Die Logik mit if($=1.0.1) passt. Ist zwar etwas Rechenleistung" aber stellt kein Problem dar.

*****
Zu den Drehschaltern.

Hier kenn ich mich auch elektrisch weniger aus und ich verstehe nicht ganz was du mit 2 Geschwindigkeiten meinst.
Aber auch egal solange es klappt.
Bei Standardschaltern kann man Pauschal sagen du brauchst pro Stellung einen Pin.
Somit komm ich auf weniger Inputs. Grob überflogen 22
Good Luck !
2019-06-11 14:33
Avatar
Reensel
From: Berlin - EDDB, Germany
Posts: 17
Hi.

Danke für die Antwort.

Diese Drehschalter sind im Kern normale Drehschalter mit max 8 Stellungen also 45 Grad für die großen Knobs (BLAUE Pfeile) und einen x-beliebigen Rotary (wo man dann die Feder und Kugeln raus macht) für die kleinen Knobs (SCHWARZEN Pfeile)
Hintergrund ist, dass wie bei einem OEM Schalter der kleine Knob dazu da ist eine Verstellung vorzunehmen (Ähnlich wie bei einem Rudder Panel Knob - der Riesen große um das Ruder manuell nach links oder rechts zu verstellen). D.h. einmal den Wert zu minimieren (Drehung nach links) oder zu maximieren (Drehung nach rechts) - schwarze Pfeile. Dieses minimieren und maximieren kann in 2 Stufen erfolgen: Einmal in 1er Schritten und einmal in 10er Schritten. D.h. man brauch 2 Inputs pro Schalter und pro Richtung - demnach allein für die kleinen Knobs und deren Funktion 8 Inputs.
Und wie der große Rudder Panel knob sind diese wie im echten Flugzeug Springloaded - heißt, sie drehen sich immer wieder ins Zentrum/Mitte.
An sich gibt es das nicht zu kaufen außer OEM und noch einer baut diese speziellen Schalter zu Schweinepreisen. Wenn man genau hinschaut siehst du auf diesem Foto ca. den Mechanismus :) Ansonsten werden lediglich Encoder dafür genutzt was auch geht aber halt nicht ganz "OEM like" ist :)
Ich hoffe, ich konnte etwas Licht ins dunkle bringen.

2019-06-11 15:18
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 2958
Supporter
:blush: Ist es ein Armutszeugniss das ich jetzt schnell gegoogelt habe was "OEM" bedeutet ??? :lol:

Jepp Habs verstanden.

Muss gestehen ich war noch nicht in einer echten 737 am Steuer. In dem Sim den ich besucht habe ( LFBA Zertifiziert für CRM Training und Prüfungsvorbereitung) waren besagte Schalter nicht "springloaded" sondern waren schlichte Encoder.

Um das Thema zu beenden würde mich noch interessieren was dich das Teil gekostet hat. Musst natürlich nicht sagen wenn du nicht willst aber ich vermute mal mit den "echten" Korrys auf 28v Basis und besagten Federschaltern mit Schaft im Schaft System würde ich mal einen mittleren bis hohen 3 Stelligen Betrag schätzen.
Good Luck !
2019-06-11 20:55
Avatar
Reensel
From: Berlin - EDDB, Germany
Posts: 17
Alles gut. War selber noch nie in einem echten Cockpit. Ich lese nur viel und bin halt auch son detailverliebter :D

Alles eine Frage des Glücks und immer wieder suchen, Augen aufhalten. Ich würde nie viel Geld dafür bezahlen :D Korrys alle 4 und den Originalen Autobrake Schalter 20€ ;) Wie gesagt Glück dabei gehabt.

Die Springloaded Schalter - habe ich selbst designed, konzipiert und gebaut - sowie die Knobs. Alles selbstgemacht (Designed und 3D gedruckt) Klar die metallischen Sachen wie Schrauben, Muttern, Schaft, Rotary Schalter = Baumarkt oder ebay ;-)


picture upload
2019-06-11 21:18
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 2958
Supporter
Nice work. Sowas bauen nur weniger selber.

Allerdings jetzt doch noch ne letzte Frage.... Aus welcher Quelle ziehst du die Info das besagter Schalter so arbeitet ?
PMDG ist ja was solche Dinge angeht sehr Realitätsverliebt aber dort sind die 2 Drehregler Encoder und eben nicht Springloaded.
Ich denke auch nicht das dies aus praktischen Gründen weggelassen wird da ja z.b. ind der 777 ebenfalls Schalter wie deiner verbaut und simuliert sind.

Also.... Ist das nur eine Idee von dir gewesen oder hast du Infos das in der echten 737 hier ebenfall Federschalter verbaut sind ??
Good Luck !
2019-06-11 21:38
Avatar
StephanHo
From: EDDG, Germany
Posts: 1404
Supporter
Hi,

ich würde nicht sagen, daß er die falschen Relais hat. Normalerweise sind die Arbeitskontakte Umschalter. Einer ist immer offen (normally Open - NO), der andere immer geschlossen (normally closed - NC). Zieht das Relais an, schließt sich der offene Kontakt und der geschlossenen Kontakt wird geöffnet. Somit wechselt das geschaltete Eingangssignal vom ursprünglich NC zum NO. Vertauscht man nun die beiden Drähte (nicht die ankommende Leitung), werden die beiden Ausgangsleitungen quasi gegenüber der ursprünglichen Schaltung negiert.

Ob es einen besseren Weg gibt anstatt eines Relais? Nun, das hängt davon ab. Mit einem Relais habe ich eine saubere galvanische Trennung der Stromkreise mit einer unterschiedlichen Betriebsspannung. Man könnte auch mit einem Transistor schalten, dann besteht (entfernt) die Gefahr, daß die 28V mal durchschlagen, wenn der Transistor seinen Geist aufgibt. Insofern erachte ich die Relaislösung als die "sauberere".

Zu deinem Aufbau: dafür, daß er nur temporär zu sein scheint, ist das schon sehr sauber gearbeitet. Mein Kompliment!
Grüße,
Stephan
2019-06-11 23:45
Avatar
Reensel
From: Berlin - EDDB, Germany
Posts: 17
iconpizman82:

Nice work. Sowas bauen nur weniger selber.

Allerdings jetzt doch noch ne letzte Frage.... Aus welcher Quelle ziehst du die Info das besagter Schalter so arbeitet ?
PMDG ist ja was solche Dinge angeht sehr Realitätsverliebt aber dort sind die 2 Drehregler Encoder und eben nicht Springloaded.
Ich denke auch nicht das dies aus praktischen Gründen weggelassen wird da ja z.b. ind der 777 ebenfalls Schalter wie deiner verbaut und simuliert sind.

Also.... Ist das nur eine Idee von dir gewesen oder hast du Infos das in der echten 737 hier ebenfall Federschalter verbaut sind ??



Ich hab das aus diversen Quellen entnommen :) Und wurde auch irgendwo durch einen Piloten bestätigt :)

Hier mal eine Quelle:
realistic SPD REF and N1 SET dual switches spring loaded to center position just like on a real B737NG
http://www.volarent.aero/main-instrument-panel-2.html

oder hier mit einem Video von einem der die Dinger für viel Kohle vertickt und deren Funktion:

http://www.cockpitbuilders.com/community/index.php?topic=3280.0

https://www.youtube.com/watch?v=bL84aQJQ3qo&feature=youtu.be

Grüße :)

PS: Ich habe gestern angefangen meine Servo Flaps Anzeige auf Stepper umzubauen. Klappt soweit gut - technisch bereits alles i.O. - nun noch den Stepper ordentlich verbauen und Swap ist erledigt :)
2019-06-12 11:49
Avatar
Reensel
From: Berlin - EDDB, Germany
Posts: 17
iconStephanHo:

Hi,

ich würde nicht sagen, daß er die falschen Relais hat. Normalerweise sind die Arbeitskontakte Umschalter. Einer ist immer offen (normally Open - NO), der andere immer geschlossen (normally closed - NC). Zieht das Relais an, schließt sich der offene Kontakt und der geschlossenen Kontakt wird geöffnet. Somit wechselt das geschaltete Eingangssignal vom ursprünglich NC zum NO. Vertauscht man nun die beiden Drähte (nicht die ankommende Leitung), werden die beiden Ausgangsleitungen quasi gegenüber der ursprünglichen Schaltung negiert.

Ob es einen besseren Weg gibt anstatt eines Relais? Nun, das hängt davon ab. Mit einem Relais habe ich eine saubere galvanische Trennung der Stromkreise mit einer unterschiedlichen Betriebsspannung. Man könnte auch mit einem Transistor schalten, dann besteht (entfernt) die Gefahr, daß die 28V mal durchschlagen, wenn der Transistor seinen Geist aufgibt. Insofern erachte ich die Relaislösung als die "sauberere".

Zu deinem Aufbau: dafür, daß er nur temporär zu sein scheint, ist das schon sehr sauber gearbeitet. Mein Kompliment!



Ich nutze das klassische 4-Channel Relais Board von Elegoo extra für Arduino (LINK: https://www.amazon.de/gp/product/B01M8G4Y7Z/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&psc=1

Nun ist es aber so, dass wenn ich das Relaisboard ganz normal anschließe, dass die Relais in Verbindung mit dem Arduino in der Grundstellung nach dem ich USB eingesteckt habe sofort anziehen (also aus der Ruhestellung gehen). Und das irritiert mich halt ein wenig. Daher muss ich das so lösen, dass wenn z.B. durch FSUIPC der Wert 0 kommt durch Vergleichen Wert 1 gesetzt wird, sodass die Relais in die eigentlich Ruhestellung gehen und wenn FSUIPC den Wert 1 ausspuckt (also tatsächlich die Lampe angehen soll) der Wert 0 gesetzt wird, sodass die Relais anziehen.

Mich wundert das halt nur dass die Relais ohne irgendwas und lediglich angeschlossen am Arduino prinzipiell aus der Ruhestellung gehen und anziehen.

Habe ich nen Denkfehler? :D
2019-06-12 12:00
Avatar
StephanHo
From: EDDG, Germany
Posts: 1404
Supporter
Hi René,

warum nimmst du nicht dieses Modul: https://www.roboter-bausatz.de/87/4-kanal-relais-5v?number=RBS10048
Sparst du pro Einheit 3€.

Ich benutze diese: https://www.roboter-bausatz.de/34/1-kanal-relay-5v/230v

Die ziehen nicht an, wenn der Strom eingeschaltet wird. Das sollte so auch nicht sein. Wenn du hast, prüf mal die Steuerleitungen zu den Relais. Also vom MEGA zum Relais. Die Ausgänge des MEGA haben einen definierten Zustand beim Einschalten, der eigentlich GND-Potential entsprechen sollte, es sei denn, im MEGA selbst ist bereits ein anderer Zustand festgelegt. Auf keinen Fall sollten die Ausgänge beim Einschalten hin- und herschalten.

Zu prüfen und zu hinterfragen wäre durch dich, wie verhält sich der Pin, wenn a) der MEGA eingeschaltet wird und FSUIPC nicht verbunden ist (also der Grundzustand) und b) wenn FSUIPC läuft, MEGA dazuschalten, MF gestartet wird. Nach meinem Dafürhalten dürfen die Relais nicht anziehen, wenn der Strom eingeschaltet wird!
Klemm mal für Testzwecke die Relaisausgänge ab und miß dann bzw. die Leitung vom Pin zum Relais abziehen und dann schauen, ob das Relais zieht.
Die MEGA-Ausgänge sollten auch nicht schalten, da ja dann, wenn sie auf USB gesteckt werden, alle Pins einmal geschaltet werden würden, was völliger Mumpitz wäre.
Grüße,
Stephan
2019-06-12 13:07
Avatar
Reensel
From: Berlin - EDDB, Germany
Posts: 17
iconStephanHo:

Hi René,

warum nimmst du nicht dieses Modul: https://www.roboter-bausatz.de/87/4-kanal-relais-5v?number=RBS10048
Sparst du pro Einheit 3€.

Ich benutze diese: https://www.roboter-bausatz.de/34/1-kanal-relay-5v/230v

Die ziehen nicht an, wenn der Strom eingeschaltet wird. Das sollte so auch nicht sein. Wenn du hast, prüf mal die Steuerleitungen zu den Relais. Also vom MEGA zum Relais. Die Ausgänge des MEGA haben einen definierten Zustand beim Einschalten, der eigentlich GND-Potential entsprechen sollte, es sei denn, im MEGA selbst ist bereits ein anderer Zustand festgelegt. Auf keinen Fall sollten die Ausgänge beim Einschalten hin- und herschalten.

Zu prüfen und zu hinterfragen wäre durch dich, wie verhält sich der Pin, wenn a) der MEGA eingeschaltet wird und FSUIPC nicht verbunden ist (also der Grundzustand) und b) wenn FSUIPC läuft, MEGA dazuschalten, MF gestartet wird. Nach meinem Dafürhalten dürfen die Relais nicht anziehen, wenn der Strom eingeschaltet wird!
Klemm mal für Testzwecke die Relaisausgänge ab und miß dann bzw. die Leitung vom Pin zum Relais abziehen und dann schauen, ob das Relais zieht.
Die MEGA-Ausgänge sollten auch nicht schalten, da ja dann, wenn sie auf USB gesteckt werden, alle Pins einmal geschaltet werden würden, was völliger Mumpitz wäre.



Werde ich mal testen. Danke :)

Was tatsächlich so war ist, dass nach dem Öffnen von Mobiflight (Board war am PC) die Relais hin und her geschaltet haben. Klick Klick Pause Klick Klick. Komisch.
2019-06-12 13:52
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 2958
Supporter
Hi ihr zwei.

Muss gestehen ich hab das so noch nie nachgeprüft....
Aber bevor man lange "messen" tut ( Der Elektro Guru möge mir verzeihen) bietet sich doch eine LED an.
Also einfach eine stinknormale LED (<5v) mit Widerstand an einen der betreffenden MEGA Pins hängen an dem gerade ein Relais ist. ( Natürlich das Relais temporär entfernen)

Jetzt MEGA per USB an den PC stecken..... Wenn die LED aus bleibt dann passiert nichts.... Geht sie AN und kurz danach wieder AUS dann vermute ich mal das der MEGA alle Pins auf HIGH hat bis intern die Software (Sketch/Firmware) im Prozessor startet und die einzellenen Pins je nachdem was sie sind (Schalter, LED etc) erst "initialisiert" .
Falls der Pin AN bleibt dann würde ich sagen liegt ein tieferer Fehler vor.

Nächster Test wäre es dann Mobiflight zu starten.... Also zu sehen welche Reaktion passiert wenn das Board sich mit MF verknüpft.
Ohne FSUIPC Verbindung "sollten" eigenltich alle Outputs NULL sein denn Mobiflight hat ja keinen Zugriff auf die Offsets um diese zu definieren.

*****
Zusammengefasst.... Wenn das Relais arbeitet beim USB stecken bzw beim Mobiflight starten dann "sollte" doch eine LED dementsprechend reagieren auf dem gleichen Pin.
ODER ??
Good Luck !
2019-06-12 15:12
Go to page 1Go to page 012Go to page 2Go to page 2