alan140 Posted May 2, 2012 Report Posted May 2, 2012 Hi i have Version 4.823 by Pete Dowson, im trying to configurate saitek multipanel with pmdg ngx via offset configuration, i already read the information about PMDG 737NGX external connection SDK // and offset for pmdg my question is how i must do to configurate this offset? thanks
Pete Dowson Posted May 2, 2012 Report Posted May 2, 2012 i have Version 4.823 by Pete Dowson The currently supported version is 4.827. im trying to configurate saitek multipanel with pmdg ngx via offset configuration, i already read the information about PMDG 737NGX external connection SDK// and offset for pmdg my question is how i must do to configurate this offset? What's is this "Saitek Multipanel" intended to do for you? The PMDG mapped offsets for the 737NGX are only for information OUT of the NGX, not controlling it. What driver program have you got which is able to send that information to this panel of yours? Are you writing one or using someone else's? FSUIPC is not a hardware driver and knows nothing about your "multipanel". If it looks like a reguiar joystick device then FSUIPC can be used, like FSX, to program the buttons and switches, but that would not be using offsets mapped to 737NGX outputs. Regards Pete
alan140 Posted May 2, 2012 Author Report Posted May 2, 2012 Hello pete I am using spad to configurate the offset but i cant make it work, i select in the fsuipc buttons and switches, offset by word set, the offset parameter for hdg, or other function and theres no result, my question is there any chance to configure the offset to make the sáitek multipanel to work with pmdg ngx? Thanks
Pete Dowson Posted May 2, 2012 Report Posted May 2, 2012 I am using spad to configurate the offset but i cant make it work, i select in the fsuipc buttons and switches, offset by word set, the offset parameter for hdg, or other function and theres no result, my question is there any chance to configure the offset to make the sáitek multipanel to work with pmdg ngx? There are no offsets that I know of for controlling PMDG 737NGX values. The offsets mapped are READ ONLY as clearly stated. They provide information FROM the aircraft, not control of the aircraft! This is made clear in the document. To control the PMDG 737NGX you assign to its controls. Every function and value has a control number, which you can assign. Things like the Heading would be set by a control number and a parameter. As I said in the offset list document, the control numbers are all obtained from the .h file in the PMDG 737NGX SDK installed by their update. Regards Pete
Billydragon Posted May 4, 2012 Report Posted May 4, 2012 Hello pete I am using spad to configurate the offset but i cant make it work, i select in the fsuipc buttons and switches, offset by word set, the offset parameter for hdg, or other function and theres no result, my question is there any chance to configure the offset to make the sáitek multipanel to work with pmdg ngx? Thanks You can use Spad + FSUIPC to control 737NGX. Try my Lua files. PMDG737NGX_AP.LUA -- PMDG NGX737 module v. 1.4 -- -- Jan 2012 -- ## Autopilot switches ############### meters2feet = 100/2.54/12 feet2meters = 12*2.54/100 function NGX_AP_FD1_toggle () ipc.control(70010, 536870912) ipc.control(70010, 131072) end --function NGX_AP_FD1_on () if ipcPARAM == 1 then if ipc.readLvar('ngx_switch_378_a') == 100 then NGX_AP_FD1_toggle () end end --function NGX_AP_FD1_off () if ipcPARAM == 2 then if ipc.readLvar('ngx_switch_378_a') == 0 then NGX_AP_FD1_toggle () end end function NGX_AP_FD2_toggle () ipc.control(70039, 536870912) ipc.control(70039, 131072) end --function NGX_AP_FD2_on () if ipcPARAM == 3 then if ipc.readLvar('ngx_switch_407_a') == 100 then NGX_AP_FD2_toggle () end end --function NGX_AP_FD2_off () if ipcPARAM == 4 then if ipc.readLvar('ngx_switch_407_a') == 0 then NGX_AP_FD2_toggle () end end --function NGX_AP_FD_both_on () if ipcPARAM == 5 then if ipc.readLvar('ngx_switch_378_a') == 100 then NGX_AP_FD1_toggle () end if ipc.readLvar('ngx_switch_407_a') == 100 then NGX_AP_FD2_toggle () end end --function NGX_AP_FD_both_off () if ipcPARAM == 6 then if ipc.readLvar('ngx_switch_378_a') == 0 then NGX_AP_FD1_toggle () end if ipc.readLvar('ngx_switch_407_a') == 0 then NGX_AP_FD2_toggle () end end function NGX_AP_ATHR_toggle () ipc.control(70012, 536870912) ipc.control(70012, 131072) end --function NGX_AP_ATHR_arm () if ipcPARAM == 7 then if ipc.readLvar('ngx_switch_380_a') == 100 then NGX_AP_ATHR_toggle () end end --function NGX_AP_ATHR_off () if ipcPARAM == 8 then if ipc.readLvar('ngx_switch_380_a') == 0 then NGX_AP_ATHR_toggle () end end function NGX_AP_MASTER_toggle () ipc.control(70038, 536870912) ipc.control(70038, 131072) end --function NGX_AP_MASTER_on () if ipcPARAM == 9 then if ipc.readLvar('ngx_switch_406_a') == 100 then NGX_AP_MASTER_toggle () end end --function NGX_AP_MASTER_off () if ipcPARAM == 10 then if ipc.readLvar('ngx_switch_406_a') == 0 then NGX_AP_MASTER_toggle () end end function NGX_ATHR_soft_disconnect () ipc.writeLvar('ngx_switch_682_a', 100); ipc.control(65860, 536870912) ipc.sleep(150); ipc.writeLvar('ngx_switch_682_a', 0); DspShow ("ATHR", "soft") end function NGX_AP_soft_disconnect () ipc.writeLvar('ngx_switch_1004_a', 100); ipc.control(65580, 536870912) ipc.sleep(150); ipc.writeLvar('ngx_switch_1004_a', 0); DspShow (" AP ", "soft") end function NGX_AP_TOGA () ipc.control(65861, 536870912) DspShow (" AP ", "TOGA") end -- ## Autopilot Dials ############### function NGX_AP_CRSL_show () ipc.sleep(50) OBS1 = ipc.readLvar("L:ngx_CRSwindowL") if _MCP1 () then DspShow("CRSL", OBS1) else DspCRS(OBS1) end end function NGX_AP_CRSR_show () ipc.sleep(50) OBS2 = ipc.readLvar("L:ngx_CRSwindowR") if _MCP1 () then DspShow("CRSR", OBS2) else DspCRS(OBS2) end end --function NGX_AP_CRSL_inc () if ipcPARAM == 11 then ipc.control(70008, 16384) --NGX_AP_CRSL_show () end function NGX_AP_CRSL_incfast () local i for i = 1, 4 do ipc.control(70008, 16384) end --NGX_AP_CRSL_show () end --function NGX_AP_CRSL_dec () if ipcPARAM == 12 then ipc.control(70008, 8192) --NGX_AP_CRSL_show () end function NGX_AP_CRSL_decfast () local i for i = 1, 4 do ipc.control(70008, 8192) end NGX_AP_CRSL_show () end function NGX_AP_CRSR_inc () ipc.control(70041, 16384) NGX_AP_CRSR_show () end function NGX_AP_CRSR_incfast () local i for i = 1, 4 do ipc.control(70041, 16384) end NGX_AP_CRSR_show () end function NGX_AP_CRSR_dec () ipc.control(70041, 8192) NGX_AP_CRSR_show () end function NGX_AP_CRSR_decfast () local i for i = 1, 4 do ipc.control(70041, 8192) end NGX_AP_CRSR_show () end function NGX_AP_CRS_LR_sync () -- linking to the current DME selected mcp_crs_mode = RADIOS_SUBMODE end function NGX_AP_CRS_LR_toggle () -- toggling value form 1 to 2 -- 1 - left CRS, 2 - right CRS if _MCP1() then -- manual toggling mcp_crs_mode = 3 - mcp_crs_mode else -- linking to the current DME selected mcp_crs_mode = RADIOS_SUBMODE end if _MCP1 () then if mcp_crs_mode == 1 then DspShow('CRS', 'LEFT') else DspShow('CRS', 'RGHT') end end end function NGX_AP_CRS_LR_inc () if mcp_crs_mode == 1 then NGX_AP_CRSL_inc () else NGX_AP_CRSR_inc () end end function NGX_AP_CRS_LR_incfast () if mcp_crs_mode == 1 then NGX_AP_CRSL_incfast () else NGX_AP_CRSR_incfast () end end function NGX_AP_CRS_LR_dec () if mcp_crs_mode == 1 then NGX_AP_CRSL_dec () else NGX_AP_CRSR_dec () end end function NGX_AP_CRS_LR_decfast () if mcp_crs_mode == 1 then NGX_AP_CRSL_decfast () else NGX_AP_CRSR_decfast () end end function NGX_AP_SPD_show () ipc.sleep(50) ngx_spd = ipc.readLvar("L:ngx_SPDwindow") if ngx_spd < 0 then ngx_spd = 0 end ipc.writeUW(0x07E2,ngx_spd) end --function NGX_AP_SPD_inc () if ipcPARAM == 13 then ipc.control(70016, 16384) NGX_AP_SPD_show () end function NGX_AP_SPD_incfast () local i for i = 1, 4 do ipc.control(70016, 16384) end NGX_AP_SPD_show () end --function NGX_AP_SPD_dec () if ipcPARAM == 14 then ipc.control(70016, 8192) NGX_AP_SPD_show () end function NGX_AP_SPD_decfast () local i for i = 1, 4 do ipc.control(70016, 8192) end NGX_AP_SPD_show () end function NGX_AP_HDG_show () ipc.sleep(50) local ngx_hdg = ipc.readLvar("L:ngx_HDGwindow") ipc.writeUW(0x07CC, ngx_hdg) end function NGX_AP_HDG_BANK_toggle () -- toggling value form 1 to 2 -- 1 - HDG, 2 - BANK mcp_hdg_mode = 3 - mcp_hdg_mode if mcp_hdg_mode == 1 then DspShow('HDG', '--') else NGX_AP_BANK_show () end end --function NGX_AP_HDG_inc () if ipcPARAM == 15 then ipc.control(70022, 16384) --NGX_AP_BANK_inc () --NGX_AP_HDG_show () end function NGX_AP_HDG_incfast () if mcp_hdg_mode == 1 then local i for i = 1, 4 do ipc.control(70022, 16384) end else NGX_AP_BANK_inc () end NGX_AP_HDG_show () end --function NGX_AP_HDG_dec () if ipcPARAM == 16 then ipc.control(70022, 8192) --NGX_AP_BANK_dec () --NGX_AP_HDG_show () end function NGX_AP_HDG_decfast () if mcp_hdg_mode == 1 then local i for i = 1, 4 do ipc.control(70022, 8192) end else NGX_AP_BANK_dec () end NGX_AP_HDG_show () end function NGX_AP_BANK_show () if ipc.readLvar('ngx_switch_389_a') == 0 then DspShow ("BANK", " 10") elseif ipc.readLvar('ngx_switch_389_a') == 10 then DspShow ("BANK", " 15") elseif ipc.readLvar('ngx_switch_389_a') == 20 then DspShow ("BANK", " 20") elseif ipc.readLvar('ngx_switch_389_a') == 30 then DspShow ("BANK", " 25") elseif ipc.readLvar('ngx_switch_389_a') == 40 then DspShow ("BANK", " 30") end end function NGX_AP_BANK_inc () ipc.control(70021, -2147483648) ipc.control(70021, 524288) NGX_AP_BANK_show () end function NGX_AP_BANK_dec () ipc.control(70021, 536870912) ipc.control(70021, 131072) NGX_AP_BANK_show () end function NGX_AP_ALT_show () local meters2feet = 100/2.54/12 local feet2meters = 12*2.54/100 ipc.sleep(50) local ngx_alt = ipc.readLvar("L:ngx_ALTwindow") -- update bug local oalt = math.floor(ipc.readUD(0x07D4)*meters2feet/65536 + 0.5) if (ngx_alt ~= oalt) then ipc.writeUD(0x07D4, math.floor(ngx_alt*feet2meters*65536 + 0.5)) end end --function NGX_AP_ALT_inc () if ipcPARAM == 17 then ipc.control(70032, 16384) --NGX_AP_ALT_show () end function NGX_AP_ALT_incfast () local i for i = 1, 4 do ipc.control(70032, 16384) end NGX_AP_ALT_show () end --function NGX_AP_ALT_dec () if ipcPARAM == 18 then ipc.control(70032, 8192) --NGX_AP_ALT_show () end function NGX_AP_ALT_decfast () local i for i = 1, 4 do ipc.control(70032, 8192) end NGX_AP_ALT_show () end --function NGX_AP_VS_inc () if ipcPARAM == 19 then ipc.control(70033, 8192) --NGX_AP_VS_show () end --function NGX_AP_VS_dec () if ipcPARAM == 20 then ipc.control(70033, 16384) --NGX_AP_VS_show () end function NGX_AP_VS_show () ipc.sleep(50) ngx_vvs = ipc.readLvar("L:ngx_VSwindow") local vvs = ngx_vvs if vvs == -20000 then vvs = 0 end if _MCP1 () then local val = tostring(math.abs(vvs / 10)) while string.len(val) < 3 do val = '0' .. val end if vvs == 0 then val = ' 00 ' elseif vvs > 0 then val = '+' .. val else val = '-' .. val end DspShow (" VS ", val) else DspVVS(vvs/100) end end -- ## Autopilot buttons ############### --function NGX_AP_N1 () if ipcPARAM == 21 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_381_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_381_a", sa) end ipc.control(70013, 536870912) ipc.control(70013, 131072) ipc.sleep(50) end --function NGX_AP_SPEED () if ipcPARAM == 22 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_382_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_382_a", sa) end ipc.control(70014, 536870912) ipc.control(70014, 131072) ipc.sleep(50) end --function NGX_AP_CO () if ipcPARAM == 23 then ipc.control(70015, 536870912) ipc.control(70015, 131072) --DspShow (" SPD", " C/O") end --function NGX_AP_SPD_INTV () if ipcPARAM == 24 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_383_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_383_a", sa) end ipc.control(70019, 536870912) ipc.control(70019, 131072) --DspShow (" SPD", "INTV") end --function NGX_AP_ALT_INTV () if ipcPARAM == 24 then ipc.control(70517, 536870912) ipc.control(70517, 131072) --DspShow (" ALT", "INTV") end --function NGX_AP_VNAV () if ipcPARAM == 25 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_386_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_386_a", sa) end ipc.control(70018, 536870912) ipc.control(70018, 131072) ipc.sleep(50) end --function NGX_AP_LVLCHG () if ipcPARAM == 26 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_391_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_391_a", sa) end ipc.control(70023, 536870912) ipc.control(70023, 131072) ipc.sleep(50) end --function NGX_AP_HDGSEL () if ipcPARAM == 27 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_392_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_392_a", sa) end ipc.control(70024, 536870912) ipc.control(70024, 131072) ipc.sleep(50) end --function NGX_AP_LNAV () if ipcPARAM == 28 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_397_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_397_a", sa) end ipc.control(70029, 536870912) ipc.control(70029, 131072) ipc.sleep(50) end --function NGX_AP_VORLOC () if ipcPARAM == 29 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_396_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_396_a", sa) end ipc.control(70028, 536870912) ipc.control(70028, 131072) -- DspShow (" VOR", " LOC") end --function NGX_AP_APP () if ipcPARAM == 30 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_393_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_393_a", sa) end ipc.control(70025, 536870912) ipc.control(70025, 131072) --DspShow (" AP ", " APP") end --function NGX_AP_ALTHLD () if ipcPARAM == 31 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_394_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_394_a", sa) end ipc.control(70026, 536870912) ipc.control(70026, 131072) ipc.sleep(50) end --function NGX_AP_VS () if ipcPARAM == 32 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_395_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_395_a", sa) end ipc.control(70027, 536870912) ipc.control(70027, 131072) ipc.sleep(50) end --function NGX_AP_CMDA_toggle () if ipcPARAM == 33 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_402_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_402_a", sa) end ipc.control(70034, 536870912) ipc.control(70034, 131072) --DspShow (" AP ", "CMDA") end --function NGX_AP_CMDB_toggle () if ipcPARAM == 34 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_403_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_403_a", sa) end ipc.control(70035, 536870912) ipc.control(70035, 131072) --DspShow (" AP ", "CMDB") end --function NGX_AP_CWSA () if ipcPARAM == 35 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_404_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_404_a", sa) end ipc.control(70036, 536870912) ipc.control(70036, 131072) --DspShow (" AP ", "CWSA") end --function NGX_AP_CWSB () if ipcPARAM == 36 then for sa = 1, 100, 25 do ipc.writeLvar("ngx_switch_405_a", sa) end for sa = 100, 0, -25 do ipc.writeLvar("ngx_switch_405_a", sa) end ipc.control(70029, 536870912) ipc.control(70029, 131072) --DspShow (" AP ", "CWSB") end --function NGX_EFIS_ND_MODE_inc () if ipcPARAM == 37 then ipc.control(69991, 16384) end --function NGX_EFIS_ND_MODE_dec () if ipcPARAM == 38 then ipc.control(69991, 8192) end --function NGX_EFIS_ND_RNG_inc () if ipcPARAM == 39 then ipc.control(69993, 16384) end --function NGX_EFIS_ND_RNG_dec () if ipcPARAM == 40 then ipc.control(69993, 8192) end --function NGX_GEAR_up () if ipcPARAM == 41 then ipc.control(70087, -2147483648) end --function NGX_GEAR_down () if ipcPARAM == 42 then ipc.control(70087, 536870912) end And PMDG737NGX_OVH.LUA -- PMDG NGX737 module v. 1.4 -- -- Jan 2012 -- ## Lights, external ############### function NGX_LAND_FIXED_R_on () if ipc.readLvar('ngx_switch_114_a') == 0 then ipc.control(69746, 536870912) end end function NGX_LAND_FIXED_R_off () if ipc.readLvar('ngx_switch_114_a') == 100 then ipc.control(69746, -2147483648) end end function NGX_LAND_FIXED_L_on () if ipc.readLvar('ngx_switch_113_a') == 0 then ipc.control(69745, 536870912) end end function NGX_LAND_FIXED_L_off () if ipc.readLvar('ngx_switch_113_a') == 100 then ipc.control(69745, -2147483648) end end function NGX_LAND_FIXED_BOTH_on () NGX_LAND_FIXED_L_on () ipc.sleep(100) NGX_LAND_FIXED_R_on () end function NGX_LAND_FIXED_BOTH_off () NGX_LAND_FIXED_L_off () ipc.sleep(100) NGX_LAND_FIXED_R_off () end function NGX_LAND_RETR_R_on () ipc.control(69744, 536870912) ipc.control(69744, 536870912) end function NGX_LAND_RETR_R_extend () ipc.control(69744, -2147483648) ipc.control(69744, -2147483648) ipc.control(69744, 536870912) end function NGX_LAND_RETR_R_off () ipc.control(69744, -2147483648) ipc.control(69744, -2147483648) end function NGX_LAND_RETR_L_on () ipc.control(69743, 536870912) ipc.control(69743, 536870912) end function NGX_LAND_RETR_L_extend () ipc.control(69743, -2147483648) ipc.control(69743, -2147483648) ipc.control(69743, 536870912) end function NGX_LAND_RETR_L_off () ipc.control(69743, -2147483648) ipc.control(69743, -2147483648) end function NGX_LAND_RETR_BOTH_on () NGX_LAND_RETR_L_on () ipc.sleep(100) NGX_LAND_RETR_R_on () end function NGX_LAND_RETR_BOTH_extend () NGX_LAND_RETR_L_extend () ipc.sleep(100) NGX_LAND_RETR_R_extend () end function NGX_LAND_RETR_BOTH_off () NGX_LAND_RETR_L_off () ipc.sleep(100) NGX_LAND_RETR_R_off () end --function NGX_LAND_ALL_on () if ipcPARAM == 1 then --DspShow ("LAND", "ON") ipc.writeLvar('ngx_switch_110_a', 100); NGX_LAND_RETR_L_on () NGX_LAND_RETR_R_on () NGX_LAND_FIXED_L_on () NGX_LAND_FIXED_R_on () ipc.sleep(100) ipc.writeLvar('ngx_switch_110_a', 0); end --function NGX_LAND_ALL_off () if ipcPARAM == 2 then NGX_LAND_RETR_L_off () ipc.sleep(100) NGX_LAND_RETR_R_off () ipc.sleep(100) NGX_LAND_FIXED_L_off () ipc.sleep(100) NGX_LAND_FIXED_R_off () end function NGX_TURNOFF_LEFT_on () if ipc.readLvar('ngx_switch_115_a') == 0 then ipc.control(69747, 536870912) end end function NGX_TURNOFF_LEFT_off () if ipc.readLvar('ngx_switch_115_a') == 100 then ipc.control(69747, 536870912) end end function NGX_TURNOFF_LEFT_toggle () ipc.control(69747, 536870912) end function NGX_TURNOFF_RIGHT_on () if ipc.readLvar('ngx_switch_116_a') == 0 then ipc.control(69748, 536870912) end end function NGX_TURNOFF_RIGHT_off () if ipc.readLvar('ngx_switch_116_a') == 100 then ipc.control(69748, 536870912) end end function NGX_TURNOFF_RIGHT_toggle () ipc.control(69748, 536870912) end function NGX_TURNOFF_BOTH_on () --if ipcPARAM == 3 then NGX_TURNOFF_LEFT_on () ipc.sleep(100) NGX_TURNOFF_RIGHT_on () end function NGX_TURNOFF_BOTH_off () --if ipcPARAM == 4 then NGX_TURNOFF_LEFT_off () ipc.sleep(100) NGX_TURNOFF_RIGHT_off () end function NGX_TAXI_on () --if ipcPARAM == 5 then if ipc.readLvar('ngx_switch_117_a') == 0 then ipc.control(69749, 536870912) end end function NGX_TAXI_off () --if ipcPARAM == 6 then if ipc.readLvar('ngx_switch_117_a') == 100 then ipc.control(69749, 536870912) end end function NGX_TAXI_toggle () ipc.control(69749, 536870912) end --function NGX_TAXI_ALL_on () if ipcPARAM == 7 then NGX_TURNOFF_LEFT_on () ipc.sleep(100) NGX_TURNOFF_RIGHT_on () ipc.sleep(100) NGX_TAXI_on () end --function NGX_TAXI_ALL_off () if ipcPARAM == 8 then NGX_TURNOFF_LEFT_off () ipc.sleep(100) NGX_TURNOFF_RIGHT_off () ipc.sleep(100) NGX_TAXI_off () end function NGX_TAXI_ALL_toggle () if ipc.readLvar('ngx_switch_117_a') == 0 then NGX_TAXI_ALL_on () else NGX_TAXI_ALL_off () end end function NGX_TURNOFF_BOTH_toggle () NGX_TURNOFF_LEFT_toggle () ipc.sleep(100) NGX_TURNOFF_RIGHT_toggle () end function NGX_LOGO_on () if ipc.readLvar('ngx_switch_122_a') == 0 then ipc.control(69754, 536870912) end end function NGX_LOGO_off () if ipc.readLvar('ngx_switch_122_a') == 100 then ipc.control(69754, 536870912) end end function NGX_LOGO_toggle () if ipc.readLvar('ngx_switch_122_a') == 0 then NGX_LOGO_on () else NGX_LOGO_off () end end --function NGX_NAV_strobe () if ipcPARAM == 9 then ipc.control(69755, -2147483648) ipc.control(69755, -2147483648) end --function NGX_NAV_off () if ipcPARAM == 10 then ipc.control(69755, 536870912) ipc.control(69755, 536870912) ipc.control(69755, -2147483648) end --function NGX_NAV_steady () if ipcPARAM == 11 then ipc.control(69755, 536870912) ipc.control(69755, 536870912) end --function NGX_BEACON_on () if ipcPARAM == 14 then if ipc.readLvar('ngx_switch_124_a') == 0 then ipc.control(69756, 536870912) end end --function NGX_BEACON_off () if ipcPARAM == 15 then if ipc.readLvar('ngx_switch_124_a') == 100 then ipc.control(69756, 536870912) end end function NGX_BEACON_toggle () if ipc.readLvar('ngx_switch_124_a') == 0 then NGX_BEACON_on () else NGX_BEACON_off () end end function NGX_WING_on () if ipc.readLvar('ngx_switch_125_a') == 0 then ipc.control(69757, 536870912) DspShow ("WING", "ON") end end function NGX_WING_off () if ipc.readLvar('ngx_switch_125_a') == 100 then ipc.control(69757, 536870912) DspShow ("WING", "OFF") end end function NGX_WING_toggle () if ipc.readLvar('ngx_switch_125_a') == 0 then NGX_WING_on () else NGX_WING_off () end end function NGX_WHEEL_WELL_on () if ipc.readLvar('ngx_switch_126_a') == 0 then ipc.control(69758, 536870912) DspShow ("WELL", "ON") end end function NGX_WHEEL_WELL_off () if ipc.readLvar('ngx_switch_126_a') == 100 then ipc.control(69758, 536870912) DspShow ("WELL", "OFF") end end function NGX_WHEEL_WELL_toggle () if ipc.readLvar('ngx_switch_126_a') == 0 then NGX_WHEEL_WELL_on () else NGX_WHEEL_WELL_off () end end function NGX_LOGO_and_NAV_steady () NGX_LOGO_on () NGX_NAV_steady () end function NGX_LOGO_and_NAV_off () NGX_LOGO_off () NGX_NAV_off () end -- ## Lights, cockpit ############### function NGX_EMER_lights_armed () ELvar = ipc.readLvar("ngx_switch_100_a") ELcap = ipc.readLvar("ngx_switch_101_a") if ELcap == 100 then ipc.control(69733, 536870912) -- cap end DspShow ("ELgt", "armd") end function NGX_EMER_lights_on () ELvar = ipc.readLvar("ngx_switch_100_a") ELcap = ipc.readLvar("ngx_switch_101_a") if ELcap == 0 then ipc.control(69733, 536870912) -- cap end _sleep(150, 250) ipc.control(69732, 536870912) -- inc ipc.control(69732, 536870912) -- inc DspShow ("ELgt", "on") end function NGX_EMER_lights_off () ELvar = ipc.readLvar("ngx_switch_100_a") ELcap = ipc.readLvar("ngx_switch_101_a") if ELcap == 0 then ipc.control(69733, 536870912) -- cap end _sleep(150, 250) ipc.control(69732, -2147483648) -- dec ipc.control(69732, -2147483648) -- dec DspShow ("ELgt", "off") end function NGX_DOME_dim () ipc.control(69890, -2147483648) ipc.control(69890, 524288) ipc.sleep(100) ipc.control(69890, -2147483648) ipc.control(69890, 524288) end function NGX_DOME_bright () ipc.control(69890, 536870912) ipc.control(69890, 131072) ipc.sleep(100) ipc.control(69890, 536870912) ipc.control(69890, 131072) end function NGX_DOME_off () if ipc.readLvar('ngx_switch_258_a') == 100 then ipc.control(69890, -2147483648) ipc.control(69890, 524288) elseif ipc.readLvar('ngx_switch_258_a') == 0 then ipc.control(69890, 536870912) ipc.control(69890, 131072) end end --function NGX_DOME_cycle () if ipcPARAM == 16 then if ipc.readLvar('ngx_switch_258_a') == 100 then NGX_DOME_off () elseif ipc.readLvar('ngx_switch_258_a') == 50 then NGX_DOME_dim () elseif ipc.readLvar('ngx_switch_258_a') == 0 then NGX_DOME_bright () end end function NGX_FLOOD_PDST_inc () ipc.control(70388, 16384) end function NGX_FLOOD_PDST_dec () ipc.control(70388, 8192) end function NGX_FLOOD_PANEL_inc () ipc.control(69969, 16384) end function NGX_FLOOD_PANEL_dec () ipc.control(69969, 8192) end function NGX_FLOOD_MCP_inc () ipc.control(69970, 16384) end function NGX_FLOOD_MCP_dec () ipc.control(69970, 8192) end function NGX_LIGHT_OVH_inc () ipc.control(69727, 16384) end function NGX_LIGHT_OVH_dec () ipc.control(69727, 8192) end function NGX_LIGHT_CB_inc () ipc.control(69726, 16384) end function NGX_LIGHT_CB_dec () ipc.control(69726, 8192) end function NGX_LIGHT_PDST_inc () ipc.control(70389, 16384) end function NGX_LIGHT_PDST_dec () ipc.control(70389, 8192) end function NGX_LIGHT_PANEL_L_inc () ipc.control(69960, 16384) end function NGX_LIGHT_PANEL_L_dec () ipc.control(69960, 8192) end function NGX_LIGHT_PANEL_R_inc () ipc.control(70142, 16384) end function NGX_LIGHT_PANEL_R_dec () ipc.control(70142, 8192) end function NGX_LIGHT_ALL_show () local brt = ipc.readLvar('ngx_switch_328_a') brt = round(brt / 3) --DspShow ("PANL", tostring(brt) .. '%') end function NGX_LIGHT_ALL_inc () local i for i = 1, 5 do NGX_LIGHT_PANEL_R_inc () NGX_LIGHT_PANEL_L_inc () NGX_LIGHT_PDST_inc () NGX_LIGHT_OVH_inc () NGX_LIGHT_CB_inc () end --NGX_LIGHT_ALL_show () end function NGX_LIGHT_ALL_incfast () local i for i = 1, 20 do NGX_LIGHT_PANEL_R_inc () NGX_LIGHT_PANEL_L_inc () NGX_LIGHT_PDST_inc () NGX_LIGHT_OVH_inc () NGX_LIGHT_CB_inc () end NGX_LIGHT_ALL_show () end function NGX_LIGHT_ALL_dec () local i for i = 1, 5 do NGX_LIGHT_PANEL_R_dec () NGX_LIGHT_PANEL_L_dec () NGX_LIGHT_PDST_dec () NGX_LIGHT_OVH_dec () NGX_LIGHT_CB_dec () end NGX_LIGHT_ALL_show () end function NGX_LIGHT_ALL_decfast () local i for i = 1, 20 do NGX_LIGHT_PANEL_R_dec () NGX_LIGHT_PANEL_L_dec () NGX_LIGHT_PDST_dec () NGX_LIGHT_OVH_dec () NGX_LIGHT_CB_dec () end NGX_LIGHT_ALL_show () end function NGX_FLOOD_ALL_show () local brt = ipc.readLvar('ngx_switch_337_a') brt = round(brt / 3) DspShow ("FLOD", tostring(brt) .. '%') end function NGX_FLOOD_ALL_inc () local i for i = 1, 5 do NGX_FLOOD_MCP_inc () NGX_FLOOD_PDST_inc () NGX_FLOOD_PANEL_inc () end NGX_FLOOD_ALL_show () end function NGX_FLOOD_ALL_incfast () local i for i = 1, 20 do NGX_FLOOD_MCP_inc () NGX_FLOOD_PDST_inc () NGX_FLOOD_PANEL_inc () end NGX_FLOOD_ALL_show () end function NGX_FLOOD_ALL_dec () local i for i = 1, 5 do NGX_FLOOD_MCP_dec () NGX_FLOOD_PDST_dec () NGX_FLOOD_PANEL_dec () end NGX_FLOOD_ALL_show () end function NGX_FLOOD_ALL_decfast () local i for i = 1, 20 do NGX_FLOOD_MCP_dec () NGX_FLOOD_PDST_dec () NGX_FLOOD_PANEL_dec () end NGX_FLOOD_ALL_show () end -- ## Disp. brightness ############### function NGX_DU1_INBD_BRT_inc () ipc.control(69962, 16384) end function NGX_DU1_INBD_BRT_dec () ipc.control(69962, 8192) end function NGX_DU1_OUTBD_BRT_inc () ipc.control(69961, 16384) end function NGX_DU1_OUTBD_BRT_dec () ipc.control(69961, 8192) end function NGX_DU_UPPER_BRT_inc () ipc.control(69966, 16384) end function NGX_DU_UPPER_BRT_dec () ipc.control(69966, 8192) end function NGX_DU_LOWER_BRT_inc () ipc.control(69964, 16384) end function NGX_DU_LOWER_BRT_dec () ipc.control(69964, 8192) end function NGX_DU2_INBD_BRT_inc () ipc.control(70141, 16384) end function NGX_DU2_INBD_BRT_dec () ipc.control(70141, 8192) end function NGX_DU2_OUTBD_BRT_inc () ipc.control(70139, 16384) end function NGX_DU2_OUTBD_BRT_dec () ipc.control(70139, 8192) end function NGX_DU_LEFT_BRT_inc () NGX_DU1_INBD_BRT_inc () NGX_DU1_OUTBD_BRT_inc () DspShow ("DU-L", "BRT+") end function NGX_DU_LEFT_BRT_incfast () local i for i = 1, 5 do NGX_DU1_INBD_BRT_inc () NGX_DU1_OUTBD_BRT_inc () end DspShow ("DU-L", "BRT+") end function NGX_DU_LEFT_BRT_dec () NGX_DU1_INBD_BRT_dec () NGX_DU1_OUTBD_BRT_dec () DspShow ("DU-L", "BRT-") end function NGX_DU_LEFT_BRT_decfast () local i for i = 1, 5 do NGX_DU1_INBD_BRT_dec () NGX_DU1_OUTBD_BRT_dec () end DspShow ("DU-L", "BRT-") end function NGX_DU_CENTER_inc () NGX_DU_UPPER_BRT_inc () NGX_DU_LOWER_BRT_inc () DspShow ("DU-C", "BRT+") end function NGX_DU_CENTER_incfast () local i for i = 1, 5 do NGX_DU_UPPER_BRT_inc () NGX_DU_LOWER_BRT_inc () end DspShow ("DU-C", "BRT+") end function NGX_DU_CENTER_dec () NGX_DU_UPPER_BRT_dec () NGX_DU_LOWER_BRT_dec () DspShow ("DU-C", "BRT-") end function NGX_DU_CENTER_decfast () local i for i = 1, 5 do NGX_DU_UPPER_BRT_dec () NGX_DU_LOWER_BRT_dec () end DspShow ("DU-C", "BRT-") end function NGX_DU_RIGHT_BRT_inc () NGX_DU2_INBD_BRT_inc () NGX_DU2_OUTBD_BRT_inc () DspShow ("DU-R", "BRT+") end function NGX_DU_RIGHT_BRT_incfast () local i for i = 1, 5 do NGX_DU2_INBD_BRT_inc () NGX_DU2_OUTBD_BRT_inc () end DspShow ("DU-R", "BRT+") end function NGX_DU_RIGHT_BRT_dec () NGX_DU2_INBD_BRT_dec () NGX_DU2_OUTBD_BRT_dec () DspShow ("DU-R", "BRT-") end function NGX_DU_RIGHT_BRT_decfast () local i for i = 1, 5 do NGX_DU2_INBD_BRT_dec () NGX_DU2_OUTBD_BRT_dec () end DspShow ("DU-R", "BRT-") end function NGX_DU_LR_BRT_inc () NGX_DU1_INBD_BRT_inc () NGX_DU1_OUTBD_BRT_inc () NGX_DU2_INBD_BRT_inc () NGX_DU2_OUTBD_BRT_inc () DspShow ("DU", "BRT+") end function NGX_DU_LR_BRT_incfast () local i for i = 1, 5 do NGX_DU1_INBD_BRT_inc () NGX_DU1_OUTBD_BRT_inc () NGX_DU2_INBD_BRT_inc () NGX_DU2_OUTBD_BRT_inc () end DspShow ("DU", "BRT+") end function NGX_DU_LR_BRT_dec () NGX_DU1_INBD_BRT_dec () NGX_DU1_OUTBD_BRT_dec () NGX_DU2_INBD_BRT_dec () NGX_DU2_OUTBD_BRT_dec () DspShow ("DU", "BRT-") end function NGX_DU_LR_BRT_decfast () local i for i = 1, 5 do NGX_DU1_INBD_BRT_dec () NGX_DU1_OUTBD_BRT_dec () NGX_DU2_INBD_BRT_dec () NGX_DU2_OUTBD_BRT_dec () end DspShow ("DU", "BRT-") end function NGX_DU_ALL_BRT_show () local brt = ipc.readLvar('ngx_switch_329_a') brt = round(brt / 3) DspShow ("DU", tostring(brt) .. '%') end function NGX_DU_ALL_BRT_inc () NGX_DU1_INBD_BRT_inc () NGX_DU1_OUTBD_BRT_inc () NGX_DU_UPPER_BRT_inc () NGX_DU_LOWER_BRT_inc () NGX_DU2_INBD_BRT_inc () NGX_DU2_OUTBD_BRT_inc () -- DspShow ("DU", "BRT+") NGX_DU_ALL_BRT_show () end function NGX_DU_ALL_BRT_incfast () local i for i = 1, 5 do NGX_DU1_INBD_BRT_inc () NGX_DU1_OUTBD_BRT_inc () NGX_DU_UPPER_BRT_inc () NGX_DU_LOWER_BRT_inc () NGX_DU2_INBD_BRT_inc () NGX_DU2_OUTBD_BRT_inc () end -- DspShow ("DU", "BRT+") NGX_DU_ALL_BRT_show () end function NGX_DU_ALL_BRT_dec () NGX_DU1_INBD_BRT_dec () NGX_DU1_OUTBD_BRT_dec () NGX_DU_UPPER_BRT_dec () NGX_DU_LOWER_BRT_dec () NGX_DU2_INBD_BRT_dec () NGX_DU2_OUTBD_BRT_dec () -- DspShow ("DU", "BRT-") NGX_DU_ALL_BRT_show () end function NGX_DU_ALL_BRT_decfast () local i for i = 1, 5 do NGX_DU1_INBD_BRT_dec () NGX_DU1_OUTBD_BRT_dec () NGX_DU_UPPER_BRT_dec () NGX_DU_LOWER_BRT_dec () NGX_DU2_INBD_BRT_dec () NGX_DU2_OUTBD_BRT_dec () end -- DspShow ("DU", "BRT-") NGX_DU_ALL_BRT_show () end -- ## Disp. modes ############### function NGX_DU1_MAIN_show () if ipc.readLvar('ngx_switch_335_a') == 0 then DspShow ("DUmn", "oPFD") elseif ipc.readLvar('ngx_switch_335_a') == 10 then DspShow ("DUmn", "NORM") elseif ipc.readLvar('ngx_switch_335_a') == 20 then DspShow ("DUmn", "iENG") elseif ipc.readLvar('ngx_switch_335_a') == 30 then DspShow ("DUmn", "iPFD") elseif ipc.readLvar('ngx_switch_335_a') == 40 then DspShow ("DUmn", "iMFD") end end function NGX_DU1_MAIN_inc () ipc.control(69967, -2147483648) ipc.control(69967, 524288) NGX_DU1_MAIN_show () end function NGX_DU1_MAIN_dec () ipc.control(69967, 536870912) ipc.control(69967, 131072) NGX_DU1_MAIN_show () end function NGX_DU2_MAIN_show () if ipc.readLvar('ngx_switch_440_a') == 0 then DspShow ("DUmn", "oPFD") elseif ipc.readLvar('ngx_switch_440_a') == 10 then DspShow ("DUmn", "NORM") elseif ipc.readLvar('ngx_switch_440_a') == 20 then DspShow ("DUmn", "iENG") elseif ipc.readLvar('ngx_switch_440_a') == 30 then DspShow ("DUmn", "iPFD") elseif ipc.readLvar('ngx_switch_440_a') == 40 then DspShow ("DUmn", "iMFD") end end function NGX_DU2_MAIN_inc () ipc.control(70072, -2147483648) ipc.control(70072, 524288) NGX_DU2_MAIN_show () end function NGX_DU2_MAIN_dec () ipc.control(70072, 536870912) ipc.control(70072, 131072) NGX_DU2_MAIN_show () end function NGX_DU1_LOWER_show () if ipc.readLvar('ngx_switch_336_a') == 0 then DspShow ("DUlw", "ENG") elseif ipc.readLvar('ngx_switch_336_a') == 50 then DspShow ("DUlw", "NORM") elseif ipc.readLvar('ngx_switch_336_a') == 100 then DspShow ("DUlw", "ND") end end function NGX_DU1_LOWER_inc () ipc.control(69968, -2147483648) ipc.control(69968, 524288) NGX_DU1_LOWER_show () end function NGX_DU1_LOWER_dec () ipc.control(69968, 536870912) ipc.control(69968, 131072) NGX_DU1_LOWER_show () end function NGX_DU2_LOWER_show () if ipc.readLvar('ngx_switch_441_a') == 0 then DspShow ("DUlw", "ENG") elseif ipc.readLvar('ngx_switch_441_a') == 50 then DspShow ("DUlw", "NORM") elseif ipc.readLvar('ngx_switch_441_a') == 100 then DspShow ("DUlw", "ND") end end function NGX_DU2_LOWER_inc () ipc.control(70073, -2147483648) ipc.control(70073, 524288) NGX_DU2_LOWER_show () end function NGX_DU2_LOWER_dec () ipc.control(70073, 536870912) ipc.control(70073, 131072) NGX_DU2_LOWER_show () end function NGX_DU_LOWER_sys () ipc.control(70094, 536870912) DspShow ("DUlw", "SYS") end function NGX_DU_LOWER_eng () ipc.control(70095, 536870912) DspShow ("DUlw", "ENG") end -- ## Trimmings ############### --function NGX_ELEV_TRIM_up () if ipcPARAM == 18 then ipc.control(65615) --ipc.sleep(150) end --function NGX_ELEV_TRIM_down () if ipcPARAM == 19 then ipc.control(65607) --ipc.sleep(150) end function NGX_ELEV_TRIM_upfast () ipc.control(65615) ipc.sleep(50) ipc.control(65615) ipc.sleep(50) ipc.control(65615) ipc.sleep(50) ipc.control(65615) ipc.sleep(50) ipc.control(65615) ipc.sleep(50) ipc.control(65615) ipc.sleep(50) ipc.control(65615) ipc.sleep(50) ipc.control(65615) ipc.sleep(50) end function NGX_ELEV_TRIM_downfast () ipc.control(65607) ipc.sleep(50) ipc.control(65607) ipc.sleep(50) ipc.control(65607) ipc.sleep(50) ipc.control(65607) ipc.sleep(50) ipc.control(65607) ipc.sleep(50) ipc.control(65607) ipc.sleep(50) ipc.control(65607) ipc.sleep(50) ipc.control(65607) --ipc.sleep(150) end This original from Linda files for PMDG_737NGX i just modify to support Spad with FSUIPC. Just make Spad send every things as Virtual Joystick then Assign buttons to run Lua Script with parameter equivalent to function listed .
alan140 Posted May 4, 2012 Author Report Posted May 4, 2012 This original from Linda files for PMDG_737NGX i just modify to support Spad with FSUIPC. Just make Spad send every things as Virtual Joystick then Assign buttons to run Lua Script with parameter equivalent to function listed . Hi Billydragon, and thanks for the information above i am trying to do everything that you told me and i cant make it work, did you use as default configuration in spad or in the manage files you create a PMDG737NGX_AP directory? well i´´ll keep trying or if you can tell me how is composed your modules files i mean to have an idea thank you
Billydragon Posted May 5, 2012 Report Posted May 5, 2012 This original from Linda files for PMDG_737NGX i just modify to support Spad with FSUIPC. Just make Spad send every things as Virtual Joystick then Assign buttons to run Lua Script with parameter equivalent to function listed . Hi Billydragon, and thanks for the information above i am trying to do everything that you told me and i cant make it work, did you use as default configuration in spad or in the manage files you create a PMDG737NGX_AP directory? well i´´ll keep trying or if you can tell me how is composed your modules files i mean to have an idea thank you you need to make profile like PAYABLE or HEAVY then change all buttons you want to send FSUIPC Virtual button (NOT FSUIPC OFFSET) try click Send Button to FS you can see FSUIPC received as button the assignment it to lua script i post with parameter.
simbio Posted May 5, 2012 Report Posted May 5, 2012 Sorry to chimie If i undesrstand I place PMDG737NGX_AP.LUA inside FSX\Modules then play with virtual joystick to link as control sent when button pressed in FSuipc. But then how i link virtual button to a PMDG action i try to LuaSet PMDG737NGX AP and the use a parameter found on your list but didn't do anyting. What is the correct method Thank you
alan140 Posted May 5, 2012 Author Report Posted May 5, 2012 Sorry to chimie If i undesrstand I place PMDG737NGX_AP.LUA inside FSX\Modules then play with virtual joystick to link as control sent when button pressed in FSuipc. But then how i link virtual button to a PMDG action i try to LuaSet PMDG737NGX AP and the use a parameter found on your list but didn't do anyting. What is the correct method Thank you I tried that too but doesnt work in that way, the thing is to create a new lua file and then assign manually the buttons via spad, as virtual button, in the list above is provided the information to configure it, well other thing that could be interesting is that peter dowson create a new FS MODULE for pmdg ngx as the IFLYMODULE, that works exelent with the saitek multipanel.
Billydragon Posted May 6, 2012 Report Posted May 6, 2012 OK. Step by step as follow: 1. Put file *.lua in FSX/Modules/ folder then restart FSX. 2. SPAD setting to send your buttons as virtual FSUIPC joystick 3. Open FSUIPC in button tab and wait SPAD send button (you can try by click to send in SPAD or real button in Saitek panels) 4. Assignment that button to run LUA PMDG737NGX_AP.LUA (for example) and Parameter need to put number equivalent to function in Lua file. Note: Not all function in my script work because i don't need it. Only functions like: --function NGX_LAND_ALL_on () if ipcPARAM == 1 then --DspShow ("LAND", "ON") ipc.writeLvar('ngx_switch_110_a', 100); NGX_LAND_RETR_L_on () NGX_LAND_RETR_R_on () NGX_LAND_FIXED_L_on () NGX_LAND_FIXED_R_on () ipc.sleep(100) ipc.writeLvar('ngx_switch_110_a', 0); end --function NGX_LAND_ALL_off () if ipcPARAM == 2 then NGX_LAND_RETR_L_off () ipc.sleep(100) NGX_LAND_RETR_R_off () ipc.sleep(100) NGX_LAND_FIXED_L_off () ipc.sleep(100) NGX_LAND_FIXED_R_off () end Let see : if ipcPARAM == 1 then meaning if Parameter=1 you send to LUA PMDG737NGX_OVH.LUA then this button will turn on all Landing light, set Parameter =2 in this button when release will turn Off Landing light as --function NGX_LAND_ALL_off () if ipcPARAM == 2 then ... you can get original files action.lua from LINDA aircaft folder change name to as you want (PMDG737.lua or i seperate t to OVH and AP), find function you want then mark function name, replace it by if ipcPARAM = XX, where XX is number you use as parameter FSUIPC will send when assgnment buttons.
Andydigital Posted May 6, 2012 Report Posted May 6, 2012 Pete will NOT support Saitek hardware directly until someone convinces them to pay Pete what they owe him in licensing fees, they have been illegally using FSUIPC without permission for years.
simbio Posted May 6, 2012 Report Posted May 6, 2012 Pete will NOT support Saitek hardware I think if Peter dosen't want that people ask support for FSUIPC in connection with saitek multipanel, I am shure It would let know everybody and stick a post like someone else has done. Who knows what are the backstage of all this agreement or illegal aspect between company, when you buy staff you can't be aware if there is any info on forums. If I knew about all this problem I wold not buy those panel, you are the only one talking about this illegal permission since i start to search for info to use those panel with addons. Go ahead and post about this manner on all forums that we know like avsim simflight simforum vatsim flightsimworld flightsim just a few if you need support is the best way. OK. Step by step as follow: Got it only Autothrottle dosn't work I think there is an error, as you can arm but not disarm. Thank you.
Andydigital Posted May 6, 2012 Report Posted May 6, 2012 I'm not making this up I assure you, see post number 10 in the thread below. http://forum.simflight.com/topic/67599-fsuipc-saitek-fsx-pro-flight-panels/page__p__436103__hl__+saitek%20+license__fromsearch__1#entry436103
alan140 Posted May 6, 2012 Author Report Posted May 6, 2012 Ok now i can write because i was writing and the forum dont let post
alan140 Posted May 6, 2012 Author Report Posted May 6, 2012 Please i need help with the lua files, i do everything that speedbird told me and now when im trying in option button and switches i choose for example the lua PMDGNGXAP.LU and parameter 15 for HDG but nothing happen, my question is? what lua option i must choose for configure the HDG,ALT,SPEED rotary knobs thanks
Ian P Posted May 6, 2012 Report Posted May 6, 2012 When Pete says he will not add support for Saitek devices, he means that he will not use FSUIPC to directly support them - not that he will not answer users' questions when they are using Saitek devices. What this means is that Pete will not make Saitek devices work better than they do and he will not add any specific functions or controls for them. Also yes, I can confirm that this is a long standing and well known issue. Pete does not choose to publicly go around grinding an axe against Saitek for what happened, so that's up to him. All Andy was doing was making you aware of the situation. Cheers, Ian P. Forum Admin Team.
alan140 Posted May 7, 2012 Author Report Posted May 7, 2012 Got it only Autothrottle dosn't work I think there is an error, as you can arm but not disarm. Thank you. Hi Simbio, can you make it work? because i really want to know if that way works fine like billydragon said, well in that case i will need some help configuring it thanks
simbio Posted May 7, 2012 Report Posted May 7, 2012 Pete does not choose to publicly go around grinding an axe against Saitek for what happened, so that's up to him. All Andy was doing was making you aware of the situation. IMHO FSUIPC is one of the main door to let hardware interact with FS, you can read that many simmer, use it to fix their problem for situation. I think saitek panel and not only have a lot's of handycap on the conception and costumer that payd several hundred euro should be aware of those tedius problem. If there was more public state cosumer will not get trap on those situation and for shure saitek will change is behave. People that start to buy hardware like yoke and panel I think they are flyng more then Fsx aircraft and deal with addon such PMDG. Here a review does it mention about any incompatibility or that the multipanel is not recognize as a standard HID device. http://www.flightsim.com/main/review/appanel.htm Hi Simbio, can you make it work? because i really want to know if that way works fine like billydragon said, well in that case i will need some help configuring it thanks First there are two file on the post from Billydragon One is PMDG737NGX_AP.LUA you must copy and paste from -- PMDG NGX737 module v. 1.4 -- to END The other one is PMDG737NGX_OVH.LUA same story on pasting on the text. Place them in FSX\Modules Normally FSUIPC will recognize them as you start FSX otherwise paste in FSUIPC4.ini those line below [LuaFiles] 1=PMDG737NGX_AP 2=PMDG737NGX_OVH Open spad go to multipanel rotary tab chose FSUIPC Virtual Button Open FSX Go to FSUIPC tab Button+Switches Select FS control and choose PMDG737NGX_AP Click send button to Flight Sim In Parameter of tab Button+Switches field type 15 for HDG clockwise the same that there is in the list from Billydragon if you want you can change the order --function NGX_AP_HDG_inc () if ipcPARAM == 15 then then go ahead with the same method for couter clockwise and for the other function. Hope that help It's similar with the macro method but it's more pawerfull for function like increase fast rotation and other SDK aspect.
Ian P Posted May 7, 2012 Report Posted May 7, 2012 That review is actually a perfect example of very poor reviewing. As you say, the author doesn't mention the lack of ability to use it with anything but default coded aircraft at all, which is a massive ommission. That is exactly the reason I bought a VRinsight M-Panel (more expensive, but a lot better made) after doing some research into the Saitek units. VRi units are not recognised as HIDs either and use their own software to connect, but there are ways of programming them through FSUIPC if you are so inclined. At some point I really do have to try bending the VRi M-Panel to my will and doing LUA/Macro programming for it. I have the virtual serial ports emulator to allow FSUIPC to snatch control, but have just never got around to doing it as other things keep jumping into the "to do" list right at the top! Anyway. Yes, I agree that your point is valid, but whether you want to take that up with Pete on his return is up to you. I won't comment further on it on this thread, just to keep the thread a bit clearer for its intended purpose! Cheers, Ian P.
alan140 Posted May 7, 2012 Author Report Posted May 7, 2012 First there are two file on the post from Billydragon One is PMDG737NGX_AP.LUA you must copy and paste from -- PMDG NGX737 module v. 1.4 -- to END The other one is PMDG737NGX_OVH.LUA same story on pasting on the text. Place them in FSX\Modules Normally FSUIPC will recognize them as you start FSX otherwise paste in FSUIPC4.ini those line below [LuaFiles] 1=PMDG737NGX_AP 2=PMDG737NGX_OVH Open spad go to multipanel rotary tab chose FSUIPC Virtual Button Open FSX Go to FSUIPC tab Button+Switches Select FS control and choose PMDG737NGX_AP Click send button to Flight Sim In Parameter of tab Button+Switches field type 15 for HDG clockwise the same that there is in the list from Billydragon if you want you can change the order --function NGX_AP_HDG_inc () if ipcPARAM == 15 then then go ahead with the same method for couter clockwise and for the other function. Hope that help It's similar with the macro method but it's more pawerfull for function like increase fast rotation and other SDK aspect. Well i do exactly as you told me but theres no action, i have fsuipc version 4.827 updated version, i chose in button and switches -fs controls- lua PMDG737NGX_AP.LUA and parameter 15 for HDG increase everything but no action i really apreciate your help guys but i go on using the ifly that works great with saitek multipanel due to the ifly module intalled in the modules file thanks
simbio Posted May 8, 2012 Report Posted May 8, 2012 Try to clean up file like FSUIPC4.ini i mean remouve it and also the Default.ini inside SPad folder after backup them and restart FSX and Spad. Try this is FSUIPC.ini [buttons] ButtonRepeat=20,10 1=R1,0,C1001,0 2=U1,0,C1002,0 3=R1,5,K35,8 4=R1,4,K36,8 5=P1,2,K90,8 6=P1,3,C65860,0 7=P2,2,K113,8 8=P2,0,K113,8 9=P2,4,K190,10 10=P2,5,K191,9 11=P64,0,CL1:R,33 12=P64,1,CL1:R,27 13=U64,0,C0,33 14=P64,3,CL1:R,22 15=P64,4,CL1:R,31 16=P64,5,CL1:R,32 17=P65,4,CL1:R,8 18=P65,5,CL1:R,7 19=P64,2,CL1:R,28 20=P64,6,CL1:R,30 21=P65,0,C65595,0 22=P65,1,C65603,0 23=R66,0,CL1:R,17 24=R66,4,CL1:R,13 25=R66,5,CL1:R,14 26=R66,6,CL1:R,16 27=R66,1,CL1:R,18 28=R66,2,CL1:R,19 29=R66,3,CL1:R,20 [LuaFiles] 1=PMDG737NGX_AP 2=PMDG737NGX_OVH This is in spad Default.ini [MultiPanel1] RotUpActionCRS=VButton,66,9 RotUpActionALT=VButton,66,1 RotDownActionALT=VButton,66,2 ButtonActionAP=VButton,64,1 ButtonActionHDG=VButton,64,2 LongButtonActionAP=None LongButtonActionHDG=None AutoThrottleActionOFF=VButton,65,5 AutoThrottleActionARM=VButton,65,6 ButtonActionNAV=VButton,64,3 ButtonActionIAS=VButton,64,4 ButtonActionALT=VButton,64,5 ButtonActionVS=VButton,64,6 ButtonActionAPR=VButton,64,7 ButtonActionREV=VButton,64,8 LongButtonActionNAV=None LongButtonActionIAS=None LongButtonActionALT=None LongButtonActionVS=None LongButtonActionAPR=None LongButtonActionREV=None RotUpActionVS=VButton,66,3 RotUpActionIAS=VButton,66,5 RotUpActionHDG=VButton,66,7 RotDownActionVS=VButton,66,4 RotDownActionIAS=VButton,66,6 RotDownActionHDG=VButton,66,8 RotDownActionCRS=VButton,66,10 FlapsActionDOWN=VButton,65,2 FlapsActionUP=VButton,65,1 Good luck
alan140 Posted May 8, 2012 Author Report Posted May 8, 2012 Try to clean up file like FSUIPC4.ini i mean remouve it and also the Default.ini inside SPad folder after backup them and restart FSX and Spad. Hi Fabrizio, i send you my fsuipc.ini file to take a look maybe there is a diferent in the simconnection or something if you can check with your fsuipc.ini file, and i copied the default spad file too as yours thanks [General] UpdatedByVersion=4827 History=07SFD1VZ33UV6SIA00TEW MouseWheelMove=No MouseWheelTrim=No MouseWheelTrimSpeed=1 JoystickTimeout=20 PollGFTQ6=Yes BlankDisplays=No FixControlAccel=No FixMachSpeedBug=No DeleteVehiclesForAES=Yes AutoScanDevices=Yes VisibilityOptions=No OneCloudLayer=No CloudTurbulence=No CloudIcing=No GenerateCirrus=No SuppressCloudTurbulence=No MaxIce=-4 MinIce=-4 UpperWindGusts=No SuppressWindTurbulence=No SuppressWindVariance=No WindTurbulence=No TurbulenceRate=1.0,5.0 TurbulenceDivisor=20,20,40,40 SuppressAllGusts=No MaxSurfaceWind=0 WindLimitLevel=200 WindDiscardLevel=400 WindAjustAltitude=No WindAjustAltitudeBy=2000 SmoothBySimTime=No WindSmoothing=No WindSmoothness=2 WindSmoothAirborneOnly=Yes PressureSmoothness=0 TemperatureSmoothness=0 DisconnTrimForAP=No ZeroElevForAPAlt=No ThrottleSyncAll=No WhiteMessages=No ShowPMcontrols=No SpoilerIncrement=512 MagicBattery=No RudderSpikeRemoval=No ElevatorSpikeRemoval=No AileronSpikeRemoval=No ReversedElevatorTrim=No ClockSync=No ClockSyncMins=5 ClearWeatherDynamics=No OwnWeatherChanges=No TimeForSelect=4 LoadFlightMenu=No LoadPlanMenu=No PauseAfterCrash=No BrakeReleaseThreshold=75 SaveDataWithFlights=No ZapSound=firework ShortAircraftNameOk=No UseProfiles=Yes EnableMouseLook=No AxesWrongRange=No TCASid=Flight TCASrange=40 AxisCalibration=No DirectAxesToCalibs=No ShowMultilineWindow=Yes SuppressSingleline=No SuppressMultilineFS=No AxisIntercepts=No DontResetAxes=No InitDelay=0 GetNearestAirports=Yes WeatherReadFactor=2 WeatherRewriteSeconds=1 CustomWeatherModify=No SimConnectStallTime=1 LuaRerunDelay=66 Console=No FSVersionUsed="Microsoft Flight Simulator X",10.0.61472.0 SimConnectUsed=10.0.61259.0 [JoyNames] AutoAssignLetters=No 0=Saitek Pro Flight Cessna Yoke 0.GUID={88E265A0-2A59-11E1-8002-444553540000} 1=Saitek Pro Flight Cessna Rudder Pedals 1.GUID={88E265A0-2A59-11E1-8001-444553540000} [buttons] ButtonRepeat=20,10 [AutoSave] Next=1 Interval=60 Files=10 SaveOnGround=No AutoSaveEnabled=No [GPSout] GPSoutEnabled=No [GPSout2] GPSoutEnabled=No [WideServer] WideFSenabled=Yes [sounds] Path=C:\FSX\Sound\ Device1=Primary Sound Driver Device2=ATI HDMI Output (ATI High Definition Audio Device) Device3=Speakers (Logitech USB Headset) Device4=Independent (R.T.C.) Headphones (IDT High Definition Audio CODEC) Device5=Speakers / Headphones (IDT High Definition Audio CODEC) [Profile.pmdg 738] 1=Boeing 737-800NGX PMDG House 2=PMDG 737-800NGX PMDG House Winglets [Axes.pmdg 738] 0=0Z,256,D,22,0,0,0 1=0U,256,D,9,0,0,0 2=0V,256,D,10,0,0,0 [JoystickCalibration] AllowSuppressForPFCquad=Yes ExcludeThrottleSet=Yes ExcludeMixtureSet=Yes ExcludePropPitchSet=Yes SepRevsJetsOnly=No ApplyHeloTrim=No UseAxisControlsForNRZ=No FlapsSetControl=0 FlapDetents=No ReverserControl=66292 Reverser1Control=66422 Reverser2Control=66425 Reverser3Control=66428 Reverser4Control=66431 MaxThrottleForReverser=256 AileronTrimControl=66731 RudderTrimControl=66732 CowlFlaps1Control=66162 CowlFlaps2Control=66163 CowlFlaps3Control=66164 CowlFlaps4Control=66165 SteeringTillerControl=0 MaxSteerSpeed=60 Spoilers=-16380,16380/16 [buttons.pmdg 738] ButtonRepeat=20,10 1=R1,0,C1001,0 2=U1,0,C1002,0 3=R1,5,K35,8 4=R1,4,K36,8 5=P1,2,K90,8 6=P1,3,C65860,0 7=P2,2,K113,8 8=P2,0,K113,8 9=P2,4,K190,10 10=P2,5,K191,9 11=P64,0,CL1:R,33 12=P64,1,CL1:R,27 13=U64,0,C0,33 14=P64,3,CL1:R,22 15=P64,4,CL1:R,31 16=P64,5,CL1:R,32 17=P65,4,CL1:R,8 18=P65,5,CL1:R,7 19=P64,2,CL1:R,28 20=P64,6,CL1:R,30 21=P65,0,C65595,0 22=P65,1,C65603,0 23=R66,0,CL1:R,17 24=R66,4,CL1:R,13 25=R66,5,CL1:R,14 26=R66,6,CL1:R,16 27=R66,1,CL1:R,18 28=R66,2,CL1:R,19 29=R66,3,CL1:R,20 [Profile.ifly737ng] 1=iFly 737-700 (Normal screen) [Axes.ifly737ng] 0=0Z,256,D,22,0,0,0 1=0U,256,D,9,0,0,0 2=0V,256,D,10,0,0,0 3=1X,256,D,7,0,0,0 4=1Y,256,D,8,0,0,0 [JoystickCalibration.ifly737ng] AllowSuppressForPFCquad=Yes ExcludeThrottleSet=Yes ExcludeMixtureSet=Yes ExcludePropPitchSet=Yes SepRevsJetsOnly=No ApplyHeloTrim=No UseAxisControlsForNRZ=No FlapsSetControl=0 FlapDetents=No ReverserControl=66292 Reverser1Control=66422 Reverser2Control=66425 Reverser3Control=66428 Reverser4Control=66431 MaxThrottleForReverser=256 AileronTrimControl=66731 RudderTrimControl=66732 CowlFlaps1Control=66162 CowlFlaps2Control=66163 CowlFlaps3Control=66164 CowlFlaps4Control=66165 SteeringTillerControl=0 MaxSteerSpeed=60 LeftBrake=-16380,16380/16 RightBrake=-16380,16380/16 Spoilers=-16380,16380/16 [Profile.boeing737ng] 1=Boeing 737-700NGX PMDG House Winglets [buttons.boeing737ng] ButtonRepeat=20,10 1=R1,0,C1001,0 2=U1,0,C1002,0 3=R1,5,K35,8 4=R1,4,K36,8 5=P1,2,K90,8 6=P1,3,C65860,0 7=P2,2,K113,8 8=P2,0,K113,8 9=P2,4,K190,10 10=P2,5,K191,9 11=P64,0,CL1:R,33 12=P64,1,CL1:R,27 13=U64,0,C0,33 14=P64,3,CL1:R,22 15=P64,4,CL1:R,31 16=P64,5,CL1:R,32 17=P65,4,CL1:R,8 18=P65,5,CL1:R,7 19=P64,2,CL1:R,28 20=P64,6,CL1:R,30 21=P65,0,C65595,0 22=P65,1,C65603,0 23=R66,0,CL1:R,17 24=R66,4,CL1:R,13 25=R66,5,CL1:R,14 26=R66,6,CL1:R,16 27=R66,1,CL1:R,18 28=R66,2,CL1:R,19 29=R66,3,CL1:R,20 [LuaFiles] 1=PMDG737NGX_AP.LU 2=PMDG737NGX_OVH.L
simbio Posted May 9, 2012 Report Posted May 9, 2012 You see all this messy it's caused by Saitek and the result is to bother us on difficult setup. First in FSUIPC.ini write as it state [LuaFiles] 1=PMDG737NGX_AP 2=PMDG737NGX_OVH on the modules folder file must be rename in that way PMDG737NGX_AP.LUA PMDG737NGX_OVH.LUA I think that maybe it's not working because you have a profile Buttons.boeing737ng Another test is to check in FSUIPC Logging TAB LUA Log LUA plug-in and Debug/Trace Lua Plugins then check Send to console window and click on new log. The window will tell you if you trigger the right command. by the way if you use linda it can be a problem so try to uninstall it just to be sure. Start from scratch backup your file then proceed with a new fsuipc4.ini just remouve the old one, once fsx start a new will be create by FSUIPC itself, do this or you will loose more time the if it works just copy and paste portion of the old one to create profile it's really easy.
Billydragon Posted May 9, 2012 Report Posted May 9, 2012 LUA files name maybe too long. Make it shorter then it work.
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