I typed up this lengthy explanation last night but should never post when tired. I then save them externally where I can think about it with a clear head before posting.
- I think I may just reset the remote
- I went back to the trains and attempted to crank up the Tablet and Wifi operation. No problem with addresses and/or running anything...Engine #s 10 and 11 even were in there and worked as they should.
Your remote and your DCS copy of the app EACH have a database of all the engines you added. The catch 22 is, that PC backup or app backup, I don't think you can take and transfer between the app and the DCS remote to "sync" and have a matching database. FWIW, I actually intended one day to compare the app export for transfer file and the DCS remote backup, and then figure out if a translation could happen.
First thing is, so when you go to add an engine, the remote or app query the engine(s) on the track that have power and DCS signal. Then a handshake negotiation to determine the address of the engine happens and this is key how works:
Your remote or app has 1-98 slots in the database ID table. If you start with a blank database (reset remote or reset app) then it starts at one and works it's way up as you add addresses.
However- the exception. Say an engine is NOT reset to factory defaults and not sitting at ID1 in memory in the engine firmware. Instead it's a number like 10 because it was previously added to "a" DCS system (might be the previous owner). This then factors into that add engine ID equation. If your remote or app has not yet filled ID 10, then the new remote or new app add engine function adds it using the slot 10. However if the remote or app has an engine already in slot 10, then it will add the engine to the next higher open slot. Example it could jump to 48 because your last engine added was 47 and 1 through 47 are full.
It's by shear luck, that using the app and the remote, if you add the engine to one, and then immediately add to the other and never skip an engine, and never have a problem- they might - match up. Eventually there is a risk of getting a mismatch.
What makes DCS unique or different from Lionel TMCC/Legacy is a few things:
#1 There is no program/run switch for DCS. This means that DCS engines (PS2 and PS3)are sent special commands during the add engine process. This special 2 way communications the engine provides it's details, road name, road number, and via a complex set of rules negotiates what the new ID slot will be based on what the engine has stored and what the remote or app have available for open ID slots.
#2 Even harder to grasp, the add engine function is NOT COMPLETE until well after you added the engine when the engine is shut down and loses track power- this is the key moment when that new DCS ID slot number is stored into more permanent memory from RAM!!! let me say this again, when you add engine, and that negotiates the new ID, and then you are running the engine for that session, that is only in volatile RAM (Random Access Memory) used by the microprocessor. The PS2 or PS3 engine then relies on batteries or supercapacitors to keep the processor and RAM powered when track power is lost, and then given that special state or condition, the engine firmware then stores from RAM the settings and new ID into more permanent storage as part of the firmware shutdown sequence. If the battery is dead or there is a problem with the supercapacitors, then the system will fail to store the new updated DCS ID and revert back to whatever was previously in the more permanent memory of the engine.
#3 As previously explained the ID slot number in the database either in the remote or app- typically it just adds to the next free unused slot. That said, there is an exception- if the engine previously has an ID other than the default 1, then that address is compared to the remote or app and if free, that address is used. This exploit is how you are adding to the app after previously adding to the remote and NOT getting an ID mismatch, however, that is just luck and events like this glitch of an engine disappearing could wreak havoc.