January 6, 201214 yr Thanks guys for your replies, appreciated.I tried some weeks ago to trace NGX status led with the precious help provided by Steve cause im bulding my HC based on NGX with OC cards.I have found only some readouts from APU status led, APU EGT values and so on... but nothing about MIP annunciators and others. Im waiting for NGX SDK as other people. This is why im interesting about what you are doing ( im not a programmer or developer ... ) So could be cool share infos whit you guys, If you agree.I do confirm that SICO can assign virtual joy read by FSUIP ( My OvH toggles work with them and macros ) and it seems that SICO can call LUA commands from its scrips. That could be cool whit led status and switches/butttons and so on ( for the readable data of course )Best Regards,FRancesco Edited January 6, 201214 yr by az1228 Francesco GattaManaging Director / Media Royaldutchvirtual.com
January 7, 201214 yr Hey guys,I'm a 24-year-old brazilian virtual pilot and I'm having trouble to use my Goflight MCP pro with PMDG 737-ngx. I've already tried all your suggestions and it still doesn't work. I have FSX with SP1 and SP2 instaled, I have the 737 NGX 800 and 900 instaled and also 600 and 700 all up to date.I'dlike to ask few questions:1. Which FSUIPC version should I use?2. What changes do I need to do in FSUIPC to make it work?3. What file NGX_AUTO should I use?My e-mail is [email protected]Thanx,xoxoxoxoxTiciana
January 7, 201214 yr Author Hey guys,I'm a 24-year-old brazilian virtual pilot and I'm having trouble to use my Goflight MCP pro with PMDG 737-ngx. I've already tried all your suggestions and it still doesn't work. I have FSX with SP1 and SP2 instaled, I have the 737 NGX 800 and 900 instaled and also 600 and 700 all up to date.I'dlike to ask few questions:1. Which FSUIPC version should I use?2. What changes do I need to do in FSUIPC to make it work?3. What file NGX_AUTO should I use?My e-mail is [email protected]Thanx,xoxoxoxoxTicianaHi Ticiana,The file you need is the avsim library. Search for "mcp" and you will see it listed. Instructions are in the file. There is also this thread which contains support info. Please read the last few posts since the file needs some lines changed following changes in FSUIPC.http://forum.avsim.n...e/page__st__100Just download the latest FSUIPC version. There is a link in the readme file in the MCP download.Best wishesSteve Edited January 7, 201214 yr by Steveo38 Stephen Munn
January 15, 201214 yr Hi guys...as per Dietmar data how should be wrote my lua autobrake script, something like this? (Lua script needs to call my virtual joystick buttons on FSUIPC )If you get 5 mins could you help me testing this? function NGX_AUTOBRAKE_OFF ()if ipc.readLvar('ngx_switch_460_a') == 0 thenipc.control(70092, 16384)DspShow ("ABRK", "OFF")elseif ipc.readLvar('ngx_switch_460_a') == 10 thenDspShow ("ABRK", "OFF")elseif ipc.readLvar('ngx_switch_460_a') == 20 thenipc.control(70092, 8192)DspShow ("ABRK", "OFF")elseif ipc.readLvar('ngx_switch_460_a') == 30 thenipc.control(70092, 8192)ipc.control(70092, 8192)DspShow ("ABRK", "OFF")elseif ipc.readLvar('ngx_switch_460_a') == 40 thenipc.control(70092, 8192)ipc.control(70092, 8192)ipc.control(70092, 8192)DspShow ("ABRK", "OFF")elseif ipc.readLvar('ngx_switch_460_a') == 50 thenipc.control(70092, 8192)ipc.control(70092, 8192)ipc.control(70092, 8192)ipc.control(70092, 8192)DspShow ("ABRK", "OFF")endendevent.button(65, 5, "OFF")event.button(65, 8, "RTO")event.button(65, 9, "1")event.button(66, 15, "2")event.button(65, 6, "3")event.button(65, 17, "MAX")Thanks,Francesco Francesco GattaManaging Director / Media Royaldutchvirtual.com
January 15, 201214 yr I've also found this...from Linda forum-- ## Autobrake ###############function NGX_AUTOBRAKE_inc () ipc.control(70092, 16384) NGX_AUTOBRAKE_show ()endfunction NGX_AUTOBRAKE_dec () ipc.control(70092, 8192) NGX_AUTOBRAKE_show ()endfunction NGX_AUTOBRAKE_show () if ipc.readLvar('ngx_switch_460_a') == 0 then DspShow ("ABRK", "RTO") elseif ipc.readLvar('ngx_switch_460_a') == 10 then DspShow ("ABRK", "OFF") elseif ipc.readLvar('ngx_switch_460_a') == 20 then DspShow ("ABRK", "1") elseif ipc.readLvar('ngx_switch_460_a') == 30 then DspShow ("ABRK", "2") elseif ipc.readLvar('ngx_switch_460_a') == 40 then DspShow ("ABRK", "3") elseif ipc.readLvar('ngx_switch_460_a') == 50 then DspShow ("ABRK", "MAX") endendbut how in the script call the buttons ? as i did in the previous scripts addingevent.button(65, 5, "OFF")event.button(65, 8, "RTO")event.button(65, 9, "1")event.button(66, 15, "2")event.button(65, 6, "3")event.button(65, 17, "MAX")is this enought ?Regards,Francesco Francesco GattaManaging Director / Media Royaldutchvirtual.com
January 15, 201214 yr Hi Francesco,just to explain what I did. I wrote for each "Autobrake-Position" one function.via "if ipc.readLvar('ngx_switch_460_a') == 0, 10, 20, ... " I read out the current knob position in the simulator.Then I do the required steps up via "ipc.control(70092, 16384)" or down via "ipc.control(70092, 8192)" tothe position I selected with my knob on the BU0836 board ( works like a joystick board).So overall it is:function NGX_AUTOBRAKE_RTO () if ipc.readLvar('ngx_switch_460_a') == 0 then elseif ipc.readLvar('ngx_switch_460_a') == 10 then ipc.control(70092, 8192) elseif ipc.readLvar('ngx_switch_460_a') == 20 then ipc.control(70092, 8192) ipc.control(70092, 8192) elseif ipc.readLvar('ngx_switch_460_a') == 30 then ipc.control(70092, 8192) ipc.control(70092, 8192) ipc.control(70092, 8192) elseif ipc.readLvar('ngx_switch_460_a') == 40 then ipc.control(70092, 8192) ipc.control(70092, 8192) ipc.control(70092, 8192) ipc.control(70092, 8192) elseif ipc.readLvar('ngx_switch_460_a') == 50 then ipc.control(70092, 8192) ipc.control(70092, 8192) ipc.control(70092, 8192) ipc.control(70092, 8192) ipc.control(70092, 8192) endendfunction NGX_AUTOBRAKE_OFF () if ipc.readLvar('ngx_switch_460_a') == 0 then ipc.control(70092, 16384) elseif ipc.readLvar('ngx_switch_460_a') == 10 then elseif ipc.readLvar('ngx_switch_460_a') == 20 then ipc.control(70092, 8192) elseif ipc.readLvar('ngx_switch_460_a') == 30 then ipc.control(70092, 8192) ipc.control(70092, 8192) elseif ipc.readLvar('ngx_switch_460_a') == 40 then ipc.control(70092, 8192) ipc.control(70092, 8192) ipc.control(70092, 8192) elseif ipc.readLvar('ngx_switch_460_a') == 50 then ipc.control(70092, 8192) ipc.control(70092, 8192) ipc.control(70092, 8192) ipc.control(70092, 8192) endendfunction NGX_AUTOBRAKE_1 () if ipc.readLvar('ngx_switch_460_a') == 0 then ipc.control(70092, 16384) ipc.control(70092, 16384) DspShow ("ABRK", "1") elseif ipc.readLvar('ngx_switch_460_a') == 10 then ipc.control(70092, 16384) DspShow ("ABRK", "1") elseif ipc.readLvar('ngx_switch_460_a') == 20 then DspShow ("ABRK", "1") elseif ipc.readLvar('ngx_switch_460_a') == 30 then ipc.control(70092, 8192) DspShow ("ABRK", "1") elseif ipc.readLvar('ngx_switch_460_a') == 40 then ipc.control(70092, 8192) ipc.control(70092, 8192) DspShow ("ABRK", "1") elseif ipc.readLvar('ngx_switch_460_a') == 50 then ipc.control(70092, 8192) ipc.control(70092, 8192) ipc.control(70092, 8192) DspShow ("ABRK", "1") endendfunction NGX_AUTOBRAKE_2 () if ipc.readLvar('ngx_switch_460_a') == 0 then ipc.control(70092, 16384) ipc.control(70092, 16384) ipc.control(70092, 16384) DspShow ("ABRK", "2") elseif ipc.readLvar('ngx_switch_460_a') == 10 then ipc.control(70092, 16384) ipc.control(70092, 16384) DspShow ("ABRK", "2") elseif ipc.readLvar('ngx_switch_460_a') == 20 then ipc.control(70092, 16384) DspShow ("ABRK", "2") elseif ipc.readLvar('ngx_switch_460_a') == 30 then DspShow ("ABRK", "2") elseif ipc.readLvar('ngx_switch_460_a') == 40 then ipc.control(70092, 8192) DspShow ("ABRK", "2") elseif ipc.readLvar('ngx_switch_460_a') == 50 then ipc.control(70092, 8192) ipc.control(70092, 8192) DspShow ("ABRK", "2") endendfunction NGX_AUTOBRAKE_3 () if ipc.readLvar('ngx_switch_460_a') == 0 then ipc.control(70092, 16384) ipc.control(70092, 16384) ipc.control(70092, 16384) ipc.control(70092, 16384) DspShow ("ABRK", "3") elseif ipc.readLvar('ngx_switch_460_a') == 10 then ipc.control(70092, 16384) ipc.control(70092, 16384) ipc.control(70092, 16384) DspShow ("ABRK", "3") elseif ipc.readLvar('ngx_switch_460_a') == 20 then ipc.control(70092, 16384) ipc.control(70092, 16384) DspShow ("ABRK", "3") elseif ipc.readLvar('ngx_switch_460_a') == 30 then ipc.control(70092, 16384) DspShow ("ABRK", "3") elseif ipc.readLvar('ngx_switch_460_a') == 40 then DspShow ("ABRK", "3") elseif ipc.readLvar('ngx_switch_460_a') == 50 then ipc.control(70092, 8192) DspShow ("ABRK", "3") endendfunction NGX_AUTOBRAKE_MAX () if ipc.readLvar('ngx_switch_460_a') == 0 then ipc.control(70092, 16384) ipc.control(70092, 16384) ipc.control(70092, 16384) ipc.control(70092, 16384) ipc.control(70092, 16384) DspShow ("ABRK", "MAX") elseif ipc.readLvar('ngx_switch_460_a') == 10 then ipc.control(70092, 16384) ipc.control(70092, 16384) ipc.control(70092, 16384) ipc.control(70092, 16384) DspShow ("ABRK", "MAX") elseif ipc.readLvar('ngx_switch_460_a') == 20 then ipc.control(70092, 16384) ipc.control(70092, 16384) ipc.control(70092, 16384) DspShow ("ABRK", "MAX") elseif ipc.readLvar('ngx_switch_460_a') == 30 then ipc.control(70092, 16384) ipc.control(70092, 16384) DspShow ("ABRK", "MAX") elseif ipc.readLvar('ngx_switch_460_a') == 40 then ipc.control(70092, 16384) DspShow ("ABRK", "MAX") elseif ipc.readLvar('ngx_switch_460_a') == 50 then DspShow ("ABRK", "MAX") endend Unfortunately I am not very familar with your SIOC ant the event.button routine but I assume that if you like to use my routines,your routine must be:event.button(65, 5, "NGX_AUTOBRAKE_OFF")event.button(65, 8, "NGX_AUTOBRAKE_RTO")event.button(65, 9, "NGX_AUTOBRAKE_1")event.button(66, 15, "NGX_AUTOBRAKE_2")event.button(65, 6, "NGX_AUTOBRAKE_3")event.button(65, 17, "NGX_AUTOBRAKE_MAX")Let me know if this will work.GreetingsDietmar Dietmar Kloss PC 1 (Main) - i7, 16 GB RAM, GTX 580, 120 GB SSD for W7, 120 GB SSD for FSX =========- - FSX, Germany VFR, Mega airports EDDM, EDDF, EGLL, German Airports 2+3, PMDG 737 NGX, FSUIPC 4.7 registered, Wideview Server PC 2 (Sideview) - i core 2 quad, 8 GB RAM, GTX 260, FSX, Wideview Client PC 3 (Panels) - AMD E-450, 2GB RAM, Graphik an Mainboard, project magenta GAIFR, RJGC Modul's - Goflight: EFIS, MCP Pro, T8, P8, LGTII, 166, RP48, Leo Bodnar: BU0836X
January 15, 201214 yr Thanks very much Dietmar,what shoud I do for a test, copy it in a txt file called .lua then put it in the module folder and also modify fsuip.ini ?ThanksFrancesco Francesco GattaManaging Director / Media Royaldutchvirtual.com
January 15, 201214 yr Thanks very much Dietmar,what shoud I do for a test, copy it in a txt file called .lua then put it in the module folder and also modify fsuip.ini ?ThanksFrancescoOh I thought your routines are from an already existing LUA file....To be honest - I don't know at the moment how to setup a standalone LUA.I did what you proposed to write something for my GoFlight modules by trying to copy routinesfrom Steve but it has not worked. I could not trigger the buttons....Then I put each of my routine in a separate LUA with the name-methodology "function.LUA" and activated it in the FSUIP.INIAfter this I could see it as a button function in the FSUIPC button assignment.But I did not follow this method since it would have required to write dozents of LUA's.....Therefore I used my GoFlight moduls only for ON/OFF functions (e.g. Lights and AES).I wrote one macro with all the LVar's and then I assigned the buttons via FSUIPC.Let me check SIOC and may be in some days I know more ... or I am desperate as you .. ;-)But at least, test what you mentioned and tell me if it has worked.good luck,Dietmar Dietmar Kloss PC 1 (Main) - i7, 16 GB RAM, GTX 580, 120 GB SSD for W7, 120 GB SSD for FSX =========- - FSX, Germany VFR, Mega airports EDDM, EDDF, EGLL, German Airports 2+3, PMDG 737 NGX, FSUIPC 4.7 registered, Wideview Server PC 2 (Sideview) - i core 2 quad, 8 GB RAM, GTX 260, FSX, Wideview Client PC 3 (Panels) - AMD E-450, 2GB RAM, Graphik an Mainboard, project magenta GAIFR, RJGC Modul's - Goflight: EFIS, MCP Pro, T8, P8, LGTII, 166, RP48, Leo Bodnar: BU0836X
January 15, 201214 yr Author Thanks very much Dietmar,what shoud I do for a test, copy it in a txt file called .lua then put it in the module folder and also modify fsuip.ini ?ThanksFrancescoThe way I do it when developing, is to create a text file in notepad and call it test.lua making sure the .txt extention is removed. I then have a button assigned in FSUIPC that will call test.lua when its pressed and one that kills or stops test.lua. You can do this in the buttons tab on the right hand side. Look for the FS Control tick box and then you will find commands listed as lua test and lua kill test or something similiar. Just assign these commands to the buttons and you can test things out easily. Note, you can call the file anything you like e.g. autobrake.luaIf you run test.lua in a loop your program will run continously until you press the second joystick button that will kill test.lua. e.g.while true do {your code here}endor you can use events which sleep the code and execuite when the specfic event occurs.The same principle can be used to assign small bits of lua code to different buttons and switches. You do not need one big lua file like I used for the MCP, lots of little ones called in the same way as above will work fine.Best wishesSteve Edited January 15, 201214 yr by Steveo38 Stephen Munn
January 15, 201214 yr Author Hi guys...as per Dietmar data how should be wrote my lua autobrake script, something like this? (Lua script needs to call my virtual joystick buttons on FSUIPC )If you get 5 mins could you help me testing this?function NGX_AUTOBRAKE_OFF ()if ipc.readLvar('ngx_switch_460_a') == 0 thenipc.control(70092, 16384)DspShow ("ABRK", "OFF")elseif ipc.readLvar('ngx_switch_460_a') == 10 thenDspShow ("ABRK", "OFF")elseif ipc.readLvar('ngx_switch_460_a') == 20 thenipc.control(70092, 8192)DspShow ("ABRK", "OFF")elseif ipc.readLvar('ngx_switch_460_a') == 30 thenipc.control(70092, 8192)ipc.control(70092, 8192)DspShow ("ABRK", "OFF")elseif ipc.readLvar('ngx_switch_460_a') == 40 thenipc.control(70092, 8192)ipc.control(70092, 8192)ipc.control(70092, 8192)DspShow ("ABRK", "OFF")elseif ipc.readLvar('ngx_switch_460_a') == 50 thenipc.control(70092, 8192)ipc.control(70092, 8192)ipc.control(70092, 8192)ipc.control(70092, 8192)DspShow ("ABRK", "OFF")endendevent.button(65, 5, "OFF")event.button(65, 8, "RTO")event.button(65, 9, "1")event.button(66, 15, "2")event.button(65, 6, "3")event.button(65, 17, "MAX")Thanks,FrancescoHi Francesco,Does LINDA recognise your device, if so you just need to assign the LINDA commands to each button. If not, the above code has LINDA specific calls being made which need to be removed. Namely, all the DspShow commands.You then need to assign the lua file to a joystick button as discussed previously. Turn on LUA logging and see what happens. If it doesn't work look in the log file created in the modules directly named as per your lua file e.g. test.lua will have a log file of test.logBest wishesSteve Edited January 15, 201214 yr by Steveo38 Stephen Munn
January 24, 201214 yr Thanks very much Dietmar,what shoud I do for a test, copy it in a txt file called .lua then put it in the module folder and also modify fsuip.ini ?ThanksFrancescoHi Francesco,could you get some success? Here is a further hint.I found a page with a brilliant Lua Tutorial.Looke at: http://www.anadrac.com/FSUIPC-Lua-Tutorial/index.htmlIt describes Lua and also the integration into FSUIPC that simplethat even me ( an old guy who wrote last time his own SW during BASIC and TurboPascal times 25 years ago.....)could understand it. In the meantime I'm also a bit familar with SIOC. I have the OC USB-Servo and LED output board and I alreadycan control the Flaps indicator gauge incl. the LED's. Unfortunately SIOC does not read Lvar's. Therefore some times you needto set an FSX offset via a Lua script, that NGX does not use and then read it via SIOC to control a LED. Not that straight forward but a solution until PMDG will publish an SDK.good luckDietmar Dietmar Kloss PC 1 (Main) - i7, 16 GB RAM, GTX 580, 120 GB SSD for W7, 120 GB SSD for FSX =========- - FSX, Germany VFR, Mega airports EDDM, EDDF, EGLL, German Airports 2+3, PMDG 737 NGX, FSUIPC 4.7 registered, Wideview Server PC 2 (Sideview) - i core 2 quad, 8 GB RAM, GTX 260, FSX, Wideview Client PC 3 (Panels) - AMD E-450, 2GB RAM, Graphik an Mainboard, project magenta GAIFR, RJGC Modul's - Goflight: EFIS, MCP Pro, T8, P8, LGTII, 166, RP48, Leo Bodnar: BU0836X
January 27, 201214 yr Hi Francesco,could you get some success? Here is a further hint.I found a page with a brilliant Lua Tutorial.Looke at: http://www.anadrac.c...rial/index.htmlIt describes Lua and also the integration into FSUIPC that simplethat even me ( an old guy who wrote last time his own SW during BASIC and TurboPascal times 25 years ago.....)could understand it. In the meantime I'm also a bit familar with SIOC. I have the OC USB-Servo and LED output board and I alreadycan control the Flaps indicator gauge incl. the LED's. Unfortunately SIOC does not read Lvar's. Therefore some times you needto set an FSX offset via a Lua script, that NGX does not use and then read it via SIOC to control a LED. Not that straight forward but a solution until PMDG will publish an SDK.good luckDietmarHi Dietmar, unfortunately no success.Thanks for posting the amazing Linda link, really appreciated !Regards,FRancesco Francesco GattaManaging Director / Media Royaldutchvirtual.com
Create an account or sign in to comment