Jump to content
The simFlight Network Forums

How to set Dome light switch to Joystick button


737Andi

Recommended Posts

Hi,

I'm unfortunately not able to find the right setting under FSUIPC 7 to assign the Dome light bright or dim switch of the newest PMDG 737-800 under MSFS to a joystick button.

I tried it the usual way by going to assign buttons, clicking the joystick button (which is recognized fine) and then by clicking the FS Control checkbox and looking for the right Control command from the drop down list. I have tried every command that makes sense somehow but none was successful.

Can anyone please give me a hint which command is working under MSFS and the newest PMDG738. 

Thanks!

Best regards Andi 

 

Link to comment
Share on other sites

Have you tried using the custom control:

#define    EVT_OH_DOME_SWITCH                                (THIRD_PARTY_EVENT_ID_MIN + 258)

The parameter will be:
    0: DIM
    1: OFF
    2: BRIGHT
 (as the value held in offset 0x6443, once the PMDG SDK broadcasts have been enabled).

If you don't know how to use the PMDG custom controls, see 

 

Link to comment
Share on other sites

Hi John, thanks for your reply 🙂

I have found the entry you mentioned in the 737 SDK --> 

 

#define    EVT_OH_DOME_SWITCH                                (THIRD_PARTY_EVENT_ID_MIN + 258)

But unfortunately I do not know how to find the custom control offset to which I need to add 258.

From where can I get this value?

I read everything from the provided link but the information there says that the offset value can be found behind some slashes in the SDK which is however not the case for the PMDG 737 SDK file under MSFS. 

Can I somehow log the offset myself with the console? If yes, how would this work in detail?

Thank you very much!

Best regards Andi 

 

Link to comment
Share on other sites

15 hours ago, 737Andi said:

But unfortunately I do not know how to find the custom control offset to which I need to add 258.

What does this mean? There is no 'custom control offset'... please see that FAQ entry I referenced on how to determine the custom control number to use.

15 hours ago, 737Andi said:

From where can I get this value?

I read everything from the provided link but the information there says that the offset value can be found behind some slashes in the SDK which is however not the case for the PMDG 737 SDK file under MSFS. 

Then you have misread it...you just need to know the value of THIRD_PARTY_EVENT_ID_MIN, which is defined here:

Quote

#ifndef THIRD_PARTY_EVENT_ID_MIN
#define THIRD_PARTY_EVENT_ID_MIN                0x00011000        // equals to 69632
#endif

i.e. THIRD_PARTY_EVENT_ID_MIN is 69632, as it says in the document.
So, the control number for EVT_OH_DOME_SWITCH is 69632 + 258 = 69890.

You can also use the defined presets for the PMDG Dome switch, which use the Rotor Brake control:

image.thumb.png.405948f6c41bb46ec7b47362e3bed771.png

These are available by checking Select For Preset in the assignments window.

There is also a FAQ entry on using the Rotor Brake control method for the PMDG in MSFS of you want to use that instead. This is marked as deprecated as the Rotor Brake control has been deprecated by MSFS, although it can still be used. However, custom controls are preferred and are more powerful as Rotor Brake controls only provide access to mouse actions.

John

Link to comment
Share on other sites

Hi John,

I suppose I was unclear regarding my problem. 

Where do I find the value of THIRD_PARTY_EVENT_ID_MIN ?

Example given...

 // equals to 69632

There are no remarks in the PMDG 737.h SDK file like e.g. 69632.

Thanks!

Best regards Andi 

Link to comment
Share on other sites

1 hour ago, 737Andi said:

Where do I find the value of THIRD_PARTY_EVENT_ID_MIN ?

Example given...

 // equals to 69632

There are no remarks in the PMDG 737.h SDK file like e.g. 69632.

Yes there is...and I quoted the appropriate section - lines 603-605:

4 hours ago, John Dowson said:

#ifndef THIRD_PARTY_EVENT_ID_MIN
#define THIRD_PARTY_EVENT_ID_MIN                0x00011000        // equals to 69632
#endif

 

1 hour ago, 737Andi said:

Example given...

 // equals to 69632

There are no remarks in the PMDG 737.h SDK file like e.g. 69632.

It is in the file called PMDG_NG3_SDK.h - although the FAQ does reference PMDG_NGX_SDK.h, which I will correct... Take a look in your Community\pmdg-aircraft-737\Documentation\SDK folder.

Anyway, the number is given in the FAQ and I have told you what to use....I do not understand what your issue is. Look for that file, but try the numbers I have already given you...it really isn't that complicated, and the FAQ entry is provided so that I don't have to continually answer such questions on this....

John

 

Link to comment
Share on other sites

Hi John,

thank you again! Please do not ask me why I did not understand it initially. Very embarassing.
I thoroughly read through the provided documentation and misunderstood it anyway, although everything is described very clearly.
It is working now! :)

I noticed an interesting thing though. When using the DOME light custom control the action itself is working.
But beside that the custom control action does also move the parking  brake and the rudder pedals inside the plane for a very short time simultaneously.

I'm quite sure that the rudder pedals and the parking brake are not assigned with FSUIPC.

Maybe there is an explanation for it?

Thanks!

Andi

Link to comment
Share on other sites

Sounds strange....do you have any assignments in MSFS? Does the log show anything (with Event logging activated)?
I don't have the 737-800, but I can check in the 737-700.....However, this won't be until next week now, as I have a lot of support requests to catch-up in after the holiday period.

Cheers,

John

Link to comment
Share on other sites

Hi John,

I noticed a strange thing.

I recently installed the newest FSUIPC version 7.3.15 and successfully configured the custom control offset "L_Clock" in the PMDG 737-800 under this specific FSUIPC version. Offset is 69632 + 890 = 70522. Left mouse click would be 0x20000000 without the 0 in front of the x.

After some time I did however notice some strange connection problems between the CPFlight driver and the most recent FSUIPC version, which forced me to do a complete roll back of my whole windows system. Now I'm currently using the old FSUIPC version 7.3.8 again and the connection problems have gone. I tried to configure the L_Clock custom offset here as well, but it does not work?
I made sure that the code line under v7.3.8 FSUIPC.ini is the same as under version 7.3.15 where it worked absolutely fine, which is the case.

Is it possible that this offset is only working under FSUIPC 7.3.15 ? 

Thanks! 

Best regards Andi

Link to comment
Share on other sites

I don't think your issues will have been due to the latest FSUIPC version. And if they are, then that will need investigating. Only the latest version of FSUIPC is supported. So you should update to the new version regardless.

3 hours ago, 737Andi said:

Is it possible that this offset is only working under FSUIPC 7.3.15 ? 

I don't think so, but that depends on what has changed. I am not going to look into this, but you can check the provided History document to see if there are any relevant changes.

John

Link to comment
Share on other sites

6 hours ago, John Dowson said:

I don't think your issues will have been due to the latest FSUIPC version. And if they are, then that will need investigating. Only the latest version of FSUIPC is supported. So you should update to the new version regardless.

I don't think so, but that depends on what has changed. I am not going to look into this, but you can check the provided History document to see if there are any relevant changes.

John

Hi John,

I'm so happy that everything is working as usual after I restored my whole windows SSD yesterday. I'm quite positive that the FSUIPC update to 7.3.15 was the reason for the problem because I installed no other software in between.

Nevertheless since it is no solution for the future I would like to try another install of 7.3.15.

This time I would however like to make sure that I can easily get my old FSUIPC back in case the problem occurs again.

Which folders do I need to save for a 100% roll back to an older version?

Definetely the main FSUIPC folder under C:/ and the fsuipc-lvar-module in the Community folder. Is there anything else that the new install will change? Maybe some settings in the registry or under AppData, Documents etc.?

Thank you!

Best regards Andi 

Link to comment
Share on other sites

58 minutes ago, 737Andi said:

Is there anything else that the new install will change?

Well, the FSUIPC documents folder, but you can ignore this, and you can ignore the registry. Really you should just make a copy of the FSUIPC7.exe of the 7.3.8 version, as well as the fsuipc-lvar-module folder in the Community folder (although the latest WASM may be compatible with 7.3.8, not sure...).

Please do not ask for support if not using the latest version - the first thing I will ask you to do is update.

John

Link to comment
Share on other sites

Hello there an a happy new Year.
Please excuse, that i come in this Post with my Problem. It is not 100% the same but nearly the same.
Please let me explain in short Form.

Software is MSFS2020 newest Version, FSUIPC 7.3.15, WAPI/WASM 0.9.1b and PMDG 737-700.
I wrote the SDK Broadcast Settings in the 737_Options.ini File.
I determined the ID_MIN as 69632 and want to set the IRS_DisplaySelector to the Value of 2.
I also determined that i have to add the Value of 58 to the ID_MIN. I issue an ipc.control(69690, 2) to set the Selector to PPOS.
I use a lua Script to issue the Command. Unfortunately there is no Reaction of the Switch.
In fsuipc.ini i entered the lua Script in the LuaFiles Sections as Number 1. Other Files are not listed in there.

Do you have any Hint for me, what i can do to make my Script gets running?
Any Hint is highly appreciated.

Regards, Joachim
 

Link to comment
Share on other sites

15 hours ago, Airbuspilot said:

Hello there an a happy new Year.
Please excuse, that i come in this Post with my Problem. It is not 100% the same but nearly the same.
Please let me explain in short Form.

Software is MSFS2020 newest Version, FSUIPC 7.3.15, WAPI/WASM 0.9.1b and PMDG 737-700.
I wrote the SDK Broadcast Settings in the 737_Options.ini File.
I determined the ID_MIN as 69632 and want to set the IRS_DisplaySelector to the Value of 2.
I also determined that i have to add the Value of 58 to the ID_MIN. I issue an ipc.control(69690, 2) to set the Selector to PPOS.
I use a lua Script to issue the Command. Unfortunately there is no Reaction of the Switch.
In fsuipc.ini i entered the lua Script in the LuaFiles Sections as Number 1. Other Files are not listed in there.

Do you have any Hint for me, what i can do to make my Script gets running?
Any Hint is highly appreciated.

Regards, Joachim
 

This Issue is solved by my self. I've used the wrong Offsets for ipc.control  

Link to comment
Share on other sites

16 hours ago, Airbuspilot said:

i entered the lua Script in the LuaFiles Sections as Number 1. Other Files are not listed in there.

You should never modify the [LuaFiles] section - that section is maintained by FSUIPC.

28 minutes ago, Airbuspilot said:

I've used the wrong Offsets for ipc.control 

But ipc.control does not have an offset parameter, only one for the control number and one for the parameter to the control.

John

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.