Nun zum wohl letzten Detail, welches einen Lötkolben verlangt – dem „Warn Panel“. Das eigentliche Panel habe ich wieder bei der Schaeffer AG fräsen lassen. Dann habe ich mit Powerpoint eine Datei mit 10 Warnpanels erstellt und auf eine Klebefolie mit dem Laserdrucker ausgedruckt. Die Folien müssen dann präzise ausgeschnitten und passgenau aufeinander geklebt werden. Das ist nicht wirklich einfach. Zwei Folien musste ich neu machen, da der Ansatz beim aufkleben nicht korrekt war.
Die Beleuchtung erreiche ich durch 3mm LED in rot und gelb, die ich auf eine Leiterbahnenplatte RM 2.54 aufgelötet habe. Da der Hintergrund meines Panels aus einer Kunststoffplatte besteht, konnte ich die Ausschnitte gut dazu verwenden, dass eine Reihe LED nicht in einen anderen Bereich strahlt.
Gegenstelle für die LED bildet ein LED Driver 2 von Arcaze.
Software
Auch die Offsets für die LED werden von Arcaze FSUIPC Connector angesteuert. Ein Warnpanel ist dabei nicht ganz einfach, da es bei den Default Flugzeugen kein Offset gibt, um das erleuchten der Warnings abzufragen. Um das nun möglichst vielseitig kompatibel zu machen, verwende ich für mein Panel freie FSUIPC Offsets:
Oil Press: 0x66C0 Volts: 0x66C1 VAC Left: 0x66C2 VAC Center: 0x66C3 VAC Right: 0x66C4 Fuel Left: 0x66C5 Fuel Center: 0x66C6 Fuel Right: 0x66C7
Da ich mich entschieden habe, als Basis für den Flugsimulator die A2A C172 Trainer zu verwenden, muss ich nun noch eine Verknüpfung zwischen Offsets und LVars herstellen, da A2A nicht mit den Offsets arbeitet. Dazu habe ich ein kleines LUA Script geschrieben, welches permanent die LVars abfragt und den Zustand in das passende Offset überträgt.
-- Eintrag für LINDA (kann ggf. entfernt werden) ipc.runlua('linda') while 1 do OilPressLight = ipc.readLvar("L:OilPressLight") VoltsLight = ipc.readLvar("L:VoltsLight") VacLLight = ipc.readLvar("L:VacLLight") VacLight = ipc.readLvar("L:VacLight") VacRLight = ipc.readLvar("L:VacRLight") FuelLLight = ipc.readLvar("L:FuelLLight") FuelLight = ipc.readLvar("L:FuelLight") FuelRLight = ipc.readLvar("L:FuelRLight") -- OilPres (Offset: 66C0) ipc.writeSB(0x66C0, OilPressLight) -- Volts (Offset: 66C1) ipc.writeSB(0x66C1, VoltsLight) -- VAC Left (Offset: 66C2) ipc.writeSB(0x66C2, VacLLight) -- VAC (Offset: 66C3) ipc.writeSB(0x66C3, VacLight) -- VAC Right (Offset: 66C4) ipc.writeSB(0x66C4, VacRLight) -- Fuel Left (Offset: 66C5) ipc.writeSB(0x66C5, FuelLLight) -- Fuel (Offset: 66C6) ipc.writeSB(0x66C6, FuelLight) -- Fuel Right (Offset: 66C7) ipc.writeSB(0x66C7, FuelRLight) end
Diese Script wird in der „ipcReady.lua“ Datei im Modules Ordner des Flugsimulators abgespeichert. Das Script wird somit bei jedem Simulatorstart geladen.
Arcaze FSUIPC Connector reagiert dann passend auf die Offsets. Diese Vorgehensweise ermöglicht mir sogar das „blinken“ der Anzeigen zu simulieren.
Für die Marker verwende ich folgende Offsets, die ich direkt in Arcaze FSUIPC Connector abfrage:
OuterMarker: 0x0BB0 MiddleMarker: 0x0BAE InnerMarker: 0x0BAC