Hello What is the interest to have a dedicated programming track when the NCE Power cab (and probably other systems) can program on the main? Also, has anyone tried to do an equivalent of the NCE Auto_SW (to get 1 main + 1 programming) with an arduino?
Most all of my programming is done "on the main" with my Powercab... However, there have been a handful of times when I have had to resort to using the "program track" mode... when I wanted or needed to read the current value of a CV setting in one loco. W/O a dedicated programming track, this required removing all of the other locos from the track. Fortunately, I have only five locos, but still a PITA. When I built my trackwork, I electrically isolated a spur near the front of the layout to serve as a programming and "fiddle" track. The plan is to set this up as a switchable or autoswitched programming track.... just haven't got a "round tuit" yet (it's only been two years).
I use a 3 foot long track mounted to a 1X2 that I use at my work bench. I remove it from the work bench when doing other things. I always use the programming mode for DCC work, it can save you a decoder should you goof up wiring some how. I have two PC’s and one is always by my work bench.
If you do your own installs you will need a program track . Never put a loco that you installed the decoder your self . There is a good chance that you will fry the decoder . It gets real expensive if you fry a sound decoder ....Mike
When programing on the main line some systems can not read back the CV settings. I always try and program on a dedicated program track whenever possible.
Just beware that some locomotives can move quite a bit during programming (some more than others). If a locomotive moves and spans the isolation gap between the rest of the main and the programming spur, then the rest of the main will become a part of the programming track (powered through the loco that is still powered by the programming track), and everything else that is on the main will be programmed too. For this reason, some folks that use an isolated spur on the layout for programming, include a length of dead track (not powered when programming AND isolated from the main too) between the programming spur and the rest of the layout. This dead track should exceed the length of your longest locomotive (including tender, if the tender is used for pickup too). You can use two NCE Auto-Switches to automatically control the main, the programming track, and the dead track between them.
You will also blow the decoder if the loco spans the two sections without a dead track separating the two. You can use a 4PDT toggle switch to switch between running and programming functionality with a dead section between the two. You can even add an indicator LED. Saves on the auto switches.
The wiring diagram is around the middle of the page but the rest of the info is a good read. https://dccwiki.com/Programming_Track
Please note that the diagram for the 4PDT switch assumes your CS/booster has separate track bus outputs for main and programming tracks. The NCE Power Cab and the SPROGs have a single track bus output for both purposes. When programming, the track current is limited to NMRA standard programming limits. NCE makes an Auto Switch with a single input and two switched outputs: one for program track and one for main track. The Program output is only on when programming commands are being sent. The main output is on when operating commands are being sent. The Auto Switch treats commands for programming on the main as operating commands, not programming commands, so you can still program on the main. The NCE/SPROG output is connected to the input of the Auto Switch. NCE recommends connecting the programming track to the programming output of the Auto Switch, and connecting the main track to the main output. However, this prevents you from driving your locomotive to be programmed onto the programming track from the main (this may not be a big deal). If instead you wire the programming track to the CS/booster output (which is also connected to the INPUT of the auto switch), then you can drive your locomotive from the layout onto and off of the programming track. Thus the programming track is always powered, but the main is only powered when using operating commands. To handle the dead or isolation track, you need a second Auto Switch, with its main outputs connected to the dead/isolation track, and its input connected to the CS/booster (or to the INPUTs on the other Auto Switch). This way, the dead/isolation track will not only be off while programming, it will be isolated from the main tracks. A 4PDT switch can also be wired to handle a single output CS/booster, whether you wish to drive the loco onto the programming track or not. I don't have or know of a drawing for that.
Wiring diagram for a "live" programming track... The program track will always be "live," but autoswitch will turn off power to the main (all tracks EXCEPT the programming track) when Powercab is in the "programming track" mode
This is how I finally did it: Right now, I'm "playing" with DCC++ EX and JMRI. So I have main track and programming track from the motor shield I added an insulated "dead" track in between the main track and the programming track I was planning to use an Arduino with a relay board to switch the signals from the arduino motor shield, but for now I ended up using a simple switch to select Main or Prog mode -) When I want to be in main track mode (all tracks powered from the main bus), all the relays are NC (board not powered) and the main bus signal is applied on the dead track and the programming track -) When I want to be in programming track, the relay board is powered, and the dead track is with no signal (insulated) while the programming track receives the programming signal from the basestation I'm happy with it so far.... I may do the same to switch from DCC++ EX to NCE Power Cab...
This is how I finally did it: Right now, I'm "playing" with DCC++ EX and JMRI. So I have a main track and a programming track from the motor shield I added an insulated "dead" track in between the main track and the programming track I was planning to use an Arduino with a relay board to switch the signals from the arduino motor shield, but for now I ended up using a simple switch to select Main or Prog mode -) When I want to be in main track mode (all tracks powered from the main bus), all the relays are NC (board not powered) and the main bus signal is applied on the dead track and the programming track -) When I want to be in programming track, the relay board is powered, and the dead track is with no signal (insulated) while the programming track receives the programming signal from the basestation I'm happy with it so far.... View attachment 232054 View attachment 232055 I may do the same to switch from DCC++ EX to NCE Power Cab...