To change things up, I showed you a “simple” Dead-Rail conversion of a Diesel locomotive in my previous post. This post follows up with an even more straightforward conversion that is very similar to what I do with steam locomotives: leave the DCC decoder and electronics in the locomotive alone except to provide a plug connecting the locomotive’s DCC decoder to an external Dead-Rail DCC source instead of DCC from the rails, which in our case will come from a battery-powered radio receiver and amplifier mounted in a “battery car” (the tender for steam locomotives).
Let’s see how this is done. I will repeat some steps so you do NOT need to refer to the previous post.
The Locomotive Conversion
The first step is to remove the locomotive shell so that we can modify the “2-Rail/3-Rail switch” and convert it to a “2-Rail/Dead-Rail” switch that will maintain the ability to use track power in either DCC or DCS mode and add the ability to use DCC from an external source.
Removing the upper plastic shell was easy; remove eight screws and the rear coupler. That’s one of the beauties of MTH locomotives: they are well-designed for disassembly.
Separating the chassis from the upper shell, we see the “stand holding the switch we’ll modify.
Repeating from my previous post: To allow track-based “2-Rail” or “Dead-Rail” Operation, we need to figure out how to get DCC from either the track (“2-Rail Operation”) or from the output of the ProMiniAir Receiver’s Amplifier (“Dead-Rail Operation”). The original 2-Rail/3-Rail switch that routes track power/signal to the PS-3.0 is shown below.
These connections were verified by using a multimeter’s resistance-measuring capability. Let’s see how this switch is designed:
When the switch is in the 2-Rail position:
The Right Wheels’ output is directed to the PS-3.0’s DCC Track Right by shorting the “Track Right” end post to the “Track Right” center post.
The Left Wheels’ output is directed to the PS-3.0’s DCC Track Left since it’s directly soldered to the “Track Left” center post.
When the switch is in the 3-Rail position:
The Center Rollers’ output is directed to the PS-3.0’s DCC Track Right by shorting the “Track Left” end post to the “Track Left” center post.
Both the Left and Right Wheels’ output is directed to the PS-3.0’s DCC Track Left by shorting the “Track Left” end post to the “Track Left” center post and the “Track Left” end post’s jumper to the “Track Right” end post on the opposite side of the switch. This connection shorts the Right Wheel’s output to the Left Wheel’s output on the center post that then goes to the PS-3.0’s Track Left!
The photo below shows how to rewire this 2-Rail/Dead-Rail Operation switch.
Repurposing this switch has the following features:
The output from the center rollers is disconnected and closed off. Its role was only for 3-Rail Operation.
The Right and Left Wheels’ outputs are located on separate posts at one end of the switch (for 2-Rail Operation in either DCC or DCS mode).
The Track Right/Track Left DCC outputs from the ProMiniAir Amplifier are located on separate posts at the other end of the switch (for DCC Dead-Rail Operation).
After remounting the newly-modified 2-Rail/Dead-Rail switch back into its stand, the Dead-Rail wires leading to the switch are connected to wires that have an external plug that will receive Dead-Rail DCC from the “battery car” we’ll describe below.
A plug is “snaked out” near the rear coupler to connect to the external source of Dead-Rail DCC from the “battery car.”
Once we screw the upper shell back in place, we are done with locomotive modifications!
All we did was modify one switch and route the new switch connections to a small plug snaked out near the coupler. It can’t be any simpler than that!
Let’s turn to the straightforward “battery car.”
Battery Car Conversion
The photo below shows the components we fit inside a “battery car:” a 14.7V battery that will just fit through the door and a ProMiniAir Receiver/Amplifier. A surface-mount Molex 21004 antenna was mounted to the external metal shell. Surprisingly, reception worked, despite the traditional practice of avoiding antenna mounts on metal surfaces.
A small hole was drilled in the bottom of the car to pass Dead-Rail DCC from the ProMiniAir Amplifier to a plug that connects to the locomotive.
With these Dead-Rail modifications, the video below shows Dead-Rail Operation.
The Dead-Rail modifications described here maintain 2-Rail Operation in either DCC or DCS mode, which mode is selected by the DCS/DCC switch.
If the 2-Rail/Dead-Rail switch is set to “Dead-Rail,” then the DCS/DCC switch MUST be set to “DCC” so that the PS-3.0 can interpret the DCC signal coming from the ProMiniAir Receiver/Amp in the “battery car.”
This conversion was straightforward:
Modify one switch in the locomotive to receive DCC from an external source.
Snake a connector from this switch out of the locomotive near the coupler
Insert a battery and ProMiniAir Receiver/Amp inside the “battery car.”
Snake a connector from the Amplifier out of the “battery car”
Connect the two plugs together and couple the car to the locomotive.
I hope this simple conversion will inspire you to try your own conversion! There are locomotives such as PS-3.0-equipped MTH that will make this process easier.
I thought I’d switch things up a bit. I’ve only shared dead-rail conversion posts for steam locomotives so far, but I figured showcasing the conversion of an O Scale diesel locomotive would be worthwhile. After all, not all readers share the same affinity for steam locomotives as I do! Converting a diesel presents a few unique challenges compared to steam locomotives, which makes it all the more interesting.
I was searching for a 2-Rail MTH diesel locomotive that didn’t require wheel and coupler conversion and provided a PS-3 for DCC dead-rail operation. Fortunately, I found what I was looking for on eBay – the MTH Premier Norfolk and Southern SD60E Diesel (MTH 22-20596-2) at a reasonable price, which ticked all the boxes. This choice allowed me to focus on a more straightforward dead-rail conversion, emphasizing incorporating battery power and a small but powerful (13A) ProMiniAir Receiver, with minimal modifications required. I opted for MTH because of its rich, DCC-accessible features, including lighting, sound, and smoke, and its maintenance-friendly design, making it relatively easy to open up.
I had to open up the locomotive and look inside to develop my dead-rail conversion plan. While MTH provides exploded drawings of some locomotives on their parts site, unfortunately, they are not yet available for the MTH 22-20596-2 model.
Notwithstanding the lack of good diagrams, removing the upper plastic shell was easy; remove eight screws and the rear coupler, and you’re in!
Separating the chassis from the upper shell, we’re confronted with a very crowded interior (see photos below)!
The interior space is narrow and jam-packed with two motors, a PS-3 board, switches, lights, and wiring.
Two conveniently-located switches are shown below.
Based on this examination, I made the following observations:
I could not figure out how to place a battery in this space. Even flat batteries (0.2 to 0.3″ thick) would not fit!
The 2-Rail/3-Rail switch could be repurposed as a 2-Rail/Dead-Rail switch, making it feasible to maintain 2-Rail DCC operation and add DCC Dead-Rail.
The DCS/DCC switch could be repurposed as a Battery Power ON/CHARGE switch.
Later on, I will demonstrate that it is possible to fit the Receiver and Amplifier of the ProMiniAir inside the shell.
To combine power and control of the locomotive, I had the option to set up the ProMiniAir Receiver in the trailing car along with the battery and send track-level DCC from the ProMiniAir Receiver to the locomotive instead of DC power. But for this post, I placed the ProMiniAir Receiver inside the locomotive and connected it to battery power from a trailing “battery car,” creating a straightforward battery-powered setup.
I will show in a future post how to locate the ProMiniAir Receiver/Amplifier in the “battery car” and supply the locomotive with the DCC output of the ProMiniAir Receiver’s amplifier.
Based on these observations, let’s get into the dead-rail conversion details.
To allow track-based “2-Rail” or “Dead-Rail” Operation, we need to figure out how to get DCC from either the track (“2-Rail Operation”) or from the output of the ProMiniAir Receiver’s Amplifier (“Dead-Rail Operation”). The original 2-Rail/3-Rail switch that routes track power/signal to the PS-3 is shown below.
These connections were verified by using a multimeter’s resistance-measuring capability. Let’s see how this switch is designed:
When the switch is in the 2-Rail position:
The Right Wheels’ output is directed to the PS-3’s DCC Track Right by shorting the “Track Right” end post to the “Track Right” center post.
The Left Wheels’ output is directed to the PS-3’s DCC Track Left since it’s directly soldered to the “Track Left” center post.
When the switch is in the 3-Rail position:
The Center Rollers’ output is directed to the PS-3’s DCC Track Right by shorting the “Track Left” end post to the “Track Left” center post.
Both the Left and Right Wheels’ output is directed to the PS-3’s DCC Track Left by shorting the “Track Left” end post to the “Track Left” center post and the “Track Left” end post’s jumper to the “Track Right” end post on the opposite side of the switch. This connection shorts the Right Wheel’s output to the Left Wheel’s output on the center post that then goes to the PS-3’s Track Left!
The photo below shows how to rewire this 2-Rail/Dead-Rail Operation switch.
Repurposing this switch has the following features:
The output from the center rollers is disconnected and closed off. Its role was only for 3-Rail Operation.
The Right and Left Wheels’ outputs are located on separate posts at one end of the switch (for 2-Rail Operation).
The Track Right/Track Left DCC outputs from the ProMiniAir Amplifier are located on separate posts at the other end of the switch (for Dead-Rail Operation).
Look at the DCS/DCC switch (see the photo below).
The two black wires are NOT shorted together for the DCC switch setting, sending logic to the PS-3 that it should operate in DCC mode. Conversely, if the switch is set to DCS, the two wires ARE shorted together, sending logic to the PS-3 that it should operate in DCS mode. So, all we need to do to ensure permanent DCC operation for either 2-Rail or Dead-Rail operation is disconnect the switch’s two black wires and close them off so they can’t short to each other or anything else.
We can repurpose this switch to provide battery power to the ProMiniAir Receiver/Amp or enable the battery to charge through an onboard barrel plug. The CHARGE switch setting is reserved for future expansion and has not been implemented. The battery Ground is directly connected to the Power “-” of the ProMiniAir Receiver/Amplifier.
After repurposing the switches, they were reinstalled, as shown below.
With the switches reinstalled, we focus on mounting the ProMiniAir Receiver and Amplifier in a location that avoids mechanical interference with installed components.
Since the locomotive shell is plastic, the antenna can be internally mounted. To reduce the mechanical interference from an 82 mm whip antenna, I replaced it with a Molex 211140 “surface-mount” antenna (found at Mouser or DigiKey) mounted in the cabin area.
After a bit of trial and error, the mounting locations of the ProMiniAir Receiver and its “tethered” Amplifier are shown in the photo below. The tethered design provides improved flexibility for mounting in crowded conditions.
Routing of battery power and Dead-Rail DCC signal wiring to prevent interference with closing up the shell is always challenging. My solution is shown below.
Note the battery power wires “snaked” out between the bottom of the chassis and the rear truck, which connect to the “battery car” shown in the next photo.
The “battery car” I used had a metal shell that did NOT have a removable top or bottom, so I was forced to fit a battery through the small door opening in the side of the car. Fortunately, I had an oddly-shaped battery from MTO (see here) that often fits in tight quarters where other 14.7V battery packs will not. This is a very valuable, if expensive ($80), battery configuration to have on hand for dead-rail installations.
The photo below shows the battery installed in the “battery car.” The battery power wires were passed through a small hole I drilled in the bottom of the car near the coupler. Because the battery is asymmetrically-shaped, its uneven weight distribution is counterbalanced by a steel weight strategically placed at the other end of the car.
The first demo shows we retained the standard track-powered, 2-Rail DCC Operation. The 2-Rail/Dead-Rail switch is set to 2-Rail to route the track’s DCC to the PS-3. The Battery power switch is set to CHARGE (OFF) to prevent draining the battery by powering the onboard ProMiniAir Receiver that is not providing DCC to the PS-3.
The video below is a demonstration of the Dead-Rail Operation in action. Battery power is provided by setting the Battery Power switch ON, and Dead-Rail DCC is sent to the PS-3 board by setting the 2-Rail/Dead-Rail switch to Dead-Rail. A Standalone ProMiniAir Transmitter (see this page for a detailed description) integrated with a WiFi-equipped EX-CommandStation provides a WiFi connection to an iPhone’s WiThrottle app. The commands from the WiThrottle app are converted to DCC by the WiFi-equipped EX-CommandStation. Then the ProMiniAir Transmitter connected to the EX-CommandStation transmits this DCC to the ProMiniAir Receiver onboard the locomotive.
The most challenging part of the installation was finding a location inside the locomotive for the ProMiniAir Transmitter and its Amplifier that did not mechanically interfere with the rich set of installed components. Also, routing the added battery power and Dead-Rail DCC signal wiring was challenging. Physical examination is essential for developing a dead-rail conversion strategy, but some trial and error was required in the end!
In a future post, I will show how to mount the battery and the ProMiniAir Transmitter/Amp inside the “battery car” and simply output full-power DCC from the ProMiniAir Receiver/Amp to the locomotive, eliminating the hassle of finding locations for the Receiver and its attendant battery power wiring inside the locomotive. This configuration is much like what I do with steam locomotives: install the battery and ProMiniAir Receiver/Amp in the tender and then provide high-power DCC to the decoder inside the locomotive.
One intriguing possibility is that this option can provide high-power DCC to two or more locomotives simultaneously. This is because DCC inherently sends commands to multiple locomotives, and the 13A Cytron amplifier has enough power to handle multiple locomotives.
OK, you converted your locomotives to dead-rail (battery power, radio control) in part to eliminate the hassle of wiring the tracks and its attendant complications (polarity reversal on loops, etc.). But what about controlling other elements of your layout, including servos that have many uses, such as track switches and semaphores?
This post shows you how to make a low-cost (about $30-$40) servo controller (for up to 10 servos) that can be controlled with the same throttles you use for dead-rail control of your locomotives. The servo controller is based on this excellent Instructable: DCC Accessory Decoder Using Arduino Nano. Please read through this link to familiarize yourself. The significant difference between this post and the Intructable is we will obtain our power through a power plug or USB cable and receive our DCC from a ProMiniAir Receiver. I’ll give you those details below.
What you need: – Arduino Nano: https://www.amazon.com/dp/B09KGVDXZY?psc=1… (<$7.00ea). –Arduino Nano Servo Breakout Board: https://www.amazon.com/dp/B07VQRCC8F?psc=1… (<$2.50ea). You can connect up to 10 servos, each with a different DCC address, if you want. – Servos: https://www.amazon.com/dp/B07L2SF3R4?psc=1… (<$2.00ea). – Power: A wall-wart 9V DC power supply (~$7.50). You can use a “Type C” USB cable for power (and data/programming connection), which costs about $5.00 for the cable and power converter. – Receiver: A bare ProMiniAir Receiver – no amp is needed. Please contact me for this low-cost item ($14). The PMA Receiver gets +5V/GND power from the breakout board and sends +3.3V Logic DCC received wirelessly to the Arduino Nano (via the breakout board’s Pin 2), which contains the DCC accessory decoder firmware.
Physical Configuration: Mate the Arduino Nano into the Arduino Nano Breakout Board. Power is provided by either a 9V power converter that uses wall power or a USB connector that also provides a data link for downloading the firmware and establishing a serial connection for configuration.
The detailed connections from the Breakout Board to the ProMiniAir Receiver and the servos are shown below. The ProMiniAir Receiver connections 1) provide power to the ProMiniAir Receiver and 2) receive +3.3V logic DCC produced by the ProMiniAir Receiver. Up to 10 servos may be connected to the breakout board.
Firmware and Configuration: Obtain the open-source software from the instructable URL (free). After loading the firmware into the Arduino Nano via the USB connection with the IDE of your choice (I use the Arduino IDE), you use the USB serial connection to configure the servo’s DCC address and motion parameters. This step is described in the Instructable.
As described in the Instructable, configuration is performed using the USB serial link. For the demo, I used the Arduino IDE serial monitor to enter the following commands to configure servos 3 and 4 (the number refer to the pin groups labeled on the breakout board, so the 10th servo is on pin group 12):
s 3 37 40 0 0 \n s 4 37 40 0 0 \n
These commands are broken down as follows: s pin-assignment dcc-address swing-degrees invert(0=no) continuous(0=no)
The photo below shows the components of the demo. The WiThrottle smartphone app communicates with the WiFi-equipped EX-CommandStation (see the inset in the image below) that is integrated with a ProMiniAir Transmitter that wirelessly transmits DCC commands to the ProMiniAir Receiver connected to the Breakout Board. This Transmitter is available on eBay by searching for “ProMiniAir”. Power is provided by a 9VDC power converter using wall power. A USB cable connected to your computer or a USB power conversion plug can be used.
A ProMiniAir Transmitter connected to a standard DCC Throttle, also available on eBay, will, of course, also work. Because the ProMiniAir Receiver is compatible with Airwire throttles, they can also be used to wirelessly control the servos using the “ACCY” (ACCessorY) button.
All DCC throttles and throttle apps can control both locomotives and DCC accessory decoders. The details vary from throttle to throttle, but they ALL can control accessory decoders. Below is the demonstration. Note the “Turnout” has been selected with accessory DCC address 37.
I hope this post shows you that dead-rail control extends to other components of your model railroad: dead-rail is not just for your locomotives!
This post starts with some “pieces to a puzzle” before connecting them to Dead-Rail. Bear with me.
Puzzle Piece 1: The open-source and powerful JMRI software is widely used to, among other things, reprogram DCC decoders, manage locomotive rosters, and serve as a throttle and layout control agent. If you are unfamiliar with JMRI, I urge you to review the project’s web pages.
Puzzle Piece 2: The excellent open-source DCC throttle project EX-CommandStation interfaces nicely with the JMRI software via a USB cable connected to a PC running JMRI.
Puzzle Piece 3: As a low-cost dead-rail transmitter solution, I integrated the ProMiniAir Transmitter with a WiFi-equipped EX-CommandStation to provide an entirely “standalone” capability that allows the user to use Smartphone throttle apps or computer throttle apps for dead-rail control of locomotives and accessory decoders. For details, see this web page. This item is available on eBay.
The coup de grace: When integrated with the ProMiniAir Transmitter, the EX-CommandStation allows JMRI to configure and control dead-rail locomotives or stationary decoders connected to a ProMiniAir Receiver or other compatible dead-rail receiver.
This post shows you how.
We will use an example to demonstrate the process of reconfiguring a decoder and then controlling it with the JMRI software.
When using JMRI to configure a decoder, the “Programming On Main” option must be used. The “On Programming Track” option WILL NOT WORK.
Our example will be to program a change of the decoder’s Long Address from 2199 to 2196.
When a decoder’s configuration changes, it is probably best to only transmit the changes to the decoder (the “Write changes on sheet” option).
Once we exit the Programming Pane, the modified DCC address is evident.
Let’s use the JMRI throttle or a WiFi throttle to wirelessly control the DCC decoder at the new DCC address 2196. The ProMiniAir Transmitter and a ProMiniAir Receiver handle dead-rail transmission to the decoder.
Now the videos. First, use the JMRI throttle.
Now use a WiFi throttle.
The following two photos provide detailed views of the Standalone ProMiniAir Transmitter integrated with a WiFi-equipped EX-CommandStation available on eBay.
If you use JMRI to configure or control locomotive and accessory DCC decoders using the Standalone ProMiniAir integrated with a WiFi-equipped EX-CommandStation, the following aspects should be borne in mind:
The PC running JMRI must be connected to the EX-CommandStation with a USB cable. JMRI provides a connection test agent to verify communication between JMRI and the EX-CommandStation is functioning.
When using JMRI DecoderPro to configure or reconfigure a DCC decoder, it must be in Programming On Main mode. The EX-CommandStation is connected to the ProMiniAir Transmitter using the EX-CommandStation’s standard DCC Track Right/Track Left outputs, and using the Programming Track mode will not work.
Because transmission from the ProMiniAir Transmitter to a compatible receiver, such as the ProMiniAir Receiver, etc. is one way, communication between JMRI and the dead-rail decoder is one way: from JMRI to the decoder. Decoder responses back to JMRI are not supported.
Suppose you need to load sound projects or make extensive configuration changes to a DCC decoder. In that case, it’s probably best to use the manufacturer’s specialized programmer directly connected to the decoder’s DCC Track Right/Track Left inputs. For dead-rail locomotives, this is greatly facilitated by having an easily-accessible external plug directly connecting to the Track Right/Track Left decoder inputs. This plug is dual-purpose for my dead-rail installs: 1) it plugs into the DCC outputs from the ProMiniAir Receiver/Amp, or 2) it plugs into the DCC outputs of the specialized decoder programmer.
JMRI can also interface with numerous other DCC Command Stations or throttles, so if you connect the “standard” ProMiniAir Transmitter to the DCC Track Right/Left output of these devices (also available on eBay), then you will have the same capability of using JMRI to wirelessly control and configure your locomotive or stationary decoders that are connected to a ProMiniAir Receiver or other compatible receivers.
One of the advantages of standards, such as the NMRA’s DCC standard, is that multiple vendors’ products are interoperable. There are dozens of DCC vendors, and they all “play nice” with each other (mostly).
The purpose of this post is to show you that you can use the ProMiniAir Receiver and Transmitter for more than just controlling locomotives – you can use it for dead-rail (wireless) control of any DCC accessory (stationary) decoder for lights, turnouts, etc., simply by connecting a low-cost ProMiniAir Receiver/Amplifier to the DCC inputs of one or more DCC accessory decoders. Generally, DCC accessory decoders are inexpensive, e.g., the NCE Illuminator for lighting ($22.40 for a 3-pack) or the Digitrax DS52 for turnout control ($20.36 for control of 2 turnouts).
Then you can use one of several transmitter options (that you also use for dead-rail control of your locomotives), including 1) an Airwire transmitter, 2) a WiThrottle smartphone app connecting to a Stand-alone ProMiniAir Transmitter integrated with a WiFi-equipped EX-CommandStation, or 3) any DCC throttle connected to a ProMiniAir Transmitter. All three options are designed to easily set the accessory address and activate the device while simultaneously controlling the locomotive or locomotives.
For DCC accessory decoders, nothing extra is required since the DCC accessories get their power from the DCC output from the ProMiniAir Receiver. Battery power can be used in remote or inconvenient locations. You can also wirelessly configure the accessory decoders, such as the address. No proprietary accessory devices are necessary since dozens of vendors use DCC, a widely-adopted standard that fosters competition and innovation. There is no “vendor lock” wedded to one manufacturer’s “solution.” The videos show how to activate DCC accessory decoders using the ProMiniAir Receiver in conjunction with these Transmitter options.
In this example, three NCE Illuminator lighting accessory decoders for connecting LEDs for lighting effects are “daisy-chained” with a DCC connection to the output of an unmodified ProMiniAir Receiver/Amplifier using 14.8V battery power. Their addresses were set to 10 (white light), 20 (red light), and 30 (green light). At the end of the DCC daisy chain is a Digitrax DS52 set to address 30 so that it will activate a Tortoise slow-motion switch machine. So, the throttle selection of an accessory at address 30 will activate both the green light and the switch machine. No additional hardware is required.
The videos below show wireless control of the locomotive and the DCC accessories with 1) an Airwire transmitter, 2) a standard DCC throttle connected to a ProMiniAir transmitter, or 3) a WiThrottle smartphone app connecting to a low-cost stand-alone ProMiniAir Transmitter integrated with a WiFi-equipped EX-CommandStation.
Each accessory decoder has its method for setting up its DCC address, but this is usually as simple as 1) set the “programming jumper” on the accessory decoder if it has one, 2) turn on DCC power to the ProMiniAir receiver, 3) push a “configuration button” on the accessory decoder (if it uses one), 4) use your throttle to select an accessory, 5) enter the accessory’s address you want the accessory to use, 5) use your throttle to push the button that “throws” (activates) the device, 5) turn off DCC power to the device and disconnect an “activation pin” (if it uses one), and 5) reapply DCC power.
At this point, the DCC accessory “remembers” its address so that you can now use your throttle to select the accessory’s address and push the appropriate button to activate or de-activate the accessory.
Well-thought-out standards, such as the NMRA’s DCC standard, are good. I hope you can see that connecting an unmodified ProMiniAir Receiver/Amp to any DCC accessory decoder(s) from numerous vendors is effortless rather than using a limited, proprietary wireless solution for controlling accessories such as turnouts and lights while at the same time controlling your locomotives.
I thank one of my customers, Jeffrey Jackson, for the question that led me to investigate this topic!
Based on a Dead Rail Society Facebook post by Rich Steenwyk, I investigated the suitability of using the Pololu TB9051FTG ($11.95, 2.6A continuous, 1″ x 1″) and the Pololu TB67H420FTG ($19.95, 3.4A continuous, 1″ x 1.2″) as a DCC amplifier in conjunction with the ProMiniAir Receiver for Dead-Rail operation. This post investigates their feasibility and shows connection details.
Feasibility and Connections
The TB9051FTG truth table below shows the proper bipolar operation on highlighted rows. Note the pin values for EN and ENB. Based on this truth table, this device should be capable of delivering bipolar DCC to the decoder.
Connections for the Pololu TB9051FTG are shown below. When connected to a “large” decoder such as the LokSound 5 XL shown here, a current-limiting resistor is required to prevent the TB9051FTG from shutting down. The Negative Temperature Coefficient (NTC) resistor is initially at 1 Ohm, but with increased current demand, it heats up, reducing its resistance and voltage drop to a low value. This solution is superior to a high-wattage constant 1 Ohm resistor CVP recommends for its smaller Airwire CONVRTR receivers.
A close-up of the connections for the Pololu TB9051FTG is shown below. Bipolar 3.3V DCC outputs and +5V from the ProMiniAir Receiver are required for proper operation. Note the jumpers that set EN to VCC (High), ENB to GND (Low), and OCC to VCC (High, retry after shutdown).
Example DCC output for the decoder provided by the ProMiniAir Rx/TB9051FTG combination is shown below.
A demo of the Pololu TB9051FTG in dead-rail operation, which will NOT operate with the LokSound 5 XL (5A max) without a current-limiting resistor, is shown below.
Now let’s turn to the larger, more expensive TB67H420FTG.
The TB67H420FTG truth table below shows the proper bipolar operation on highlighted rows. Note the value of PWMx must be High. Based on this truth table, this device should be capable of delivering DCC to a decoder.
Connections for the Pololu TB67H420FTG are shown below. When connected to a “large” decoder such as a LokSound 5 XL, a current-limiting resistor is NOT required to prevent the TB67H420FTG from shutting down. However, the TB67H420FTG is more expensive and larger than the TB9051FTG.
A close-up of the connections for the Pololu TB9051FTG is shown below. As with the TB9051FTG, bipolar 3.3V DCC inputs from the ProMiniAir Receiver are required for proper operation. Note the single jumper connecting VCC (High) to HBMODE that turns on the single-output function. Jumpers between A+/A- and B+/B- deliver the maximum single DCC output of 3.7A.
Testing with the TB9051FTG when interfaced with a ProMiniAir Receiver was successful.
Both the Pololu TB9051FTG ($11.95, 2.6A, 1″ x 1″) and TB67H420FTG ($19.95, 3.4A, 1″ x 1.2″) can be configured to deliver full-power DCC to a decoder when used in conjunction with a Dead-Rail receiver such as the ProMiniAir Receiver. They require five connections to the ProMiniAir receiver, including 3.3V or 5 V bipolar DCC outputs. The lower power TB9051FTG does require a current-limiting resistor for some decoders that produce large “in-rush” currents during power on, and the TB9051FTG does not.
Requires only four connections to the receiver: GND, VPOWER, DCC+, and DCC-
The disadvantage of the Adafruit DRV8871 and the Pololu TB9051FTG is they require a current-limiting resistor for some larger decoders. The Pololu TB67H420FTG does not need this current limiter, but it’s slightly larger and more expensive. You decide!
Users of the QSI Revolution or Titan series of DCC decoders may want to take advantage of these decoders’ built-in Gwire connections for radio control but cannot find the discontinued Gwire receiver. This post describes how you can use the ProMiniAir Receiver as a “drop-in” replacement for the Gwire receiver so that you can control the locomotive with the following radio-control throttles:
CVP Airwire throttles such as T5000 and T6000
NCE’s discontinued Gwire throttle
Our ProMiniAir Transmitter
Tam Valley Depot DRS1 transmitter
Integrating the ProMiniAir Receiver with the QSI decoder’s Gwire capability is easy.
I strongly recommend you review Greg Elmassian’s excellent post, “QSI AirWire & GWire cab.” It deals with using the Gwire receiver with various QSI decoders, which have a built-in flat flex cable (FFC) plug initially designed to connect to the discontinued and now hard-to-find Gwire receiver.
The ProMiniAir Receiver is highly compatible with the Gwire receiver and is somewhat more flexible with more channels and DCC-based reconfigurability. The ProMiniAir Receiver also has a smaller footprint (1.1″ x 0.76″). The modular design approach of the ProMiniAir makes it feasible to take full advantage of the QSI’s Gwire capability to use the ProMiniAir without an additional amplifier.
Integration of the ProMiniAir Receiver using Gwire Connections
The only additional item required is a Parlex HF05U-03-ND 5-position flat flex cable (FFC, 5 Position, 1.00mm conductor spacing, 3″ length, one side connector on both ends), found at Digi-Key here, that plugs into the QSI Gwire plug. Other brands of 5-position flat flex cables are available, notably from Molex.
The ProMiniAir Receiver is easily connected to one end of this cable by soldering 30 gauge wires that match up well with the dimensions of the flat flex cable, as shown below.
The other ends of the 30 gauge wires are soldered to the ProMiniAir Receiver, as shown below.
No DCC amplifier is required because the QSI decoder creates DC voltage from its onboard rectifier. The QSI Gwire connections provide the +5V/GND needed to power the ProMiniAir Receiver, which sends 3.3V Logic DCC back to the QSI decoder.
The QSI decoder must be configured to accept DCC from the Gwire connection by setting “indexed” CV56.1 to 1. This means first setting CV49 to 1 and then CV56 to 1. See Greg Elmassian’s excellent post for more details. Once the decoder accepts this setting, it will only respond to DCC from the ProMiniAir receiver until the decoder is reset, as Elmassian’s post described.
My only addition to Elmassian’s information is that a firmware update may be needed before the decoder will “accept” this setting. I could not successfully update CV56.1 on a QSI Tital FX-DO I used for the testing shown in this post until I updated the decoder’s sound file.
The photo below shows the demonstration setup.
The Digitrax DCS52 DCC throttle supplies Track Right/Left DCC, which only powers the QSI Titan FX-DO and the ProMiniAir receiver via the Gwire flat flex cable. The Airwire T5000 throttle will then transmit DCC commands received by the ProMiniAir Receiver, sending 3.3V Logic DCC back to the QSI Titan FX-DO that controls sound and the motor. DCC commands from the DCS52 DCC throttle are ignored.
Below is the video demonstration
I have just recently started using QSI Titan decoders. They are challenging to find but produce fantastic sounds and are very flexible. The modular design of the ProMiniAir Receiver makes it very simple to take full advantage of the QSI decoder’s Gwire capability. I can provide a ProMiniAir Receiver integrated with the modified flat flex cable (FFC) for $34.99. Plug the flat flex cable into the QSI decoder’s Gwire connector, program CV56.1=1, and you are ready to go with radio control!
My thanks to Greg Elmassian for his very useful posts.
Recently, I was modifying an O-Scale Sunset 3rd Rail L-105 locomotive for combined 2-rail track power or battery-powered radio control (bprc or dead-rail), where the switches were inconspicuously located at the front of the tender but were challenging to reach once the tender and locomotive were coupled.
To make matters worse, power to the QSI Titan FX-DO decoder mounted in the tender must be cycled OFF and quickly back ON to activate the smoke unit. Given the location of the switches, this operation just wasn’t possible. What to do?
Well, how about using a “Reed Switch” to turn the power on or off using a magnet? In my research, I found numerous model railroad applications of Reed Switches inserted “inline” with power. However, Reed Switches cannot typically handle the large currents (3A or more) we encounter in O-Scale and larger. So, direct inline use of a Reed Switch was not feasible.
This short post shows how to connect the Pololu Big Pushbutton Power Switch, MP, which can handle up to 8A, with a normally-open Reed Switch for convenient magnetically-controlled power ON/OFF.
As shown in the following three photos, assembly is straightforward. The only caveat is the Reed Switch is somewhat delicate, so bending the leads to the easily-broken glass capsule requires gripping the lead between the capsule and the bend, as shown in the photo below.
Below is the finished device. Only eight solder joins are needed, and heat shrink is used to cover the Reed Switch’s solder joints. The long wiring lead to the Reed Switch provides mounting in a convenient location, including INSIDE non-magnetic metal shells!
The close-up below shows the straightforward connections to the Pololu Big Pushbutton Power Switch, which handles up to 8 A. Larger-capacity switches (up to 16A) are available from Pololu.
Let’s demonstrate using this device.
The video below is the “proof-in-the-pudding” showing that the Reed Switch controls the ON/OFF of the Pololu Big Pushbutton Power Switch.
So there you have it: a simple magnetically-controlled switch that handles large currents.
An added benefit is the Reed Switch can be mounted INSIDE a non-magnetic metal shell, such as brass! Magnetic fields pass through these metals.
Sometimes folks want radio control of their locomotives but prefer to use track AC (including DCC) instead of a battery to provide DC power for the radio receiver and amplifier. This post shows how to repurpose the DCC converter PCB customarily provided with the ProMiniAir transmitter to convert track AC to DC power for the ProMiniAir receiver.
DCC Converter Modifications
The original purpose of the “DCC Converter” is to use a DCC throttle’s Track Right/Track Left output and convert it to 5V DCC and 5V power for the ProMiniAir transmitter. See the Figure below.
One of the strengths of the modular approach used for the ProMiniAir transmitter and receiver is that you can “repurpose” components. The DCC Converter can be modified to use the AC track input to provide filtered, higher-voltage DC power.
Below is the repurposing idea: add a large capacitor (in series with a 100 Ohm resistor and a 1N4001 diode) across the “+” and “-” terminals of the rectifier and route out the rectifier’s DC output. Smaller onboard capacitors (10uf and 100nf) also filter out higher-frequency noise that large capacitors sometimes do not effectively filter.
One end of a 100 Ohm resistor and the + terminal of a 1N4001 diode are connected in series (and in parallel to each other) to the capacitor’s + terminal. The other end of the 100 Ohm resistor and the – terminal of the diode are connected to the rectifier’s + terminal. The capacitor’s – terminal is directly connected to the rectifier’s – terminal to form the DC ground. My thanks to ScaleSoundSystems.com for the idea of adding a resistor and diode in series with the capacitor.
When the throttle is turned on, the 100 Ohm resistor prevents an “in-rush” short circuit that might cause the throttle to cut off. When charging, the 1N4001 diode is reverse-biased with a large resistance. If AC power is interrupted, current flows out of the capacitor through the low resistance path of a forward-biased 1N4001 diode to maintain DC power output.
In fact, it is possible to forgo the large capacitor since these onboard capacitors do a pretty good job of “cleaning up” the DC output of the rectifier. This is a good option if space is at a premium.
The filtered DC output can now provide DC power to a ProMiniAir receiver/amp, just as a battery would. If the added capacitor is large enough, it will function as a “keep-alive” capacitor many DCC decoders use to prevent track power interruptions.
The photo below shows a real-world example of the conversion using a 10000uf “keep-alive” capacitor originally used with a Zimo decoder. The size of the capacitor dominates that of the DCC converter!
The oscilloscope trace below demonstrates the ability of the modified DCC Converter to produce clean DC power for your ProMiniAir (or other) receiver.
Note how “clean” the DC power output is (13.8VDC). Square wave track inputs at 16.8V are a severe test because they produce frequencies at odd multiples of the square wave’s frequency, e.g., at 6KHz, 18KHz, 30KHz, etc. for the example above, but very little of these frequencies “bleed through” to the DC power output.
Simplifying further, we can use the DCC Converter without an added capacitor, relying on the onboard capacitors to filter the rectifier’s “+” and “-” output. This option might be useful if space is at a premium.
The DC power output is still clean, but you lose the “keep-alive” that a large capacitor provides.
So there you have it – the DCC Converter can be slightly modified to provide filtered DC power and “keep-alive” capability. The modified DCC amplifier with a sizeable keep-alive capacitor costs $10 + shipping. Without the capacitor, the modified DCC Converter is $7 + shipping.
I have come across QSI decoders for some O-Scale Sunset 3rd Rail (2-rail) locomotives, including the beautiful D&RGW L-105. QSI decoders produce fantastic sound and provide highly flexible control of locomotive behavior, but at the price of a steep learning curve.
During the dead-rail conversion of the L-105, I could not figure out initially how to integrate a fan-driven smoke unit with the QSI “Titan FX-DO” decoder found in the tender of the Sunset L-105. But the decoder’s sound was so good that I persisted in my research and finally came across Greg Elmassian’s excellent post on integrating fan-driven smoke units with the standard QSI “Titan” (but NOT the Titan FX-DO that I was dealing with) decoder, which gave me an excellent start. Still, it did not provide the entire solution.
This post will provide all the details of integrating a QSI Titan FX-DO decoder with a fan-driven smoke unit.
For each of their decoders, QSI defines a large number of “Features” that are configured by “indexed CVs” that define the Feature’s behavior. Based on Elmassian’s post, the Firebox Feature (F=122) controls the Smoke Unit Fan, and Rear Cab Lights Feature (F=118) controls the Smoke Unit Heater.
The specifics of Feature F‘s behavior are defined by several “characteristics” or “attributes” (A=0, 1, etc.), such as maximum output, output duration, etc., that are given specific values V via CV 55.F.A = V.
QSI also defines several “Port numbers” P as fixed outputs on the decoder that control physical devices such as lights and our Smoke Unit. To tie all of this together, QSI then “maps” a Feature F to a Port P to convey the Feature’s behavior (via the values V of its attributes A) to a physical device using CV 115.F.0 = P. The Firebox Feature (Fan) F=122 will be “mapped” to output Port 9, and the Rear Cab Lights Feature (Heater) F=118 will be “mapped” to output Port 12.
I will NOT discuss how to set or reset the configuration variables (CV) of a QSI decoder with the Quantum Programmer. These details can be found in the documents here!
I strongly urge you to familiarize yourself with the QSI decoder’s QSI DCC Manual. Greg Elmassian’s site is also essential for understanding some features of QSI decoders that are confusing or not mentioned in the official documentation. Greg’s site is extensive, so use the site’s navigation features to find helpful information on QSI decoders. This site also provides essential information on how to program QSI decoders. These decoders are highly flexible: they produce fantastic sound and offer an extensive range of locomotive behavior control. But configuring them is complex.
CV 115.F.0 = P: Map Feature F to Port P
CV 55.F.A = V: For Feature F, set Attribute A to Value V
Warning: this section is somewhat technical, and you can skip down to the section on Decoder Programming.
The initial connections for the FX-DO decoder found in the L-105 are shown below.
I also noticed the decoder had a “SMOKE” plug (see photo below). How do I use it?
I connected the smoke unit’s heater to this plug. The sound came on as expected upon initial power-up, but no power was applied to the smoke unit’s heater. Disappointing.
While fiddling around some more, I quickly toggled the track power off and back on – wonder of wonders, the heater fully activated, and it was boiling! None of the information I could find discussed this method for activating a smoke unit’s heater in this fashion – it was just serendipity that I discovered this Feature.
Next are photos showing how I tracked down the connections that would control the output from this “SMOKE” plug.
First, I looked at what connects to the SMOKE plug’s “-” and “+”. The photo below shows that SMOKE “-” connects to the Rectifier’s “-“, which acts as a ground, and power transistor Q7’s drain D7 connects to the SMOKE “+”. The transistor’s source S7 connects to the Rectifier “+”, a high-power DC voltage source.
What control’s this power transistor’s gate G7? A bottom view of the same board reveals that Q7’s gate G7 is directly connected to transistor Q15’s collector C15. This transistor’s emitter E15 connects to a resistor R12 connected to the “ground” provided by the Rectifier “-” and Q15’s base B15 controls whether collector C15’s voltage is shorted to the Ground through emitter E15 or acts as an open circuit; i.e., this is a low-power switch controlling the turn on/turn off of the power transistor Q7.
What controls Q15’s base B15? The photo below shows part of the surprising answer that a pin on the top board is directly connected to Q15’s base B15. There might be other electronics that set the voltage on base B15 (and this pin), and this pin did not seem to be connected to anything else on the top of the board.
At this point, I verified that after the decoder was turned off for an extended period and then turned back on, the smoke unit’s heater was off, and the voltage on this newly-discovered pin was held at ground voltage. Quickly toggling DCC power to the decoder off and back on revealed the voltage on the pin was 5V, and the smoke unit’s heater was on. Something in the rest of the electronics was setting this voltage, almost surely through a “pull-up” resistor, connecting Q15’s base B15 to a switched 5V/ground source that the decoder was controlling – I didn’t find it.
And, when I shorted this pin (and Q15’s base B15) to the Ground, the smoke unit would turn off! No harm, no foul if I ground/unground this pin to turn the smoke unit’s heater off/on. Now we can control how long the smoke unit’s heater is on and off!
For reference, the figure below is a guess at the QSI Titan FX-DO’s smoke unit heater control electronics. This guess circuit satisfies the requirement it reproduces in simulation the results I have measured, as shown in the next section.
Next, we program the decoder to control the turning on/off of this newly-found heater switch.
Following Greg Elmassian’s superb post, I reprogrammed the Titan FX-DO as follows to activate the decoder’s outputs (called ports) that will ultimately be physically connected to wiring that controls the power to the smoke unit’s heater and fan:
Fan: Feature: F=122 (Firebox), Port: P=9
CV115.122.0 = 9 (Default: 9): Map Feature F=122 (Firebox) to Port P=9)
CV55.122.11 = 100 (Default: 0): For Feature F=122, set Min Attribute A=11 to Value V=100. Tune this. Chuffing is less evident if this value is too large, and the fan will not spin if this value is too small.
CV55.122.12 = 255 (Default: 255): For Feature F=122, set Max Attribute A=12 to Value V=255.
CV55.122.13 = 100 (Default: 0): For Feature F=122, set Mid Attribute A=12 to Value V=100. Tune this. Chuffing is less evident if this value is too large, and the fan will not spin if this value is too small.
CV55.122.17 = 1 (Default: 1): For Feature F=122, set Rise Time Attribute A=17 to Value V=1. Tune this.
CV55.122.18 = 22 (Default: 1): For Feature F=122, set Fall Time Attribute A=18 to Value V=22. Tune this.
Heater: Feature: F=118 (Rear Cab Lights), Port: P=12. Several of the following CV values are very important to set correctly. Otherwise, you might burn out the smoke unit! During testing, please ensure sufficient smoke fluid is loaded into the smoke unit and be prepared to turn off power to the locomotive quickly should the smoke unit get too hot and produce excessive Smoke!
CV115.118.0 = 12 (Default: 12): Map Feature F=118 (Rear Cab Lights) to Port P=12
IMPORTANT!!! CV55.118.0 = 1 (Default: 0): For Feature F=118, set Rear Cab Lights Initial State Attribute A=0 to Value V=1: activate Feature. This setting was NOT discussed in Elmassian’s post. You want the modulation function ON at startup to prevent smoke unit heater burn-out.
CV55.118.1 = 85 (Default: 85): For Feature F=118, set Active Conditions Attribute A=1 to Value V=85: active for all conditions: FOR; REV; Neutral From Forward, NFF; and Neutral From Reverse, NFR
IMPORTANT!!! CV55.118.12 = 200 (Default: 255): For Feature F=118, set Max Attribute A=12 to Value V=200. A value of 255 fully turns the heater OFF, and a value of 0 fully turns the heater on! It is essential to tune this value to prevent burn-out of the Smoke Unit Heater!!! See the calculation in the section below.
IMPORTANT!!! CV55.138.2=253. The indexed CV55.138.2=Value sets the “Multiple Automatic Lights #3” controlled by the same function key, which by default is F12. When Value=253=1111101b, the Firebox (=> Fan, Feature F=122) is controlled by F12 (bit 4=1 of Value), but the Rear Cab Lights (=> Heater, Feature F=118) have no F# control (bit 1 = 0 of Value). This prevents the turn-off of the smoke unit’s heater modulation, preventing burn-out. This table from the QSI DCC Manual shows which bits activate which Feature.
The upshot is that F12 activates the smoke unit fan, and the power to the smoke unit heater is ALWAYS modulated to prevent burn-out.
Now that we have programmed the decoder’s control for the smoke unit’s fan and heater, we need to connect these decoder outputs to the rest of the circuitry on the decoder.
Decoder Board Modifications
With the proper decoder output ports L12 (for the heater) and L9 (for the fan) properly configured, the photo below shows the simple wiring connections from these two ports to physically control the smoke unit’s fan and heater.
The top board’s physical modifications were the following:
Added a wire (Brown) connecting Port 12 (sometimes designated L12) to the pin indicated in the photo above. This allows L12 via Feature 118 (Rear Cabin Light) to modulate the voltage applied to the smoke unit’s heater. The smoke unit heater is activated by powering off and quickly back on: I have never seen this Feature discussed.
Spliced +5V (Purple wire) to the smoke unit’s Fan “+” (Blue wire), and added a wire (Grey) connecting Port 9 (sometimes designated L9) to the smoke unit’s Fan “-“. This allows L9 to modulate the power applied to the Smoke Unit Fan via Feature 122 (Firebox).
Note that the smoke unit’s heater is already connected to the SMOKE plug.
I think you will agree that these modifications are easy!
Tuning for a Particular Smoke Unit
For my testing, I used a small MTH smoke unit with a heater resistor value of 8 ohms. The rectified track voltage is about 14.8V (about the battery voltage I use for my dead-rail applications). Experience indicates that good smoke output requires about 6 W. A value CV 55.118.12 = 0 will deliver full power to the heater: (14.8V*14.8V)/(8ohms) = 27.4W, which is far too high. We fix this problem by reducing the percentage of time the power is ON to the smoke unit heater.
Typically, decoders do this by repeatedly fully turning ON the device, such as a light, for a short period by actively connecting the “-” of the device to the Ground and allowing current to flow, and then turning the device OFF by open circuiting the device’s “-” to prevent current flow for a short period. This scheme is called Pulse Width Modulation (PWM), and the percentage of time the device is fully ON (grounding) is called the Duty Cycle (D). A decoder’s CV value of 255 corresponds to a duty cycle of D=100%, 128 corresponds to about D=50% (really 128/255), etc.; i.e., D=(CV_Value)/255.
The next part is a little confusing. If the decoder’s heater control (L12) is ON (grounding), then our smoke unit heater is turned off OFF. When the decoder’s control (L12) is OFF (open-circuit), other electronics in the QSI decoder “take over” and pull the heater’s control voltage ON (+5V), turning ON the heater! So if the duty cycle of the decoder’s control (L12) is D (percentage of time it GROUNDS), the duty cycle of the smoke unit’s heater Dheater = (1-D) = (1-CV_Value/255) = (255-CV_Value)/255.
One of the simplicities of the Pulse Width Modulation (PWM) delivered by DCC decoders to modulate power to lights, smoke units, and other devices is that the average power delivered, designated Pavg, is equal to the maximum power, Pmax, times the “duty cycle.” For our smoke unit heater Pavg = Pmax * Dheater = Pmax * (1-D) = Pmax * (255-CV_Value)/255.
So let’s determine the value of CV 55.118.12, which ranges from 0 (D=0% -> Dheater=100%) to 255 (D=100% -> Dheater=0%) to produce a “safe” average power of 6W.
Average Power: Pavg – example: Pavg=6W. I don’t recommend much more than this value.
Track/Battery Voltage: Vmax – example: 14.8V. This value is typical of DCC command stations and “4s” (4 cells in series) LiPo batteries.
Heater Resistance: R – smoke unit’s resistance generally ranges from 8 to 27 ohms. My MTH smoke unit’s heater resistance is 8 ohms. Some Lionel smoke unit heaters have a resistance as high as 27 ohms.
Maximum Power: Pmax – the maximum power that can be delivered to the heater by track/battery voltage. Pmax = Vmax * Imax = Vmax * (Vmax/R) = (Vmax*Vmax)/R.
Using ohms law for a resistor I=V/R and how CV_Value corresponds to duty cycle D=(CV_value)/255, the average power is Pavg = Pmax * Dheater = Pmax * (1-D) = (Vmax*Imax) * (1-D) = (Vmax*Vmax/R) * (255-CV_value)/255. Rearranging the deck chairs to solve for CV_Value: (255-CV_Value) =(Pavg*R*255)/(Vmax*Vmax) or CV_Value = 255*(1-(Pavg*R)/(Vmax*Vmax)).
For our example CV_Value = 255*(1 – (6W*8ohm)/(14.8V*14.8V) ) = 200; i.e., CV55.118.12 = 200. You can, of course, tune this value should the smoke unit produce too much or too little Smoke. Please ensure the smoke unit is properly loaded with smoke fluid before testing.
Just remember that CV55.118.12=255 fully turns OFF the smoke unit heater, and CV55.118.12=0 fully turns it ON.
Addendum: Using an Inverter to Control the Smoke Unit Heater
One of the defects of directly connecting the output of L12 to the pin connecting to Q15’s gate G15 is control is inverting: when the decoder turns OFF the heater control, the heater is ON, and vice versa. We can fix this problem by using a small, 3-component transistor inverter as shown below.
With the inverter, there is no longer the possibility of burning the heater out should the decoder’s L12 control be OFF.
New settings with the inverter:
CV55.118.0 = 0 (Default: 0): For Feature F=118, set Rear Cab Lights Initial State Attribute A=0 to Value V=0: Feature NOT active at start-up. When the controlling port (L12) is OFF, the inverter keeps the heater OFF.
CV55.118.12 = 55 (Default: 255): For Feature F=118, set Max Attribute A=12 to Value V=5. A value of 0 fully turns the heater OFF, and a value of 255 fully turns the heater on! It is essential to tune this value to prevent burn-out of the Smoke Unit Heater! The inverter now matches the duty cycle of the controlling port L12.
CV55.138.2=255. The indexed CV55.138.2=Value sets the “Multiple Automatic Lights #3” controlled by the same function key, which by default is F12. When Value=255=1111111b, the Firebox (=> Fan, Feature F=122) is controlled by F12 (bit 4=1 of Value), and the Rear Cab Lights (=> Heater, Feature F=118) is also controlled by F12 (bit 1 = 1 of Value). The inverter now allows us to turn ON/OFF the heater with L12 because port L12’s OFF state turns the heater OFF.
Below is the “proof-in-the-pudding” video. Track DCC was on (no smoke) while moving backward, and after stopping, quickly toggled off/on to activate the smoke unit. F12 was on to activate the fan.
This is a difficult and technical post, but if you want to use a fan-driven smoke unit with a QSI Titan FX-DO decoder found in some Sunset 3rd Rail 2-rail locomotives, I think you will be rewarded with an excellent decoder to control your locomotive!
I received this beautiful 2-Rail Max Gray D&RGW L-131 from a private seller. As an older O Scale model, it required updating for DCC-controlled lighting, motor, sound, smoke, and dead-rail operation (battery power, radio control).
This post is brief because many of the modifications are similar to those from past posts. The most significant modification was removing the open-frame motor with a more “modern” Pittman motor. DCC decoders struggle to control old, open-frame motors. Also, these older motors do not have the strong rare-earth magnets that improve efficiency – an essential consideration for battery power.
LokSound 5 XL Sound Project Settings
I selected a LokSound 5 XL because it provided plenty of power (5A) for a large locomotive. I chose #3608 based on photos of the L-131 I could find online. A heavily-modified LokSound UP “Challenger” Sound Project was selected because of its passing similarity to the L-131.
Loco and Tender Modifications
The original “open frame” was both inefficient and difficult to control by the DCC decoder, so it was replaced with a more “modern” Pittman 9433L187, 15.1 V motor used in many O Scale locomotives.
The LokSound 5 XL was mounted in the locomotive to reduce wiring between the locomotive and tender. LEDs were used for the marker light, front light, cabin light, and firebox simulation.
The boiler face plate was removed to allow smoke unit installation and access.
The tender modifications include adding a speaker (with exit holes drilled through the chassis), battery, LED tail and marker lights, and ProMini Air transmitter and Cytron amplifier.
The greatest satisfaction of providing a product to Model Railroaders is reports of successful use of your product. Below are photos and videos (with permission) of Mr. Tracey Sander’s use of the ProMiniAir transmitter and receiver.
ProMiniAir Transmitter Connected to a WiFi-Equipped Prodigy DCC Command Station
Below are photos and a video showing how Mr. Sander connected a ProMiniAir Transmitter to a WiFi-equipped Prodigy Express DCC command station. The locomotive in the video has an onboard ProMiniAir receiver and amplifier connected to its DCC decoder.
He uses the iOS WiThrottle app that connects to the Prodigy’s WiFi to control his locomotive.
Details of connecting the ProMiniAir to WiFi-equipped DCC command stations can be found here.
ProMiniAir Transmitter Connected to a WiFi-Equipped EX-CommandStation
Below is a photo and a video showing how Mr. Sander connected a ProMiniAir Transmitter to a WiFi-equipped EX-CommandStation, whose open-source software was developed by DCC-EX.com. The EX-CommandStation is a wonderful, low-cost way to acquire a DCC command station. As before, the locomotive in the video has an onboard ProMiniAir receiver connected to its DCC decoder.
Details on the fully stand-alone ProMiniAir transmitter integrated with a WiFi-equipped EX-CommandStation can be found here.
Thanks to Mr. Sanders for his permission to use his photos and videos.
Mr. Sanders is clear evidence that Model Railroaders have lots of fun!
As some of you may know from my previous postings or other sources, if you try “raw” transmission of DCC from standard DCC throttles, such as with the Tam Valley Depot DRS1 transmitter, to Airwire receivers, you probably won’t get consistent control – I didn’t. This failure set me on the road to devise the ProMiniAir transmitter that would work with CVP Airwire receivers using DCC generated by standard DCC throttles, including the superb “open-source” WiFi-equipped EX-CommandStation created by the folks at DCC-ex.com. Of course, the ProMiniAir receiver is fully-compatible with Airwire throttles.
My web research and discussions with fellow dead-railers led me to believe you might solve the compatibility problem by providing frequent DCC “Idle” messages. Once the dust settled on the ProMiniAir firmware we made available on our GitHub site, the ProMiniAir transmitter worked pretty well with Airwire receivers! Besides CVP Airwire transmitters, the ProMiniAir transmitter is the only currently-manufactured transmitter that works with Airwire receivers.
After this success, we have worked hard to ensure that the ProMiniAir transmitter (and receiver) are compatible with multiple product lines, including CVP Airwire, Tam Valley Depot DRS1 transmitters and receivers, Gwire transmitters and receivers (available but no longer manufactured), Stanton Cab transmitters and receivers, and the no longer manufactured NCE D13DRJ.
OK, you may ask, what’s the point of this post? Well, I’d like to share some further research on the source of the CVP receiver’s incompatibility and its consequences on updates for the ProMiniAir transmitter/receiver firmware.
OK, I based our initial success in making the ProMiniAir transmitter compatible with CVP Airwire receivers on observing how well the ProMiniAir worked with Airwire receivers. Yep, numerous inserted DCC IDLE messages from the ProMiniAir transmitter seemed to keep the Airwire receivers reasonably “happy,” responding to throttle speed/direction commands and function activation.
However, sometimes the Airwire receiver seemed a bit slow to respond to function activation… And some customers (who are hopefully still friends) sometimes noted this slow response. Could this be improved?
The figure below is what I observed by firing up my original ProMiniAir transmitter integrated with a WiFi-equipped EX-CommandStation, and using the iOS WiThrottle app to send throttle commands to a ProMiniAir receiver. The figure below shows the “raw” digital output from the ProMiniAir receiver’s transceiver.
The waveform is what you would expect. A “one” end packet bit from the previous DCC packet and then a series of 15 “one” preamble bits followed by a “zero” packet start bit that signals to the decoder that a DCC command is coming. I observed no significant or consistent DCC “errors” in the collected data.
The preamble to a packet consists of a sequence of “1” bits. A digital decoder must not accept as a valid, any preamble that has less then 10 complete one bits, or require for proper reception of a packet with more than 12 complete one bits. A command station must send a minimum of 14 full preamble bits.
The data below is what I observed by firing up an Airwire T5000 transmitter and looking at the “raw” digital output pin from the transceiver (radio) on the ProMiniAir receiver.
Well, well. Now we see an NMRA-permissible (see line 121 of NMRA Standard S 9.2) but non-DCC transition pair, called a “cutout,” with a 1/2 “one” and 1/2 “zero” pair after a valid “one” end packet bit and before a very long (30 “one” bits) preamble. If you try to send shorter preambles, say 15 “one” bits, the Airwire receiver will NOT work consistently despite the NMRA standard stating that a decoder must not require more than 12 complete “one” bits in the preamble. So, the Airwire receiver is placing a non-standard requirement for a “long” preamble of “one” bits before it will operate consistently.
While reviewing the DCC sent from an Airwire throttle, there were NOT an unusual number of DCC “Idle” messages sent by the Airwire transmitter. But, by sending tons of short (3 bytes) DCC “Idle” messages, the ProMiniAir transmitter was sending just enough “one” bits to keep the Airwire receiver functional. I am not privy to the details of Airwire’s receiver firmware, so my success was based purely on empirical observation without underlying “insider” knowledge.
So what? With this knowledge, I felt it essential to make some ProMiniAir firmware changes.
Firmware Changes to the ProMiniAir Transmitter
Based on this new information, to improve compatibility with Airwire receivers, we have modified the ProMiniAir transmitter’s firmware to ensure a 1/2 “one” followed by a 1/2 “zero” cutout comes after the end packet “one” bit, and before at least 30 “one” bits are in the preamble. This change is NOT harmful to other wireless receivers, including the ProMiniAir receiver. The ProMiniAir transmitter and receiver still insert DCC “Idle” messages when possible to keep decoders “happy” while waiting for valid DCC messages from the throttle.
Along with these firmware changes, which will be made available on our GitHub site, you can set the number of “one” bits in the preamble by going into OPS mode at address 9900 (transmitter) or 9901 (receiver) by setting the value of CV242. If you set the value of CV242 to 0, the firmware sets the number of preamble bits to a “reasonable” value of 16 (receiver) or the number of preamble bits the throttle sent (transmitter). If you set CV242 to less than 12, it will be reset to 12 to ensure decoders are “satisfied” with the number of preamble “one” bits.
You can also change the duration of the cutout’s second 1/2 transition with CV240. By default, a CV240 value of 27 makes the second 1/2 transition a “zero” with a duration of 116us. If you do NOT want a cutout inserted, you can set the CV240 value to 141, which will make the duration equal to that of the cutout’s leading 1/2 “one” (58us), resulting in an output 1/2 “one” and 1/2 “one” pair, simply increasing the number of preamble “one” bits by one.
So, how well do these modifications work for Airwire receivers? It isn’t easy to quantify, but the Airwire receiver’s red data LED remains “on” more consistently with less “flicker,” and the receiver’s DCC output to the decoder contains “cutouts” (with a duration of about five preamble “one” bits) just before the preamble. These characteristics are now very similar to those from an actual Airwire throttle. See the comparison figures below. It’s difficult for me to test the more practical aspects of these improvements, but the decoders continue to operate as I would expect, perhaps with somewhat less time delay. Other users may be able to test under more stressful conditions.
We now have a better idea why Airwire receivers do not work well with output from a typical, NMRA-conformant DCC throttle sent wirelessly and how to better cope with Airwire receivers’ unique DCC requirements by sending very long DCC preambles, preceded by a 1/2 “one” and 1/2 “zero” cutout.
Raw empiricism often leads you to workable, pragmatic solutions, but a little “looking under the hood” for the “how” and “why” almost always pays dividends. If you own a ProMiniAir transmitter and are not satisfied with its performance with Airwire receivers, don’t hesitate to contact me about how I can provide you with an update to see if your performance will improve.
I like Lionel steam locomotives because Lionel designed them for simplified servicing, and Lionel’s documentation and parts are easily-available. Also, some of the locomotives, such as the H-7, are nicely detailed and are rich in features such as extensive lighting, smoke, and excellent speakers. Lionel very much “gets” the importance of the user experience.
What I don’t like are Lionel’s high-rail flanges and three-rail operation. The high-rail flanges look awful and will not work well on 2-rail trackage that meets NMRA standards S-3.2 “Scale Track, Standard Scale.” Also, many of the locomotive driver wheels are mounted on a “trapped” axle, requiring removal of the driver wheels from the axle “in situ” with a wheel puller and subsequent remounting in the correct “quarter.”
I have performed three dead-rail conversions of Lionel’s H-7 2-8-8-2 locomotive. This post will be a composite of these three locomotives.
The conversion process consists of the following:
Mechanical conversion: modifying or replacing all wheels and coupler replacement.
Electronics: All Lionel electronics are removed and replaced with a DCC decoder
Dead-rail: Addition of a ProMiniAir (PMA) receiver and DCC amplifier, battery, antenna, charging plug, and power/charging switch
Before proceeding with the locomotive conversion, several “magic screws” must be removed to separate the upper boiler shell from the lower shell and wheel chassis. This step is necessary to provide clear access to the drivers for removal and modification.
Removal also provides access to the locomotive’s electronics for removal and replacement with a DCC decoder and its wiring.
Removing the flexible hose mounting shown below provides clearance to remove the drivers.
After I gained enough clearance around the drivers, I used a wheel puller to remove those drivers whose axles were “trapped” in the chassis.
The locomotive drivers present several issues:
Large, ugly flanges
Grooved tires with rubber traction tires
All drivers are uninsulated. This aspect is important only if you want track-powered 2-rail operation.
Lionel manufactures the locomotive driver center and flange as s single unit with a separate cylindrical tire with no flange.
The photo below shows an end mill to separate the driver tire from the driver center integrated with the flange. The process was the following:
A 3/16″ brass tube was fit in the axle.
A small brass tube was inserted into the crank-pin hole to prevent wheel rotation while milling.
Two pieces of brass close to the height serve as height spacers that avoid cutting into the flange.
The tooling is a 1/16″, two-flute end mill in a Tormach collet
Cutting oil was applied.
The end mill was very carefully translated along the radius, cutting into the cylindrical tire without cutting into the flange.
After the radial cut was deep enough, I used an “ordinary screwdriver to pop off the tire with an axial twist.
I used two strategies for modifying the Lionel driver wheels:
Machine down the large flanges and leave the tire in place with the driver uninsulated. I used this technique when using the locomotive strictly as dead rail.
Completely machine off the flange. I use this technique when creating insulated drivers for 2-rail operations using track power.
Machining down the drivers
I used a 3/16″ brass tube as a reasonably close match to the driver’s axle diameter. Because the fit is not tight, a separate small brass tube is inserted in the driver pin that will butt up against the lathe chuck’s jaws when cutting torque is applied. This technique is a bit of a kludge, but I have successfully machined down the flanges of 8 H-7 drivers on two different H-7s with this technique.
Before matching down the large flanges, you must address the grooved tires. The rubber in these tires increases the tire diameter, increasing the chances that the reduced flanges will derail. And these rubber tires are a bad idea since they could cause the locomotive to simply stall rather than slip when pulling heavy loads. Stalling is very bad since it dramatically increases the motor current, potentially causing a decoder shutdown and/or significant heating.
I used J-B Weld 8267 SteelStik Steel Reinforced Epoxy Putty Stick to fill the rubber traction rim groove. This material is metal-filled, providing traction and wear resistance.
I applied an excess of putty in the groove, and after curing, I cut the putty excess down to the radius in the lathe. It’s a fool’s errand attempting to shape the putty in the groove. The epoxy sets fairly quickly, so you have a short window of time to work the putty into place.
The photo below shows the finished driver wheel with the Steel Reinforced Epoxy Putty machined to the driver center radius and a machined-down flange with a flange height of 0.036″ and a flange width of 0.040″. As previously, a small diameter rod was inserted into the side rod hole to prevent wheel rotation relative to the axle while machining.
Completely Machining OFF the Original Flange
First, I’ll show you how I created a new tire with a small flange. This is a long detailed section, perhaps of interest to only a few of you.
First, the driver’s tire center must be prepared. The idea is to entirely cut off the integral flange to ensure a constant radius from the front to the back of the driver center.
First, you must remove the cylindrical tire. In this case, you can use a cutting wheel to cut a slot through the flange and the tire without cutting into the driver center. Then the tire can be popped off with an axial twist using a standard screwdriver. Care must be taken not to nick the driver’s wheel center.
The slightly undersized brass tube fits somewhat loosely in the crank-pin hole but will prevent slippage in the spindle by butting against the jaws once torque is exerted by the cutting tool on the rim as the spindle rotates.
After the wheel center’s rim is machined flat, I use 0.010″ fish paper to insulate the left-side drivers. You can hold the fish paper in place with a touch of CA on the side of the rim opposite where the fish paper ends will join. This allows a shorter run to hold the fish paper tight on the rim while applying CA to the ends.
With our wheel center ready to mount inside a tire, we now create a tire with the proper dimensions. Caveat: My tire machining technique fits my modest matching skills using a small Sherline lathe. This technique is wasteful of metal blanks, but their cost is low. Other more skilled model railroad machinists have more efficient techniques that utilize a larger lathe and specialized tooling.
To help the discussion, the figure below shows the terminology from NMRA Standard S-4.2. The important terms/dimensions are flange width, flange depth, and tread width. Creating a tire within an acceptable range of these dimensions is necessary to ensure that the driver will work on 2-rail trackage defined by NMRA standard S-3.2.
I start with a 1.5″ diameter Ledalloy 12L14 1″ long blank obtained from OnLineMetals.com. This represents a maximum driver size of 72″, which is plenty large for our 57″ plus twice our flange depth of 0.036″ for 2-rail operation (1.1875″+2 x 0.036″=1.2655″).
A 1/2″ hole is drilled into the center of the blank to provide clearance for the boring bar that will hollow out the blank to fit the outer diameter of the driver’s center.
The blank is then placed in the lathe, the face is squared off with an end cut, and then a side cut reduces the blank’s diameter to the final wheel diameter + 0.072″ to account for the additional flange depth (0.036″). For our H-7’s 57″ drivers, this diameter works out to 57/48″=1.1875″ plus twice our flange depth of 2 x 0.032″=0.072 for 2-rail operation: 1.1875″+2 x 0.036″=1.2655″.
Now we make an angled side cut to create the tire surface by tilting the Sherline lathe’s spin axis by 2.5-3.0 degrees. This cut produces a shallow angle across the tire’s tread width. This angle was obtained from NMRA Recommended Practices 25.
A careful series of side cuts are made to reduce the blank to the wheel’s diameter at the base of the flange step with a width of the wheel width (N) of 0.172″ – the flange width of 0.039″ = 0.132″. I use a wheel width slightly smaller than “code 175″ (0.175”, from NMRA Recommended Practices 25) to improve appearance, and maintain operability with 2-rail track standards.
Next, we “straighten out” the lathe and use a boring bar to hollow out the blank’s center to be slightly smaller than the driver’s center diameter. This cut reduces the amount of material removed during the difficult cut-off operation.
Next, the tire is cut off from the rest of the blank at a distance greater than 0.039″ (the flange width) behind the flange step.
The now-separate tire is remounted in the lathe using the flange step as an indexed surface, and a careful series of face cuts are made to reduce the flange width to 0.039″.
A spacer (an old tire cut off the driver) is now inserted to displace the flange from the lathe chuck’s jaws to provide clearance for rounding the edges of the flange with a file.
With the lathe spinning, a file is used to carefully smooth the sharp edges of the flange.
Now, the tire is remounted against the lathe chuck’s jaws, and a series of careful cuts with the boring bar increases the tire’s inner diameter until the driver’s center fits inside the tire. This step is tedious since very small (0.001″) cuts should be used to prevent making the tire’s inner diameter too large! The fit should not be extremely tight since we will apply Loctite to the rim of the driver’s wheel center to lock the tire to the driver’s wheel center.
Loctite 609 is applied to the fish paper, and the driver’s center is inserted into the new tire. While inserting the driver’s center, I take the opportunity to ensure it is pressed into the rim to the proper depth. This depth is a bit of a judgment call based on examining the original mounting depth.
Before the Loctite dries, the driver’s center must be aligned with the tire. I use a simple technique of inserting a 3/16″ metal rod or tube into the driver axle hole and mounting the assembly in the jaws of a milling clamp with a small “v” machined into one side of the jaws, as shown in the photo below. I firmly press the tire rim onto some brass plates placed on top of the jaws, then tighten the jaws to very lightly bind the metal tube and rotate the driver wheel. This rotation action will force the driver’s center into alignment with the tire.
While aligning these components, I take the opportunity to ensure the driver’s center is still pressed into the rim to the proper depth.
Tender Mechanical Modifications
I removed the rather ugly Lionel coupler by cutting off the tender coupler mount and mounting a Kadee coupler directly to the tender. Micro-Mark coupler shims provide the proper coupler mounting height.
I used a Zimo MX696KS DCC decoder from SBS4DCC with the “Standard Gauge Steam Locomotive Alco/Baldwin Mallet 2-8-8-2” sound file DA_R_US_2_8_8_2 V2.zip. Modifications were made to the function mappings and set-up of the smoke unit.
Some of the sound project’s settings are shown in the following screen captures from Zimo’s ZCS software.
My typical 14.8 LiPo battery did not comfortably fit in the back end of the tender, but a rather unusually-shaped 14.8V LiPo batter from MTO fit well: the TRAIN-10 LI-ION.
The tender’s LEDs must have “protection” resistors added since Lionel provided these resistors on electronics boards that were removed for dead-rail conversion.
Locomotive Electronics Modifications
The conversion strategy is completely removing all Lionel electronics and replacing them with a Zimo MX696KS DCC decoder, providing excellent sound, lighting, and smoke unit control.
Because the original Lionel electronics provided the protection diodes for the locomotive’s LED marker lights at low voltage, 5K resistors were added in series with the maker lights so that 14.8V power would not burn them out when activated by the Zimo decoder.
The red LED lighting for the firebox presented a bit of a challenge. The photo below shows where I added protection resistors for the two sets of LEDs that flicker independently using the “random” firebox setting for the Zimo decoder’s FO6 and FO8 outputs, as shown on the ZCS configuration menus elsewhere.
For one of the H-7s, I replaced the incandescent cabin light with an LED. See the photo below.
I replaced the original low-current LED front marker lights with “nano” LEDs after I accidentally burned them out.
The Proof in the Pudding
The video below is the “proof in the pudding,” showing off the lights, firebox effects, smoke, and great sound!
A whip antenna is a simple and effective antenna used by many dead-rail receivers, including the ProMiniAir. Still, sometimes it’s not feasible to mount the whip antenna directly to the transceiver and get good RF reception. One solution is a U.FL extender cable connected to the U.FL plug on the receiver, and the other end can be “snaked” outside the locomotive or tender shell. The U.FL whip antenna then plugs into the U.FL socket on the distant end of the extender outside the shell for better RF reception.
An extender has some downsides: the U.FL socket is easily broken, requires a fair-sized exit hole, and may be subject to increased RF noise. This post will show you a better solution for some applications.
Suppose you strip off 82mm (North American) or 86 mm (EU) of the outside plastic cover and grounding wrap to expose the inner plastic insulator and the antenna wire. In that case, you have over 200mm of grounded connection for “snaking” the antenna connection to a distant location.
In practice, once you have snaked the cable into its final position, you can cut off the excess, ensuring you leave enough length for stripping off the plastic cover and grounding wrap to expose the antenna. A small hole using a #56 drill bit (0.0465″) provides sufficient clearance for the grounded lead to exit the shell.
You can bend the grounded lead to the angle you want and cover the exposed antenna section with small-diameter heat shrink tubing to hide the bright antenna wire.
Below is a video of this antenna solution in action.
I hope you find this simple solution valuable in your future dead-rail endeavors!
I have posted several dead-rail conversions of O scale 2-Rail MTH steam locomotives equipped with a PS-3.0 controller capable of operating in DCC mode. These locomotives are convenient for dead-rail conversion because they come fully equipped with good sound, lighting, and smoke effects – all controllable with DCC. However, I have received numerous questions asking for clarification.
So, what’s new in this post?
The goals of this post are to show off a dead-rail conversion with my new, much smaller ProMiniAir receiver (1.1″ x 0.8″) coupled to a small DCC amplifier, the DRV8871 (1.0″ x 0.8″) and to explain the conversion strategy for O scale, PS-3.0-equipped MTH locomotives. I have chosen the PS-3.0-equipped MTH UP 4-12-2 2-Rail locomotive (MTH 22-3641-2) because it has a small, crowded tender, making for a challenging installation of the required dead-rail components: battery, ProMiniAir receiver/DCC amplifier, antenna, switches, and charging plug.
Some conversion details, such as power connections, are left out to reduce cluttering the critical points.
The photo below shows what we are up against: a very crowded tender!