I managed to get a bit of time between the extremes of heavy rain and oppressive heat we are having to do some real-world testing of my new consist feature. I’ve had a basic consist setup in the receiver for a long time now and if you run similar locomotives with the same decoder setup, it worked ok.
However I have two very similar looking but different Chessie locomotives. An Aristocraft U25B with a Soundtraxx TSU4400 DCC decoder and a USA Trains GP38 with a TCSWow 501. The Aristo U25 ran about twice the speed of the GP38 at the same PT notch setting. Lots of grinding and coupler pops, these two were not happy together.
I did not like the idea of custom speed tables and all that CV programming etc, so I decided to just intercept the notch/throttle and apply a custom value. Hence this feature.
This adds a table in the receiver that is enabled if the loco is a consist ‘slave’. You can program each of the notches as sent by the Protothrottle to a unique throttle value that is sent to the decoder. This lets you more closely match up speeds.
Above is my outside setup with a closer shot below. Yes, it’s in a cardboard box but it keeps the electronics in one place and is very portable! (the fold out card is for the TSU4400 CVs, I can’t ever remember them) I use one of those phone external batteries to power my programmer and a Asus 7 inch tablet to run the web app. Works well and the parameters are updated in real time.
In the following video I’m just letting the locomotives chase each other to test on how closely they are matched up. This also required that I change a few CVs in the U25B to dial in the acceleration and deceleration to more closely match the GP38. The GP38 is the lead locomotive on the left.
In the next video, I’ve built up a fairly heavy train. The tank cars are particularly chunky. I still have some small tweaking to do at notch 4, the U25B does not have quite enough deceleration dialed in. But it works well and looks pretty good. I see I will need one more programming aspect- a filter on the slave so that the bell and horn can be turned off. Right now, that passes through so I get two bells and two horns, sounds a bit weird.
Below are some screen shots of the web app interface. For the most part, the cosmetics are the same but I have refactored the Xbee message passing and screen refresh code to make it more robust. I’ve also added a way to set the Node Identifier in the Xbee, this is a 20 character ASCII string that I use as the locomotive name. I used it to set the name of the Protothrottle to ‘Protothrottle’ since it comes from the factory as a blank. I would like to access more of the PT innards, particularly the configurations so I can save and load them on the computer, but that doesn’t seem to work in the current PT firmware? I would hack on the PT code but I like having a unit I ‘use’ and a ‘development unit’ to experiment with but I don’t have a spare $500 right now. Anyhow, note that these are screen grabs from my testing inside on the bench, not the above outside consist testing. For reference, the name at the top is the Xbee Node ID and the number under that is the mac address of that Xbee.