CSS ELECTRONICS - CANmod.router: 4 x CAN to 1 x CAN (or USB) Converter

SKU
CANmod.router: 4 x CAN to 1 x CAN (or USB) Converter
0,00 €

Details

PLUG & PLAY
Connect up to 4 x CAN to receive / transmit the data via 1 x CAN (or USB) - no configuration required
COMPACT
7 x 2 x 5 CM. 75G. 7 LEDs. Supply via DB9/USB. 5-26 V. Mounting flanges. USB for config/FW and streaming
PRO SPECS
4 x CAN FD. Basic galvanic isolation. Silent mode. Zero data loss. 1 ms precision. Error frame support.
MUX MODE
Transport 4 x CAN via 1 x CAN. Easily demux data. Optionally transport via CAN FD for max throughput
SEAMLESS
Fully supported by CANedge/CANmod software/API tools. As if directly interfacing the 4 x CAN buses
CONFIGURABLE
Configure filters, prescalers, transmit lists, CAN IDs, bit rates and more via JSON config and GUI


Why is the CANmod.router useful?

In many use cases you need to receive/transmit data from multiple CAN buses - but you only have one CAN interface available. This is a common challenge in data acquisition, display integrations, network extensions and more.

For example, the CANedge lets you log 2 x CAN - but what if you need to log e.g. 5 x CAN?

You might then consider the below:

  1. Join CAN buses: Not an option (different bit-rates, ID conflicts, busload, …)
  2. Change logger: Too expensive (most loggers with >2 x CAN cost thousands of EUR)
  3. Use 3 x CANedges: Costly/complex (3 x logs, imperfect cross-device time sync)

None of the above are optimal - but the CANmod.router now offers the ideal solution. Learn more below!

 

MUX MODE

Transport muxed CAN data through tunnels

In mux-mode, traffic from/to the secondary CAN buses is routed through the primary CAN bus via tunnels (CAN frames that transport the original data). Muxed data received by a user CAN node (e.g. CANedge) can be easily demuxed to its original form via software/API tools.



Interface four CAN buses with just one CAN bus (or USB)

Receive/transmit data from/to 4 x CAN buses via 1 x CAN bus (or USB) - e.g. for use by CAN loggers, ECUs or via USB streaming.

  • 4 x CAN (incl. CAN FD) with basic galvanic isolation
  • Power via DB9 (5-26 V and DB9 cables) or USB (5V)
  • Independently configure each secondary CAN interface
  • Optional silent mode and independently customizable bit rates
  • Advanced message filters and prescalers
  • Configure transmit lists - and/or control via primary CAN
  • Support for CAN error frame logging
  • Quickly connect 4 x CAN via DB25-to-4x-DB9 adapter cable
  • Daisy chain multiple modules for 8, 12, 16, ... CAN channels
 
 



Example: CANedge + CANmod.router = 5 x CAN bus data logger

The CANedge supports 2 x CAN. By adding a CANmod.router, you can now log 1 x CAN (CH1) + 4 x CAN (CH2) - or beyond.

  • Power the CANmod.router via the CANedge 2nd port 5V
  • Maximise 4 x CAN throughput via CAN FD routing (mux-mode)
  • Easily demux routed data via MF4 converter or Python API
  • Control transmission on the 4 x CAN via CANedge
  • Use daisy chaining to log 1 + 8 x CAN, 1 + 12 x CAN (or beyond)

Tip: Check out muxed/demuxed MF4 sample data below.

How to deploy a CANedge + CANmod.router?

We provide a step-by-step guide for this setup in the CANedge Intro - below we provide a brief recap:

  1. Connect the CANmod.router to the CANedge 2nd port
  2. Set the CANedge CAN CH2 bit-rate to 1M/4M
  3. Set the CANedge 2nd port 5V power supply to enabled
  4. Optionally set bit-rates and filters on the CANmod.router

The CANedge can now record 1 x CAN (via CH1) + 4 x CAN (via CH2). The regular CH1 data and 'muxed' CH2 data is stored by the CANedge in MDF log files (*.MF4).

To DBC decode and analyze the data, you need to first demux the CH2 data. This can be done via the CANedge MF4 converter 'mdf2mdf' - similar to how you 'decompress' compressed MDF files. For details, see below.

Note: If you daisy chain CANmod.routers the process is the same, except that you set unique IDs per device.

How does the software demuxing work?

Tip: See also our sample MF4 data above.

Let us assume you use a CANedge + CANmod.router to log 1 x CAN (via CH1) + 4 x CAN (via CH2) via mux-mode.

Structure of the muxed MF4 data

If you open the raw MF4 in asammdf, you will see the CAN CH1 data stored as normal - while CAN CH2 contains muxed data. The muxed data comprises CAN FD frames, with the original 4 x CAN-S IDs/data packaged in the payload.

How to demux the data

To work with the data we need to first demux it. The simplest way is to use the MF4 converter 'mdf2mdf'. This can convert raw MF4 files (or MFC/MFE/MFM) to 'finalized' MF4 files. It can be used to decompress, decrypt - and demux - log files. The tool can be used via drag & drop, the CLI and in scripts.

If you open the demuxed MF4 you now see the following:

  • CAN CH1 is unchanged
  • CAN CH2 is now empty
  • CAN CH3-CH6 contain the original 4 x CAN-S frames

This is identical to what you would record if the CANedge itself had more CAN channels, with the original CAN IDs and payloads of the 4 x CAN-S unpacked into CAN CH3-CH6.

Note: You can also use our Python API to demux MF4 files.

Support in other software/APIs

The demuxed MF4 files are fully supported in all our software/API tools, incl. the asammdf GUI, MF4 converters, MF4 decoders, MATLAB, Python, Vector tools, dashboards etc.

Special case: Other device on CH2

You may connect both a CANmod.router and e.g. a CANmod.temp to a CANedge CH2. Here, the demuxed MF4 will include the CANmod.temp data in CAN CH2.

Special case: 2 x CANmod.router

If you need to record 1 + 8 x CAN, you can daisy-chain two CANmod.routers on CH2. One must be configured to use a different CAN ID for the muxed data (e.g. 0x11).

During demuxing, you can specify how to map IDs - e.g. ID 0x10 to CH3-CH6 and ID 0x11 to CH10-CH13.

Use Cases

The CANmod.router can be installed standalone in any CAN bus system - including e.g. as an add-on for the CANedge. Further, it can be used as a powerful 4 x CAN FD to USB interface.

OEM CAN bus telematics with 5 x CAN channels

Need to collect data from 5 x CAN buses across your vehicle fleet?

As an automotive OEM, you may want to use the CANedge3 to collect CAN data and upload it via 3G/4G to your own AWS S3 bucket. But what if you need to log e.g. 5 x CAN per vehicle? Here you can simply add the CANmod.router to the CANedge 2nd port in mux-mode to log 1 + 4 x CAN. Using the DB25-to-4x-DB9 adapter, you can quickly connect the 4 x CAN using our standard DB9 adapters. When the MF4 log files are uploaded to your cloud, they can be automatically 'demuxed' and DBC decoded via Lambda functions for e.g. creation of Parquet data lakes and Grafana dashboards.

 

Development & diagnostics via USB

Need to stream data from/to 4 x CAN / CAN FD via USB?

In development & diagnostics it is often useful to be able to stream data from/to multiple CAN buses in parallel. This normally requires very large/expensive CAN-to-USB interfaces and expensive software tools. However, with the CANmod.router you can stream 4 x CAN (incl. CAN FD) via USB using the 100% free SavvyCAN GUI or Python API. The latter enables any type of custom integration - e.g. visualization in Grafana-MQTT dashboards. Simply power the CANmod.router via USB and connect it to your CAN buses to start streaming. You can of course connect multiple CANmod.routers via separate USB COM ports to stream e.g. 8 x CAN, 12 x CAN etc.


Unlimited CAN channel logging via daisy chaining

Need to log 1 + 8 x CAN, 1 + 12 x CAN or beyond?

By using a single CANedge + CANmod.router, you can easily record 5 x CAN in total. However, you can also go beyond this by daisy chaining 2, 3 or more CANmod.routers. You can add filters/prescalers on each secondary CAN interface to customize what IDs you record (at what frequency), ensuring your CANedge can record everything without frame loss - and that your log file size remains optimized.


Physical CAN bus extension from remote area

Need to transport CAN data over long distances?

In some use cases, you may want to interface with CAN buses that are far away. For example, you may want to interface with 3 x maritime vessel engines from a bridge (e.g. for integration with a display) - but the cable distance would be 40 meters. It is not recommended to extend existing CAN buses beyond a few meters. However, you can safely deploy one CANmod.router (mux-mode) in the engine room to record the 3 x CAN - and connect it via a 40 meter DB9-DB9 cable to another CANmod.router (mux-mode) at the bridge. The muxed data from the engine room is demuxed in real-time by the bridge device. As a result, you can now interface each engine room CAN bus via the bridge CANmod.router's DB25 connector - as if you had a direct connection. You can even convert the bit-rates of each engine CAN bus in the process or filter/prescale some of the data if preferred.