Thomas321 Posted September 2, 2012 Report Posted September 2, 2012 I have read GFDisplay is not supported anymore, so i don´t use it(and don´t read the manual) Now i don´t know which function/programm i should use, to solve my needs: Using FSX and a Goflight P8 Pushbutton Module. I have programmed a Button of the GF-P8 to GPS DRIVES NAV1. Offset:132C 4 NAV/GPS switch, in FS2000 & FS2002. 0=NAV, 1=GPS (I can also use gfconfig to do exactly this, but GF-P8 doesnt recognize the state so when "GPS Drives NAV1"=ON, there is no active green LED.(I think gfconfig doesn´t support this.)) I want the LED light up when using the FSX-internal GPS (GPS Drives NAV1) Please can you help me, what can i do ? Thomas
Pete Dowson Posted September 2, 2012 Report Posted September 2, 2012 I have read GFDisplay is not supported anymore, so i don´t use it(and don´t read the manual) I want the LED light up when using the FSX-internal GPS (GPS Drives NAV1) Please can you help me, what can i do ? Well, you can still use gfDisplay if you wished, it is just that if you don't know how to I'd rather not tell you as it is, in my opinion, too complex, too arcane. The support for GF devices has been moved to the Lua plug-in system, with the "gfd" library functions able to drive displays much more ably. Check the Lua documents in your FSUIPC Documents subfolder. Regards Pete
Thomas321 Posted September 2, 2012 Author Report Posted September 2, 2012 Thanks for the hint. Now i have researched, coming to this result as follows: Created "gps.lua" , assigning the first Button of the GF-P8 Module using drop down menu in FSUIPC-Buttons Facility as "Lua Gps" -- Goflight Module GF-P8---- Button 01-- Button function(Offset:66375,0 TOGGLE GPS DRIVES NAV1)-- LED function(132C 4 NAV/GPS switch, in FS2000 & FS2002. 0=NAV, 1=GPS)-- Model: GFP8-- Unit: 101-- Button: 0ifipc.readUW(0x281C) == 1thenipc.control(66375, 0)endifipc.readUW(0x132C) == 1then gfd.SetLight(GFP8, 101, 0)end---- Button 02-- Button function()-- LED function-- Model: GFP8-- Unit: 101-- Button: 1---- Button 03-- Button function()-- LED function-- Model: GFP8-- Unit: 101-- Button: 2[/CODE]Toggle GPS DRIVES NAV1 is working, but no lights on the GF-P8 Module.ATT no Button of the GF-P8 Module is controlled via gfconfig.gfconfig is installed in its standard way.Please give me another hint, whats wrong in my code, what did i miss out?Kind Regards,Thomas
Pete Dowson Posted September 3, 2012 Report Posted September 3, 2012 Toggle GPS DRIVES NAV1 is working, but no lights on the GF-P8 Module. Because you are testing offset 132C when you press the button. With that code I might expect that the LED lights on the 102nd GP-P8 unit of yours when you press the button to turn OFF the GPS mode, assuming it was on when the button was pressed. What is turning the light off when you toggle GPS mode off? Have you really got 102 GF-P8 units connected to your system? GF numbers the units 0 for the first, 1 for the 2nd and so on. I can't imagine a sysyem with 102 of them! Really you probably want the light controlled by an event, in a Lua which is actually preloaded and running all the time, waiting. You should program your button in FSUIPC's buttons tab not in the same Lua, it is unnecessary here. Have an event.offset on offset 132C and use the value passed to the function to set or clear the light accordingly. You can have the Lua loaded automatically using the [Auto] facility in the FSUIPC INI file. Regards Pete
Thomas321 Posted September 4, 2012 Author Report Posted September 4, 2012 Have you really got 102 GF-P8 units connected to your system? GF numbers the units 0 for the first, 1 for the 2nd and so on. 102 was the Number of the device in FSUIPC.ini, as i programmed the button(GF-P8 Button), so i thought this number(102) is also the "Unit" Number which is used by Lua. Have an event.offset on offset 132C and use the value passed to the function to set or clear the light accordingly. You can have the Lua loaded automatically using the [Auto] facility in the FSUIPC INI file. According to your advice and the "FSUIPC Lua Library.pdf", i tried as follows: You should know, my programming skills are really, really poor... Loaded via FSUIPC.ini [Auto] 1=Lua Gps function gpsledon(132C,1)function gpsledoff(132C,0)endevent.offset(132C, "UD", "gpsledon")gfd.SetLight(GFP8, 0, 0) -- (Model GFP8, Unit 0, Led 0)endevent.offset(132C, "UD", "gpsledoff")gfd.ClearLight(GFP8, 0, 0) -- (Model GFP8, Unit 0, Led 0)end[/CODE]Doesn´t work.Tried something other... :[CODE]ifipc.readUW(132C) == 1then gfd.SetLight(GFP8, 0, 0)endifipc.readUW(132C) == 0then gfd.ClearLight(GFP8, 0, 0)end[/CODE]Also doesn´t work.Sorry i can´t get rid of this...Please give me another hint/example to sort my errors out.Thank you!Kind Regards, Thomas
Pete Dowson Posted September 4, 2012 Report Posted September 4, 2012 102 was the Number of the device in FSUIPC.ini, as i programmed the button(GF-P8 Button), so i thought this number(102) is also the "Unit" Number which is used by Lua. No, Lua doesn't know anything about joystick numbers, which is what 102 is. Every device handled by FSUIPC's assignments needs a "joystick number" which for GF devices are artificially generated. They also get modified by WideFS client inputs which also support Go flight devices. The Lua library handles GoFlight devices more directly and uses the numbers assigned by the Windows system. I reformatted you code so you can see more clearly what is wrong: I've added comments withing. function gpsledon(132C,1) function gpsledoff(132C,0) -- This function, which is INSIDE the other functiion, has no code at all, so it does nothing! No code = do nothing!!! end event.offset(132C, "UD", "gpsledon") -- this event call is trying to call the function in which it actually resides. That function never gets called because nothing calls it! -- Additionally, as clearly documented, the offset 132C must be given as "132C" or 0x132c. gfd.SetLight(GFP8, 0, 0) -- (Model GFP8, Unit 0, Led 0)endevent.offset(132C, "UD", "gpsledoff")-- 132C is wrong as stated. And the function called does nothing.gfd.ClearLight(GFP8, 0, 0) -- (Model GFP8, Unit 0, Led 0)-- this will be executed once, if the program ever compiled (which it won't).end[/CODE]Doesn´t work.It won't even load. Look in the FSUIPC log file -- you'll see the error s listed there. ALWAYS look in the Log.Tried something other... : [CODE]ifipc.readUW(132C) == 1then gfd.SetLight(GFP8, 0, 0)endifipc.readUW(132C) == 0then gfd.ClearLight(GFP8, 0, 0)end[/CODE] Also doesn´t work. Of course not. 132C is not a hexadecimal number, and in any case this will execute only once when loaded then no more. What use would that be?You've evidently not looked at any examples, of which there are many.Please see the example files provided with FSUIPC, and the many User Contributions in the Sub-Forum of that name.I can answer questions and help you understand, but I am not going to write your programs for you. There's enough information available, but you seem to be ignoring it and not even referring correctly to the documentation.Sorry,Pete
Thomas321 Posted September 6, 2012 Author Report Posted September 6, 2012 Finally, i´m glad got it to work. :idea: Thank you for your effort and patience. Investigated the log, and gone slightly deeper into the documentations and recent forum posts for examples and scripting techniques. I put the script herein, maybe someone finds it helpful... (hope there are no errors anymore...it gets loaded and it is working as i expect) function gpsled(offset, value)ifipc.readUW(0x281C) == 1 -- IF BATTERY=ONandipc.readUW(0x2E80) == 1 then -- IF AVIONICS=ON if value ~= 0 then -- not equal ZERO gfd.SetLight(GFP8, 0, 0) else gfd.ClearLight(GFP8, 0, 0) endendendevent.offset(0x132C, "UD", "gpsled") -- NAV/GPS[/CODE]Kind Regards,Thomas
Pete Dowson Posted September 6, 2012 Report Posted September 6, 2012 Finally, i´m glad got it to work. :idea: Well done! That looks good! And having worked that out you are now in a good position to solve any other little needs as they arise! ;-) Pete
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now