MUX-TP (CANmod.router)

The MUX-TP is used by the CANmod.router to perform multiplexing of multiple physical bus channels. The MUX-TP serializes bus frames and transports the resulting (potentially long) payloads using the ISO-TP transport protocol.

Deserialization requires a configuration on how to map deserialized frames to (virtual) bus channels.

Note

See the CANmod.router project for more information on message multiplexing


Example

The following MUX-TP (ISO-TP) message segments are received on ID 0x10.

FF: First-Frame, CF: ConsecutiveFrame, DL: Data Length, SN: Sequence-Number

ID

Payload

Frame type

Info

0x10

101A0087F101311F

FF

DL: 26, Segment: 0087F101311F

0x10

21FFFFF201024987

CF

SN: 1, Segment: FFFFF201024987

0x10

22F30102037A1FFF

CF

SN: 2, Segment: F30102037A1FFF

0x10

23FFF301020304

CF

SN: 3, Segment: FFF301020304

The assembled payload becomes 0087F101311FFFFFF201024987F30102037A1FFFFFF301020304.

The payload is deserialized / unpackaged into the original bus frames (see the CANmod.router for more information).

Serialized payload parts

Channel

ID

Payload

0087F101

S1

0x7F1

0x01

311FFFFFF20102

S2

0x1FFFFFF2

0x0102

4987F3010203

S3

0x7F3

0x010203

7A1FFFFFF301020304

S4

0x1FFFFFF4

0x01020304

The channels S1 to S4 are now mapped to virtual channels (integers) using the MUX-TP configuration.