Recently, I needed to reprogram a Micron MR603 receiver so it could be used to trigger all the sound effects on a Micron Mini Sound module (MSND01). As this module uses the same firmware as MyLocoSound modules, this reprogramming would also be appropriate for these.The sound module has seven functions triggered by inputs on seven pads (or screw terminals):
- F1 - Whistle
- F2 - Bell
- F3 - "All aboard" (or guard's whistle)
- F4 - Safety valve
- F5 - Brake pump
- F6 - Injector / Coal shovelling
- F7 - Chuff cam
- S1 A - sends Channel 3 high
- S1 B - sends Channel 3 low
- S2 - sends Channel 4 low
- S3 C - sends Channel 7 high
- S4 D - sends Channel 7 low
- Bind button - sends Channel 5 low
.... thus allowing all six of the additional sounds on the Micron or MyLocoSound modules to be triggered.
The Micron MR603 has ten output pads which, as delivered, provide the following outputs:
- P1 - Front light / LED2
- P2 - Rear light
- P3 - 0v - 3.3v when Channel 3 is low
- P4 - 0v - 3.3v when Channel 3 is high
- P5 - 0v - 3.3v when Channel 5 is low
- P6 - 3.3v - 0v when Channel 5 is low
- A - Front light
- B - Rear light
- C - 0v - 3.3v when Channel 5 is low
- D - 0v - Toggle 3.3v/0v when Channel 5 is low
The Micron Mini sound card inputs (and the MyLocoSound inputs) are trigged when they are connected to 0v and so, to make use of all the features, I needed to change some of the outputs from the pads to give 0v when the channels used by the buttons and switches on the Tx22X went high or low.
So, I decided to reprogram the receiver's output pads as follows:
- P1 - Unchanged (i.e. Front light)
- P2 - Unchanged (i.e. Rear light - not used)
- P3 - 0v when Channel 3 is low (i.e. when S1 A is clicked on the Tx)
- P4 - 0v when Channel 3 is high (i.e. when S1 B is clicked on the Tx)
- P5 - 0v when Channel 4 is low (i.e. when S2 on the Tx is pressed)
- P6 - Unchanged (i.e. 0v when Channel 5 is low (i.e. the bind button is pressed on the Tx))
- A - Unchanged (i.e. Front light - not used)
- B - Unchanged (i.e. Rear light - not used)
- C - 0v when Channel 7 is low (i.e. when S3 C is clicked on the Tx)
- D - 0v when Channel 7 is high (i.e. when S3 D is clicked on the Tx)
Working out the reprogramming code sequence
To determine the code needed to make these changes, the programming chart for the MR603 receiver on the Micron website was consulted.
This is probably the part of the process which most people find confusing, so I will try to describe how it works as clearly as I can.
Let's take the changes needed for P3 as an example. The pad needs to be reprogrammed so that it provides a 0v output when the receiver detects that Channel 3 has gone low.
So, working our way across the section of the table shown above:
- The first value we need to note down is 3 which tells the receiver we want to reprogram an on/off feature
- Moving to the next column, we need to tell the receiver we want to reprogram pad 3. So 3 is our next value to be noted.
- Moving to the third column, we want the output from the pad to be momentary - i.e. we only want the output to happen while the button or switch on the transmitters is being pressed or clicked. As soon as the button is released the output from the pad will revert to whatever it was doing when the receiver was switched on. So, our next value is 1.
- The fourth column, specifies the Channel we will be using. In this case it is Channel 3 and so 3 is the next value to be noted.
- The final column specifies what sort of output we want dependent on the state of the selected Channel. We want the output to start high (on) but switch to low (off) when the Channel goes low. So, we want this value to be 4 (i.e. When Channel 3 goes low, turn off the pad (i.e. it has 0v output))
So, the reprogramming code we need for this change is - 3, 3, 1, 3, 4
Let's skip to the last output in our list, Pad D. This needs to provide a 0v output when Channel 7 goes high.
- Again, our first value is 3, indicating we want to reprogram an on/off setting
- This time we want to reprogram Pad D - so we note down our next value as 10
- Again, we want the output to be momentary, and so our third value is 1
- We are using Channel 7, so our next value will be 7
- And finally, as we want a 0v output when Channel 7 goes high, the value we need is 6
Putting the receiver into programming mode
To actually make these changes, we firstly need to make sure the MR603 receiver has been bound to a transmitter which has a reversing switch (i.e. which can give a high and low output on Channel 3). In the Micron range, this would include:
- Either of the Micron Tx20v2 transmitters
- The Micron Tx21v2
- Any of the Micron Tx22 transmitters
- Either of the Micron Tx24 transmitters
To put the receiver into reprogramming mode, the transmitter and receiver must be switched on. After a few seconds, the morse code for SOS (dot, dot, dot, dash, dash, dash, dot, dot, dot) has to be tapped out on the bind button. The dots must be less than a second in duration and the dashes more than a second but less than five seconds. The pauses between dots and dashes must be less than 5 seconds.
When the receiver has entered programming mode, its LED will flash once every second (referred to as 1-flash)
Reprogramming
We can now start the reprogramming process.
Taking our first set of values needed to reprogram Pad 3 (i.e. 3, 3, 1, 3, 4), we need to change that initial 1-flash to a 3-flash (i.e. three one second flashes, followed by a pause). To increment the number of flashes, the reversing switch on the transmitter need to be moved to the "reverse" or "down" position and then returned to the mid-position. Clicking it once will increase the flash-count by one. Clicking it again will increase the flash-count by another one. Thus, the LED should now be flashing three times before a pause. This is the value we need for the first code in our list (i.e. telling the receiver that we want to reprogram an on/off setting). To tell the receiver to "accept" that value, we move the reversing switch to "forward" or "up".
The LED will now start flashing once per second. We need to it flash three times, so we increment the number of flashes twice (by clicking the reverse switch twice in the "reverse" or "down" direction). Once it has reached 3-flash (three flashes then pausing), we "accept" this by clicking the reverse switch "forward" or "up". This tells the receiver we want to reprogram Pad 3.
LED should now flash 1-flash again (because Pad 3 is already set for momentary on/off). So we just click the reverse switch forward or up to accept this value.
The LED should now start flashing 3-flash, as P3 is already set to respond to Channel 3. So click the reverse switch to forward or up to accept this.
Finally, the LED should now start flashing 1-flash as the default for P3 is to give a 3.3v output (i.e. go high) when Channel 3 goes low. We need to change this to start high and go low when Ch3 goes low, so we need to change this value to 4-flash by incrementing the flashes by three reverse or down clicks and then accepting the 4-flash by clicking forward or up.
If you accidentally increment the number of flashes by too many, then keep incrementing until the LED reverts to 1-flash, then increment to the desired value.
After entering the final value in our list, the LED should stop flashing and revert to solidly on.
To program another pad, we need to re-enter programming mode with the SOS morse code sequence on the bind button.
All that might sound a bit daunting but, once you've done it a couple of times, it is really easy - albeit slightly tedious.
Deltang or RC Trains transmitters



No comments:
Post a Comment