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 ProMini Air 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, ProMini Air 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!
The challenge is how/where to locate the dead-rail components.
Since this locomotive is fully configured for lighting, sound, and smoke effects, and all of the control electronics are in the tender, I did not modify the locomotive!
We’ll turn our attention to the tender.
The most challenging aspect of this conversion is battery location. After some fiddling and considering other battery configurations, I decided on a flat 14.8V Tenergy battery, mounted in the tender as in the photo below.
This location required slightly bending the PS-3.0’s heat sink to provide battery clearance.
I also moved the speaker platform forward and removed the plastic speaker enclosure to make room for the battery.
The wiring of the 2Rail/3Rail switch is at the heart of our conversion. Since we will not operate on 3-rail track, we will repurpose the 2Rail/3Rail switch to retain the original 2-rail track-powered operation or use the new battery-powered amplifier output connected to the ProMini Air receiver. See the diagrams below for the original and final wiring for repurposing the 2Rail/3Rail switch
I modified the wiring to the 2Rail/3Rail switch to accommodate DCC inputs from the ProMini Air receiver’s amplifier. The photo below shows the first step: moving the gray wire soldered to the right center post of the 2Rail/3Rail switch to the front right post.
The next step is the hard part: figuring out the re-wiring required. To aid in the discussion, let’s talk about the capabilities of the MTH PS-3.0 controller. This board is designed to pick up signals through the locomotive and tender’s wheels, and, if operating on three-rail track, the center-rail pick-up rollers. To accommodate either 2-rail or 3-rail operation, MTH provides a 2Rail/3Rail switch on the underside of the tender chassis.
Consequently, when you set the switch to “2Rail”, the gray wires, which are electrically connected to the left track, provide input to the “Track Left” of the PS-3.0.
Next, the gray wire directly connecting the “Track Left” input to the PS-3.0 board is separated from the other gray wires and soldered to the right-center post of the 2Rail/3Rail switch. Now, the center-right post provides the “Track Left” input to the PS-3.0 from rail “Track Left” when you set the switch to “2Rail.”
Since we will NOT be operating in 3Rail mode, we can repurpose the 2Rail/3Rail switch’s 3-Rail connections to provide the DCC inputs from the ProMini Air receiver’s DCC amplifier.
I first removed the wiring on both of the 3Rail posts on the switch.
I sealed off this wiring, preserving the connection of the two black wires since they both contribute to “Track Right” from the locomotive or tender wheels.
Then, I soldered two wires with a plug to these “3Rail” switch posts that will connect to the DCC Track Right/Left outputs of the ProMini Air receiver’s DCC amplifier. With this modification, when the switch is set to this position, it connects the PMA amplifier’s DCC output to the PS-3.0. This now completes the conversion of the 2Rail/3Rail switch to a 2Rail/RA (for radio-generated signal) switch. That was the hard part.
The signals originally picked up from the rails come in two “languages” that the PS-3.0 controller understands: DCS and DCC. To accommodate this capability, MTH provides a DCS/DCC switch on the underside of the tender chassis. The DCS commands are a proprietary MTH invention, and for our purposes, do not interest us. DCC is important to us since the ProMini Air receiver is designed to receive wireless DCC commands, which are an NMRA standard.
We can set up the wiring for permanent DCC operation and repurpose the DCS/DCC switch for Battery ON or Battery Charging. When you set the unmodified DCS/DCC switch to “DCS,” the two black wires activate DCS mode, which we no longer need. When you set the DCS/DCC switch to “DCC,” these two wires are not electrically connected, which is what we want permanently.
The first step is to remove these two black wires and close them off to prevent them from shorting together.
Then, three wires are soldered to this switch:
Center posts: Battery +. This post provides battery power that will either supply power to the PMA Rx and DCC amplifier or receive charging power from the charging plug, depending on the switch position.
Back posts: PMA Rx/DCC amp power +.
Front posts: Charging plug +
The right and left posts are soldered to each wire to ensure a low-resistance, high amperage connection. The rest of the power connections are standard and not discussed here.
OK, we’re finished with all wiring modifications; now, let’s turn to adding the antenna and charging plug by first drilling holes on the bottom of the tender’s chassis and mounting the antenna and charging plug (see photo below).
The antenna mount has a wire connection carrying RF output from the antenna to a U.FL connector plugged into the ProMini Air receiver.
The charging plug has a “+” power connection wired to the battery ON/Charging switch. All power “-” connections are on the “-” posts of the charging plug.
Finally, I mounted the ProMini Air receiver and its DCC amplifier over the speaker after removing the plastic speaker cover to provide sufficient battery clearance.
The small size of the ProMini Air receiver and its DCC amplifier make this mounting strategy possible.
The video below shows the “proof in the pudding,” where the locomotive is controlled by the new stand-alone ProMini Air transmitter integrated with a WiFI-equipped EX-CommandStation that receives throttle commands from a smartphone app.
Many model railroaders enjoy using a hand-held throttle or smartphone app that connects to a centralized DCC command station that sends DCC over the tracks to decoder-equipped locomotives, and some “dead-railers” enjoy a similar experience using specialized hand-held transmitters such as the CVP Airwire or Stanton Cab throttles. These dead-rail throttles are expensive and sometimes hard to find due to supply chain problems. Other hand-held dead-rail throttles only support their proprietary receivers and “vendor-lock” users because they have no interoperability with other dead-rail vendors 🙁
In a previous post, I showed how easy it was to use a smartphone equipped with a “wiThrottle-compliant” app in conjunction with the ProMini Air transmitter to control your dead-rail locomotive(s) fitted with a variety of receivers such as ProMini Air, Tam Valley Depot DRS1, CVP Airwire, Stanton Cab, QSI Gwire, and NCE. The downside was that you must invest in a WiFi device made for the DCC base station connected to the ProMini Air transmitter. Many folks pushed back on the additional cost and infrastructure to use their smartphone app for dead-rail control using the ProMini Air transmitter.
I searched for a way to provide a low-cost way to use your smartphone in conjunction with the ProMini Air transmitter, and this post shows the low-cost solution that I offer for sale.
The solution: I came across a low-cost way to create a small DCC base station equipped with WiFi at a very active group, DCC-EX, and I will describe how I configured this base station to use a smartphone to control dead-rail locomotives equipped with ProMini Air, Tam Valley Depot, CVP Airwire, QSI Gwire, NCE, or Stanton Cab receivers. The cost for the PMA Transmitter/WiFi-equipped EX-CommandStation for smartphone dead-rail control is $70.
The wiThrottle-protocol smartphone apps that will work with this solution include (this list is from DCC-EX):
The important point is that the ProMini Air transmitter, coupled with the WiFi-equipped EX-CommandStation, is a completely self-contained solution for $70. All you need to do is apply power and then connect with a smartphone throttle app for mobile control of dead-rail.
If you don’t want to go through the details of the solution, you can jump to the Instructions below.
The DCC-EX team has developed an open-source, low-cost DCC controller EX-CommandStation. Here is the DCC-EX team’s description (reprinted from here):
An EX-CommandStation is a simple, but powerful, DCC Command Station that you can assemble yourself and which is made using widely available Arduino boards. It supports much of the NMRA Digital Command Control (DCC) standards, including:
Simultaneous control of multiple locomotives and their functions
The primary intention of the EX-CommandStation is to receive commands from multiple throttles and send out DCC on tracks. These throttles can be “wired” or “wireless:”
With the WiFi-equipped EX-CommandStation, you can use a wiThrottle-protocol smartphone app that connects to the EX-CommandStation via WiFi. Then the EX-CommandStation’s +5V logic DCC output is not sent to a “motor shield” to power tracks but instead serves as a direct input to the ProMini Air transmitter for dead-rail control. It’s that simple; the technique was easy to implement and is low-cost (about $25, instead of paying for a WiFi device that connects to a commercial DCC throttle, a total of over $200).
Instructions for Using the ProMini Air Transmitter/WiFi-Equipped EX-CommandStation with a Smartphone
A properly configured ProMini Air Transmitter/WiFi-equipped EX-CommandStation. We provide this.
A locomotive(s) equipped with receivers compatible with the ProMini Air transmitter, such as:
ProMini Air receiver
Tam Valley Depot DRS1 receiver
CVP Airwire receiver: CONVRTR 15/25/60, G-3/4
Stanton Cab receiver
NCE D13DRJ wireless decoder
Plug power into the PMA Tx/WiFi-equipped EX-CommandStation, which turns on the ESP8266 WiFi transceiver to broadcast information for your smartphone to pick up, boots up the EX-CommandStation itself, and powers up the ProMini Air receiver and LCD. You can connect a 9V power to the ProMini Air transmitter/WiFi-equipped EX-Command station for “take it anywhere” capability. The battery adapter can be found here. A 1200 mAh battery, such as the Energizer Lithium, will last about 4 hours. Rechargeable Lithium-ion 600mAh batteries will last about two hours, but a four-pack with a charger will only set you back about $24.
Go to the smartphone’s WiFi settings:
If you have a home router, turn off auto-join, which prevents your smartphone from jumping to your home router rather than the DCC-EX WiFi router.
Select the EX-CommandStation’s WiFi router. The router’s name is “DCCEX_123456,” where “123456” is a unique series of numbers and letters (the “MAC address” of the WiFi transceiver).
When asked for a password, enter “PASS_123456”, where “123456” is the exact string of numbers and letters in the router’s name. You will probably need to enter the password only once since your smartphone will probably remember the password.
The “fiddle factor:” Sometimes, the smartphone will complain it cannot connect to the DCCEX router or that the password is incorrect. Ignore this complaint (assuming you entered the password correctly) and try connecting again. The smartphone will often successfully connect once you select the DCCEX router again.
You might want to turn on the auto-join option for this router so that your smartphone will automatically try to connect once the WiFi-equipped EX-CommandStation is powered up.
Once connected, go to your throttle app:
When asked for WiFI router configuration, set the IP address to “192.168.4.1” and the port to “2560“.
Once your throttle app connects to the EX-CommandStation, you can select your loco(s), etc.
Turn on your dead-rail locomotives, and control them with your smartphone app!
Once finished with the throttle app, you can go back to settings and re-select the auto-join option for your home router.
So here is the “proof of principle” demo. The photo below shows the prototype solution: a low-cost EX-CommandStation with integrated WiFi connected to a ProMini Air transmitter. The video shows the iOS “Locontrol” app connected to the PMA Tx/EX-CommandStation with WiFi to control a dead-rail locomotive equipped with a ProMini Air receiver and a DCC decoder that controls loco speed and direction, lighting, sound, and smoke. The Locontrol app is excellent because you can record video while controlling the locomotive.
Programming on the Main (PoM)
OK, these smartphone throttle apps are great, but they have a limitation: they can’t currently send commands in PoM (OPS) mode to change the value of configuration variables “CV” in a decoder. This capability is necessary when you need to change the configuration of the ProMini Air transmitter (whose default DCC address is 9900), such as the wireless channel (CV255 = 0-18) or power level (CV254=1-10). Of course, you might also need to make some CV changes to your dead-rail locomotive’s DCC decoder using PoM (OPS) mode, too!
You may NEVER change the ProMini Air’s configuration, but then again, you might. How to do this?
Both iOS and Android have apps that come to the rescue: TCP/IP to Serial Terminal and Serial WiFi Terminal. The apps provide a wireless connection to the EX-CommandStation to reconfigure the ProMini Air transmitter (or receiver, for that matter!) or your dead-rail locomotive’s DCC decoder in PoM mode.
So, there you have it, a wireless way to control a WiFi-equipped EX-CommandStation in Programming on the Main (PoM) mode, also known as OPS mode. While we need these apps to send PoM commands to reconfigure the ProMini Air transmitter, you can enter any DCC-EX Command! Have fun!
If you have a Windows, macOS, or Linux computer or laptop, you can interact with the WiFi-equipped EX-Command station, including reconfiguring the ProMin Air transmitter. The technique is based on the “curl” program.
What you need:
A Windows, macOS, or Linux computer or laptop.
A WiFI-equipped EX-CommandStation
Connect power to the EX-CommandStation. This powers up the WiFi-equipped EX-CommandStation and the ProMini Air transmitter with its LCD.
On your computer, select the DCCEX_123456 wireless router and, if asked, enter the password PASS_123456, where “123456” is a unique string representing the MAC address of the ESP8266 WiFi transceiver integrated with the EX-CommandStation.
On your computer, start up a “terminal” session. A terminal session allows you to type in commands.
Enter the following command curl telnet://192.168.4.1:2560. This opens a simple telnet-protocol connection between the computer and the WiFi-equipped EX-CommandStation at address 192.168.4.1 port 2560, which is the default EX-CommandStation address and port.
Your command line will now be waiting for you to enter the text that will be transmitted to the EX-CommandStation! As a test, type in <s> and press RETURN, and you should see a response such as <p0> <iDCC-EX V-4.0.0 / MEGA / PMA_Tx G-a26d988> If using curl on Windows, you may need to press RETURN then ^Z (CONTROL+z) and then RETURN again to “flush” out the response from the EX-CommandStation.
OK! Now let’s change the ProMini Air transmitter’s channel to “5” by using a PoM (OPS) command (DCC Address: 9900, CV#: 255, CV value: 5): type in <w 9900 255 5> and press ENTER. You will not see a response (sigh), but if you look at the ProMini Air transmitter’s LCD, you will see the following:
You exit the session by hitting <Control>+C.
This solution is NOT all wireless but demonstrates how to use the Web-based WebThrottle-EX to control the EX-CommandStation.
What you need:
A computer or laptop
A WiFi-equipped EX-CommandStation
The USB cable that came with your EX-CommandStation
Connect power to the EX-CommandStation. This powers up the EX-CommandStation and the ProMini Air transmitter with its LCD.
Connect the USB cable to the EX-CommandStation and your computer/laptop.
On your computer or laptop’s Chrome web browser, navigate this link: https://dcc-ex.github.io/WebThrottle-EX. An excellent throttle application will start, and the DCC-EX team has excellent instructions for using this application. We will concentrate on our narrow goal: getting OPS mode instructions to the ProMini Air transmitter.
Select the “Connect DCC++ EX” button to activate the USB serial connection to the EX-CommandStation.
You will see a pull-down menu of USB ports. Select the serial port you think is correct, and if it is, the log window at the bottom will cheer your success. If not, try another USB port from the pull-down list.
Now look at the Debug Console and ensure Debug in “ON.”
In the “Direct Command” entry, type in a “direct” command. In our example, we want to send an OPS mode command (“w” for write) to DCC address 9900 (the PMA transmitter) to change CV 255 (channel selection) to the value of 3 (the channel we want to transmit on): w 9900 255 3.
Press “Send,” and you should see the log window indicating the send. You should also see the PMA Tx’s LCD show a changed value, now with a new channel!
Disconnect the USB cable.
Use your smartphone to connect the ProMini Air Tx/WiFi-equipped EX-CommandStation as described above.
Have fun controlling the locomotive(s)!
Of course, if you maintain the USB cable connection, you can play with the WebThrottle-EX to control the dead-rail locomotive! The DCC+EX website has excellent instructions for using WebThrottle-EX. The traditional locomotive control capability and the powerful direct control capability are valuable and fun.
An important point: These instructions are ONLY for reconfiguring the ProMini Air transmitter or changing the CVs in your DCC decoder. Under regular smartphone throttle app use, you do NOT need to connect anything other than the power to the WiFi-equipped EX-CommandStation to activate the ProMini Air transmitter!
While I called this approach for using a smartphone app with the ProMini Air transmitter a “compromise solution,” if you think about it, with a more centrally-located ProMini Air transmitter coupled to a small, inexpensive WiFi-equipped DCC base station, you achieve good layout coverage because the base station is acting as an optimally-located “repeater,” potentially reaching more of the layout than your smartphone app. This approach is a valuable “division of labor:” the smartphone gives you the mobility to enjoy different vantages, and the central transmitter covers the layout optimally. So, maybe this approach is better than a “compromise solution,” after all.
Appendix: Implementation (How I Did It for Do-It-Yourselfers)
An Arduino microprocessor (for us, the Arduino Mega or clone): the “brain” that takes throttle inputs and converts them to +5V DCC signals, usually for a motor shield.
A motor shield or motor driver: converts the microprocessor’s +5V DCC signals (and other controls) to higher-voltage DCC Track Right/Track Left to power and control locomotives equipped with DCC decoders. Because the track may short-circuit or require too much power, the motor shield or motor driver may provide signals, such as current sense, back to the microprocessor that generates commands to protect the motor shield or motor driver from damage.
WiFi (integrated on the microprocessor PCB, an Arduino shield, or discrete receiver jumpered to the microprocessor PCB): receives wiThrottle-protocol commands from smartphones or tablets via WiFi and sends these commands to the microprocessor.
Direct connection to a PC
Free, open-source EX-CommandStation software
So, we need a WiFi-equipped Arduino MEGA and the EX-CommandStation software for our dead-rail application using a smartphone, but what about that motor shield?
A “motor shield” that amplifies the EX-CommandStation’s +5V digital DCC output for controlling and powering locomotives via the tracks is unnecessary since the ProMini Air transmitter only requires +5V DCC input (along with +5V power, which is available from the EX-CommandStation as well). An added advantage is the “DCC Converter,” which is necessary to convert track DCC from a “traditional” DCC throttle to +5V power, and +5V DCC the PMA transmitter requires is unnecessary. (If you like, we will include the DCC Converter because you may want to use your ProMini Air transmitter with a “traditional” DCC throttle later.) The modular design of the ProMini Air transmitters and receivers makes this solution easy and reduces cost.
Since I needed to modify the source code to accommodate the ProMini Air transmitter integration with the EX-CommandStation, I used this download link. I followed the DCC-EX project installation instructions for the Arduino IDE and only modified the config.h file of the EX-CommandStation software for integration with the ProMini Air transmitter:
// (more before...)
// NOTE: Before connecting these boards and selecting one in this software
// check the quick install guides!!! Some of these boards require a voltage
// generating resitor on the current sense pin of the device. Failure to select
// the correct resistor could damage the sense pin on your Arduino or destroy
// the device.
// DEFINE MOTOR_SHIELD_TYPE BELOW ACCORDING TO THE FOLLOWING TABLE:
// STANDARD_MOTOR_SHIELD : Arduino Motor shield Rev3 based on the L298 with 18V 2A per channel
// POLOLU_MOTOR_SHIELD : Pololu MC33926 Motor Driver (not recommended for prog track)
// FUNDUMOTO_SHIELD : Fundumoto Shield, no current sensing (not recommended, no short protection)
// FIREBOX_MK1 : The Firebox MK1
// FIREBOX_MK1S : The Firebox MK1S
// IBT_2_WITH_ARDUINO : Arduino Motor Shield for PROG and IBT-2 for MAIN
// #define MOTOR_SHIELD_TYPE STANDARD_MOTOR_SHIELD
// This motor shield is for the PMA Tx
#define PMA_TX F("PMA_Tx"), \
new MotorDriver(6, 7, UNUSED_PIN, UNUSED_PIN, UNUSED_PIN, 1.0, 1100, UNUSED_PIN), \
new MotorDriver(5, 4, UNUSED_PIN, UNUSED_PIN, UNUSED_PIN, 1.0, 1100, UNUSED_PIN)
#define MOTOR_SHIELD_TYPE PMA_TX
// (more after...)
The critical part for us is the “7” in the “new MotorDriver” line, which states that the “+” DCC output (+5V logic output between 0 and +5V) is on Pin 7. That’s all we need (along with power) to “feed” the ProMini Air transmitter! I then recompiled the EX-CommandStation software according to the DCC+EX instructions with absolutely no problem.
The connections to the WiFi-equipped EX-CommandStation to the ProMini Air transmitter are straightforward: connect GND and +5V to the power connections on the EX-CommandStation motherboard, and the +5V DCC input to Pin 7 on the motherboard.
You could purchase the components and set up the WiFI-equipped EX-CommandStation yourself. However, since we can do the set-up legwork for you, you can order the WiFi-equipped EX-CommandStation option for the ProMini Air for $40 ($5 is donated to DCC+EX). We include the AC to DC power converter (wall 120V AC to 9V DC) for the EX-CommandStation.
I was inspired to fully develop a wireless DCC transmitter and receiver by two sources: Martin Sant, who runs the BlueRidge Engineering website, and an article by Mark and Vince Buccini titled “Build Your Own Wireless DCC System” that appeared in the April, June, and August 2014 editions of Garden Railways magazine. These back issues are still available.
The Buccinis showed that it was possible to home-build a wireless DCC system. And Martin became a great collaborator who concretely started me with the initial version of the “ProMini Air” wireless DCC transmitter/receiver hardware and the wireless DCC software for the Pro Mini microcontroller board. I am deeply indebted to these people.
Note: Some photos may show older versions of the ProMini Air. Also, previous versions of the ProMini Air receiver and transmitter used 9000/9001 for their DCC address, respectively, which we changed to 9900/9901. Photos and examples may use the now-obsolete addresses.
Update for New Versions of the ProMini Air Transmitter and Reciever
Please see this post on an important update on the ProMini Air transmitter. It is now completely stand-alone; just plug in power and use your cell phone app to control your locomotive.
Both the ProMini Air transmitter and receiver have been significantly reduced in size: 1.1″ x 0.8″, making it possible to mount the ProMini Air receiver and a tiny DCC amplifier in tighter spaces and some HO locomotives.
My goal for offering the ProMini Air receiver/transmitter is to provide those interested in “dead-rail” (radio control, battery power of a model railroad locomotive) inexpensive wireless, DCC compatible transmitters and receivers for radio-control of model railroad locomotives in the US/Canadian 915MHz ISM band – the same band and protocol as used by Tam Valley Depot (TVD), CVP Airwire, NCE/QSI Gwire, and Stanton Cab. Also, you can operate the ProMini Air transmitter and receiver in the European ISM band at 869.85MHz, and we have verified interoperability with Tam Valley Depot European DRS1 transmitters and receivers.
A note about channels: modern CVP Airwire transmitters and receivers can all operate in the Airwire channels designated 0-16 using current Anaren AIR transceiver chips. Older wireless transmitters and receivers from Tam Valley Depot and Stanton Cab used the Linx ES series transmitter or receiver chip that only operated at 916.48MHz with slightly different specialized radio settings from the Airwire channels. I call this channel 17. In most but not all cases, these Channel 17 devices are interoperable with Airwire channel 16 @ 916.36MHz. Also, European versions of these older transmitters and receivers operated on 869.85MHz, and I call this Channel 18. Here’s my unofficial Table of channels and frequencies.
The ProMini Air has some features that may be of interest compared to commercial offerings. See the Comparison Tables below.
Airwire Receiver Compatible?
Power Level Adj
Any DCC Input
TVD DRS1 Transmitter
Ch 17 (or 18(E))
NCE Gwire Cab
ProMini Air Transmitter
Comparison of wireless DCC transmitters
In fairness, the manufacturers of the Airwire T5000, the NCE Gwire Cab, and the S-Cab Throttle hand-held throttles never intended to interface to standard DCC throttles. But, as Tam Valley Depot recognized, it is advantageous to use any device that supplies DCC to the rails and transmit this DCC wirelessly to DCC-compatible receivers.
A notable limitation of the Tam Valley Depot DRS1 transmitter is that it does not provide DCC “IDLE” packets that the Airwire receivers require unless the original DCC throttle does so (most, if not all, do NOT). Also, the Tam Valley Depot DRS1 transmitter can only broadcast on one channel (near Airwire Channel 16, which I have designated Channel 17 @ 916.48MHz).
Shown in the Table below are the comparisons for wireless DCC receivers.
Channel Auto Search
TVD DRS1, MK IV
S-Cab LXR receiver
None or On
Comparison of wireless DCC receivers
The most notable difference among the receivers is “DCC filtering,” i.e., how the receiver behaves when losing a valid RF DCC signal.
When the TVD DRS1 or QSI Gwire receivers lose a valid RF signal, they output random pulses to the decoder. I have discussed the pros and cons of this in another post.
On the other hand, the Airwire CONVRTR outputs constant-level DC when it loses a valid RF signal or doesn’t receive enough DCC “IDLE” packets. Again, as discussed in another post, the DCC decoder may halt the locomotive dead in its tracks when it receives this constant-level DC, which may or may not be what the user wants.
The Airwire CONVRTR performs “DCC filtering” by periodically evaluating whether it’s receiving DCC “IDLE” pulses. So, even if a stream of completely-valid DCC packets are received, but there are few or no “IDLE” packets, the Airwire CONVRTR will become inactive and output constant DC to the decoder.
These characteristics of the Airwire receivers are why Tam Valley DRS1 transmitter will usually NOT work with Airwire CONVRTR receivers because the DRS1 will not insert additional DCC “IDLE” packets! The Tam Valley Depot DRS1 transmitter is a passive participant: if the input DCC throttle doesn’t produce frequent DCC “IDLE” pulses, then the Tam Valley Depot DRS1 will not transmit frequent DCC “IDLE” pulses.
Stanton designed the S-Cab LXR-DCC receiver specifically for the S-Cab Throttle’s intermittent DCC transmissions. Like the Airwire CONVRTR receivers, the LXR outputs a constant DC voltage when a valid RF signal is lost.
Via OPS mode (by default at address 9901), you can reconfigure ProMini Air’s output behavior when a valid RF signal is lost. The first option (CV246 -> 0) selects the output of DCC IDLE messages (which the decoder is “comfortable” with, rather than random pulses that might “confuse” the decoder). The second option (CV246 -> 1) selects the output of constant-level DCC.
This reconfigurability makes the ProMini Air receiver a versatile wireless DCC receiver. The ProMini Air receiver’s RF DCC detection technique is more sophisticated than Airwire’s. The ProMini Air receiver detects how long it’s been since it received ANY valid DCC packet. And, after a preset time interval (which is reconfigurable via OPS mode, changing the CV252 value in 1/4 second multiples), the ProMini Air receiver will output either the DCC “Idle” messages (DCC filtering “off”) or output constant-level DC (DCC filtering “on”). When DCC filtering is “on,” and there is no valid RF signal, the DC level output is reconfigurable via an “OPS” mode setting of CV248 (-> 1 for positive DC, -> 0 for 0V DC) at the ProMini Air’s DCC address.
Once a valid RF signal is received again, the ProMini Air receiver detects this condition. It outputs these valid DCC packets to the “DCC amplifier” that sends “track-level” DCC to the decoder.
Another important feature of wireless DCC receivers is Channel selection and searching.
The TVD DRS1 receiver will “listen” on a fixed Airwire Channel if you set some jumpers. Otherwise, the DRS1 will automatically search the Airwire Channels for a valid RF signal if you do NOT insert the jumpers. This behavior may or may NOT be a good idea if multiple wireless DCC transmitters transmit simultaneously on different Channels. And, changing the Channel selection behavior (fixed channel or auto-scan) requires physical access to the receiver to connect or disconnect jumpers.
On startup, the Airwire CONVRTR “listens” for a valid RF signal on its “startup” channel (which is reconfigurable by accessing a CV using the wireless throttle’s “OPS” mode). If the CONVRTR finds no valid RF signal after a given time, the CONVRTR will switch to Channel 0. This behavior is usually a good idea.
Like the Airwire CONVRTR, on startup, the ProMini Air receiver will “listen” for valid RF on its “startup” Channel (default, 0) stored in EEPROM memory. This startup channel is changeable using the transmitting throttle’s “OPS” mode by setting CV255 to 0 through 18 at the ProMini Air transmitter’s DCC Address (default, 9901). Like the TVD DRS1 receiver, if the ProMini Air does not find a valid RF signal on its startup channel, the ProMini Air receiver will then auto-scan Channels 0(A), 18(E), 17(S), 1(A), 2(A), …, 16(A) (in that order) for valid RF signal (A=Airwire channels, E=European channel @869.85MHz, S=S-Cab Channel @ 916.48MHz). This scan sequence guarantees that a wireless DCC transmitter (if one is available) is selected, but only if the ProMini Air does NOT find a valid RF DCC signal on its startup Channel from another wireless DC transmitter.
If the ProMini Air receiver finds no valid RF DCC signal on any Channel on startup, it will select Channel 0 and wait for a valid RF DCC signal. Also, upon reset, the ProMini Air’s Channel search process will be unchanged: trying the “startup” channel stored in EEPROM memory, then try auto-searching Channels, and if all else fails, wait on Channel 0.
So, in summary, we are offering the ProMini Air DCC transmitter and receiver to provide a low-cost alternative with a set of features not entirely found in commercial offerings.
You are provided with a few additional components when buying a ProMini Air receiver or transmitter. In the case of the ProMini Air transmitter, we include a simple “DCC Converter” PCB that converts DCC output to the track into Ground, 5V power, and 5V logic DCC. These outputs supply the ProMini Air transmitter with power and DCC packets to transmit, so no additional power supply is necessary.
For the ProMini Air receiver, we include a low-cost “DCC amplifier” that converts the ProMini Air receiver’s 5V logic DCC back to DCC. The onboard DCC decoder would, in its typical configuration, pick up from the track (again, discussed in detail below). The ProMini Air receiver can be powered directly from the battery or a small external 5V power supply.
This modularity keeps costs down, allows for easy replacement of components rather than the entire assembly, and enables the use of commodity components less susceptible to supply-chain disruptions.
And, you will need an antenna of your choosing! I love antennas, but your antenna requirements are too diverse to offer a “one size fits all” antenna solution. We provide an FCC/IC-approved Anaren “whip” antenna that connects to the U.FL connector on a 10-pin transceiver daughterboard. This antenna should work well for most transmitter applications and is FCC/IC approved for “intentional radiators.”
For the ProMini Air receiver, some can use the small whip antenna without modification; others will need to run an antenna connecting cable to a small, externally-mounted antenna. We discuss several excellent antenna options below.
The definitive source of information for the ProMini Air transmitter and receiver is available here.
We no longer offer the ProMini Air as a kit.
The ProMini Air Tx and Rx are provided with the firmware already loaded. These instructions are only for advanced users who want to update the firmware.
The source code is available from this GitHub site. Locate the source code in a directory where the Arduino IDE can find it. You should retain the subdirectory structure to access the “project” with the Arduino IDE.
Depending on whether you want a transmitter or receiver, edit libraries/config/config.h to select the “define” for the transmitter or receiver.
For a receiver (Rx), config.h should look like this:
// #define EU_434MHz
/* For World-Wide 2.4GHz ISM band*/
// #define NAEU_2p4GHz
// Set Transmitter or Receiver
/* Uncomment ONLY ONE #define*/
/* For receiver*/
/* For transmitter*/
// #define TRANSMITTER
// Set the default channel for NA/EU 900MHz only!
/* Uncomment ONLY ONE #define*/
/* To set the default to NA channel 0 for 869/915MHz ISM bands only!*/
/* To set the default to EU channel 18 for 869/915MHz ISM bands only!*/
// #define EU_DEFAULT
// Set the transceiver's crystal frequency
/* Uncomment ONLY ONE #define*/
/* For 27MHz transceivers (e.g., Anaren 869/915MHz (CC110L) and Anaren 869MHz (CC1101) radios)*/
// #define TWENTY_SEVEN_MHZ
/* For 26MHz transceiver (almost all other radios, including Anaren 433MHz (CC1101), 915MHz (CC1101), and 2.4GHz (CC2500) radios)*/
If you want a transmitter (Tx), then config.h should be
// #define EU_434MHz
/* For World-Wide 2.4GHz ISM band*/
// #define NAEU_2p4GHz
// Set Transmitter or Receiver
/* Uncomment ONLY ONE #define*/
/* For receiver*/
// #define RECEIVER
/* For transmitter*/
// Set the default channel for NA/EU 900MHz only!
/* Uncomment ONLY ONE #define*/
/* To set the default to NA channel 0 for 869/915MHz ISM bands only!*/
/* To set the default to EU channel 18 for 869/915MHz ISM bands only!*/
// #define EU_DEFAULT
// Set the transceiver's crystal frequency
/* Uncomment ONLY ONE #define*/
/* For 27MHz transceivers (e.g., Anaren 869/915MHz (CC110L) and Anaren 869MHz (CC1101) radios)*/
// #define TWENTY_SEVEN_MHZ
/* For 26MHz transceiver (almost all other radios, including Anaren 433MHz (CC1101), 915MHz (CC1101), and 2.4GHz (CC2500) radios)*/
Two further options are available. The first option selects the crystal frequency of the FCC/EC-approved transceiver: 27MHz (Anaren) or 26MHz (Ebyte). The second option specifies North American or European default use.
After you complete downloading the firmware into the Pro Mini, please do not remove the USB connection from the computer until the “secondary” LED, which indicates attempted communication over the SPI (serial peripheral interface), flashes on (it will not be bright). This step ensures you properly initialize the EEPROM!
You load the firmware into the Pro Mini MCU using an “AVR ISP,” such as the Sparkfun Pocket AVR Programmer or a less-expensive clone. This “ISP” downloading mode will bypass and erase the bootloader to directly load the firmware into the Pro Mini MCU. On boot-up with the bootloader now erased, the Pro Mini MCU will almost instantly supply “5V logic DCC” to the DCC amplifier, which provides the DCC decoder with standard DCC waveforms. There is no “boot-up DC” and no need to set CV29, bit2=0. (I set it anyway.) With this solution, all DCC decoders I’ve tried (ESU, Zimo, MTH) startup without the “boot-up jerk.”
This “ISP” form of loading firmware is not as extensively used by folks using the Arduino IDE, but ISP loading is easily accessible within the Arduino IDE. The overly-brief method of ISP programming steps are the following:
Remove the transceiver daughterboard and the jumper (if inserted).
Connect the USBtinyISP (or other) Programmer (with power switch ON to supply 5V DC to the ProMini Air PCB while programming) to the 6-pin connector on the ProMini Air.
From the Arduino IDE, Select Tools → Programmer → “USBtinyISP” (or whatever ISP programmer you use).
Select the AirMiniSketchTransmitter sketch.
Select Sketch → Upload using a Programmer.
The Arduino IDE will compile the sketch and download the resulting firmware to the Pro Mini via the USBtinyISP, bypassing (and erasing) the bootloader.
Once the ProMini Air receiver or transmitter firmware is installed in the Pro Mini and inserted into the ProMini Air PCB, the ProMini Air is ready for integration!
To complete the integration of the ProMini Air receiver (Rx) or transmitter (Tx), you must establish several connections.
Overview of Connections
See the picture below for an overview of the connections to and from the ProMini Air. Which connections you use depends on whether the ProMini Air will act as a receiver (Rx) or a transmitter (Tx). THERE IS NO PROTECTION AGAINST INCORRECT BATTERY OR EXTERNAL POWER CONNECTIONS!!! You will destroy the ProMini Air immediately if you reverse the GROUND and POSITIVE POWER SUPPLY connection!
The Anaren and Ebyte transceiver daughterboards have a versatile U.FL plug for antenna connections. You can plug in either the Anaren whip antenna we provide or a U.FL-to-SMA or U.FL-to-RP-SMA cable that screws into a remotely-mounted antenna. Also, a two-pin output provides Ground and the DCC input to (Tx) or output from (Rx) the RF transceiver board, serving as signals to an oscilloscope for waveform review. See the figure below for details on these connections.
The ProMini Air has several connections that provide AVR programmer, I2C display outputs, and 5V logic DCC inputs or outputs. See the photo below.
We will break down these connections for the ProMini Air receiver and transmitter in the following two sections.
Starting with the ProMini Air configured as a receiver (Rx), several options exist for providing power. The first option is to use external battery power and jumper the +5V and +5V (Battery) pins to use the onboard 5V regulator to provide board +5V supply.
Since you may not like the heat generated by the onboard 5V regulator when you supply power with external battery power and install the jumper, as an alternative, you may use an external +5V power supply, as shown below, where the external power supply provides Ground and +5V. Of course, you do NOT install the jumper.
The ProMini Air receiver must connect to an external DCC amplifier that converts the 5V logic DCC from the ProMini Air receiver to DCC A/B that a DCC decoder requires. This DCC amplifier uses battery power and the inputs from the ProMini Air receiver to provide the power and DCC messages, coded as a bipolar DCC waveform, to the decoder for both power and DCC messages. These “DCC amplifiers” are usually medium to large amperage amplifiers that accept pulse width modulation (PWM) input to provide precision output control for electric motors. The maximum PWM frequency of these amplifiers is usually high enough (> 20kHz) to reproduce DCC packets accurately.
Depending on the particulars of your installation, the author will provide an appropriate DCC amplifier as part of your PMA Rx purchase.
Some DCC amplifiers have their specialized connector configurations, as shown below, for a GROVE-compliant amplifier.
Integration of the ProMini Air Receiver into a Locomotive
Of course, the real purpose of the ProMini Air receiver is to integrate it into a locomotive for wireless DCC control using an onboard battery as power. An excellent high-power (13A continuous) DCC amplifier may be purchased here, as shown below. This Cytron MD13S amplifier is the one we provide with the ProMini Air receiver unless determined otherwise for size constraints. You can successfully use more expensive high-amperage amplifiers (about $30 US as of 2020) found at Pololu here or here. These amplifiers are smaller (0.8″ x 1.3″) than the Cytron.
Now, let’s turn the ProMini Air used as a transmitter (Tx) of DCC messages from any DCC-compatible throttle.
The photo below shows the connections between an interface board that takes throttle DCC A/B inputs (“track” DCC) and rectifies these inputs to provide Ground and +5V power supply output. This “DCC Converter” PCB also “taps off” the DCC A input and converts it to a 5V logic DCC output suitable for the ProMini Air transmitter. These outputs provide the ProMini Air transmitter with Ground, +5V power, and 5V logic DCC input.
We provide the “DCC Converter” PCB as part of your PMA Tx purchase.
The user can change the ProMini Air transmitter’s Channel (Airwire channels 0-16, S-Cab channel 17, and EU channel 18) and Power Level (0-10) by setting the DCC throttle’s address to that of the ProMini Air transmitter’s (9900 by default). Then, using the throttle’s OPS mode, change the value of a configuration variable (CV255 for Channel: 0-16, and CV254 for Power Level: 0-10), exit OPS mode, and change the throttle back to the locomotive’s DCC address.
Receiver/Transmitter Antenna Connections
For the ProMini Air transmitter, we strongly urge you to use the FCC/IC-approved Anaren “whip” antenna supplied with the transceiver that is surface-mounted to a 10-pin interface daughterboard. This whip antenna/transceiver combination is FCC/IC-approved as an “intentional radiator.” You can purchase antennas for the ProMini Air transmitter online from many sites for experimentation purposes. For fixed installations of the ProMini Air transmitter, we suggest reputable products from Linx, such as their SMA one-half wave antennas with an internal counterpoise. You can find these antennas at Digi-Key, e.g., ANT-916-OC-LG-SMA ($10.55) and ANT-916-CW-HWR-SMA ($12.85). The former antenna has a slightly better gain (2.2dBi versus 1.2dBi) but is somewhat longer (6.76″ versus 4.75″).
For the ProMini Air receiver or the ProMini Air transmitter where a small, remotely-mounted antenna is needed, we again recommend Linx antennas such as the ANT-916-CW-RCS or ANT-916-CW-RAH.
The ProMini Air receiver or transmitter provides diagnostic outputs that are not required for operation but are helpful for troubleshooting or just for fun:
You can monitor the transceiver’s output (in Rx mode) or input (in Tx mode) on the output DIP pins described above.
“I2C” outputs can drive an inexpensive two rows 16 columns I2C LCD.
The ProMini Air software automatically searches for a valid LCD I2C address on boot-up. Please make sure you connect only ONE display to the ProMini Air.
You can also change the ProMini Air’s DCC address using the throttle’s “OPS” mode. For the transmitter, you use the DCC throttle that connects to the ProMini Air transmitter (by default at DCC address 9900 (previously 9000)). For the ProMini Air receiver, you use the wireless DCC throttle transmitting to the ProMini Air receiver (by default at DCC address 9901 (previously 9001)). The EEPROM permanently stores the changed address, but this new address is not operative until you power cycle the ProMini Air.
Configuration and Testing
We default-configured the ProMini Air receiver and transmitter to operate on Airwire Channel 0. This default can be changed by setting the DCC address to 9901(Rx)/9900(Tx) (the default, which can be changed as described in the Users Manual) to access the ProMini Air transmitter and in OPS or Programming-on-the-Main (POM) mode setting CV255 to the desired channel. Valid channels are 0-17 for North American operation or Channel 18 (869.85MHz) for European operation.
Should the ProMini Air receiver fail to detect valid DCC packets on its default channel during startup, it will cycle through all Airwire Channels to find a Channel producing valid DCC packets. If this cycling fails to find a valid Channel, the ProMini Air receiver will change to Channel 0 and wait for a valid RF DCC signal. This channel change is not permanent, and on a restart, ProMini Air will revert to its default channel.
Several other configuration options are available through “OPS” mode programming, as described in the ProMini Air Users Manual.
We strongly urge the user to test the ProMini Air before the final deployment. At the least, an inexpensive I2C LCD can be purchased here or here (and numerous other locations) to gain some insight into the ProMini Air’s state. This display is particularly beneficial when using the ProMini Air as a transmitter.
Examples of Testing (Advanced)
This section is only for the advanced or adventurous. In the examples below, the Yellow waveform is the signal from/to the RF transceiver for Rx/Tx, respectively. The blue waveform is one channel of the resulting DCC (Rx) sent to the decoder or DCC received from the throttle via wireless transmission (Tx).
The photo below shows the ProMini Air operating as a receiver. Of course, an RF transmitter wirelessly sends DCC packets. This transmitter may be a dedicated wireless DCC throttle, such as the Airwire Tx5000. Or, it may be a transmitter that converts standard “track DCC” to wireless DCC, such as the Tam Valley Depot DRS1 transmitter or the ProMini Air used as a transmitter (as discussed in the next section)!
On the LCD, “My Ad: #” is the DCC address of the ProMini Air itself. The “(L)” means “long” address. Displayed on the second line is the Channel number and whether DCC “filtering” is “off” (Filter: 0, as shown) or “on” (Filter: 1).
The photo below shows the oscilloscope waveforms with no valid RF DCC signal. With filtering off (Filter: 0), the DCC sent to the decoder reproduces the random pulses generated by the receiver.
These two photos show the ProMini Air’s transceiver and DCC amplifier output when valid RF DCC is received and no valid RF DCC is received. DCC filtering is off, so the PMA outputs DCC Idle messages. The Tam Valley Depot and Gwire receivers simply reproduce the random pulses received by the transceiver.
The user can reconfigure the ProMini Air receiver using the throttle’s “OPS” mode. Setting the wireless throttle DCC address to 9901 now shows that the Msg address (“Msg Ad: #”) matches the ProMini Air receiver’s address (“My Add: #”).
Change CV246 to “1” in OPS mode, which will turn “on” the ProMini Air receiver’s DCC filtering.
The display now shows that DCC filtering is “on.”
Exiting OPS mode and changing the throttle to the locomotive’s address now shows an updated “Msg Ad: #” with DCC filtering “on.”
Below is the transceiver’s and DCC amplifier’s DCC output when transmitting valid RF DCC.
If we turn off the wireless transmitter/throttle sending RF DCC, now the transceiver outputs random pulses (yellow). Since filtering is “on,” the ProMini Air receiver firmware detects “bad” waveforms that do not appear to represent a valid DCC packet. The ProMini Air receiver then outputs a constant-level signal that causes the DCC amplifier to output a high level on DCC A (blue) and zero Volts on DCC B (not shown). This behavior is similar the that of the Airwire receivers. However, the detection mechanism for Airwire receivers is simply the lack of a sufficient frequency of DCC “IDLE” packets, not an analysis of the transceiver’s pulse train.
Repeating the process of changing the wireless throttle’s DCC address to 9901, going into “OPS” mode, changing CV246 to “0”, exiting “OPS” mode, and changing back to the locomotive’s DCC address will now set DCC filtering to “off.”
So, when we turn off the wireless DCC throttle/transmitter, the DCC amplifier’s output (blue) again displays the DCC IDLE messages output by the ProMini Air receiver.
We now turn our attention to testing when using the ProMini Air as a transmitter.
The display will alternate between showing the ProMini Air transmitter’s DCC address (“My Ad: #”) and the transmitted DCC packet’s DCC address (“Msg Ad: #”). The transmitting Channel (“Ch: #”) and Power Level (“PL: #”) display on the second line.
Below is an oscilloscope trace of the input DCC from the throttle (blue) and the DCC transmitted by the RF transceiver on the ProMini Air transmitter. Since the wireless DCC must keep the Airwire RF receiver “happy” with numerous DCC “IDLE” packets, the ProMini Air transmitter evaluates the incoming DCC from the throttle. When the throttle outputs frequent, redundant DCC packets, the ProMIni Air transmitter occasionally inserts DCC “IDLE” packets instead of one of the redundant packets. So, the input DCC and the transmitted DCC will not precisely match. Since DCC throttles send many redundant DCC packets, the locomotive will receive sufficient DCC packets to operate correctly.
You can reconfigure the ProMini Air transmitter by setting the throttle’s DCC address to 9900 (which can be changed) and then going into the “OPS” mode to set configuration variables (CV) to new values.
Once we have changed the throttle’s DCC address to 9900, note that the message address (“Msg Ad: #”) now matches the ProMini Air’s address (“My Ad: #”).
For example, while in OPS mode, changing CV246 to “6” will reset the ProMini Air transmitter’s Power Level to 6, as indicated by the display shown below.
After exiting the “OPS” mode, we see that the display reflects the new Power Level (“PL: #”).
Changing the throttle’s DCC address back to the locomotive’s address will sometimes show “Msg Ad: 255(S)”, which means that the ProMini Air transmitter sent out a DCC “IDLE” packet to make the Airwire receiver “happy.”
A display refresh (every 4 seconds) will most likely display the locomotive’s DCC address, 1654. The “(L)” means “long” address.
Conclusion and Further Information
The ProMini Air is an inexpensive and hopefully fun introduction to wireless DCC control of your model railroad locomotive!
Please contact the author on this site to purchase the ProMini Air receiver or transmitter. The cost for the ProMini Air transmitter or receiver (with their additional DCC Converter or DCC amplifier and wiring harness) is only $50.00 + shipping.
The Stanton Cab (or S-Cab) is a series of dead-rail transmitters and receivers developed and sold by dead-rail pioneer Neil Stanton, Ph.D. S-Cab products are available at this site.
Stanton offers a hand-held transmitter, the S-Cab Throttle, specifically designed to transmit to S-Cab RF receivers. These receivers include the S-CAB Radio Receiver (LXR-DCC) and Loco Receivers for HO, On3, On30, and some S-scale installations. Also, Stanton will provide an S-Cab receiver coupled with decoders for larger scales. The available options are discussed on the S-Cab website here.
The S-Cab Throttle and receivers operate at 916.48MHz or 918.12MHz (single frequency only!). The former frequency is close to Airwire Channel 16 (916.36MHz), and the latter is the same frequency as Airwire Channel 11. However, Airwire hand-held transmitters WILL NOT WORK with S-Cab receivers at either Channel 16 or 11. And Airwire receivers WILL NOT WORK with the S-Cab Throttle.
I successfully determined RF settings that allow the ProMini Air transmitter (PMA Tx) to operate with the S-Cab receivers (such as the LXR-DCC). So I have now added an S-Cab compatible Channel 17, and this addition required moving the European Channel 17 to Channel 18.
The specialized RF settings for Channel 17 also allow the S-Cab Throttle to transmit to the ProMini Air receiver (PMA Rx) with just a tiny wrinkle to establish communication (more about this below).
You should note that the ProMini Air interoperability is with S-Cab products operating at 916.48MHz. Contact the author should you need this interoperability at 918.12MHz.
Stanton designed his products to operate with intermittent transmissions from the S-Cab Throttle to the S-Cab receivers. This practice is at variance with other transmitters such as Airwire hand-held throttles, the Tam Valley Depot DRS1 transmitter, the NCE Gwire Cab, and the ProMini Air transmitter.
S-Cab Receiver Interoperability with the ProMini Air Transmitter
I used the S-Cab LXR-DCC receiver for interoperability testing with the PMA Tx. See the photo below.
[Warning: Technical, you can skip this paragraph.] Since the LXR-DCC would NOT operate on Airwire Channel 16 (916.36MHz), I devised more specialized RF settings that allow the PMA Tx to transmit to the LXR-DCC receiver successfully. The new “S-Cab Channel 17” transmits at 916.48MHz with a reduced “deviation” frequency FDEV of 25kHz instead of the Airwire channels’ value of 50kHz. Shifting the RF transmission from the “center frequency” FC (916.48MHz in our case) by FDEV indicates a logic transition. Thus a series of pulse transitions are generated by the timing of transmitter frequency shifts: FC -> FC+FDEV -> FC -> FC+FDEV -> … This encoding technique is called Frequency Shift Keying (FSK).
The photo below shows the DCC transmissions from the PMA Tx on Channel 17 and the DCC output from the LXR-DCC. The waveforms clearly show that the PMA Tx successfully transmits to the LXR-DCC.
There’s not much more to say about using the ProMini Air transmitter with S-Cab receivers: set the PMA Tx to channel 17!
As a parenthetical note, Channel 17 will also work with the older Tam Valley Depot (TVD) Mk III receiver/amp and the NCE D13DJR wireless decoder. Both use the now-discontinued Linx ES Series receiver operating at 916.48MHz. Unlike the S-Cab LXR-DCC, they will also work on Airwire Channel 16.
S-Cab Throttle Interoperability with the ProMini Air Receiver
So now, let’s turn to operating the S-Cab Throttle with the PMA Rx. Since the S-Cab Throttle transmits at 916.48MHz, the PMA Rx must use its automatic “channel search” capability to “find” the intermittent transmissions at 916.48MHz with an FSK deviation frequency of 25kHz.
The S-Cab Throttle’s intermittent transmissions are where the “wrinkle” occurs. The PMA Rx’s channel search after power on quickly searches for transmissions in the following channel sequence: 0(A), 18(E), 17 (S-Cab), 1(A), 2(A), 3(A), …, 16(A), where (A) mean Airwire channel, (E) means European ISM frequency 869.85MHz, and (S-Cab) means for S-Cab at 916.48MHz.
Since the S-Cab Throttle’s transmissions are intermittent, if the operator does nothing, the S-Cab Throttle might not be transmitting in the short time window when the PMA Rx is looking for transmissions on Channel 17. So, to force the S-Cab Throttle into nearly continuous transmissions, slide the speed control up and down continuously for several seconds while the PMA Tx is powering up to guarantee the PMA Tx has transmissions on Channel 17. If the PMA Tx does not “sync up” with the S-Cab Throttle, try again by turning the PMA Tx off and then back on while sliding the S-Cab’s speed control up and down.
The video below demonstrates that the PMA is successfully receiving S-Cab transmission since the DCC address displayed by the PMA Rx matches the S-Cab’s loco address (4), and the PMA Rx auto-selected Channel 17.
I have updated the ProMini Air transmitter and receiver firmware with a new Channel 17 to allow interoperability with the S-Cab throttle and S-Cab receivers. This new channel will also work with the Tam Valley Depot Mk III receiver and NCE D13DJS wireless decoder, although Airwire Channel 16 will also work with them. To make “room” for this new channel, the European channel (at 869.85MHz) has been moved to Channel 18.
Numerous wireless RF transmitter/receiver (Tx/Rx) options for locomotive control are available both in the US and abroad. My discussion is confined to wireless RF transmitter/receiver options that are DCC compatible, which means that the transmitter sends “logic-level” DCC packets, and the receiver converts the “logic-level” DCC packets back to “bipolar” DCC packets, as would be transmitted on tracks, that an onboard DCC decoder can “understand.”
Why am I limiting my discussion? Because DCC is a standard, and if you don’t go with solutions that have standards behind them, then you are likely to suffer “vendor lock” where a single vendor holds you “hostage” with “their” solution. Perhaps that attitude is a bit overblown, but vendors with proprietary solutions tend to lag in innovation for lack of competition, and what happens if the vendor goes out of business?
I know that the NMRA DCC standards have some problems including the following issues: pending issues under consideration for years; vendors ignoring some parts of the standards; some vagueness in places; and lack of standards for wireless. The DCC standard is imperfect, but it’s miles better than no standard at all. Plus, the DCC decoder market is competitive and feature-rich – you can almost assuredly find a DCC decoder that will satisfy your needs.
As a further limitation of this post, I will mostly confine my discussion on DCC-compatible wireless Tx/Rx options to the 902-928 MHz ISM (Industrial, Scientific, and Medical) band because this is where I have direct experience. There is significant and exciting activity in the DCC-compatible 2.4 GHz ISM band (using Bluetooth technology) band as well (see BlueRailDCC), but I have no personal experience with this band. Another advantage of the 902-928 MHz ISM band is that there is some interoperability between transmitters and receivers, although there is currently no firm standard behind this interoperability.
DCC-compatible Tx/Rx options are a very large topic that I cannot fully cover in this blog. These options are well-covered in the following links:
Dead Rail Society: This should always be your first stop when looking at topics related to dead-rail. This site is the epicenter of dead-rail. In particular, this page discusses vendors for dead-rail Tx/Rx.
Facebook Dead Rail page: This social media page is a valuable source for the latest announcements and discussions for dead-rail, including Tx/Rx options.
Below is my personal experience with 902-928 MHz ISM DCC-compatible receivers.
How each of these DCC compatible wireless receivers handles loss of valid RF signal from the transmitter is discussed here.
The company CVP manufactures and supports its Airwire series of products that include hand-held wireless DCC-compliant throttles (such as the T5000 and T1300) and receivers, such as the CONVRTR series that seamlessly connects to DCC decoders onboard the locomotive. As a general comment, CVP provides excellent, detailed installation and operation documentation, and that’s in part why they are dominant in some segments of wireless model railroad control. The CONVRTR receiver has some sophisticated features, such as setting its Airwire RF channel purely in software, that are described in its User Guide.
However, the CONVRTR interacts with the Airwire wireless throttles in ways that make it difficult to impossible to transmit just “garden variety” DCC wirelessly to the CONVRTR for proper operation. The Airwire throttles transmit numerous DCC “Idle” packets as a “keep-alive” message for the CONVRTR. A red LED on the CONVRTR board indicates received signal quality and flickers least when receiving a large number of DCC Idle packets. The brightness of the LED indicates the received RF power. Typical DCC throttles are not designed with these “keep-alive” concerns in mind, and do not output DCC Idle packets often enough to keep the CONVRTR “happy.”
Other than the CVP Airwire transmitters (the T5000 and T1300), the only currently-available (the no longer manufactured NCE GWire Cab was also Airwire-compatible) RF transmitter that I am aware of that is capable of communicating with the Airwire CONVRTR is the ProMini Air, whose open-source software (at GitHub AirMiniTransmitter) intercepts “garden variety” DCC from the throttle and interleaves a sufficient number of DCC Idle packets to communicate correctly with the CONVRTR. This “keep-alive” requirement for the Airwire CONVRTR is challenging to produce, so sometimes a reset of the DCC throttle or the ProMini Air is required to initially send enough DCC Idle packets to initiate communication with the CONVRTR.
Like the Gwire receiver below, the Airwire CONVRTR “X” versions have a U.FL connector for connecting a shielded antenna cable from the receiver to an externally-mounted antenna. An internal antenna option is available as well for CONVRTR mountings that are not surrounded by metal.
QSI Solutions Gwire
The Gwire receiver operates on Airwire RF channels 0-7 that the user must select from a dial on the device itself. A nice feature of this receiver is an onboard U.FL connector (see Figure above) that allows the user to connect a shielded antenna cable from the receiver to an externally-mounted antenna – useful when the antenna needs to be on the exterior of a metal locomotive or tender shell. See Blueridge Engineering’s website for details on how to interface the Gwire to any onboard DCC decoder. The Gwire presents no difficulties for wireless 902-914 MHz ISM band DCC-compatible transmitters, and you can find it on eBay at relatively low ($20 US or less) prices.
Tam Valley Depot DRS1, MkIII
The Tam Valley Depot DRS1, MkIII receiver operates only on Airwire RF channel 16 (actually 916.49 MHz, which is close enough to Airwire channel 16 at 916.37 MHz) and makes a suitable wireless DCC receiver. This receiver has a long, single-wire antenna that provides efficient RF reception (see the figure above). However, you must place this wire outside any metal shell, which may be inconvenient in some mounting applications. The DRS1, MkIII, presents no difficulties for the 902-914 MHz ISM DCC-compatible transmitters as long as they transmit near 916.49 MHz. The DRS1, MkIV described in the next section supersedes this receiver.
Tam Valley Depot DRS1, MkIV
The Tam Valley Depot DRS1, MkIV receiver is a significant upgrade from the DRS1, MkIII, and operates at the original Tam Valley 916.49 MHz frequency, Airwire Channels 0-16, and at 869.85 MHz (for European operation). The DRS1, MkIV presents no difficulties for the 902-928 MHz ISM DCC-compatible transmitters and is an interesting choice because it changes channels automatically until it finds a sufficient RF signal carrying DCC packets. See the figure above for the version that employs an internal antenna that is useful when the receiver is not mounted inside a metal shell.
The DRS1, MkIV with a U.FL antenna connector (and a heatsink update) is now available (see picture below), making it very useful for connecting to external antennas outside of metal shells. This version of the DRS1 makes it highly competitive in capability and quality with the Airwire CONVTR. Perhaps a future version will provide DC output to the onboard DCC decoder when no valid RF signals carrying DCC packets are available, making it possible to program the DCC decoder’s behavior when there is no DCC signal available.
Blueridge Engineering ProMini Air Receiver
The inexpensive ProMini Air receiver kit presents no issues when used with 902-928 MHz ISM DCC-compatible transmitters. It operates on Airwire RF channels 0–16 and requires a separate, low-cost amplifier (e.g., the Cytron MD13S) to convert the ProMini Air’s unipolar 5V DCC to bipolar DCC that provides sufficient power to the decoder. See the Blueridge Engineering web page for details on how to build the kit and properly connect the ProMini Air to the amplifier that is in turn connected to the onboard DCC decoder.
The ProMini Air’s open-source software is available for download at the GitHub site AirMiniTransmitter.
So far as I’m aware, there are four 902-928 MHz ISM DCC-compatible transmitters: the CVP Airwire T5000 and T1300, the Tam Valley Depot DRS1 transmitter, and the Blueridge Engineering ProMini Air transmitter.
CVP Airwire Transmitters
The CVP Airwire T5000 and T1300 transmitters are excellent choices for operating with 902-928 MHz ISM DCC-compatible receivers, all of which will properly-communicate with these two transmitters. When I am testing wireless receivers, the T5000 is my “go-to” because, in addition to serving as a DCC-compatible throttle, it can program onboard DCC decoders, via the wireless receiver, in either “OPS” (or Programing-on-the-Main, PoM) or “Service” mode. While the T1300 cannot program the onboard DCC decoders, it serves as a typical DCC throttle.
Of course, the Airwire transmitters send sufficient DCC “Idle” packets to keep the Airwire CONVRTR receivers “happy.”
Tam Valley Depot DRS1 Transmitter
The Tam Valley Depot DRS1 transmitter uses DCC packets produced by any DCC throttle or command station that outputs “bipolar” DCC to tracks. The DRS1 transmitter converts the “bipolar” DCC to “logic-level” DCC and transmits it at only 916.49 MHz, which is close enough to Airwire Channel 16 at 916.36 MHz to be received. This frequency limitation means that only the Tam Valley Depot DRS1, MkIII, and MKIV, and the Blueridge ProMini Air receivers can operate with this transmitter if they are receiving on 916.48 MHz or Airwire Channel 16.
While the Airwire CONVRTR can operate on Airwire Channel 16, the DRS1 transmitter is not designed to transmit sufficient “Idle” DCC packets to keep the CONVRTR “happy” since it passively sends along only the DCC packets it receives from the DCC throttle or command station.
Blueridge Engineering ProMini Air Transmitter
Blueridge Engineering provides the ProMiniAir transmitter/receiver kit that uses open-source software at the Github AirMiniTransmitter site. Like the DRS1 transmitter, it is designed to take inputs from any DCC throttle or command station’s “bipolar” DCC output to tracks (via a simple, low-cost optocoupler provided by Blueridge Engineering) and transmit the “logic-level” DCC on Airwire channels 0-16.
The ProMini Air transmitter inserts a sufficient number of DCC “Idle” packets into the original throttle-produced DCC to keep the Airwire CONVRTR “happy.” This keep-alive capability coupled with transmission on Airwire channels 0-16 ensures that the ProMini Air transmitter is capable of communicating with any of the 902-928 MHz ISM DCC-compatible receivers discussed in this blog.
This transmitter’s settings, like channel number and output power, can be controlled by the DCC throttle or command station in the “OPS” mode by setting the throttle address to that of the ProMini Air, which is 9000 by default. An optional LDC display can be attached to the ProMini Air transmitter for status display. More configuration information is available at the GitHub AirMiniTransmitter site.
Full disclosure here: I am one of the contributors to the AirMiniTransmitter open-source software, and I am heavily-involved with Blueridge Engineering with the design of the ProMini Air transmitter/receiver board.
This post describes my most difficult dead-rail conversion to date: an MTH O scale 2-8-8-8-2 Virginian Triplex (MTH product number 20-3101-1) that I purchased on eBay circa September 2019. Previously, I converted a Sunset 3rd Rail Allegheny with an MTH Proto-Sound 3.0 board to dead-rail, but the Triplex was my first complete dead-rail conversion of an MTH locomotive to 2-rail operation, which included lathe turning high-profile wheels to approximate an NMRA RP-25 flange profile (also see NMRA standard S-4.2) so that the locomotive would operate reliably on track meeting NMRA standard S-3.2.
The inside view of the tender below demonstrates a significant challenge: space is very tight with the Proto-Sound board and the large speaker consuming a large part of the tender’s internal volume where we need to install additional dead-rail components: DCC-compatible RF receiver; 14.8V LiPo battery; and switch, charging, and antenna wiring.
The strategy starts to emerge:
Replace the Proto-Sound 2.0 (PS2.0) board with a PS3.0 board that can operate in DCC mode.
Remove the original rechargeable battery and its cradle and locate the 14.8V LiPo battery pack there.
Remove the large speaker and replace it with a smaller 4-ohm speaker so that we can make room for the 14.8V LiPo battery pack and the Airwire CONVRTR-60X DCC-compatible RF receiver that operates in the 902-928 MHz ISM band on Airwire channels 0-16.
Lathe down the high-rail wheel flanges to approximate an NMRA “RP-25” profile for 2-rail, dead-rail operation.
An advantage of this strategy is retaining almost all of the control the PS2.0/PS3.0 provides, including directional head/tail lamp, marker lights, cabin lights, flickering firebox, sound, and fan-driven smoke units.
Proto-Sound 3.0 Conversion
The first step of the dead-rail conversion was easy: replacing the Proto-Sound 2.0 board with a Proto-Sound 3.0 (PS3.0) board from Ray’s Electric Trainworks. As I have mentioned in other posts, working with Ray Manley is a great pleasure. I sent my PS2.0 board as a trade-in to Ray, and he took care of the rest, providing me with a fully-functional PS3.0 board, complete with DCC capability.
The heatsink for the PS3.0 board necessitated drilling and tapping a new mount hole with spacer, as shown in the figure below.
The following photos show the original electrical power inputs to the PS2.0 board and their modified connections for the replacement PS3.0 board.
As you can see below, the AC power from the center rail pick-up (hot) and the outside rails (ground) were disconnected – we will be getting our power from a 14.8V LiPo battery pack in the tender. In this case, there is no Constant Voltage Unit, so no Battery +(14.8V)/Battery -(Ground) connections are required.
The AC power connections in the tender are also disconnected, and the power inputs to the PS3.0 connect to the switched battery power. The Battery +(14.8V)/Battery -(Ground) connection on the wiring harness was NOT required.
Locomotive Electrical Modifications
There were two aspects to the electrical modifications in the locomotive:
Electrical power supply
The original headlamp was a power-hungry incandescent bulb. An LED with a polarity-independent plug from Evan Designs was used to eliminate the need to determine the polarity of the original headlamp wiring.
The power-related modifications consisted of removing the center-rail pick-ups, which is very easy on MTH locomotives and disconnecting any wiring to the center-rail pick-up (hot) and the outside rails (ground).
Battery installation was very challenging since the only practical placement location was the original rechargeable battery and its cradle mounting beside the PS2.0 board. A special-order 2x2x1 14.8V, 2600mAh (38.48 Wh, 5A rate, LxWxT: 133 mm x 40 mm x 25 mm) LiPo battery purchased from Tenergy.com provides the one cell-diameter thickness required to fit the battery pack between the PS3.0 board and the tender hull.
In MTH steam locomotives, the wheel axles insert into a solid cast chassis frame, so the driver wheels must be pulled off the axle before machining the high profile wheels to approximate an RP-25 profile that is compatible with two-rail, dead-rail operation.
Tender Mechanical Modifications
The tender’s mechanical modifications involve adding a Kadee 740 coupler and accommodating additional dead-rail electronics.
The original coupler pivot, rather than using a frame-fixed mounting, was used to mount a Kadee 740 coupler. This strategy ensured that tight curves would not bind the coupler.
A Kadee 740 coupler was mounted on the original coupler pivot, as shown in the Figure below. The brass screw heads were ground down to provide clearance with the tender frame.
Additional Dead-Rail Electronics
The added dead-rail electronics include the charging plug, the ON/OFF/Charging plug, a smaller speaker, and the antenna mount.
The original speaker was far too large to provide clearance for the additional battery, DCC-compatible RF receiver, and other electrical components needed for the dead-rail installation. So a 16mm x 35mm speaker was placed in the bottom of the original speaker’s cavity, and UV glue holds the speaker in place.
With the locomotive reassembled, it’s time to test it out! If your locomotive has a smoke unit(s), always ensure sufficient smoke fluid is loaded. Even if you don’t intentionally turn on the smoke unit – sometimes it’s unexpectedly activated.
Note: This post deals with details of various brands of DCC-compatible, wireless RF receivers operating in the 902-928 MHz “ISM” band that connect to onboard DCC decoders. Some aspects of the discussion may apply to other RF bands as well.
The designers of various DCC-compatible RF receivers have a couple of strategies for what output to provide to the onboard DCC decoders when a valid RF signal is lost:
Output the random pulses that the RF receiver naturally outputs when a valid RF signal is lost. This option will cause most DCC decoders to maintain direction and speed while the DCC decoder “sifts” the random pulses searching for valid DCC packets.
Output a fixed, positive Direct Current (DC) voltage to one of the DCC decoder’s “Track” inputs and a zero voltage DC the other “Track” input when either a) RF signal is lost, or b) when the RF transmitter does not send sufficiently-frequent “keep-alive” DCC packets. The latter is true for the Airwire CONVRTR. How the DCC decoder responds to these DC “Track” inputs depends upon DCC decoder configuration and, unfortunately, DCC decoder manufacturer discretion.
There are several NMRA-specified Configuration Variables (CV’s) that affect how DCC decoders handle the loss of valid DCC packets and are important to understand when the DCC decoder is connected to the DCC output of DCC-compatible RF transmitters because the RF receivers may lose or receive corrupted RF signal from the dead-rail RF transmitter.
The NMRA standard S-9.2.4, section C “Occurrence of Error Conditions” states “Multi Function Digital Decoder shall have a Packet Update time-out value.” Further down on line 60 the standard states “A value of 0 disables the time-out (i.e., the user has chosen not to have a time-out)”. This part of the NMRA standard is not universally-implemented by manufacturers, and it affects how decoders will respond to the loss of RF transmission of DCC packets. To implement this requirement, the NMRA standard S-9.2.2 has defined the recommended (R), but notmandatory (M), CV11, Packet Time-Out Value. A value of CV11=0 is defined to turn off the time-out, but CV11 is frequently not implemented.
However, another CV that is often implemented addresses some aspects of loss of DCC. The optional (O) CV27, Decoder Automatic Stopping Configuration, is under re-evaluation by NMRA, but the NMRA has taken no definite action some time. Here is what the NMRA standard S-9.2.2 currently (as of 2019) states about CV27:
Configuration Variable 27 Decoder Automatic Stopping Configuration Used to configure which actions will cause the decoder to automatically stop.
Bit 0 = Enable/Disable Auto Stop in the presence of an asymmetrical DCC signal which is more positive on the right rail. “0” = Disabled “1” = Enabled
Bit 1 = Enable/Disable Auto Stop in the presence of an asymmetrical DCC signal which is more positive on the left rail. “0” = Disabled “1” = Enabled
Bit 2 = Enable/Disable Auto Stop in the presence of an Signal Controlled Influence cutout signal. “0” = Disabled “1” = Enabled
Bit 3 = Reserved for Future Use.
Bit 4 = Enable/Disable Auto Stop in the presence of reverse polarity DC. “0” = Disabled “1” = Enabled
Bit 5 = Enable/Disable Auto Stop in the presence forward polarity DC. “0” = Disabled “1” = Enabled
Bits 6-7 = Reserved for future use.
Since DCC decoder manufacturers frequently do implement CV27, what electrical output the DCC-compatible RF receiver provides to the DCC decoder upon loss of a valid RF signal will influence how the DCC decoder responds. We will break this down for various brands of DCC-compatible RF receivers in the 902-928 MHz ISM band in the following subsections.
Note that some DCC decoders will not honor CV27=0; i.e., all auto-stopping features disabled. For example, with CV27 set to 0, the Zimo MX-696, and probably other Zimo DCC decoders as well, will continue speed and forward direction if positive DC level is input to the “Right Track” DCC input, and a zero DC level is input to the “Left Track” DCC input. Under these “track voltage” conditions, the locomotive will stop if originally moving backward. Some (but not all)DCC-compatible RF receivers, such as the Airwire CONVRTR, provide these DC inputs, if a valid RF signal is lost, but only if connected correctly.
The “correct” connection relates to how the user connects the DCC output from the RF receiver to the “Track Right” and “Track Left” inputs of the DCC decoder. Under normal circumstances, when there is a valid RF signal, which way the DCC decoder connects to the RF receiver does not matter. Under the exceptional case of DC-only output by the RF receiver, if it loses a valid RF signal, which way the DCC decoder connects to the RF transmitter does matter. The user will likely want the locomotive to continue forward with the loss of a valid RF signal, so some experimentation is required to determine which of the RF transmitter DCC outputs should connect to which of the DCC decoder’s “Track” inputs to achieve the desired behavior.
As a further complication, the user should probably turn off the decoder’s “analog” mode of operation by setting Bit 2 of CV29 to 0 to force the decoder to use “NMRA Digital Only” control of ”Power Source Conversion” (see the NMRA standard here). If Bit 2 of CV29 is set to 1, and again we emphasize the user should probably not activate this feature, then “Power Source Conversion Enabled” and then CV12 determines the power source; the most common of which is CV12=1, “Analog Power Conversion.”
Airwire CONVRTR Series
When the CVPAirwire CONVRTR loses a valid RF signal or receives insufficiently-frequent DCC Idle packets, it detects these conditions and outputs a fixed DC voltage to the decoder. Consequently, the user should set CV27 according to the description above.
While it may seem that the user would want the locomotive to stop if its RF receiver loses a valid RF signal, consider what might happen in tunnels or locations remote to the DCC RF transmitter. Getting stuck under these circumstances if a valid RF signal is lost is probably not what the user wants, so we strongly suggest that the user set CV27=0.
The user is cautioned, however, that some DCC decoders, such as the new ESU LokSound 5 L DCC, do not honor the CV27=0 setting unless the “polarity” of the “Track Right/Left” is connected “correctly” to the CONVRTR’s “A/B” output. Experimentation may be required to determine the correct connection, but my experience is: CONVRTR A <–> Decoder Track Right & CONVRTR B <–> Decoder Track Left
QSI Solutions Gwire and Tam Valley Depot DRS1 Series
The QSI SolutionsGwire and Tam Valley DepotDRS1, MkIII and MkIV DCC-compatible RF receivers will output random pulses to the onboard DCC decoder when a valid RF signal is lost, so setting CV27 is probably of no use. On the “plus” side, most DCC decoders will maintain locomotive direction and speed in the presence of these random pulses since the DCC decoder is actively sorting through these pulses for valid DCC packets, which is usually the behavior the user wants.
A Blueridge Engineering webpage describes how to easily modify the GWire for use as an RF receiver for any onboard DCC decoder.
Blueridge Engineering ProMini Air Receiver
The Blueridge EngineeringProMini Air receiver has a default long address of 9001. Like the ProMini Air transmitter, the ProMini Air receiver’s channel can be reset in “OPS Mode” by setting CV255 to a value in the range of 0–16. The ProMini Air receiver has the following options when a valid RF signal is lost:
Output random pulses to the onboard DCC decoder: The user can set the ProMini Air receiver to output the random pulses when it loses a valid RF signal by setting CV246 to 0 in “OPS mode” at the ProMini Air’s address. In this case, setting CV27 for the onboard DCC decoder is not relevant, because the random pulses from the ProMini Air receiver will cause the onboard DCC decoder to maintain speed and direction of the locomotive while it is “sifting” through the random pulses for valid DCC packets.
Output either fixed positive or negative voltage DC to the onboard DCC decoder: In this case, setting CV27 for the onboard DCC decoder at its address is relevant. The user can set the ProMini Air receiver to output fixed DC voltage when it loses a valid RF signal by setting CV246 to 1 in “OPS mode” at the ProMini Air’s address. A positive DC voltage is output by setting the ProMini Air receiver’s CV248 to 1 in “OPS mode” at the ProMini Air’s address, or a negative DC voltage is output by setting CV248 to 0. If the user does not want the locomotive to stop with the loss of a valid RF signal, then set CV27=0 for the onboard DCC decoder at its address. Of course, setting CV27 to other values (see above) in the DCC decoder will determine how the DCC decoder responds to the fixed DC voltage that the ProMini Air outputs to the onboard DCC decoder upon loss of a valid RF signal.
It’s an unfortunate fact of life that we can lose a valid RF signal from our DCC-compatible transmitter. However, with a little study of DCC decoder documentation, and possibly a bit of experimentation, gracefully coping is definitely possible.
This is a slight modification of a post I made titled: O Gauge Forum Post on Smoke Units
It is possible to modify a non-ESU smoke unit so that it connects to the LokSound L or XL decoders just as an ESU smoke unit does by connecting the smoke unit to the specialized ESU smoke unit terminals: HTR+/-, MOT+/-, and TMP+/-. This capability allows you to take direct advantage of all the LokSound capabilities provided for ESU smoke units. The missing component in some smoke units is a Negative Temperature Coefficient (NTC) thermistor.
What started me down this road was a “deadrail” conversion of a Sunset 3rd Rail Big Boy (3-rail, “Late Version”) originally outfitted with TMCC and a nice Lionel smoke unit with dual output (photo below).
I wanted to retain this beauty and use a LokSound L V4.0 decoder that is controlled by an Airwire CONVRTR-60. THOR73’s posts on the O Gauge Form inspired me to work through using this smoke unit with the LokSound L V4.0 decoder. I thought that if I could figure out how the ESU smoke units created their “temperature” inputs to the LokSound decoder, then I could retrofit the Lionel smoke unit so that it would be “input compatible” with an ESU smoke unit. This retrofit turned out to be simple.
I reverse-engineered an ESU 54678 smoke unit by measuring the resistance between the heater resistor leads (HTR+/-): ~23 ohms; motor leads (MOT+/-): ~16 ohms; and thermistor leads (TMP+/-): ~100K ohm at room temperature. Each of these components is electrically-isolated from the others. When powered by a 14.8V LiPo battery, the LokSound L V4.0 decoder I had on hand produced the following results on the ESU Profi board using the LokProgrammer (with ground measured at the Profi board’s ground terminal):
Smoke on (Throttle=10)
HTR+ (not connected to heater resistor*)
Switched open/ground @500Hz ~30% duty-cycle PWM
Pulsed <= 5V (difficult to determine with low Frequency chuffs)
* Battery+ (14.8V) connected to heater resistor + input
The difference in TMP- between unheated and heated conditions suggests, but does not prove, that the thermistor’s decrease in resistance with increased temperature is manifested by a voltage increase at TMP- as part of a voltage divider where the thermistor is in series with a fixed resistor resident in the decoder, possibly with a low-side voltage offset:
Guesses: RFIXED~1.5K based on probe measurements and derived @ 25C Voffset~1.24
So right off the bat, the ESU smoke unit’s heater resistance (23 ohms) is similar to Lionel’s (27 ohms), and both smoke units use 5V fan motors. The Lionel was missing only the thermistor. Lower resistance smoke units (around 8 ohms) might be problematic to convert unless retrofitted with a heater resistor in the 20-ohm neighborhood or use an externally-supplied, lower HTR+ voltage. The heater and fan motor similarity between the ESU and Lionel smoke units seemed to make this particular Lionel smoke unit an excellent surrogate candidate.
Thermistors with 100K ohm resistance at 25 Celsius are commonly-available, usually with a “B” parameter of around 3900 Kelvin. You can Google what this parameter means (simplified Steinhart-Hart Equation: R(T in Kelvin)=R@TRef*(exp(B/T-B/TRef)) ). While I was not able to verify that the ESU smoke unit used precisely this type of thermistor, testing described later supports this selection.
The photo below is the Lionel 27 ohm smoke unit PCB, part #610-PCB1-045, Rev C (Lionel replacement part #691PCB1045), that was retrofitted with an “axial,” glass-coated 100K NTC thermistor with a B of 3892 Kelvin. (Well, it’s actually a Lionel replacement PCB since I cut some traces retrofitting on the original PCB that I regret doing. Interestingly, the original PCB did not have the mangled lettering of the replacement PCB that some like some have noted.)
The 3-pin power plug on the PCB can be used to power the heater resistor since the outputs from the rectifier/5V converter on the PCB do not connect to anything after removing the fan motor plug. The ground on the PCB MUST be isolated from the heater unit metal case since the PCB’s “ground” wire will be connected to the LokSound L’s HTR- terminal that regulates the heating resistor’s current path to the electrical ground! Electrical measurements revealed good electrical isolation of the metal case from the heating element.
I drilled two holes in the smoke unit’s PCB board, and the thermistor was inserted and soldered to two-wire leads that connect to the LokSound L’s TMP+/- terminals. I used high melting-point solder because conventional solder might melt at the high operating temperatures of the heater resistor and thermistor (max around 250 Celsius according to documentation for the ESU smoke unit).
The two heater wires from the three-pin PCB plug connect to the LokSound L’s HTR+/- terminals. (Pins 1 and 3 are shorted together on the PCB and connect to one side of the heater resistor. Pin 2 is ground and connects to the other side of the heater resistor.)
The motor wires directly connect to the MOT+/- terminals. Out of sheer luck, when the red motor lead from the smoke unit is connected to MOT+, and it’s black lead to MOT-, the fan motor spins in the “correct” direction.
As others have suggested, I also replaced the original 27 ohm ceramic resistor with a Lionel 27 ohm replacement #6008141055.
Once you connect the smoke unit’s six outputs to the LokSound L’s ESU smoke unit terminals, some modifications are needed in the ESU sound files and decoder set-up, since they did not originally activate the ESU smoke unit. First, follow THOR73’s directions regarding the connection between sound and smoke chuffing under the “Smoke unit” menu. Note especially that the smoke unit’s automatic power-off time should be reset since the default is 0 seconds. I don’t know if 0 means never turn off, but a non-zero setting seemed like a good idea to me.
What differs from THOR73’s discussion is the sound-file set-up for an ESU smoke unit. Editing the sound files reveals that most “nodes” have an option to set the “ESU Smoke Unit” parameters. Frequently these settings are turned off, but there are some useful “presets” you can select and experiment with. An especially interesting preset is the “preheating” preset that is available in the stopped state.
Here are the other states I modified, but I am by no means expert or knowledgeable about these settings. Usually, I chose a “Preset” and then selected the “Steam Chuff” checkbox, which preserves the parameters of the preset (unless you change them), but turns off the Preset name.
After editing these sound nodes, the next step is to set an “F#” to turn the smoke unit on/off on the “Function mappings” menu. The “logical” outputs column provides an “ESU Smoke Unit” selection, so I selected F23 as the ESU Smoke Unit on/off toggle.
TESTING WARNING: The ESU 53900 Profi Decoder Tester does not appear able to provide adequate power to either an actual ESU Smoke Unit or surrogates described here! In deployed operation, the LokSound L is perfectly capable of delivering sufficient power, but the Profi board is, in my experience (or inexperience), NOT able to do so. I initially thought the culprit was the puny AC to DC converter provided to power the Profi board. But, the power connection to a very hefty 14.8V LiPo battery did not solve the problem. The workaround uses either THOR73’s high-side MOSFET switch mentioned in this thread or the low-side MOSFET switch described in the same topic thread. Either way, you will need to take power (about +14V DC) from the source providing power to the Profi board and use the Profi board’s HTR- output to control the MOSFET switch. In turn, this switch controls the smoke unit’s heater. If using THOR73’s high-side FET switch, then you connect the smoke heater as he describes. If you use the low-side FET switch I presented, the smoke unit’s HTR- output connects to the switch control input, and the switch’s ground connects to the power ground.
Reiterating, YOU ONLY NEED THIS SPECIALIZED MOSFET SWITCH FOR TESTING WITH THE Profi BOARD! In actual operation, the LokSound L adequately powers an ESU smoke unit by direct connection to the decoder’s ESU smoke unit terminals, as is the modified smoke unit described here.
Here’s the “proof in the pudding” video:
Please forgive the disassembled state. I haven’t finished the dead rail conversion, but this video does demonstrate battery power with the LokSound L V4.0 controlled by an Airwire CONVRTR-60 wireless receiver.
To be pretty linear, my guesses on RFIXED and Voffset are 1.5K and 1.24V. The 1.5K came from an “off” measurement of resistance between decoder GROUND and TMP-, which is fraught with potential for error.
These values will give you the following approximate curves where the left axis is the voltage at TMP-, and the right axis is the estimated thermistor resistance.
BUT THE VALUES of Rfixed AND Voffset ARE ONLY ENGINEERING JUDGEMENT GUESSES!
After doing about eight or so O scale 3-rail to dead-rail conversions for steam locomotives, some similar features pop out that I will discuss in this blog. As with my other O Scale Dead Rail blogs, I will try to stick mostly to my own experience.
A note of caution: O scale steam locomotives are expensive, and some, to me, are works of art. Consider very carefully whether you have the patience and skill required to make locomotive conversions. I got into O scale dead-rail conversions to teach myself patience, a few skills, and respect for these beautiful models. Give yourself plenty of time to make these kinds of conversions – being in a hurry is a prescription for trouble – I know because I sometimes got in a hurry. Just don’t.
There are some good tutorials on locomotive repair and disassembly. I recommend this one as a good place to start.
Good grief, what do “general considerations” mean? Well, it’s the general aspects that guide the conversion process for both the locomotive and the tender.
First, most, but not all, of my O scale 3-rail to dead-rail conversion experience is with Sunset 3rd rail steam locomotives: Big Boys, Cab Forwards, Challengers, and Alleghenys, so first off you see that I’m an articulated locomotive fan. Articulated locomotives (AL) can be challenging to dis-assemble, and, especially, re-assemble. Heck, they are tricky to handle correctly especially since the front driver chassis must in some way “float” to navigate modest-radius curves.
In general, even though 3-rail locomotives pick up AC from the track, the locomotive motors are almost always DC motors, where a connector from the tender supplies the DC power via a connector from the tender. Usually (always in my experience), the two outside rails are electrically connected to the locomotive chassis, and the AC power from the center roller pickups completes the power loop, fully isolated from the locomotive chassis.
This outside/center AC power inputs are typically supplied to the tender from the locomotive via the same connector to provides DC power from the tender back to the locomotive motor. So right off the bat, you have some bad news and some good news:
Bad news: We will need to eliminate the physical and electrical connections to the center-rail AC picked up by the center pickup shoes from the locomotive to the tender because we’re not using rail power in dead-rail. This will be accomplished by removing the center rail pickup shoes and, just to be on the safe side, eliminating all of the center-rail AC wiring. In theory, once the pickup shoes are removed, all center-rail AC wiring is isolated electrically, but I don’t take any chances, and I just remove all of the center-rail AC wiring.
The good news about the bad news: We can re-purpose the center-rail AC power plug connection between the locomotive and tender (originally sending center-rail AC power from the locomotive to the tender), and instead we send Switched Battery+ from the tender to the locomotive to provide power to the Constant Voltage Unit that distributes power to components such as smoke units, marker lights, and sometimes the headlamp.
Good news: The locomotive’s chassis “ground,” which is electrically connected to the outside rails via the locomotive wheels, does not require electrical connection modification – all we’re going to do is ensure that chassis ground is connected to the tender’s Battery- (Ground) through the original locomotive-to-tender plug. The Battery- (Ground), as the name implies, is also connected to the tender chassis ground.
Good news: It’s easy to get the DC power from the tender to the locomotive’s motor(s) through the original locomotive-to-tender plug without modifications to the locomotive motor’s electrical connections.
Another unique aspect to 3-rail locomotives is the reversing board in the tender that converts the AC power coming from the locomotive to a correctly polarized DC voltage for forward/reverse motion depending on the pattern of interruption of AC to the locomotive. I am not an expert on reversing units – I am in the business of removing them for dead-rail operation. If the locomotive has sound, the sound electronics/card is usually highly integrated (meaning not DCC-compliant) with the reversing unit. So, we must provide a DCC-compliant replacement sound card of full DCC decoder with sound since the radio-controlled receiver boards “speak” DCC in most cases. Removal of the original sound electronics is a shame because it may have some unique/interesting audio we’d like to reuse. If I ever figure out how to reuse the sound from these original sound units, that will, of course, be another blog. My initial attempts to obtain legacy (remember these cards are sometimes over fifteen years old) circuit interface information from OEM sound card manufacturers such as QSI Industries have not been fruitful, even though they were friendly.
All of the 3-rail O scale steam locomotives I have converted to dead-rail had the following aspects of conversion that I discuss in the next three sections: center pickup removal, lighting modifications, and various electrical modifications. Three-rail locomotives are somewhat more challenging than 2-rail to convert because of the unique aspects of power pickup using the third, center rail.
Center Pickup Removal
Removal of the center pickups involves both the rollers themselves and the electrical connections to them. I remove the locomotive pickup rollers because we will usually operate the locomotive on two rails, even though they are unpowered. I suppose you could leave the rollers in place, but this would restrict dead-rail operation to dead 3-rail track. In summary, I think removing the rollers gives you more operating flexibility for dead-rail operation.
See the Figure below for an example of how to remove the undercarriage baseplate so that you can remove the rollers.
Unfortunately, the undercarriage baseplate requires removal to get at the center pickup roller mounting screw. This plate is usually held in place by six to eight retention screws, but even when you remove them, you have several issues:
Often you cannot remove the plate without catching the brake shoes on the drivers. You can solve this problem by removing the brake shoes from one side and sliding the base plate sideways to free to brake shoes on the other side. The wiring underneath the plate connecting to the pickup rollers does not have sufficient slack to allow lifting the cover. You have two options: carefully slip a wire cutting tool in the narrow space between the freed baseplate and the rest of the chassis, or remove the entire wheel chassis from the boiler section and cut the wires from above. See the Figure below. You still need to remove the baseplate to unscrew the center pickup rollers because you cannot get to them even with the wheel chassis separated from the boiler section.
Once you free the baseplate from the rest of the chassis, then it’s a snap to unscrew the roller from the baseplate and to cut/remove any connecting wiring. Usually, I also remove the insulator pad screwed into the baseplate.
Once all of this is done, then, of course, you remount the baseplate and any temporarily-removed brake shoes.
Note: Care is required to remove and replace the baseplate. The spring-loaded driver bearings are held in place by the baseplate, imparting significant spring force on the baseplate, which will bend the baseplate unless you uniformly ease in and out the retaining screws. Slight bending is OK but significant, local kinks are bad. Also, these bearings can easily pop out of place, so inspection is required to ensure the bearings are properly seated before tightening down the baseplate.
Steam locomotive lighting includes some or all of the following:
We’ll discuss each of these in turn
The headlamp is special because we usually want to control its on/off automatically as the locomotive changes direction and possibly according to “Rule 17” which dims the headlamp and tail lamp according to whether the locomotive is stationary (dim) or moving (full brightness).
In my experience with Samhongsa locomotives (Sunset 3rd Rail and Williams), the headlamp is powered by one of two means:
A separate, small rectifying board. It is powered by AC from the center rail and AC from the outside rails and turns on/off power to the headlamp as the locomotive moves forward/backward. This technique is typical of older Williams locomotives.
An output on the Constant Voltage Unit. In this case, you cut the power from the CVU to the headlamp, and you supply power to the headlamp with a two-wire connector, as described in the previous case. Of course, you should directly trace the wires to the headlamp before you cut any wires. This arrangement is typical of Sunset 3rd Rail locomotives. See the Figure below. When I first started these conversions, I was super-conservative and electrically isolated the CVU from the chassis, and I made a direct, wired connection to the Battery- (ground), as shown in the Figure below. But, using chassis ground, which will be electrically connected to the tender’s Battery- (ground) through the loco to tender plug has worked out OK.
Marker lights are almost always LED’s whose power is supplied by the Constant Voltage Unit. No modification of the wiring from the CVU to the marker light LEDs is necessary since once you supply power to the CVU, then it will in turn properly supply the marker light LEDs.
As with the marker lights, once you supply power to the CVU, then the CVU is designed to supply the proper power to the smoke units. A switch is always mounted on either the locomotive or the tender to turn on/off the smoke unit. No smoke wiring modifications are required.
All of the smoke units controlled by CVU’s in my experience are Seuthe smoke units, typically requiring 6V DC. They have the disadvantage that they do not “chuff” in coordination with steam locomotives’ piston action. Replacement of these venerable, but unrealistic smoke units with smoke units that contain a “fan” that propels the smoke in synchronization with the sound chuffs from Lionel, ESU, or MTH is a big topic that will be covered in another blog.
The smoke unit pictured below is very similar to the Lionel 610-8057-200 smoke unit pictured above. It was retro-fitted with a 100K thermistor to emulate the ESU smoke unit inputs for a LokSound L V4.0 decoder.
A final note of caution on smoke units: When using smoke units with metal cases, it’s crucial to ensure that the heater element (resistor), fan motor, and thermistor (if there is one) are completely electrically isolated from the metal casing that will be in firm contact with locomotive ground.You should verify this with an ohmmeter. If you don’t check each lead to verify there is no short to the smoke unit case, you will be sorry. I have forgotten twice (I learn slowly sometimes) to check for electrical isolation of these components from the smoke unit case, and I poured amps from a battery in the tender to the locomotive along a direct path from Battery + to Battery – (ground), melting lots of wiring along the way. This error will cost you hours of work and possibly dozens to hundreds of dollars in damaged electronics.
Original Equipment Manufacturers (OEM’s) often made a point of ensuring good ground contact to some of the smoke unit components – we don’t want this. We want the decoder (or the RF receiver if its handling smoke unit control) to handle how these components are electrically-routed to ground! Yes, these components all need power which we frequently supply from a common source, but it’s the route to ground that we want to carefully control.
As a side note, pay careful attention to the voltage requirements of the smoke unit components. Different voltages almost always supply the heating element and motor! I have never seen a smoke unit motor that didn’t require 5 Volts. I have inadvertently killed one of these cute little motors by accidentally supplying it with 14.8V.
The heating element’s voltage depends very much on its resistance (they vary from 6 ohms to 28 ohms) and interaction with the electronics that control it, such as a DCC decoder or an Airwire RF receiver such as the G3. You need to carefully understand the specs of the heating element and the device that will control it. Spend some time reading. As a general rule, you tend to stay out of trouble with higher resistance heating elements because for a fixed supply voltage, the power produced by the heating element is inversely proportional to the resistance (remember: Power = (V*V)/R, where power is in Watts, V is in Volts, and R is in Ohms).
Even if you are within the proper voltage supply range for a smoke unit, you can still burn them up under certain circumstances. Pay heed to the dark warnings that you should always run your smoke unit loaded with the proper amount of smoke fluid. As the fluid evaporates, it cools the heating element – no fluid and the heating element and the specialized batting that wicks the smoke fluid into contact with the heating element will get hotter. Often, it’s the wick that gets scorched with too high temperatures or no smoke fluid, and this scorching damages the wicking action.
That’s why some smoke unit manufacturers, such as ESU, use thermistors to measure the heating element’s temperature and send this information to the decoder so that it, in turn, can adjust the voltage to the heating element to prevent burn-up. So far as I know, only ESU DCC decoders have thermistor inputs for this smoke unit feedback control. I have reverse-engineered an ESU smoke unit and found that it uses a 100K thermistor that can be easily purchased and retro-fitted into other smoke units if you intend to use the smoke unit with ESU decoders. High-melting point solder must be used when adding a thermistor. Lacking that decoder feedback control of the smoke unit’s heater, I have devised a compact temperature feedback control, but that’s for another blog…
Constant Voltage Unit
We have already discussed the Constant Voltage Unit (CVU) a bit under the section dealing with headlamp modifications. Some locomotives have a Constant Voltage Unit (CVU) that converts AC power from the outside rails/chassis (ground) via the locomotive wheels and center-rail AC via the center pickup shoes, respectively, to a constant voltage for components such as smoke units, LED marker lights, and cabin lights. The CVU usually consists of a rectifier to convert AC to DC, a capacitor to “smooth” the DC, and a voltage regulator to maintain the output DC at a constant voltage, frequently six volts as required for Seuthe smoke units used by Samhongsa-manufactured locomotives (Sunset 3rd Rail and Williams locomotives).
I have encountered three types of CVU’s:
MTH Proto-Sound 2/3 versions that power maker light LED’s and incandescent cabin lights (see my blog on dead-rail conversion of a Proto-Sound 3.0 locomotive).
Sunset 3rd Rail CVU’s that are usually mounted at the front of the boiler and power Seuthe smoke units and marker light LED’s.
Williams CVU’s that are similar to Sunset 3rd Rail CVU’s, but do not control the headlamp, and instead use a separate Headlamp Direction Board.