
AlMassimo
Members-
Posts
122 -
Joined
-
Last visited
-
Days Won
1
Content Type
Profiles
Forums
Events
Gallery
Downloads
Everything posted by AlMassimo
-
Alt-F needs 3 times to show the UI window, and Hvar list is empty
AlMassimo replied to AlMassimo's topic in FSUIPC7 MSFS
Yes John, I rename events.txt to events.tx0 in order to have myevents.txt with all and only the required events. and easy numbering, this works fine for me. I use events.txt only for finding the useful code, then I transfer it to myevents.txt (specific for each different plane). I created a folder for every plane, with : FSUIPC.ini, SIOC_ACTIVE.txt, MF_active.mcc, myevents.txt, planexx.lua, ipcready.lua. When I decide to use that plane I just copy the specific files in their normal folders and all the cockpit is reconfigured for that plane. I enclose the FSUIPC7.ini I had before installing the new release. I could copy it again and repeat the test with the new release. The strange is that FSUIPC7 just stopped after loading the events files (at least according to .log file) but maybe some of the files were not present in the folder at the moment, without giving any message. Unfortunately I didn't save the complete .ini file that did not work, but the first part seemed totally normal to me. FSUIPC7.ini -
Alt-F needs 3 times to show the UI window, and Hvar list is empty
AlMassimo replied to AlMassimo's topic in FSUIPC7 MSFS
Hi mtjoeng your hint worked, now FSUIPC7 3.4 woks fine, tank you, I owe you a beer 😉 Now finally also the triple-Alt-F issue is solved, the interface opens up just hitting Alt-F once, as it was before. Apparently Fsuipc7.ini seems identical to the previous one, but surely there is some difference somewhere, I'll check the 2 files more deeply. THANKS -
Alt-F needs 3 times to show the UI window, and Hvar list is empty
AlMassimo replied to AlMassimo's topic in FSUIPC7 MSFS
Ok thanks I'll try without ini -
Alt-F needs 3 times to show the UI window, and Hvar list is empty
AlMassimo replied to AlMassimo's topic in FSUIPC7 MSFS
Hi John, I saw that was available a new release of Fsuipc 7 so I hurried up installing it, but the program icon shows up a bit in the program bar in W10, then after some seconds (maybe 20-30 secs) it disappears and the program is no longer running. I tried to launch it from the installation folder (without MSFS running) and it does exactly the same. The log file is very short and ends just after 141 Preset file 'D:\FSTools\FSUIPC7\events.txt' not found [info only] 141 2 Calculator Code presets loaded No warning or error messages, all seems Ok (same rows as in the previous log working). I installed the 18 april version and it runs perfectly as before, no issue at all. I am going on with the previous release, just want to report this strange behaviour of new release on my PC...! -
Alt-F needs 3 times to show the UI window, and Hvar list is empty
AlMassimo replied to AlMassimo's topic in FSUIPC7 MSFS
Thanks John, I tested 1070 control and it worked perfectly, this simplifies the code, I don't need a custom offset and lua code, it is very straightforward. var 0248, name I_SPEED, Link IOCARD_SW, Input 31 { IF &I_SPEED = 1 { &FS_PAR = 4178 // Alt+R = (alt)16*256 + 82(R) &FS_CONTROL = 1070 // send keypress &FS_CONTROL = DELAY 0 10 } } And this should work for every custom plane I think. I also found the B747-8.hvar file in Fsuipc7 folder and copied it to Fsuipc\Wasm folder. -
Alt-F needs 3 times to show the UI window, and Hvar list is empty
AlMassimo replied to AlMassimo's topic in FSUIPC7 MSFS
Wow I couldn't remember about 1070-1072 or 3200, they look very interesting! Thanks for the advices, I'll study and test them. In the meanwhile I solved the issue with a very simple lua code : In SIOC I set the offset 0xA006 to 1 when the SPEED HOLD button is pressed on MPC, then lua detects the change and send Alt-R to MSFS function AP_speed() if ipc.readUB(0xA006) == 1 then ipc.keypress(82, 16) end end event.offset(0xA006, "UB", "AP_speed") This works pretty well, and at last I succeeded in managing AP SPEED HOLD. Looking on the console the MSFS command sends 3 controls, I tried to replicate them in an event under myevent.txt AM_B747_SPD_HOLD#0 (>K:AP_AIRSPSPEED_HOLD) 1 (>K:AP_MANAGED_SPEED_IN_MACH_OFF) 1 (>K:SPEED_SLOT_INDEX_SET) but for some reason this seems not to work. I can't see the command being sent in the console, and I don't get the expected effect in the simulator. I can't find an error in my custom event, but maybe is uncorrect. I would prefer to control the events with this "calculator code" instead of sending keypresses, it makes me feel more "in control" of what I am doing. But on the other hand, sending keypresses leave the "dirty work" to MSFS, and should work with different planes, so I probably will go on with this solution, either in lua or with 1070 or 3200 offsets (or controls ?). 1070 Key Press and Release (param is Keycode + 256*Shift code, or JsBk) To what I understand I should use 3110 and 3114 offsets to send the control and parameter Var 0001 name FS_CONTROL Link FSUIPC_OUT Offset $3110 Length 4 Var 0002 name FS_PAR Link FSUIPC_OUT Offset $3114 Length 4 and then use 1070 as control number and (e.g. for Alt-R 82 + 256 * 16 = 4178) as parameter, is this correct ? I'll try this in SIOC. -
Alt-F needs 3 times to show the UI window, and Hvar list is empty
AlMassimo replied to AlMassimo's topic in FSUIPC7 MSFS
Probably I could do that in lua, using ipc.keypress(keycode) - that means, when a custom offset is changed by SIOC, then lua sends an ipc.keypress. If the keypress works in MSFS I should obtain the same effect, bypassing the unaccessible variables or events. I'll do some test and report the results, I think this could be interesting (maybe even obvious for some expert builders !) -
Alt-F needs 3 times to show the UI window, and Hvar list is empty
AlMassimo replied to AlMassimo's topic in FSUIPC7 MSFS
Just to eliminate a doubt, I tested Alt-F without SpaceDesk and the secondary monitor, and nothing changed. It is strange but I'm pretty sure that with the previous release of Fsuipc the window came up at first Alt-F on the keyboard. Difficult to understand why the first window doesn't stay on top and the third one does, but after all it is not a big issue, just a little bit annoying 😉 Much more interesting would be to have the window always in front as the console. I also confirm that there is no B747-8.hvar file under wasm dir, even if B-747 does use hvars, but I cannot find a list of those hvars anywhere. Besides, unfortunately, exploring behaviours under SDK window, I found that B737 is using some B and O vars that cannot be read or modified, and Asobo seems to ignore all requests to even consider making them accessible, what a pity for home-cockpit builders. Today I will do some testing with MSFS keyboard controls, in order to see if they activate correctly the MCP functions on B747. If so, I could assign a keyboard shortcut to Fsuipc actions and that should work (pressing a button I should obtain the MSFS action corresponding to that shortcut). My problem though is that I have to send the shortcut via SIOC, because I can only use SIOC for my MCP. I don't know how to associate a custom offset or a control to make Fsuipc send a keypress... -
Alt-F needs 3 times to show the UI window, and Hvar list is empty
AlMassimo replied to AlMassimo's topic in FSUIPC7 MSFS
Absolutely great! Thanks Got it. As I said I am currently working with hvars, no problem, just couldn't understand why suddendly I could not see the havars list any more. Now is clear, thanks. -
Alt-F needs 3 times to show the UI window, and Hvar list is empty
AlMassimo replied to AlMassimo's topic in FSUIPC7 MSFS
Hi thanks John, I now understand a little better what could happen and why the 2nd Alt-F seems to do nothing (it hides the window) and then the 3rd makes the window to open and stay. The first Alt-F maybe is not working because I'm currently using SpaceDesk for displaying the gauges on a secondary PC. I'll try Alt-F without spacedesk and see if it works as before. Hvars : I'll check the files. No problems for the functionality, I'm fully using myevents.txt and all works fine, I just can't see the hvars available on the panel, but they are correctly used by the program (I use SIOC and call the events as explained in advanced users guide, and some events use hvars and work perfectly). Most likely I don't have the proper .hvar file for B747-8, I'll check that. Yes indeed, I was thinking the same thing! Console window stays on top and allow to see the effects when I click some control on the VC. A big big goal could be to update lvars values automatically (without selecting list lvars again) to monitor value changes performing some action, as happens under developer mode in MSFS. This can also be done in MobiFlight assigning a variable to an output and in the interface I can see the value changing (eg. an analog value changes continuously). I know this can be done using the console log, but many times the rows scroll up so quickly that is difficult to see what happens. -
Hi John, with the last release I need to press 3 times Alt-F in order to have the Fsuipc 7 window open. The first Alt-F makes the window to flash briefly on the screen then disappear, second time nothing happens, then third time the window opens up normally. I restarted PC, MSFS, FSuipc, everything but still the same. Can you check if it is a possible bug or if is only my PC that has some issue ? What should I check ? When the window opens, if I go under wasm, list Hvars, I get an empty panel. List Lvars populates as before with all available lvars. I'm currently using Asobo B747-8 and I am proceeding pretty well with the Opencockpits MCP and EFIS panel, almost all the main functions are active but it took me a lot of trial and error before finding the proper offset, lvars and events. I have stored in a folder all the files I created for FBW A320 (Fsuipc7.ini, myevents.txt, A32NX.evt, SIOC.txt, A32NX.mcro) and I am creating new config files for the B747. The idea is to create many folders each with the files for a specific plane, so to be able to use my home cockpit with many different planes, just copying the appropriate files in the main folder. The biggest issue is the lack of control over the MSFS internal vars, B, I, etc., but many things work with default offsets and custom events.
-
Today subject is APU controls. Since I have a B737 cockpit and overhead, I don't have push buttons but switches, and I also have the APU EGT gauge based on a stepper motor (in this case I used a X27-168 with the Easydriver (e.g. TECNOIOT A3967 EasyDriver Stepper Motor Driver V44) that is controlled directly by MobiFlight using the L:A32NX_APU_N instead of EGT, because it is more smooth and gives a better idea of the APU startup. So I assigned these offsets to the relevant LVARS: 19=A32NX_OVHD_APU_MASTER_SW_PB_IS_ON=UBA013 20=A32NX_OVHD_APU_START_PB_IS_AVAILABLE=UBA014 21=A32NX_OVHD_APU_START_PB_IS_ON=UBA015 22=A32NX_OVHD_ELEC_APU_GEN_PB_IS_ON=UBA016 And then I used SIOC (but the same could be done with LUA as well) to control the operations of the APU : // APU ================================== Var 0475, name APU_master_ON, Link FSUIPC_INOUT, Offset $A013, Length 1 // this is the master APU button Var 0476, name FS_APU_avail, Link FSUIPC_INOUT, Offset $A014, Length 1 // this is the flag from MSFS that the APU is available { IF &FS_APU_avail = 1 { IF &sw_APU_gen = 0 { &APU_gen_OFFB = 1 // turn on the led on the annunciator APU GEN OFF BUS (737 overhead...) } } ELSE { &APU_gen_OFFB = 0 } } Var 0477, name APU_start_ON, Link FSUIPC_INOUT, Offset $A015, Length 1 // this controls the startup of the APU Var 0481, name sw_APU_start, Link FSUIPC_INOUT, Offset $A109, Length 1 // this is the phisical swithc "APU START" { IF &sw_APU_start = 1 { &APU_master_ON = 1 // these 2 variables actually make the APU to start. Both must be set to 1 to start &APU_start_ON = 1 } } Var 0482, name sw_APU_off, Link FSUIPC_INOUT, Offset $A10A, Length 1 { IF &sw_APU_off = 1 { &APU_master_ON = 0 // this is not immediate. Sometimes it takes a lot for the APU to stop &APU_start_ON = 0 } } Var 0483, name FS_APU_gen, Link FSUIPC_INOUT, Offset $A016, Length 1 // APU generator status in MSFS Var 0484, name APU_gen_OFFB, Link FSUIPC_INOUT, Offset $A102, Length 1 // phisical annunciator "APU GEN OFF BUS" Var 0485, name sw_APU_gen, Link FSUIPC_INOUT, Offset $A103, Length 1 { IF &sw_APU_gen = 1 { IF &FS_APU_avail = 1 { IF &FS_APU_gen = 0 // since the command is a toggle, I want to send it only if the generator is not operating { &FS_PAR = 1 &FS_CONTROL = 66707 // APU_GENERATOR_SWITCH_SET &FS_CONTROL = DELAY 0 10 } &APU_gen_OFFB = 0 } } ELSE { IF &FS_APU_gen = 1 // same as above, if the generator is ON then TOGGLE it off { &FS_PAR = 0 &FS_CONTROL = 66707 // APU_GENERATOR_SWITCH_SET &FS_CONTROL = DELAY 0 10 } IF &FS_APU_avail = 1 { &APU_gen_OFFB = 1 } ELSE { &APU_gen_OFFB = 0 // when APU is not running, the annunciator APU GEN OFF BUS turns off } } } This simple code allow complete control over the APU start, stop and APU gen ON/OFF and status led I enclose the the schematic image of how to connect an X27-168 to Arduino, but if you are interested you can find an exhaustive guide here: https://www.mobiflight.com/en/tutorials/community-guides/easy-driver-tutorial.html
-
latest news I added "master warning" and "master caution" annunciator and reset button, always with 737 NG hardware but A320 logic and LVARS. Initially I tried to use directly Mobiflight, but setting 0(>L:32NX_MASTER_WARNING) or 0(>L:A32NX_MASTER_CAUTION) seemed not to work. So I used FSUIPC, adding the LVARS in FSUIPC7.ini 31=A32NX_MASTER_WARNING=UBA027 32=A32NX_MASTER_CAUTION=UBA028 And then I used some "bridge" offsets (UBA106, UBA107) to read the button from Mobiflight and write the status of the annunciator to Mobifligth. This is the code in SIOC (but I think the same can be done adding events in myevents.txt and then calling them appropriately) // --- MASTER CAUTION / MASTER WARNING Var 0525, name ann_mast_warn, Link FSUIPC_INOUT, Offset $A106, Length 1 Var 0526, name FS_m_caution, Link FSUIPC_INOUT, Offset $A028, Length 1 { C0 = &FS_m_warn = 0 C1 = &FS_m_caution = 0 IF C0 AND C1 { &ann_mast_warn = 0 } ELSE { &ann_mast_warn = 1 } } Var 0527, name FS_m_warn, Link FSUIPC_INOUT, Offset $A027, Length 1 { C0 = &FS_m_warn = 0 C1 = &FS_m_caution = 0 IF C0 AND C1 { &ann_mast_warn = 0 } ELSE { &ann_mast_warn = 1 } } Var 0528, name btn_mast_warn, Link FSUIPC_INOUT, Offset $A107, Length 1 { IF &btn_mast_warn = 1 { &FS_m_caution = 0 &FS_m_warn = 0 } } I had to put the two annunciators (Warning and Caution) together since I have only one button in my 737 cockpit, and the same for the annunciator, but all worked perfectly. The logic is : if both warning and caution are off then turn off the annunciator, if one of the two is ON then the annunciator is ON. If the button is pressed then both warnings are set to 0 and this quit the alarm and turn off the annunciators. Another little step but very useful!
-
All functions transferred to myevents.txt, no longer need for .lua program, all presets are now called from SIOC using offset 4194304 + number of preset, starting from 0 and easilly calculated by the row number in my editor (NotePad). Some controls (or events) are activated using the A32NX.evt file (FCU controls), other use lvars defined in FSUIPC7.ini All the functions controlled by Arduino boards are activated directly with MobiFlight Wasm commands. All seems reasonably clear now, but it took me some weeks to understand how the new functions and variables worked, and it would have been very hard without the patient and always stimulating help from John Dowson! I think FBW A320 is an extremely good project, I must only say that I am a bit confused by the many different variables and presets called A320_Neo, A32NX, A32NX_dev, A32NX_sdk... I use FBW A320 latest stable release (not dev) but many variables or presets are only available under "dev" group, but they work quietly with my stable version. Anyway, I recommend to follow John's advice to avoid using events.txt (i changed the extension) and copy and paste all the presets you need in myevents.txt, this way you only have the presets you need, the numbering is easy to find and you have total control over this file (it is not modified or overwritten during updates). The power of these new functions is extraordinary and give an almost complete control over all of the planes functions. I hope that these posts will help other simmers to experiment all this beautiful set of tools, it's really worth the effort.
-
Next days I'll do more experiment with removing events.txt and using only myevents.txt. In the file events.txt that probably installing the new release of FSUIPC7 has overwritten my current events.txt there is an error, the preset A32NX_ENG1_MASTER_SWITCH_OFF#2 (>K:FUELSYSTEM_VALVE_CLOSE) should be A32NX_ENG2_MASTER_SWITCH_OFF#2 (>K:FUELSYSTEM_VALVE_CLOSE) so the assignment I did to the fuel cutoff lever 2 was broken (automatically removed from that button) Now I have modified again manually the wrong name of the preset and reassigned it to fuel cutoff lever 2. By using myevents.txt this kind of problem would be avoided, so I'll try to transfer all my needed presets to myevents.txt and test everything again.
-
Hi John, the LUA code ipc.writeSTR(0x7C50, "P:A32NX_EFIS_L_CSTR_PUSH") works like a charm, and offers a HUGE improvement in home cockpit configuration. 😃
-
Hi John, the new version, with numbers corrected to 4194304 + line number of the preset required works absolutely well, and this is such a powerful thing! This opens huge persepectives in SIOC, since I no longer need to interact with LUA code to set hvar, send controls, modify lvars, and also create combinations of operations, conditional operations, math, conversion, all that can be done with calculator code. Great, great job, well done! The assessment of the line number was difficult though, because the editor give me the line number, but then all the comment lines have to be removed or subtracted to obtain the proper number. As you said, this could be avoided using only myevents.txt and inserting in it all the presets I need. So your suggestion is (very sorry to ask again...) 1) copy and paste all the events I need into myevents.txt 2) remove or rename events.txt (only the one in FSUIPC7 folder, not the one in MF Wasm module in community folder ?) 3) change all the preset numbers I used in SIOC according to the order in myevents.txt As an alternative I could 1) write LUA code to use the presets using 7C50 and preset names, activating them through a "bridge" custom offset sent by SIOC - this should not require the deletion of events.txt The code should be, eg ipc.writeSTR(0x7C50, “P:A32NX_EFIS_L_CSTR_PUSH”) I'll do some testing, in order to solve some of my doubts by myself, without you having to correct all my mistakes...! What I want to tell you is that these new functionalities are adding a lot of power to FSUIPC7 and make interacting with MSFS2020 an amazing and exciting experience!
-
Ok... I always miss something, sorry!
-
Hi John, I am activating and setting up the new version, and studying the new manual, seems very well done. In the manual the location of the FSUIPC_WASM.ini for MS-Store users, is indicated as AppData\Local\Packages\Microsoft.FlightSimulator_8wekyb3d8bbwe\LocalState\Packages\fsuipc-lvar- module\work but (at least in my case) it is LocalCache\Packages\Community\fsuipc-lvar-module\FSUIPC_WASM.ini I have no ini file in the LocalState\Packages\fsuipc-lvar-module\work folder
-
That sounds amazing! How can I send a string with the name of the presets via an offset ? In LUA code this looks feasible, in SIOC much less... I searched "FSUIPC7 and 0x7C50" but I found no match on the net. I hope this will be documented in the updated advanced user manual! I'll test the new FSUIPC7.exe, and try to find out how this works. Thanks!
-
These are 2 images of my home cockpit, I have left the VC visible so to give an idea of the alignment between the displays of the cockpit (MCP-FCU, PFD, MFD, etc) and the VC ones. I am also testing MobiFlight events (I had removed the MF wasm module from my community folder, but now I have restored it and I am currently using calculator code directly in MF assignments (custom events) and seems to work great. EG I wrote some calculator code to control beacon and strobe lights with only one switch, just looking the code in events.txt and pasting some lines in the calculator code, it is really powerful, but I must check if there are some conflicts in events numbers, or with presets numbers, but so far all seems to work fine.
-
There is (at least) one thing that I was not able to make to work, and is the myevents.txt HVAR setting via 262144 control. This is the content of myevents.txt file: A320_Neo_PFD_BTN_LS_1#(>H:A320_Neo_PFD_BTN_LS_1) A320_Neo_MFD_BTN_ARPT_1#(>H:A320_Neo_MFD_BTN_ARPT_1) but if I call the event 262144 or the 262145 with 3110 control set, eg Var 0229, name BTN_ARPT, Link FSUIPC_INOUT, Offset $A056, Length 1 { if &BTN_ARPT = 1 { &FS_PAR = 1 &FS_CONTROL = 262145 &FS_CONTROL = DELAY 0 10 } } I get the following error messages 205547 Exception 1 "ERROR", Ref 4769, Index param 2 on TransmitClientEvent, object=0, id=262144 (????), data=1 210813 Exception 1 "ERROR", Ref 4772, Index param 2 on TransmitClientEvent, object=0, id=262145 (????), data=1 It is not clear to me (even having read the advanced manual more than once) if the number of myevents is 262144 or if I have to add the lines number of the entire events.txt in FSUIPC7 folder. I tested also numbers that included those in events.txt but I god the same error...
-
To be more precise, the last rows on lua code SW_CUTOFF1 = ipc.readUB(0x6220) if SW_CUTOFF == 1 then -- ipc.control(67197, 1) end didn't work, and I commented them out and I'll remove them, since I used direct controls BUTTON assignment in FSUIPC7 panel 30=RA,2,C65602,0 -{THROTTLE_DECR}- 31=UA,2,C65604,0 -{THROTTLE_CUT}- 32=PA,7,C66064,0 -{SPOILERS_ON}- 33=UA,7,C66065,0 -{SPOILERS_OFF}- 35=PA,9,CPA32NX_ENG2_MASTER_SWITCH_OFF,0 -{Preset Control}- 37=PA,10,CPA32NX_ENG2_MASTER_SWITCH_ON,1 -{Preset Control}- 38=PA,0,CPA32NX_ENG1_MASTER_SWITCH_ON,0 -{Preset Control}- 39=PA,1,CPA32NX_ENG1_MASTER_SWITCH_OFF,1 -{Preset Control}-
-
And now, ladies and gentlemen, after some weeks of work (and with great support from John) I have reached a good level of control of the FBW A320 through my home cockpit, so I feel reasonably confident to be able to resume all I found in the promised WASM LVARS TO OFFSET BASIC GUIDE! First of all, I must specify that my hardware is based on : - Opencockpit 737 MCP and EFIS (+ NAV Radio, not yet programmed by now) - Main Control Panel, Throttle quadrant and Overhead are self made and based on 3 arduino Mega boards controlled via MobiFlight, and - essentially - by FSUIPC7 (registered version). So this "guide" (let me call it this way) tries to summarize what I achieved : - Opencockpit 737 MCP and EFIS converted almost completely the to work emulating pretty well an A320 FCU - Throttle quadrant (throttles, reverse levers, spoiler, flaps and flaps gauge indicator (stepper motor), engines fuel valves and ignition (start) switches is fully operational - Overhead : for the moment I have APU master and APU start (unified because on 737 there is only one APU start/stop momentary switch. APU bleed and APU generator all working, also BLEED, APU GEN OFF BUS, GEN1 and GEN2 SOURCE OFF and GEN1-2 OFF BUS annunciators working. Most of these controls are operated through these LVARS, either in SIOC or with MOBIFLIGHT. [LvarOffsets] 1=A320_Neo_MFD_NAV_MODE_1=UBA000 2=A320_Neo_MFD_Range_1=UBA001 3=A32NX_PARK_BRAKE_LEVER_POS=UBA003 4=A32NX_FLAPS_HANDLE_INDEX=UBA004 5=BTN_TERRONND_1_ACTIVE=UBA005 6=AIRLINER_LS_On=UBA006 7=A32NX_AUTOBRAKES_ARMED_MODE=UBA007 8=A32NX_SPOILERS_HANDLE_POSITION=UBA008 9=A32NX_FCU_SPD_MANAGED_DOT=UBA009 10=A32NX_FCU_HDG_MANAGED_DOT=UBA00A 11=A32NX_AUTOTHRUST_MODE=UBA00B 12=A32NX_AUTOPILOT_1_ACTIVE=UBA00C 13=A32NX_AUTOPILOT_2_ACTIVE=UBA00D 14=A32NX_FCU_ALT_MANAGED=UBA00E 15=A32NX_FCU_VS_MANAGED=UBA00F 16=A32NX_HOME_COCKPIT_ENABLED=UBA010 17=BTN_LS_1_FILTER_ACTIVE=UBA011 18=A32NX_FCU_APPR_MODE_ACTIVE=UBA012 19=A32NX_OVHD_APU_MASTER_SW_PB_IS_ON=UBA013 20=A32NX_OVHD_APU_START_PB_IS_AVAILABLE=UBA014 21=A32NX_OVHD_APU_START_PB_IS_ON=UBA015 22=A32NX_OVHD_ELEC_APU_GEN_PB_IS_ON=UBA016 23=A32NX_APU_BLEED_ON=UBA017 24=A32NX_AUTOPILOT_HEADING_SELECTED=UWA020 25=A32NX_AUTOPILOT_SPEED_SELECTED=UWA022 26=A32NX_AUTOPILOT_VS_SELECTED=SWA024 30=A32NX_APU_EGT=UWA026 31=A32NX_APU_N=UWA028 32=A32NX_APU_BLEED_AIR_VALVE_OPEN=UBA02A 33=A32NX_OVHD_PNEU_APU_BLEED_PB_IS_ON=UBA02B where SB – signed byte (1 byte) UB – unsigned byte (1 byte) SW – signed word (2 bytes), use for signed short UW – unsigned word (2 bytes), use for unsigned short SD – signed double-word (DWORD) (4 bytes), use for signed int UD – unsigned double-word (4 bytes), use for unsigned int F – floating point number (4 bytes), use for float Some functions are operated by controls offest sent from SIOC using Var 0001 name FS_CONTROL Link FSUIPC_OUT Offset $3110 Length 4 Var 0002 name FS_PAR Link FSUIPC_OUT Offset $3114 Length 4 65879 HEADING_BUG_INC 65880 HEADING_BUG_DEC 65896 AP_SPD_VAR_INC 65897 AP_SPD_VAR_DEC 66241 TOGGLE_MASTER_BATTERY 66701 AVIONICS_MASTER_SET Other controls, most of which related to FCU push/pull knobs, are sent by "custom" control numbers calculated according to the FSUIPC7 for Advanced Users.pdf pag. 37 - Add-on Custom Events This needs one (or more) files with .evt extension, that will be listed automatically in FSUIPC7.ini under "EventFiles" section like this (in my case) [EventFiles] 0=A320_NX 1=A32NX this is the content of my A32NX.evt file : [Events] 0 = A32NX.FCU_AP_1_PUSH 1 = A32NX.FCU_AP_2_PUSH 2 = A32NX.FCU_AP_DISCONNECT_PUSH 3 = A32NX.FCU_ATHR_PUSH 4 = A32NX.FCU_ATHR_DISCONNECT_PUSH 5 = A32NX.FCU_SPD_INC 6 = A32NX.FCU_SPD_DEC 7 = A32NX.FCU_SPD_SET 8 = A32NX.FCU_SPD_PUSH 9 = A32NX.FCU_SPD_PULL 10 = A32NX.FCU_SPD_MACH_TOGGLE_PUSH 11 = A32NX.FCU_HDG_INC 12 = A32NX.FCU_HDG_DEC 13 = A32NX.FCU_HDG_SET 14 = A32NX.FCU_HDG_PUSH 15 = A32NX.FCU_HDG_PULL 16 = A32NX.FCU_TRK_FPA_TOGGLE_PUSH 17 = A32NX.FCU_ALT_INC 18 = A32NX.FCU_ALT_DEC 19 = A32NX.FCU_ALT_SET 20 = A32NX.FCU_ALT_PUSH 21 = A32NX.FCU_ALT_PULL 22 = A32NX.FCU_ALT_INCREMENT_TOGGLE 23 = A32NX.FCU_ALT_INCREMENT_SET 24 = A32NX.FCU_VS_INC 25 = A32NX.FCU_VS_DEC 26 = A32NX.FCU_VS_SET 27 = A32NX.FCU_VS_PUSH 28 = A32NX.FCU_VS_PULL 29 = A32NX.FCU_LOC_PUSH 30 = A32NX.FCU_APPR_PUSH 31 = A32NX.FCU_EXPED_PUSH The number of each control is obtained by 32768 + number of the specific file containing the command selected * 256 + number of the control in the file. So, eg., since A32NX.evt is the second file in the [EventFiles] section of FSUIPC7.ini, the control for A32NX.FCU_AP_1_PUSH will be 32768 + 1 * 256 + 0 = 33024, while A32NX.FCU_AP_2_PUSH will be 32768 + 1 * 256 + 1 = 33025 and so on. Anyway, you can assign the control you need to a "test" button under FSUIPC panel and then in the console you can see the number of the event that has to be used, and this helps a lot. Some (fortunately very few, HVARS, can be controlled in various ways, but I simply used some very basic LUA code function update_switches() BTN_LS = ipc.readUB(0xA050) if (BTN_LS == 1) then ipc.activateHvar("H:A320_Neo_PFD_BTN_LS_1") end BTN_HDG_MODE = ipc.readUB(0xA053) if (BTN_HDG_MODE == 1) then if (ipc.readUB(0xA00A) == 0) then ipc.activateHvar("H:A320_Neo_FCU_HDG_PUSH") else ipc.activateHvar("H:A320_Neo_FCU_HDG_PULL") end end BTN_ARPT = ipc.readUB(0xA056) if (BTN_ARPT == 1) then ipc.activateHvar("H:A320_Neo_MFD_BTN_ARPT_1") end BTN_CSTR = ipc.readUB(0xA057) if (BTN_CSTR == 1) then ipc.activateHvar("H:A320_Neo_MFD_BTN_CSTR_1") end SW_CUTOFF1 = ipc.readUB(0x6220) if SW_CUTOFF == 1 then -- ipc.control(67197, 1) end end -- update_switches -- ================================================================================= event.timer(100,"update_switches") THAT'S ALL FOLKS!
-
Essential information!!! Right! So the numbers don't change!