Link ECU CAN streams for use with PT Motorsport IO expanders.

The PT Motorsport CAN IO expanders were primarily designed for use with Haltech ECUs, and while they can be reprogrammed to output a CAN stream specifically for a link ECU, this involves some programming and CAN knowledge. If you’re still interested in this option, check out our GitHub repository.

Otherwise, if you just want to change a few setting on your Link ECU the following is a step-by-step guide on how to do so.

  • Product on sale
    CANbus IO Expander - Mini
    CANbus IO Expander – Mini
    $125.00
  • Product on sale
    CANbus IO Expander - Nano
    CANbus IO Expander – Nano
    $69.00

Due to the CAN implementation being slightly different between the G4+ ECUs and the G4X and G5 ECUs this article is split into two sections.

Link G4+ CAN Setup

Set the CAN mode to user defined with a bit rate of 1 Mbit/s.

For the CAN channels, set it to the following:

Channel 1: Receive User Stream 1

Channel 2: Receive User Stream 2

Channel 3: Receive User Stream 3

Each Channel also needs to have the correct CAN ID set, this needs to be as follows:

Stream 1

Can ID = 704

Stream 2

Can ID = 706

Stream 3

Can ID = 708

Once you have set this up you can import the Streams. Click across to the Streams tab, and select Stream 1 from the menu on the left.

Then click on load stream and load the following file (files must be extracted before use):

The Stream should look like this:

The Values for this may look strange, but that is due to the G4+ having a -1000 offset on the CAN AN Voltage input within the ECU.

Next, select Stream 2 from the menu on the left. Then click on load stream and load the following file:

The Stream should look like this:

Finally, select Stream 3 from the menu on the left. Then click on load stream and load the following file:

The Stream should look like this:

With this set up, the Link ECU will receive 4 AN volt inputs on Stream 1. The CAN Digital Inputs will be received through streams 2 and 3

The AN Voltage inputs only have a resolution of 0.1V due to limitations of the Link CAN setup on G4+ ECUs. The other limitation is that CAN AN Voltages cannot be assigned directly to inputs on the G4+, in order to assign an input to the CAN input you must change the CAN stream parameter to the required input. Once this is done, the scaling will need to be adjusted so that the incoming CAN stream gives the correct output for the input you are measuring. As this will differ for each input and sensor type we have not covered this in this article.

The Digital Inputs will be marked as ON when disconnected and OFF when connected to ground.

The CAN Digital Inputs can be used for Launch Control activation, Boost Map selection, you can also customise them to work with more ON/OFF ECU functions by using Virtual Aux functions.

Unfortunately due to Virtual Aux statuses not being able to be sent via CAN the DPOs on the IO Expanders are unable to be used with the G4+ ECUs.

Link G4X and G5 CAN Setup

The following has been tested on a G4X ECU.

Set the CAN mode to user defined with a bit rate of 1 Mbit/s.

For the CAN channels, set it to the following:

Channel 1: Receive User Stream 1

Channel 2: Receive User Stream 2

Channel 3: Receive User Stream 3

Channel 4: Transmit User Stream 4

Channel 5: Transmit User Stream 5

Each Channel also needs to have the correct CAN ID set, this needs to be as follows:

Stream 1

Can ID = 704

Stream 2

Can ID = 706

Stream 3

Can ID = 708

Stream 4

Can ID = 720

Transmit Rate = 50Hz

Stream 5

Can ID = 722

Transmit Rate = 50Hz

Once you have set this up you can import the Streams. Click across to the Streams tab, and select Stream 1 from the menu on the left.

Then click on load stream and load the following file:

The Stream should look like this:

Next, select Stream 2 from the menu on the left. Then click on load stream and load the following file:

The Stream should look like this:

Next, select Stream 3 from the menu on the left. Then click on load stream and load the following file:

The Stream should look like this:

Next, select Stream 4 from the menu on the left. Then click on load stream and load the following file:

The Stream should look like this:

Next, select Stream 5 from the menu on the left. Then click on load stream and load the following file:

The Stream should look like this:

With this set up, the Link ECU will receive 4 AN volt inputs on Stream 1. The CAN Digital Inputs will be received through streams 2 and 3. The CAN Aux Duties will be transmitted on streams 4 and 5.

The Digital Inputs will be marked as ON when disconnected and OFF when connected to ground.

With the CAN ANs set up you can assign Analog Inputs to their values. Once this is done ensure that the correct calibration table is being applied so that the CAN AN input is converted to the correct units and scaling.

The same can be done for CAN DIs, with Digital Inputs being assigned to their function. As above, ensure that you’re aware that Digital inputs will be Active when disconnected, and Inactive when connected to ground.

For the CAN Aux functions you can assign them to Auxiliary Outputs as required. With the above setup the CAN Aux functions will only work with a PWM signal from the Link. This limits the amount of ways the Link will let you use the outputs. If you wish to control a non-PWM output (for example, rad fans) then the following change should be made.

In the DPO stream, select the CAN Aux Duty parameter and change it to CAN Aux (Status), once this is done adjust the Divider scaling to 1. This will mean the Link outputs a 100% Duty signal when the CAN Aux status changes to on.

Thanks for reading!