This suggests that GSX reads the state of the cargo doors accurately but not the front passenger door.
No, it only suggest that variable hasn't been initialized by the airplane in that moment. There's no difference how GSX reads variables, they are all read in the same identical way.
The only thing that can be wrong, is the airplane configuration (the names of the variables not correct), but it was wrong, it would never work in every situation.
It it's working after opening/closing the door, the variable in the GSX configuration is clearly correct, so the only issue is the airplane not initializing it when loading from saved panel state.
It has been a while since we added the 737NG to the GSX config and I do recall, however, some inconsistency, since they used custom L: variables for all doors *except* for the main doors, which used the standard default variable. In other products they use custom L: variables for everything, maybe the 737 was later updated to do the same.
Try this:
- Open the GSX airplane configuration page with the 737 loaded.
- Select the passengers door 1
- In the dialog, change the door status to "Door with custom open/close checks"
- In the custom XML expression field that will appear, insert this:
(L:NGXFwdLeftCabinDoor,number)- Save the config and see if it works better.