Ray Proudfoot Posted August 8, 2021 Report Share Posted August 8, 2021 Hi John / Pete, P3Dv5.2HF1 with the PMDG737 NGXu and FSUIPC6 v6.1.0.2. There was an excellent tutorial posted here a few years ago that showed how to program actions for the PMDG737 using GoFlight hardware. I used it back then for the 737NGX and have copied / pasted it for the 737NGXu as the SDK is identical for these purposes. One multiple action is to open and close Pax doors (left forward and aft) and the other is for cargo (forward and aft). So 2 doors for each of 2 switches. Whilst the opening sequence always works more often than not the closing one doesn't with one door on each sequence remaining open. I've reexamined the instructions but cannot see a problem. The sequence is shown on the attached jpg. Any help would be appreciated for this frustrating problem. The sequence starts by selecting the MENU option on the CDU and navigating to the Doors menu. After actioning the doors the menu actions take the user back to the top level of the CDU so each sequence starts at the same point. Link to comment Share on other sites More sharing options...
Luke Kolin Posted August 8, 2021 Report Share Posted August 8, 2021 Ray, I can't speak to the correctness of that sequence but have you considered just writing to the door LVARs? That seems to have fewer state issues and certainly a lot less work and timings to go wrong. Cheers! Link to comment Share on other sites More sharing options...
Ray Proudfoot Posted August 8, 2021 Author Report Share Posted August 8, 2021 Luke, I have no experience with LVARS. Given the completeness of the PMDG SDK you would expect all this to work. I’ll check with them if there’s a direct command for the doors operation. The commands beginning with P are the on switch action and U the off switch action. They’re identical for each switch. Link to comment Share on other sites More sharing options...
John Dowson Posted August 8, 2021 Report Share Posted August 8, 2021 (edited) Hi Ray, 2 hours ago, Ray Proudfoot said: Whilst the opening sequence always works more often than not the closing one doesn't with one door on each sequence remaining open. Apart from switching to using lvars, as suggested by Luke, you could try activating logging for Events and see if you can notice anything different in the log when closing the doors between when it works and when it doesn't. You could also try adjusting the TimeForSelect, but I don't know if this will have any effect as you are using PMDG custom controls (and I don't have any PMDG aircraft to check). Edited August 8, 2021 by John Dowson corrected Link to comment Share on other sites More sharing options...
John Dowson Posted August 8, 2021 Report Share Posted August 8, 2021 Also, I'm nor sure what those custom controls do, but 70171 is being sent twice on each button (5,6) press and release - is that correct? Link to comment Share on other sites More sharing options...
Ray Proudfoot Posted August 8, 2021 Author Report Share Posted August 8, 2021 13 minutes ago, John Dowson said: Also, I'm nor sure what those custom controls do, but 70171 is being sent twice on each button (5,6) press and release - is that correct? Yes, it’s LSK5L from memory to move up one level in the CDU menu. The top level is two levels up. I’ll try the logging option and see if it reveals anything. Link to comment Share on other sites More sharing options...
Ray Proudfoot Posted August 8, 2021 Author Report Share Posted August 8, 2021 I may have a solution. Looking through the events these are listed... // Custom shortcut special events #define EVT_LDG_LIGHTS_TOGGLE (THIRD_PARTY_EVENT_ID_MIN + 14000) #define EVT_TURNOFF_LIGHTS_TOGGLE (THIRD_PARTY_EVENT_ID_MIN + 14001) #define EVT_COCKPIT_LIGHTS_TOGGLE (THIRD_PARTY_EVENT_ID_MIN + 14002) #define EVT_COCKPIT_LIGHTS_ON (THIRD_PARTY_EVENT_ID_MIN + 14003) #define EVT_COCKPIT_LIGHTS_OFF (THIRD_PARTY_EVENT_ID_MIN + 14004) #define EVT_DOOR_FWD_L (THIRD_PARTY_EVENT_ID_MIN + 14005) #define EVT_DOOR_FWD_R (THIRD_PARTY_EVENT_ID_MIN + 14006) #define EVT_DOOR_AFT_L (THIRD_PARTY_EVENT_ID_MIN + 14007) #define EVT_DOOR_AFT_R (THIRD_PARTY_EVENT_ID_MIN + 14008) #define EVT_DOOR_OVERWING_EXIT_L (THIRD_PARTY_EVENT_ID_MIN + 14009) #define EVT_DOOR_OVERWING_EXIT_R (THIRD_PARTY_EVENT_ID_MIN + 14010) #define EVT_DOOR_CARGO_FWD (THIRD_PARTY_EVENT_ID_MIN + 14013) // note number skip to match eDoors enum #define EVT_DOOR_CARGO_AFT So rather than program events to navigate through the CDU these may be the solution. More later... Link to comment Share on other sites More sharing options...
Ray Proudfoot Posted August 8, 2021 Author Report Share Posted August 8, 2021 Problem identified and solved. I didn't tell you the full picture. I also use GoFlight Interface Tool so I can get the LEDs to illuminate and extinguish depending on the door state. I had already programmed front Left and front Right into GIT and was repeating the action via my code above. So front left and right were being operated twice - hence the problem. I've removed the offending lines and now the code works flawlessly. Thanks all for your suggestions. 👍 Link to comment Share on other sites More sharing options...
John Dowson Posted August 8, 2021 Report Share Posted August 8, 2021 Ok, thanks for letting me know. Strange that it worked sometimes though....! Link to comment Share on other sites More sharing options...
Ray Proudfoot Posted August 8, 2021 Author Report Share Posted August 8, 2021 4 minutes ago, John Dowson said: Ok, thanks for letting me know. Strange that it worked sometimes though....! The opening sequence was fine. Just the closing. 😀 Link to comment Share on other sites More sharing options...
Ray Proudfoot Posted August 8, 2021 Author Report Share Posted August 8, 2021 John, I have to say FSUIPC is very impressive to run this code so precisely. When you consider it’s navigating its way through the CDU menu it does it extremely quickly. It just needs the user to get things right. 😃 Link to comment Share on other sites More sharing options...
John Dowson Posted August 8, 2021 Report Share Posted August 8, 2021 👍 But do you need to go through the CDU menu to operate the doors? The specific (custom) events (or lvars) may be the easier way to assign for this. Link to comment Share on other sites More sharing options...
Ray Proudfoot Posted August 8, 2021 Author Report Share Posted August 8, 2021 16 minutes ago, John Dowson said: 👍 But do you need to go through the CDU menu to operate the doors? The specific (custom) events (or lvars) may be the easier way to assign for this. I would have to learn a whole new system John. It might appear clunky but it works. I tried right-clicking on the separate door lights on the overhead hoping it would make them move. No chance. The CDU system seems the only way in combination with GIT to get the LED on my T8 panel to light up. Link to comment Share on other sites More sharing options...
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