I do monitor <funcmd, and can see when states are changed, but you are incorrect when you say
I hope that this reasoning translates ok :
- When a RCP throttle (or other tool) is turned on and Rocrail has been running some time, Loco function states may have been previously changed by other throttles or actions.
- So, When my wifi throttle selects a specific loco to control,
- I get all the <lcprops data , which include data on the fn=='f0'=="lights" toggled state
- I can look for <fn fnchanged messages to track any subsequent function changes
- --- But I have to assume all other function states are "false"
- ---This is OK for 'Momentary' functions
- But the throttle cannot see if something else had been previously changed before the throttle was turned on (or can you supply a Crystal Ball?? . )
- Of course, once a loco is selected, the throttle watches it and can monitor any subsequent changes and synchronize its knowledge of that function state.
- But I miss any function states that were changed BEFORE I started looking at that particular loco
What I have seen is a message that explicitly included all the function states, although I am unsure of exactly how I got it. I suspect it was in response to a badly commanded message, back before I tried to avoid getting "exception messages". From what you said just now there is no way to deliberately (legally??) get this message, so I may have to try and discover how I managed to get it back when I used "illegal" commands...
I will let you know if I make any progress!