Using EID and SID addressing modes
Almost all cars using CAN use SID addressing, however some cars do use EID addressing. The ISO-15765-4 specification Table 5 requires the functionally addressed EID messages to have an EID address of 18DB33F1. To set the Multiplex Engineering interface to use this EID address on outgoing messages you need to send a RS232 request message of:
(your destination address) A3 C6 CB 33 F1 00 00 00 00 00 00 00 00 (sum check)
The ISO-15765-4 specification Table 5 requires the CAN response message to have a EID address of 18DAF1xx To set the Multiplex Engineering interface to report this EID address for responses you need to configure the mask and filter. To do this you will need to send a RS232 request message of:
(your destination address) A7 FF E3 FF 00 C6 CA F1 00 00 00 00 00 (sum check)
After you are done with the EID operation you will want to set the Multiplex Engineering interface back to SID mode. To do this you will need to set the SID address to 7DF (per ISO-15765-4 specification Table 3). To do this you will need to send a RS232 request message of:
(your destination address) A2 FB E0 00 00 00 00 00 00 00 00 00 00 (sum check)
And for the mask and filter to receive any 7Ex message. To do this you will need to send a RS232 request message of:
(your destination address) A6 FC 00 FC 00 00 00 00 00 00 00 00 00 (sum check)
A complete example of switching from SID and EID including functions for converting addresses, masks and filters can be found in our example software in the Download section.
Auto Detect Vehicle Protocol
For many applications it is important to be able to automatically detect which communications protocol the vehicle you are connected to is using. In order to do this with the Multiplex Engineering Interface, we suggest sending a Mode 1 PID 0 request message over each protocol.
The order of the protocols is important. We suggest sending messages in the following order:
1. ISO 5 Baud Init (Command 01)
4. CAN with SID addressing
Wait 5 seconds
5. KWP Fast Init
6. CAN with EID addressing
Wait 5 seconds
7. KWP 5 Baud Init
8. Special cases
The first 5 second delay is included to allow enough time for an ECU using KWP to recover from receiving the ISO message. Since ISO and KWP use the same lines for communications we believe some KWP ECUs will be confused or put into an unknown state from being sent an ISO message. To make sure this doesn’t happen we add a delay between any ISO and KWP so the ECU could have enough time to reset to a normal state. This same delay also allows an ECU using CAN with EID addressing enough time to recover from receiving and CAN message using SID for the same reason. The second 5 second delay is included to allow an ECU using KWP 5 baud init enough time to recover from receiving a KWP Fast Init message. The 5 second delay is an arbitrary time. We have tested it on some vehicles with success. The delay could be change for your own applications.
An example of auto detect including the content of the messages we sent can be found in our example software found in the Downloads section. For more information on special cases mentioned above please contact one of our engineers at Multiplex Engineering