Roco z21 with LGB "serial" system via Massoth eMotion L

Andrew_au

Registered
12 Nov 2021
27
1
48
Sydney, Australia
Country flag
LGB 28002 interface is functionally dual-edge-triggered. Connected to a standard on/off aux interface, it detects transitions from on to off (and vice versa).

Caveats:
  • Includes some sort of "glitch suppression". Rapid [off]-on-off (or [on]-off-on) transitions are not counted as a signal. In this cases, "rapid" is a couple of hundred milliseconds.
  • Counts transitions and detects a pause before acting on the signal.
  • Have not yet tested whether a rapid triple pulse ([off]-on-off-on) is treated as a single [off]-on or ignored.
LGB 55020/55021 and Massoth eMotion L both have modes that are (as far as I can tell) supposed to emulate this behaviour out pin F1/A1 based on DCC commands F1-F8.
  • 55020/55021 enable this with CV51=1
  • eMotion L enables this with CV49=[8+1]
However, I can't get it to work with either decoder, and I don't know if it's a failure of the decoder implementation or the 28002 interface. Pretending that I have serial mode handset by manually pulsing F1 (not too fast) works as expected, which implies the 28002 is at least partially working.



Aside: the Massoth implementation is a little odd.
  • Can enable "serial mode", which enables toggles of command F1 to drive commands F2-F8 (e.g. [off]-on-off or [on]-off-on => F2, [on]-off-on-off-on-off => F5).
    • This is useful if you have a serial mode only handset and want to let it drive multiple outputs bound to F2..F8 on a newer engine
  • Can enable "fast pulse" mode, which (according to the documentation) lets commands F1-F8 toggle A1 output an appropriate number of times.
    • This is useful if you have a parallel mode handset and want to drive a legacy LGB output that uses serial mode for command multiplexing (one pin, multiple commands).
  • Note that if you want a legacy serial handset to drive F1, you don't need to do anything special. The handset toggles F1, which toggles A1, and it all just works without the decoder needing to emulate anything.
However, enabling fast pulse mode on eMotion also requires enabling serial mode. As far as I can tell, both modes work simultaneously. So you are simultaneously mapping multiple F1 commands to F2..F8 (to support legacy serial handsets), and mapping F2..F8 to multiple pulses out A1 (to support legacy serial locomotive features). Which means that you're simultaneously supporting:
  • a legacy serial handset driving serial pin F1/A1 (legacy LGB interface) and converting those same signals into F2-F8 to drive some additional feature
  • a parallel handset driving serial pin F1/A1 (legacy LGB interface) and whatever additional features you added on F2-F8
In my opinion, it would be better if mapping F2-F8 as serial toggles of pin A1 were mutually exclusive with mapping serial F1 to standard F2-F8.

Note: it may be that this is actually what the eMotion decoder does. However:
  • The behaviour I see on my decoder is that enabling CV49=8 does not suppress CV49=1 behaviour.
  • The documentation (and practice) requires CV49=1 to enable CV49=8.
  • In other words, it does not seem possible to enable serial emulation out A1 without also enabling serial control from the handset.
(For comparison, this is not an issue with the 55020/55021, as there is only a single output. Compatibility mode (the default) passes F1 straight through and maps F2..F8 to pin F1. There's no need to map serial F1 from the handset to anything else.)
 

Andrew_au

Registered
12 Nov 2021
27
1
48
Sydney, Australia
Country flag
LGB, Massoth and Zimo all offer a LGB serial pulse compatibility mode.
  • LGB 55020/55021: set CV51=1
  • Massoth eMotion: set CV49 bits 0,3 [1+8]
  • Zimo: set CV112 bit 7 [128]
My understanding of all of these is that they translate F1..F8 into toggles of FO1 (function out 1, to use the Zimo naming), emulating serial mode to the sound controller from parallel mode commands.

So how does this mode actually work?

Actual serial mode is straightforward. The cab sends chains of F1 toggles to represent keys F1-F8. For example, "F1-on, F1-off, F1-on, pause" or "F1-off, F1-on, F1-off, pause" would trigger function 3.

But if we are turning F-keys into toggles of FO1, how does that interact with other F-keys? Especially since F1-F8 are modelled to the cab as "states" but processed out FO1 as events / actions.

For example, consider this sequence sent from the cab, with sufficient pauses in between:
  1. F1=on
  2. F2=on
  3. F1=off
  4. F2=off
  5. F1=on
  6. F3=on

What is the behaviour of FO1 under this sequence (assume it starts off)?
  • Does it simply toggle some number of times every time any F command is received?
  • What is the specified toggle period?
  • What happens if another F command is received while the first is still executing?
  • What happens if a redundant F command is received (e.g. F2=on when F2 is already 'on')?
  • Do the "states" of the various F command flags interact with each other? Are they even tracked as states?
    • Obviously, the state of FO1 needs to be tracked, since it toggles "on" and "off". But are the states of F1..F8 tracked?

I haven't found a specification of this behaviour anywhere, but maybe my Google-Fu is weak.
 

The Shed

Leuchtturm Garten Bahn, Snow due shortly!
8 Mar 2020
601
130
Darlington
Country
England
www.theshedrailway.co.uk
Post #14
CV 7 = 155, CV 8 = 123, CV 255 = 130
Firmware version 1.5 is dated from 02.07.08
Serial Pulse Mode was not introduced until Firmware version 2.4 dated 20.12.10


Post #18
CV 7=28 CV8=123 CV 106=192
Looking at the LGB 55021 interface, I found the serial / parallel mode setting.
On the 55021, CV 51=1 (default) enables a mode where F1-F8 trigger the "F1" output that many times.


Tested with both PIKO and Massoth systems, does exactly what it says on the tin.
LGB 55021
CV 51
= 9 F1 Key serial
10 F2
11 F3
12 F4
13 F5
14 F6
15 F7
= 16 F8 Key serial

55021 Test Rig.jpg
 

Andrew_au

Registered
12 Nov 2021
27
1
48
Sydney, Australia
Country flag
CV 7 = 155, CV 8 = 123, CV 255 = 130
Firmware version 1.5 is dated from 02.07.08
Serial Pulse Mode was not introduced until Firmware version 2.4 dated 20.12.10
Ok, that totally explains the Massoth not working. Is it possible to update the firmware?

CV 7=28 CV8=123 CV 106=192
Looking at the LGB 55021 interface, I found the serial / parallel mode setting.
On the 55021, CV 51=1 (default) enables a mode where F1-F8 trigger the "F1" output that many times.


Tested with both PIKO and Massoth systems, does exactly what it says on the tin.
LGB 55021
CV 51
= 9 F1 Key serial
10 F2
11 F3
12 F4
13 F5
14 F6
15 F7
= 16 F8 Key serial
Sorry, but I don't understand what you're getting at here. Setting CV51 to 9..16 causes the F1 output to be driven normally by one of F1 to F8. Have tested it, it works, but not what I'm wanting.

The mode I think I'm looking for is CV51=1, which claims to drive F1 out by F1. And by F2..F8. Wording is slightly different in 55020 vs 55021 manual but both call out that the output is driven by "button 1" and "buttons 2-8". And I haven't been able to get it working.

However, I obtained this 55021 by grabbing it off a 90200.1 (70255 digital starter kit diesel), so it's possible that this function isn't enabled on it.
 

The Shed

Leuchtturm Garten Bahn, Snow due shortly!
8 Mar 2020
601
130
Darlington
Country
England
www.theshedrailway.co.uk
Checked and rechecked the notes you referenced with a PIKO Navigator with Serial Pulse activated, It appears your equipment is unable to use Serial Pulse Mode.

As far as the Massoth L decoder goes with reference to upgrading,
a) would need to invest in a Massoth Programmer.
b) if the Firmware Upgrades are still in existence.