jimbim 22 Posted May 18, 2015 Author Share Posted May 18, 2015 Hallo Ronny, für die Problematik von 0 auf zwei würde ich folgendes probieren: function arcaze_strobes_switch() if arcaze.read_pins( my_arcaze ) == 1 then strobes = 2 else strobes = 0 end end Da meins noch nicht funktioniert kann ich leider noch nicht so viel spielen :-) Viele Grüße, Sebastian Link to comment Share on other sites More sharing options...
krähe 10 Posted May 18, 2015 Share Posted May 18, 2015 Danke Sebastian, werde ich heute Abend gleich testen. Leider fische ich hier sehr im dunkeln herum, da ich von Lua keine Ahnung habe. Wo kann man denn was genaueres darüber lesen ?? Hast du vor die CRJ als HC zu bauen ??? Weist du, wie man den 2ten Pin dann in das Script einfügt ?? LG Ronny Link to comment Share on other sites More sharing options...
jimbim 22 Posted May 18, 2015 Author Share Posted May 18, 2015 Wie gesagt, ich kann es nicht testen aber ich würde folgendes ausprobieren: _, pin2 = arcaze.read_pins( my_arcaze ) Eventuell könntest Du auch deine Funktion genereller halten: local arc_str_sw, arc_bat_sw function arcaze_switchs() -- Funktion für alle switches arc_str_sw, arc_bat_sw = arcaze.read_pins( my_arcaze ) -- Strobe switch sollte an Pin1 sitzen, Battery switch an Pin2 if arc_str_sw == 1 then strobes = 2 else strobes = 0 end battery = arc_bat_sw end So hab ich zumindest das Tutorial für das Radio verstanden :-) Ich probiere auch immer rum bis es funktioniert, da ich mich auch nicht sonderlich gut damit auskenne :-) Eigentlich plane ich später für die IXEG 737 classic etwas zu bauen... So lange muss ich mich noch gedulden und probiere schon etwas herum, damit es dann schneller geht! Schließlich hat man ab dem Release den zeitlichen Konflikt zwischen IXEG fliegen oder IXEG basteln :-p Viele Grüße, Sebastian Link to comment Share on other sites More sharing options...
krähe 10 Posted May 18, 2015 Share Posted May 18, 2015 Na da hoffe ich doch mal, dass es mit der IXEG nicht mehr alzu lange dauert. Bisher ist das Project ja nur ein "Video Addon" Dein Tipp asu Beitrag #26 war schon mal require "arcaze" my_arcaze = arcaze.open_first_device() if my_arcaze == nil then logMsg("FlyWithLua Error: Kein Arcaze USB gefunden!") else dataref("strobes", "sim/custom/xap/extlight/strobe_sw", "writable") function arcaze_strobes_switch() if arcaze.read_pins( my_arcaze ) == 1 then strobes = 2 else strobes = 0 end end do_every_frame("arcaze_strobes_switch()") end Mit der generellen Zuweisung klappt leider nicht, da die A330 spezielle Datarefs hat. Wie liest du den die Datarefs aus ?? IXEG wird sie so einfach nicht rausrücken :-() Bei meiner A330 habe ich mir das Progi AC3D geholt und mit einem X Plane plugin die datarefs ausgelesen. Leider Shareware und es sind nach 14 Tagen 89 Dollar fällig. Link to comment Share on other sites More sharing options...
krähe 10 Posted May 18, 2015 Share Posted May 18, 2015 mühsam ernährt sich das LuaHörnchen require "arcaze" my_arcaze = arcaze.open_first_device() if my_arcaze == nil then logMsg("FlyWithLua Error: Kein Arcaze USB gefunden!") else function A330() dataref("strobes", "sim/custom/xap/extlight/strobe_sw", "writable") dataref("Beacons", "sim/custom/xap/extlight/beacon_sw", "writable") if arcaze.read_pins( my_arcaze ) == 1 then strobes = 2 else strobes = 0 end if arcaze.read_pins( my_arcaze ) == 1 then Beacons = 2 else Beacons = 0 end end do_every_frame("A330()") end Bei der Konstellation, schaltet er mir beim betätigen des PIN 1 den zweiten gleich mit :-(( Guter Rat ist teuer LG RONNY Link to comment Share on other sites More sharing options...
jimbim 22 Posted May 19, 2015 Author Share Posted May 19, 2015 Hi, funktioniert mein Vorschlag aus Post #28 nicht? Bei Deinem Code ist es logisch dass der erste Pin beides schaltet... Du fragst ja zwei mal das gleiche ab: if arcaze.read_pins( my_arcaze ) == 1 Da wird Dir jeweils den Status des ersten Pins geben... Ich hab mir mal erlaubt Dein Script umzuschreiben, da ich es aber nicht testen kann ist es reine Spekulation :-) require "arcaze" my_arcaze = arcaze.open_first_device() if my_arcaze == nil then logMsg("FlyWithLua Error: Kein Arcaze USB gefunden!") else local arc_str_sw, arc_bec_sw function A330() arc_str_sw, arc_bat_sw = arcaze.read_pins( my_arcaze ) dataref("strobes", "sim/custom/xap/extlight/strobe_sw", "writable") dataref("beacons", "sim/custom/xap/extlight/beacon_sw", "writable") if arc_str_sw == 1 then strobes = 2 else strobes = 0 end if arc_bec_sw == 1 then beacons = 2 else beacons = 0 end end do_every_frame("A330()") end Zu Deiner Frage nach den Datarefs: Im Handbuch von XSaitekpanels werden ein paar tips gegeben, wie man an Datarefs kommt... Viele Grüße, Sebastian Link to comment Share on other sites More sharing options...
krähe 10 Posted May 19, 2015 Share Posted May 19, 2015 Danke Sebastian werde ich heute Abend gleich testen :-) Link to comment Share on other sites More sharing options...
krähe 10 Posted May 19, 2015 Share Posted May 19, 2015 arc_str_sw, arc_bat_sw = arcaze.read_pins( my_arcaze ) hier ein bec eingefügt und Aber das Prinzip habe ich erstmal kappiert und die ersten 10 Schalter belegt. Im Handbuch von XSaitekpanels werden ein paar tips gegeben, wie man an Datarefs kommt... :bow_down2_s: :bow_down2_s: So richtig erkennen kann ich da nix, wie man Datarefs ausliest. Zudem glaube ich nicht, dass die Entwickler es uns so einfach machen. Bei der A330 hat es auch ne weile gedauert. LG Ronny Link to comment Share on other sites More sharing options...
X-Friese 34 Posted May 19, 2015 Share Posted May 19, 2015 Die Befehle dataref() und dataref_table() dürfen nur einmalig ausgeführt werden, nicht ständig mit jedem Frame. Das kostet sonst enorm Rechenleistung, die völlig unnötig die FPS mindert. Link to comment Share on other sites More sharing options...
krähe 10 Posted May 19, 2015 Share Posted May 19, 2015 Oje, jetzt funktioniert es endlich und nun kommt der Carsten .-) http://www.meintext.de/?text=802017831432072133 wie soll ich den die Datarefs pro Frame begrenzen ??? Link to comment Share on other sites More sharing options...
jimbim 22 Posted May 20, 2015 Author Share Posted May 20, 2015 Oh je, erst ein Tippfehler und dann auch noch die Datarefs innerhalb der funktion... Das kommt dabei raus wenn man das ganze schnell neben der Arbeit macht :-) Das geht ganz einfach, ich nehme wieder mein Code Beispiel.... require "arcaze" my_arcaze = arcaze.open_first_device() if my_arcaze == nil then logMsg("FlyWithLua Error: Kein Arcaze USB gefunden!") else dataref("strobes", "sim/custom/xap/extlight/strobe_sw", "writable") dataref("beacons", "sim/custom/xap/extlight/beacon_sw", "writable") local arc_str_sw, arc_bec_sw function A330() arc_str_sw, arc_bec_sw = arcaze.read_pins( my_arcaze ) if arc_str_sw == 1 then strobes = 2 else strobes = 0 end if arc_bec_sw == 1 then beacons = 2 else beacons = 0 end end do_every_frame("A330()") end Link to comment Share on other sites More sharing options...
krähe 10 Posted May 21, 2015 Share Posted May 21, 2015 Über den Vergleich mit dem vorherigen Wert kann man eine Flanke erkennen und dann entsprechend die DataRefs auf den gewünschten Wert setzen. Im Handbuch ist ein Beispiel eines Radio Panels, dort ist der Switch Button, um Standby und Active zu tauschen, als positive Flanke umgesetzt. https://github.com/X-Friese/FlyWithLua/blob/master/FlyWithLua/Documentation/Ein_Arcaze_USB_ansteuern.md dataref("apu", "sim/cockpit2/electrical/APU_starter_switch", "writable") function arcaze_apu_switch() apu = arcaze.read_pins( my_arcaze ) end do_every_frame("arcaze_apu_switch()") end Der taster hält den Befehl nicht und springt wieder zurück) Du hast ja auch zwei Variabeln NEW_COM1 = NEW_COM1_STDBY. Bei mir ist APU_starter_switch der zwischen 0 = off und 1 = on , funktioniert ODER verstehe ich da wieder was falsch Und danke nochmal Sebastian , habe jetzt alles aus der Function rausgenommen. :-) Link to comment Share on other sites More sharing options...
jimbim 22 Posted May 21, 2015 Author Share Posted May 21, 2015 Deine Lösung würde bei einem Schalter funktionieren, da dann immer eine 1 geliefert wird bis man ihn wieder umlegt. Bei einem Taster sollte folgendes funktionieren: dataref("apu", "sim/cockpit2/electrical/APU_starter_switch", "writable") local prev_apuswitch = 0 function arcaze_apu_switch() if prev_apuswitch == 0 and arcaze.read_pins( my_arcaze ) == 1 then if apu == 0 then apu = 1 else apu = 0 end end prev_apuswitch = arcaze.read_pins( my_arcaze ) end do_every_frame("arcaze_apu_switch()") end VG Sebastian Link to comment Share on other sites More sharing options...
krähe 10 Posted May 22, 2015 Share Posted May 22, 2015 Vielen Dank Sebastian. Ich weis nicht wie Ihr es machtm, aber es funktioniert. ABER Als einzelnes Script geht es, WIE binde ich es in mein Script ein ??? http://www.file-upload.net/download-10635339/A330.lua.txt.html LG Ronny Link to comment Share on other sites More sharing options...
krähe 10 Posted May 27, 2015 Share Posted May 27, 2015 Seid Ihr am Wochenende weiter gekommen ??? Link to comment Share on other sites More sharing options...
jimbim 22 Posted May 28, 2015 Author Share Posted May 28, 2015 So sollte es gehen falls dein APU switch hinter dem NOSMOKING Switch angeschlossen ist... require "arcaze" my_arcaze = arcaze.open_first_device() if my_arcaze == nil then logMsg("FlyWithLua Error: Kein Arcaze USB gefunden!") else dataref("strobes", "sim/custom/xap/extlight/strobe_sw", "writable") dataref("beacons", "sim/custom/xap/extlight/beacon_sw", "writable") dataref("wing", "sim/custom/xap/extlight/wing_sw", "writable") dataref("nav", "sim/custom/xap/extlight/navlogo_sw", "writable") dataref("rwy", "sim/custom/xap/extlight/rwyturn_sw", "writable") dataref("lan", "sim/custom/xap/extlight/land_sw", "writable") dataref("nos", "sim/custom/xap/extlight/nose_sw", "writable") dataref("sea", "sim/330/seat_belts", "writable") dataref("smo", "sim/330/no_smoking", "writable") dataref("apu", "sim/cockpit2/electrical/APU_starter_switch", "writable") local arc_str_sw, arc_bec_sw, arc_win_sw, arc_nav_sw, arc_rwy_sw, arc_lan_sw, arc_nos_sw, arc_sea_sw, arc_smo_sw, arc_apu_sw, prev_apu_sw prev_apu_sw = 0 function A330() arc_str_sw, arc_bec_sw, arc_win_sw, arc_nav_sw, arc_rwy_sw, arc_lan_sw, arc_nos_sw, arc_sea_sw, arc_smo_sw, arc_apu_sw = arcaze.read_pins( my_arcaze ) if arc_str_sw == 1 then strobes = 2 else strobes = 0 end if arc_bec_sw == 1 then beacons = 2 else beacons = 0 end if arc_win_sw == 1 then wing = 2 else wing = 0 end if arc_nav_sw == 1 then nav = 2 else nav = 0 end if arc_rwy_sw == 1 then rwy = 2 else rwy = 0 end if arc_lan_sw == 1 then lan = 2 else lan = 0 end if arc_nos_sw == 1 then nos = 2 else nos = 0 end if arc_sea_sw == 1 then sea = 2 else sea = 0 end if arc_smo_sw == 1 then smo = 2 else smo = 0 end if prev_apu_sw == 0 and arc_apu_sw == 1 then if apu == 0 then apu = 1 else apu = 0 end end prev_apu_sw = arc_apu_sw end do_every_frame("A330()") end Leider habe ich von Carsten noch nichts gehört... Aber wie wir alle wird auch er ein Privatleben neben dem Sim haben :-) Viele Grüße, Sebastian Link to comment Share on other sites More sharing options...
krähe 10 Posted May 28, 2015 Share Posted May 28, 2015 Danke Sebastian, es funktioniert super Denn wünsche ich dir, dass du es mit Carsten noch hin bekommst. Ich bin da, wie du siehst, leider keine große Hilfe LG Ronny Link to comment Share on other sites More sharing options...
jimbim 22 Posted June 3, 2015 Author Share Posted June 3, 2015 Ha! Mein Arcaze geht endlich mit Fly With Lua! Ich hab mich heute mal durchgerungen meinen PC neu zu installieren und siehe da! Es geht auf Anhieb :-) Viele Grüße, Sebastian Link to comment Share on other sites More sharing options...
krähe 10 Posted June 3, 2015 Share Posted June 3, 2015 Na denn kanns ja losgehen :-) Link to comment Share on other sites More sharing options...
X-Friese 34 Posted June 3, 2015 Share Posted June 3, 2015 Das klingt ja hervorragend. Hatte schon ein schlechtes Gewissen, denn auch in den kommenden zwei Wochen ist die Zeit sehr knapp bei mir. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.