Compatibility
RM-U Rel 1.40D works on the following modules:
- RM-U P&P
- RM-U single channel
- RM-U dual channel
RM-C Rel 1.40D works on the following modules:
- RM-C/1+
- RM-C/2
Overview of changes
RM-x 1.40
- Dual Channel support on RM-C and RM-U.
- Read out RM-U/RM-C configuration
- Removal of Event Actions (RM-U)
RM-x 1.40A
- Bug fix for PM32 control and feedback
RM-x 1.40B
- Startup bug fix
Resolved: When starting up in single-channel mode, the RM-x finds connected modules, but then both yellow LEDs turn off and the RM-x fails to communicate with Dinamo modules.
RM-x 1.40C
- Bug fix for reading occupancy detectors
Resolved: When reading occupancy detectors in a dual-channel system, the wrong channel was read in some cases.
RM-x 1.40D
- Bug fix for reading back RM-x settings
Resolved: Not all RM-x parameters were being read back correctly.
Dual Channel
From rel 1.40 onwards, the RM-U and RM-C support two communication buses to connected Dinamo modules. This doubles the maximum system size without any loss in performance.
Channel naming
Channel 1 is the first channel, identical to the channel on a single system. Channel 0 is the second channel. On the RM-U, channel 0 is the default upstream serial channel that can optionally be reassigned as the second downstream channel. On the RM-C/1, channel 0 is not used because the RM-C does not support serial host communication.
Capacity
Each channel accepts 16 UCCI-s, TM-Hs or TM44 pairs, plus 8 PM32 modules plus 16 OC32 modules and/or OM32 modules.
RM-U
With the RM-U, both channels can be RS485, or channel-1 can be TTL and channel-0 RS485. In the latter case, special attention is required for the TM-H clock if TM-H/TM44 modules are present on both buses. The clock will then need to be externally converted from RS485 to TTL. This can be done on one of the TTL-TM-H modules via a modification. The RM-U supports the following possible combinations in Dual Channel mode:
- IC8 + IC10 (+IC7) = Ch1=TTL + Ch0=RS485 (+ RS232-out)
- C9 + IC10 (+IC7) = Ch1=RS485 + Ch0=RS485 (+ RS232-out)
Exclusion
Channel 0 can only be set to downstream if the module is actually an RM-C/2 or an RM-U with Dual-Channel BootROM. Otherwise, this option can be configured but will not be activated upon startup.
Feedback units
There are “only” 2048 feedback units per system. With 32 TM-H and/or UCCI modules, the total number of feedback units would be 32*128=4096. It is expected that more than 2048 feedback units will never be needed with the maximum system size of 256 blocks.
Rationalization
The TM44 provides 16 occupancy detectors per module, so the maximum of 64 modules results in 1024 feedback reports. It can be assumed that a TM-H normally has sufficient address space with 64 feedback units. UCCI-s might require 128 feedback units per module; however, given current customer usage, it is highly unlikely that anyone would build a system with more than 16 UCCIs. And should someone build a system with 16 UCCIs, it is highly recommended to make it a “dedicated system” (cars only, no mix of trains/cars). Currently, it is desirable to keep the addressing backward compatible so that someone upgrading a single system to a dual-bus system doesn’t have to overhaul the entire software database.
Implementation
TMxx modules on channel 1 and channel 0 use an overlapping address space for feedback units:
- Module #0 = feedback 0..127, base = 0
- Module #1 = feedback 128..255, base = 128
- …
- Module #15 = feedback 1920..2047, base = 1920
Feedback units on channel 1 are numbered as on a single-channel system. In a TMxx address slot occupied by a TM44 pair, the primary module uses address 0..15 and the secondary uses address 64..79 of the 128 available addresses from that slot. Feedback units on channel 0 are numbered as on channel 1 .xor.32. This means that within each address slot:
- feedback 0..31 is reported as base + 32..63
- feedback 32..63 is reported as base + 0..31
- feedback 64..95 is reported as base + 96..127
- feedback 96..127 is reported as base + 64..95
In practice, this means: If a slot is occupied by TM44s on both channel 1 and channel 0
- TM44.0-Ch1 uses feedback base + 0..15
- TM44.0-Ch0 uses feedback base + 32..47
- TM44.1-Ch1 uses feedback base + 64..79
- TM44.1-Ch0 uses feedback base + 96..111
If a slot is occupied by TM44s, TM-Hs and/or UCCIs (in any combination) on both channel 1 and channel 0, then each module can only use its feedback addresses 0..31 and 64..95.
- TMxx-Ch1 addresses feedback units 0..31 and 64..95 as base + 0..31 and 64..95
- TMxx-Ch0 addresses feedback units 0..31 and 64..95 as base + 32..63 and 96..127
If a TMxx slot is only occupied on channel 1, the full range of 128 feedback addresses can be used by that module. If a TMxx slot is only occupied on channel 0, the full range of 128 feedback addresses can be used by that module, but note that the addresses are swapped per group of 32.
Blocks
There are 256 blocks per system.
Blocks 0..127 are on modules 0..15 on channel 1 as before
Blocks 128..255 are on modules 0..15 on channel 0
Solenoid accessories
There is a maximum of 512 Solenoid Accessories (MDs) per system.
Each PM32 can address 32 or 64 MDs per module (global RM-x setting)
Single channel system:
Configured as 32 MDs per module, a maximum of 256 MDs can be addressed, since 8 PMs * 32 MDs = 256.
Configured as 64 MDs per module, the maximum number of MDs can be addressed (8 PMs * 64 MDs = 512).
Dual channel system
MDs 0..255 are assigned to channel 1.
MDs 256..511 are assigned to channel 0.
Configured as 32 MDs per module, the system addresses up to 8 PM32s per channel.
Configured as 64 MDs per module, the system addresses up to 4 PM32s per channel.
Direct subsystem addressing
The control software also has the option to address PM32s directly using “Subsystem Addressing”. In that case, 8 PM32 modules are addressable on both channels with up to 64 MDs per module.
OM32/OC32
The system addresses a maximum of 1024 OM32/OC32 “outputs” with 32 “outputs” per module. Addresses 0..511 are for 16 OM32/OC32 modules on channel 1. Addresses 512..1023 are for 16 OM32/OC32 modules on channel 0. OM32s and OC32s can also be addressed via Subsystem Addressing. For the OC32, this has the advantage that up to 128 addresses per module are available. To configure OC32s on channel 0 with OC32Config via Dinamo Tunneling, at least Release 3.10A is required. This version allows addressing modules 0..31 once Dinamo Tunneling is activated. Modules 0..15 are on channel 1, modules 16..31 are on channel 0.
Transparent Mode
There are now 3 possibilities for this:
- Transparent Mode Channel 1: This allows you to configure the OC32s on channel 1 using OC32Config via Transparent Mode.
- Transparent Mode Channel 0: This allows you to configure the OC32s on channel 0 using OC32Config via Transparent Mode.
- Bootloader Transparent Mode: This allows you to update modules behind the RM-x using the VPEB Bootloader. This works for both channel 1 and channel 0.
Transparent mode, regardless of the variant, can only be ended by an RM-x reboot.
Read Configuration
It is now also possible to read out the permanent and temporary configuration of the RM-x.
Event Actions
With the RM-U, there was the possibility to program rules into the system so that Dinamo could react more or less independently to events (mainly occupancy detector changes). The rules could also be called via “Virtual Outputs”. This function was used in the past to bypass limitations in control software. As far as is known, this feature has not been used by anyone in the last 5 years. The function is considered obsolete and partially hindered the development of Dual Channel. Therefore, the function has been removed from the RM-U.
For the record: This function was not ported to the RM-C when it was released. Consequently, the RM-C has never had this function.