Last week I picked up a RailPro HO Locomotive Module with sound that I had hoped to be able to use for my two Porter locomotives that cover switching duty in R1 territory. Unfortunately, testing with my saddle tank version didn’t go very well. The module works fine, but the Porter has a little stutter in the drive when slowing to a stop. I haven’t been able to resolve this. When the loco stutters it must stall the motor which results in an over-current shut down of the LM. After several attempts I decided that for $20 in savings I’m better of using the G Scale module which handles lots more current.
So what to do with the HO module? Fortunately, RailPro offers an alternate program for the locomotive module, converting it to a programmable accessory module. My thoughts immediately turned to using it in a Bachmann Long Caboose to add remote lighting control and some sound effects. This is the intended victim…
I plan to wire it to allow individual control of all 4 LEDs - The two markers and the two table lights plus add a small speaker for sound effects. I may have to trim my plans back a bit as I discovered that the Accessory program only supports 8 user defined buttons. I could easily fill up 10 to 16!
The first task was to learn the accessory programming language. I’m and old BASIC hack, but it’s been a very long time since I wrote any code. My background did help learning the RailPro programming “language” which is an IF-THEN-ELSE conditional test and a DO TASK command with selectable functions. The editor leaves a lot to be desired, you can’t edit any code lines, only delete and replace, but once you get the hang of it it goes pretty smoothly. None of the code is typed, you click on items from a pick list. When you create function buttons they are given names like “Light” or “BigBird” with binary conditions of 0/1 meaning OFF and ON. For lighting the code needed to turn on a light is simple as the IF is assumed. To tun on the light connected to Output1 when the “Light” button is pressed is just one line of code…
DOTASK SetOutput Output1 Light
Playing sounds, or enabling lighting effects is just a little more complex. To play the Rooster sound effect when the BigBird button is pressed…
DOTASK PlaySound Rooster 95
In the above example, 95 is the volume percent top play the sound at.
The Bachmann caboose is already wired for an on-board DCC decoder, however it only supports on or off functions for the table lamps and the markers. In order to get all the capabilities I want, I’ll need to wire direct. Bachmann makes this pretty easy by documenting the wire colors and placing the circuitry in an easily accessible place, under a removable bench. Wiring will be the easy part.
Powering the RailPro module, and finding a spot to hide a small speaker will be the challenge. I have constant 12V in my track as a bus for building lights, and the caboose does have track pick-ups for DCC, but I don’t want to have to deal with a keep alive device to keep things running when power flickers. The module will run off 11 volts, so I might be able to hide a 3S LiIon pack in one of the cabinets. I don’t need the current 18650 cells can deliver, but I’m not aware of anything physically smaller that is readily available. LiPoly was a consideration for a few minutes, but I don’t want to risk deep discharge, so I’ll stick with a protected pack.
I may look at some of the tiny enclosed speakers the HO guys are using in locomotives. I’m not looking for awesome sound, but I’d like decent volume.
The functions on my wish list are:
Table Lamps on or off, individually selected if possible.
Table Lamps dim
Marker Lights on or off, individually selected.
Marker Lights flashing together (EOT effect)
Marker Lights alternate flashing (Ditch effect)
Crew chatter (I’ll need to record my own if I can find a source)
Sound effects (rail clack maybe, but this can’t be timed to speed)
Somewhere WAY down the road, the module would support a servo that could be rigged to real brakes!
I’ll post some progress pics as I go. I have the next 11 days off, so I should be able to get something going!