marcoswmd Posted November 2, 2023 Report Posted November 2, 2023 (edited) Hello everyone. This is my first post here, so please be patient 😅 I am trying to separately assign them to two switches on my Warthog Hotas Throttle quadrant using 69632 + 697 and 6971 with the appropriate parameters without success on FSUIPC7 (THIRD_PARTY_EVENT_ID_69632+). The terminology in the SDK is a bit confusing compared to the others: EVT_FIRE_HANDLE_ENGINE_1_TOP (THIRD_PARTY_EVENT_ID_MIN + 697) EVT_FIRE_HANDLE_ENGINE_1_BOTTOM (THIRD_PARTY_EVENT_ID_MIN + 6971) I am not sure what "TOP" & "BOTTOM" are referring to, since the parameters include 0: In and 2: Out (which may be "Botton" and "Top" respectively), as copied below: unsigned char FIRE_HandlePos[3]; // 0: In 1: Blocked 2: Out 3: Turned Left 4: Turned right If anyone could configure those handles, please help me out, since they play a fundamental role in executing most of the engine memory items and it is essential to have them assigned to switches. Thanks, guys PS: I was indeed able to configure the Fire Unlock Switches normally using the codes below and they are being pressed while I try to configure the Fire Handles. #define EVT_FIRE_UNLOCK_SWITCH_ENGINE_1 (THIRD_PARTY_EVENT_ID_MIN + 976) #define EVT_FIRE_UNLOCK_SWITCH_APU (THIRD_PARTY_EVENT_ID_MIN + 977) #define EVT_FIRE_UNLOCK_SWITCH_ENGINE_2 (THIRD_PARTY_EVENT_ID_MIN + 978) Edited November 2, 2023 by marcoswmd
John Dowson Posted November 3, 2023 Report Posted November 3, 2023 I am not that familiar with the 737, but I have just taken a look and it seems that top/bottom refer to the top and bottom parts of the handle, which use different controls. You can see this if you set logging for Events (and open the logging console) and use the mouse to control the handle, you will see the following logged (note the UI uses the custom controls via the Rotor Brake control method): Quote 1032172 *** EVENT: Cntrl= 66587 (0x0001041b), Param= 69703 (0x00011047) ROTOR_BRAKE - top control 1032875 *** EVENT: Cntrl= 66587 (0x0001041b), Param= 69701 (0x00011045) ROTOR_BRAKE - top control 1033016 *** EVENT: Cntrl= 66587 (0x0001041b), Param= 69704 (0x00011048) ROTOR_BRAKE - top control 1034375 *** EVENT: Cntrl= 66587 (0x0001041b), Param= 69703 (0x00011047) ROTOR_BRAKE - top control 1034422 *** EVENT: Cntrl= 66587 (0x0001041b), Param= 69703 (0x00011047) ROTOR_BRAKE - top control 1034469 *** EVENT: Cntrl= 66587 (0x0001041b), Param= 697103 (0x000aa30f) ROTOR_BRAKE - bottom control 1035141 *** EVENT: Cntrl= 66587 (0x0001041b), Param= 697103 (0x000aa30f) ROTOR_BRAKE - bottom control 1035828 *** EVENT: Cntrl= 66587 (0x0001041b), Param= 697101 (0x000aa30d) ROTOR_BRAKE - bottom control 1036000 *** EVENT: Cntrl= 66587 (0x0001041b), Param= 697104 (0x000aa310) ROTOR_BRAKE - bottom control I do not know how this handle is supposed to function, so do not know why this is and cannot really advise further on how to set this up. 16 hours ago, marcoswmd said: unsigned char FIRE_HandlePos[3]; // 0: In 1: Blocked 2: Out 3: Turned Left 4: Turned right Note also that this is a 3-byte array, and so holds 3 distinct values, for the engine 1, engine 2 and APU handles respectively. These values are held in offset 0x6C44, 0x6C45 and 0x6C46, so you can try logging those offsets (as U8) to see what values they hold as you change the position of the handles.
marcoswmd Posted November 5, 2023 Author Report Posted November 5, 2023 Hi John. Thank you for your reply. So, basically, the engine fire handles allow the pilots to activate the fire extinguishing system individually in the engines or APU. When pulled (from "bottom" 0: In to "top" 2: Out, I believe), they basically isolate the Engine/APU from all the systems that are connected to them in order to allow the insertion of the fire extinguishant element into them and optimize its extinguishing effect. After pulling any of the handles, you can discharge the fire extinguishant from the LH Fire Extinguishing Bottle by rotating the handle to the left (3: Turned Left), or from the RH one by rotating it to the right (4: Turned right). The handles are normally locked to prevent inadvertent activation and are automatically unlocked and illuminated when a fire is detected in the related engine/APU. However, there are some cases when pilots need to pull the Fire Handles and isolate the Engines/APU even when a fire is not detected. For those cases, there is a Fire Unlock Switch underneath each Fire Handle that unlocks them, which I was able to configure using the codes described in my first post. #define EVT_FIRE_UNLOCK_SWITCH_ENGINE_1 (THIRD_PARTY_EVENT_ID_MIN + 976) #define EVT_FIRE_UNLOCK_SWITCH_APU (THIRD_PARTY_EVENT_ID_MIN + 977) #define EVT_FIRE_UNLOCK_SWITCH_ENGINE_2 (THIRD_PARTY_EVENT_ID_MIN + 978) Obviously, I was pressing the respective Fire Unlock Switches when trying to configure and pull the Fire Handles without an active fire indication. Maybe with this explanation, you will be able to work something out. I am not a computer expert, but I read the FSUIPC User Manual and managed to understand most of it, and I will try to understand the Rotor Brake control method and Offset concept through the Advanced Manual. Thanks a lot again!
John Dowson Posted November 5, 2023 Report Posted November 5, 2023 Ok - thanks for the explanation. 1 hour ago, marcoswmd said: I will try to understand the Rotor Brake control method The Rotor Brake method is just another way to use custom controls, just more limited - you can only send mouse operations and not actual values. If you take a look un the FAQ section, both methods are described, but the Rotor Brake one is deprecated in favor of the custom control method. With the switch unlocked, have you tried sending a parameter of 3 to using either one, or maybe both, of the EVT_FIRE_HANDLE_ENGINE_1_TOP & EVT_FIRE_HANDLE_ENGINE_1_BOTTOM custom controls? And then once out, you can use the same control and send a parameter of 3 or 4 to turn the handle. You just need to play around to see what works. I can take a further look tomorrow. John
John Dowson Posted November 6, 2023 Report Posted November 6, 2023 Where are the fire unlock switches located? I can't seem to get handle unlocked with the custom controls. The initial value in offset 0x6C44 is 0. This is In according to the documentation, which seems correct. If I send a custom control of 70329, which is EVT_FIRE_HANDLE_ENGINE_1_TOP, with a parameter of x20000000 (left mouse click), then the handle does move slightly, and the value in offset 0x6C44 goes briefly to 1 (blocked) then back to 0, which seems correct as it is still locked I guess. So try using the mouse parameters to the _top/_bottom controls, not the values. If I can unlock the handle, I can test further. John
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