-->

Tuesday, June 25, 2024

EX-DCCInspector - part 1

 

Now that my test stand is all set up with the DCC-EX Command Station, I spent a bit of time with another tool from DCC-EX: EX-DCCInspector and its DCC Diagnostic Tools. The goal is to understand if an Arduino could analyze the DCC packets and identify the locomotives running on the layout. More specifically, it would need to identify the engine going into a specific block.

A while back, I ran an experiment with RFID, but the range was still an open issue, as well as the speed off the models.

I purchased the part mentioned by the DCC-EX website: 

https://www.iascaled.com/store/ARD-DCCSHIELD

I followed the instructions and saw it could support a OLED display. It could also do Wifi, but I think I need different parts for that: ESP32, so I'll do that later. On the software side, I had to adjust the Config.h file and comment line 55 that is active by default (which doesn't make sense to me...):

line 55 // #define USETIMER


Eventually everything worked and this is how it looks:


Thanks for the DCC-EX Command Station, I'm able to use JMRI to command the train wirelessly while my laptop is connected via USB to the EX-DCCInspector module 😁





And this is the type of output I got on the Serial Monitor:

20:23:53.279 -> Bit Count/4 sec=24621 (Zeros=10016, Ones=14605), Glitches=0 20:23:53.279 -> Valid Packets=387, NMRA out of spec=30, Checksum Errors=0, Lost pkts=0, Long pkts=0 20:23:53.279 -> 0 half-bit length (us): 116.0 (108-124) delta < 16 20:23:53.312 -> 1 half-bit length (us): 58.0 (48-68) delta < 12 20:23:53.312 -> -- 20:23:53.312 -> Loc 1833 F28-F21 0 11000111 00101001 11011111 00000000 20:23:53.349 -> Loc 1833 Rev128 Stop 11000111 00101001 00111111 00000000 20:23:53.349 -> Loc 1833 L F4-F1 10001 11000111 00101001 10010001


Next step is to go on the layout and try again; this time with the ECoS as the command station where I have block detection via Railcom.