If you want to hook up an Arduino Due to your CAN-bus and use it with CanZE, you need the following things:
- an Arduino Due or Taijuino (of course!)
- a CAN tranceiver
- a Bluetooth tranceiver
- a SAE J1962 connector
The wiring scheme has to be done like this:I personnaly use a SN65HVD230 transceiver and a HC-06 Bluetooth module:
When starting to sniff the CAN-bus, I used a CanDIV shield hooked up to an Arduino Leonardo, but the chip on this shield as well as the Arduino Leonardo were both not fast enough to handle Zoe’s 1600 frames per second. But, the CanDIY shield had nicely mounted RJ45 connectors … and that’s the reason why I left it there, but disconnected the circuit.
The 10uF capacitor you see on the image make sure the Arduino Due is being reset properly on each power up. As a matter of fact I run into the problem that when power was applied, it did not start as expected. This is an old but still very effective hack to trigger a reset when power is being applied.
The actual firmware is here:
Please note, that catching free-frames works fine, but the request-response ISO-TP frame do not get always an answer and thus timeout quite often.