Using the CANmod with your CANedge

In this section we explain how you can use your CANmod and CANedge devices together.


Connect one CANmod to your CANedge

The simplest way to connect your CANmod to your CANedge is as follows:

  1. Load your CANedge Configuration File via the config editor

  2. In 2ND-PORT tab click the + button

  3. In the CAN CH2 tab, ensure the Mode is Restricted or Normal

  4. In the CAN CH2 tab set the Bit-rate configuration mode to Bit-rate (simple)

  5. Set the bit-rate to 1M/4M (CANmod.router) or 250K (other CANmod devices)[1]

  6. Connect the CANmod to the CANedge 2nd port[2]

  7. Ensure the CANmod CAN termination is enabled

Note

We recommend using our DB9-DB9/DB9 adapter to connect the CANedge to CANmod(s)[3]


Connect multiple CANmod devices to your CANedge

You can easily connect multiple CANmod devices to the CANedge[4].

  1. Follow the same steps as for a single CANmod device[5]

  2. Configure your CANmod devices to ensure they all output unique CAN IDs

  3. Update your CANmod DBC file to incorporate the configured CAN IDs


Record 2 x CAN plus CANmod data

In some cases you may wish to record data from two CAN buses, while also recording data from one (or more) CANmod devices.

  1. Configure the CANedge to record data from the two CAN buses as normal

  2. Configure the CANmod to use the same bit-rate as the CH1 CAN bus

  3. Configure the CANmod to use unique CAN IDs (i.e. no overlap vs the CH1 CAN bus)

  4. Disable termination on the CANmod (assuming the CH1 CAN bus is already terminated)

  5. Connect the CANmod to the CH1 CAN bus in parallel with the CANedge[6]

Note

You can also consider using a CANmod.router to enable 5 x CAN logging


Decode raw CAN frames from the CANmod

The CANmod devices come with DBC files in their Docs/Introduction sections or below. These can be loaded together with your other DBC files in the CANedge data processing tools.

CANmod.gps DBC | CANmod.temp DBC | CANmod.input DBC | CANmod.router DBC


CANmod.router

You can use a CANmod.router with a CANedge to enable the CANedge to record 5 x CAN - or daisy chain two CANmod.routers to log 9 x CAN. Below we outline tips for this combination:

Demux data via MF4 converter

The data on CAN2 will be ‘muxed’. To ‘demux’ the data to CAN11-14[7], you can use the MF4 to MF4 converter mdf2mdf. The demuxed file can be loaded and e.g. DBC decoded in other CANedge software/API tools.

Example 1: Demux data from CAN2 ID 0x10 onto CAN11-14:

mdf2mdf.exe --muxtp-can2=010#11:12:13:14 -i 00000001.MF4

Example 2: Demux data from CAN2 ID 0x10 onto CAN11-14 and CAN2 ID 0x12 onto CAN15-18:

mdf2mdf.exe --muxtp-can2=010#11:12:13:14 --muxtp-can2=012#15:16:17:18 -i 00000001.MF4

Demux data via MF4 decoder

Alternatively, you can use the MF4 decoders to demux and DBC decode your data in one step. To do this, add the CANmod.router DBC file along with your other DBC files as illustrated below[9].

If you use the CANmod.router in a Parquet data lake integration, the same principle applies in how the DBC is added in your input bucket next to the other DBC files.

demux-data-canmod-router-dbc-mf4-decoders

Use ‘filter builder’ tool

The CANmod config editor supports the use of the ‘filter builder’ tool to analyze data and set up filters on CAN S1-S4 quickly. The steps are similar to the CANedge filter builder, except that you first demux your MDF with the mdf2mdf and then convert the result into CSV via the mdf2csv. This CSV can then be loaded in the CANmod config editor ‘filter builder’ tool. In the tool you can specify which ‘demuxed’ CAN channels (e.g. CAN11-14) correspond to the CANmod.router CAN S1-S4.



Use CANmod.gps time to sync CANedge RTC

The CANedge real-time clock (RTC) can be synchronized via a CAN message. This minimizes drift and can be useful e.g. in ensuring that the RTCs of multiple CANedge units stay in sync.

The CANedge Docs contain a detailed example on how to configure this. For a ‘quick start’ you can use below partial config file, which you can load via the partial config loader tool. This config assumes you’re using the default CANmod.gps CAN IDs and syncs the CANedge RTC based on the CANmod.gps Epoch signal when TimeConfirmed is true[8].

FW 01.09, RTC CAN sync 'partial config'