I imagine you have all you need to have the job done if you use JMRI to pilot a DCC++ base station and have build a monitor : you can watch what JMRI send on the tracks when commanding RGB LEDs. Perhaps there something in the Help. (there is a video on youtube - where ?) and then adapt the decoder to interpret the accessory codes. Certainly easier to say than to program it. Did you try google to see if anyone has already worked on this ?
Well, I'm running Digitrax and JMRI, so I also have a LocoNet info to work off of. But there's a difference between that and knowing what variables to use to find if an address is on or off, that's a library specific thing. I just needed to get a working decoder to reprogram and now I have one. Technically it should be no different than an accessory decoder set to on/off for all pins. It's a simple matter finding the line where it turns on an LED and replacing the digitalWrite() function with one I've written myself to display a particular pattern. I haven't had the time to sit down an finish it, but I have the rough draft of a sketch that transforms an accessory decoder sketch to do what I want using the DCC_Decoder library. I've also had some discussions with Ian from dccinterface.com who has sells a completed circuit board based on the Dave Falkenberg schematic. He may have better luck with it than me. I've also purchased a few of his interfaces so I'll report here how well they work.
This thread began about the fully DIY and free solution DCC++ which separates clearly the command (JMRI or throttles or DCC++ Controller) and the booster (DCC++ Base station). Between the two there are simple Ascii strings which can be monitored with the serial monitor of the Arduino. You have a presentation of DCC++ here : https://github.com/DccPlusPlus/BaseStation/wiki/What-is-DCC--Plus-Plus The decoder I made is the one of Rudy Boer (interface to DCC with mynabay/Dave Falkenberg schematic) https://rudysmodelrailway.wordpress.com/software/ I made a confusion when I quote a youtube presentation of a command of RGB strips. In fact it is that of the DCC++ Controller. It must be easy to monitor (serial monitor of arduino) the strings used for this. See at the last quarter of the video : Note that you can make a booster (DCC++ Base station) with an Arduino UNO and a motor shield fed by a 12V 2A supply for some dollars. No soldering, worth to try ? DCC++ was developped by Gregg E. Berman. And he will never be thanked enough for that. Sorry but I can't help on commercial items as I don't own any.
Hi Miguel, another issue I met : when the circuit is connected directly to a booster it may not give any output. This is corrected by putting a loco on the tracks or a small capacitor (once more) between the rails (from 330pf to 0.1µF to my experience)
Hi all, I don’t know what else to do. We’re is a video with a small setup. A few tracks, one loco, DCC++ base station, JMRI, DCC decoder from Ian at DCC Interface and one Arduino with DCC monitor sketch. You can see on the video the loco receiving commands, going forw, back, accelerate and stop... and the DCC monitor keeps telling zero packets. Any idea, anyone? Thanks Miguel
By now I am using a V2 version as attached. The timings are sensitive and it is wise to do not modify the sketch. Which one do you use ? Perhaps a question of library ?
I'm not using v2. I'm using v1 and I didn't change the sketch. Tomorrow I will use v2 sketch and I'm going to solder the interface wires directly to the track, near the base station connection. Ian, from DCC Interface is going to send me huis sketch test based on NMRA Library. Finger's crossed. I can't wait to test my turntable aparatus
Eureka... If I put my finger on both tracks every sketch works So I think i really need the 270pf capacitor between track's
Problem solved. It really need the ceramic capacitor 270pf between the tracks. Now I don't have more excuses and I need to finish the code of my DIY turntable
Very please that you solve your issue. You must have the most capacitive (should I say capable) finger of the all forum ! Three photos just to show how I built an autonomous assembly for monitoring DCC : 1. compact DCC interface with some SMD components soldered on the pins of the 6N137 2. In box monitor with power bank feeding arduinos via USB 3. Box open with arduino UNO 2.4 TFT shield + Pro mini as decoder - interface on previous photo and Base Station Sketches : sniffer v2 (in a previous message) and monitor2.zip (.ino+library) attached
Hi Michel, I had a minor surgery and the trains were left behind. Now, that I can seat on a chair, I was catching up and I have a question regarding your DCC Monitor. Why 2 arduinos? Or I misunderstand something? My several failed attempts on building the DCC monitor circuit were caused by faulty optos. I have more than 40 optos bought on 2 occasions and so far I discovered more than 20 broken ones... China cheap slow boat and poor quality control Miguel
Hi Miguel, nice to have good news. I had also faulty optos, but I wonder if it was not because of hasardous testing, it is very easy to touch two pins together when mesuring anything. You can test an opto very easily with a 2032 battery, even used (they cannot deliver more than some tens of mA, so no risk in short circuit, you can try it on any LED) : You put the battery +/- to the LED and put an ohmmeter (multimeter) on the transistor side, try both polarity. If the opto is good, you go from overrange to some kohms. It certainly worth to retest faulty ones. For your question, yes, there are two arduinos, because the sniffer has very touchy timings, and driving the display is heavily time consuming. The two functions must be separated. The sniffer delivers ascii codes on its serial output which is connected to the serial input of the arduino bearing the 2.4" shield. (both at 38400b). Connections are sparse, and all fits in a 100x60x25 mm box.
Thanks Michel, the 2.8" 240x320 TFT LCD Display Touch Screen Module SPFD5408 w/ SD TF Slot For UNO is on the slow boat
Hope it won't take too long ! I see on your video that you use the JMRI WiTrottle. I had a problem with the Firewall of Windows and basicaly I shut it off to have Train Driver working. Then, I tried different rules. It seems that under W7, I had to set decoderPro.exe for public access (box ticked) in the Fiewall for this. For W10, I add, maybe, four rules and now I do not know which one was the good one. Did you make it more cleverly ?
I’m afraid I can’t help with that. I have 2 systems: - win 10 and android phone is my main system (train speaking) but is on a private network without internet connection, only train related stuff; - on occasion, for testing purposes, I connect the base station to a MacBook Pro on the main network router. Sent from my iPhone using Tapatalk
Hi all, New to TrainBoard and DCC++ I know this thread is older but am having the same problem with trying to get a Ruud Boer decoder to respond while loco's have no problem. I have 5 decoders that operate with no issue with my Bachmann Dynamis but no response on DCC++. I tried adding the capacitor, with and without a loco on the track, changing address's in arduino and nothing. I'm not sure if I am completely missing something in setting them up or what. Any Help will be appreciated. Thanks Rich
have you tried this? http://www.trainboard.com/highball/index.php?threads/dcc-issues-with-d-h-10c-resolved.106064/