Tuesday, March 18, 2025

How I use cheap diesel simulation soundcards with Micron MR603 receivers

 Having recently constructed a range of small diesel locomotives from 3D printed parts, I was on the look-out for a reasonably priced sound card for them, preferably with a small footprint.

On AliExpress, there are several small "diesel simulation" soundcards mainly designed for use in radio-controlled lorries. For example:

 

So, for just over a fiver (inc. postage), it seemed like too good a bargain to miss.

As can be seen from the photo, the card is designed to connect between the receiver and the ESC (Electronic Speed Controller) in a radio-controlled vehicle using JST connectors. This enables the sound card to vary the sound in relation to the speed of the loco.

The beauty of Deltang (Rx65 etc) and Micron (MR601 and MR603) radio receiver/controllers is they combine the receiver and the ESC into one small, neat package. The disadvantage is that the above soundcard cannot be connected directly. Fortunately, Andy Rutter, the designer and constructor of Micron RC equipment, has anticipated this and can provide his receivers with one or more of the outputs equipped with a servo signal relative to the voltage output of the receiver's built-in ESC. You can specify this when ordering one of his receiver/controllers.

Alternatively, it is possible to re-program a Deltang or Micron receiver/controller to output this signal yourself. Here is how I reprogrammed a Micron MR603b receiver. The same process is used for the earlier MR603a and the later MR603c. However, if you are using an updated version (since MR603c), it is advisable to check the Micron website to find out id any changed have been made.

 

 1. Identify the pad you want to use

The first job was to decide which pad I wanted to reprogram to output the servo signal needed by the soundcard. Any of them could be used but opted for P3 as it looked reasonably easy to solder a lead on to. Any pad can be re-programmed so, if you want to use P3 for something else, choose a different pad. Pads 5 and 6 are trickier to attach wires to as they are designed for the connection of a JST socket. You can choose to have a JST socket soldered on when you order the receiver - this would save you having to do some soldering on to the receiver yourself.




2. Find the code needed for giving a servo output

Next, I needed to find the coding required to reprogram this pad by checking the programming table for the MR603.


 Interpreting this for the first time can be a bit tricky, but once you've done it a few times it becomes common-sense.

As (hopefully) you can see, the code we need is:

2, 3, 1, 1, 1

...... because

 2 = Table 2 (for servo configuration)

 3 = Pad 3

 1 = Normal servo (the default at the time of writing)

 1 = Radio control channel (Channel 1 controls the speed of the motor)

 1 = Normal speed (to map the servo signal directly to the speed of the motor from Channel 1)

 

3. Putting the receiver into programming mode.

 BTW, when programming a receiver, I usually connect it to a 6v or 9v battery pack, using electrical hook clips ...


... as they can easily be connected to the power pads on the receiver.

 

Firstly, I made sure the receiver was bound to a Deltang Tx20 transmitter - or a Micron Tx20 would also do the job. According to the manual for the MR603, there are three methods of getting the receiver into programming mode:

  1. Use the P1/P2 power-on jumper to select option 5 (5-flash) to enter programming mode
  2.  Switch the transmitter on and hold channel 2 and channel 4 controls at high or low extremes and then switch the receiver on; these are the F1 and F2 buttons on a Tx20v2 and the Selecta switch and S2 button on a Tx22X; the receiver LED will flash rapidly shortly after a signal is received from the transmitter, centre one or both channel 2 & 4 controls (e.g. release the buttons on Tx20v2 or the S2 button on Tx22X. Note: the receiver always goes through an initialisation sequence after power is applied, so you must hold the ch2/ch4 control positions until a signal is received and the LED flashes rapidly.
  3. Switch the transmitter and receiver on (they must be bound), wait 5 seconds without touching any controls and then tap out morse SOS (... --- ...) on the transmitter bind button (or toggle the gear switch high to low for a stick transmitter)
    • dots (…) will be a quick press of the button and must be less than 1 second in duration
    • dashes (---) must be greater than 1 second and shorter than 5 seconds – 2 seconds is a reliable time
    • the time between each dot or dash must be less than 5 seconds

 I used the third method, tapping out SOS with the bind button, as this seemed like the easiest. It's also completely different to how Deltang receivers were put into programming mode, and so I wanted to give it a try.

When the receiver is in programming mode, its LED should start flashing once every second or so (known as 1-flash). If it doesn't work the first time, try putting the receiver into programming mode again.

 

4. Reprogramming the receiver

 We are now ready to reprogram the receiver by using the code we extracted from the programming table.

This is achieved by using the Direction switch on the transmitter. 

  • Moving the Direction switch to the Reverse position, increments the flashing value by one (ie changes 1-flash to 2-flash, or 2-flash to 3-flash, etc.) 
  • Moving the Direction switch to the Forward position tells the receiver to accept a value for that particular setting and move on to the next setting

So, our 1-flash, indicates the receiver is initially set to receive values for table 1. But the servo settings are in table 2, so we need to reset the 1-flash to 2-flash. To increase the flash from one to two, we flick the direction switch on the transmitter to the Reverse position. When the direction switch is released or returned to the mid-point, we should now see the flashing increased to two flashes, pause, two flashes .... etc (ie 2-flash)

NOTE: If it accidentally goes to 3-flash, carry on incrementing the flashing with the reverse switch until it reaches 7-flash. Incrementing it again should recycle the flashing back to 1-flash. You can't go back to 1-flash by flicking the direction switch to the Forward position!

Once you have changed it to 2-flash, click the direction switch on the transmitter to the Forward position. This tells the receiver to accept that value, store it, and get ready to receive the next value in our code list. 

The next value in the list is 3, indicating we want to reprogram the output from Pad 3. So, we now need to keep incrementing the flashes using Reverse on the Direction switch. Again, if the flashes go beyond 3-flash, we can cycle round until we reach 3-flash again. 

As before, when we see 3-flash, we click Forward on the Direction switch to show we want to accept this value.

We now keep repeating the above process so we have 1-flash, 1-flash and 1-flash for each of the next three settings.

The number of flashes for each setting will depend on how the receiver had been set up when you bought it. Some, but not all, will have a default value of 1-flash. However, if they do not, you will need to cycle round the flashes until you once more reach 1-flash.

When you have completed the full sequence of programming the values, the final click on Forward on the Direction switch will make the received LED show a continuous, non-flashing light. If you lose track or want to check the values, switch off the receiver and go back to the start of the programming process.

 

6. Wiring everything up

 of course, the receiver could be programmed whilst it is already wired-up, but I tend to do the re-programming before burying the receiver inside the loco.

Some of my smaller diesel locos use only 2S battery packs, which give 7.4v. As the diesel soundcards require between 5v and 8.4v, a 2S battery pack is OK. The card can be wired into my usual loco circuitry, with a connection from P3 on the receiver to either of the signal wires (usually white) on the soundcard.

However, most of my locos are powered by 3S li-ion battery packs using either 14500 (AA sized) or 18650 cells. These provide, nominally, 11.1v and so the supply to the soundcard needs to be reduced. The easiest and most cost-effective way of doing that these days is via a step-down buck converter - available from eBay or AliExpress.

For example:


 At less than £1GBP per unit, they are a lot cheaper than trying to make your own. Their advantage is they are adjustable, turning an input of 4.75 - 23v into an adjustable output of 1 - 17v. Using a digital multi-meter, I adjusted the trimpot to give an output of 5.5v and wired this into my normal loco circuit.

The output from P3 of the Micron MR603 receiver is connected to any of the signal leads (usually white but sometimes orange) on the soundcard.

The diesel engine sound should now vary in pitch and tone in relation to the speed of the loco.


 A few years ago, I produced a video showing how Deltang receivers could be reprogrammed. The technique is very similar to that used by Micron receivers. If you need further clarification on the programming process, this video might help.

If you need any further information or help, post a comment below, and I will get back to you.


No comments: