Hello, I am trying to set up DCC plus plus with JMRI. I am new to both the DCC++, and JMRI. And I am new to DCC. I would appreciate if someone could take the time to give me some basic help. Here is my problem. I have an engine that runs on our club’s system. When we read the decoder on the club system, we retrieved the following information. Decoder Doehler And Haas Address 45 CV7 56 CV8 97 When I attempt to set up a roster entry on JMRI and use the function read, the decoder is identified as follows: “Found MSG 123 (Masuda electronics GMB version 1 to 3" no such decoder defined" My system is as follows: I have an Arduino mega on which is mounted an Arduino compatible motor shield. There is a jumper wire between pin for and pin 13 as instructed in this video. An Arduino Mega 2560 DCC++ Base Station The motor shield has 12 V DC applied to it. The leads to the track on which the engine is placed are connected to ports on the motor shield. The connections are hardwired. The track is cleaned. I am using Windows 7. I installed this version of JMRI. JMRI.4.8.Rbe0ff15 The yellow light on the Arduino mega is lighted and steady. In other words, it does not blink. I am using serial port com 13. Questions I have, and cannot answer: Do I have a problem with the DCC++ installation on my Arduino mega? How can I check this? What should I do? Do I have a problem with my JMRI installation? Do I have a problem with my JMRI configuration? Where should I look to perhaps try and figure it out? Or what information do you need from me that will help you give me a recommendation. Thank you for your time and consideration. Gary Granai
Hi, You could try a few basics tests of the DCC++ installation first before you jump in with JMRI. With the USB lead connected to the Arduino base station, on the PC open the Arduino IDE, and start its serial monitor (Tools\Serial Monitor). If you type in '<1>' (without the quotes) and click Send, you should find that the LEDS on the Motor driver board switch on. Similarly sending '<0>' should turn the lights off again. If this doesn't work then you need to investigate further. There is a diagnostic procedure that Gregg has on his site that may help with this: https://github.com/DccPlusPlus/BaseStation/wiki/Diagnostics---D---Command As for JMRI, I'm afraid I don't use it, but I'm sure someone else will help once you know the above test work. Jim
The problem is that the decoder is NOT being read correctly.....the 123 for the manufacturer is the obvious key. Can you read the CVs from any other loco/decoder? If not, you';ll need to resolve that. Search for issues with reading Cvs with DCC++.
Hi, CV7 = Decoder Version (only read) CV8 = Manufacturer ID (only read):: 97 = Doehler & Haas (https://ncedcc.zendesk.com/hc/en-us/articles/200545039-Manufacturer-ID-listing) When changing CVs ignore these 2 as they are locked and could give a false read back. 47 is probably CV1 which is the short address of the unit (if you read CV! it should then read 47). This one you can change if required. Decoderpro should pick up Doehler as it is on the decoder list if you use the add on function to create a roster entry. The Doeler site should have the decoders manual so that you can see which CVs you can change and possible effects of the changes & default values. It will also give you the reset values if you require it as some stage. 123 is just JMRI way of saying it can't read that particular CV/ engine (dead spots on track). Pieter
Just to tick off another "basic" ... you are using a motor shield that provides current feedback, yes? The standard "official" Arduino motor shield does not. If you don't have current feedback, DCC++ cannot do CV read back.
The video's are out of date. Please refer to the current spec here https://github.com/DccPlusPlus/Documentation/blob/master/Motor Shield Pin Mappings.pdf before trying to trouble shoot any further.
The updated information , in addition to showing an update to the jumper connection, says that the brake should be turned to low. How is that done?