I’m writing here hoping to get enough knowledge to fix the issue that I’m having with my Peugeot 208.
I have been experimenting with the CAN firmware for a while just using the CAN_P and CAN_L pins. I’ve changed the firmware to read the velocity and the RPMs and everything was working fine. Since I didn’t want the tracker to be requesting when the car was plugged off, I’ve coded a simple GPIO read to check if the pin was at high level. This pin gets high level with the ignition positive signal that is also present on the OBD-II port.
After hooking everything up with an OBD-II male port, now when I turn the ignition on I quickly receive an engine error on the front panel of my car. This error only gets out if I unplug the tracker and if I force a reset on the service of the car. I’ve no clue on what can be the issue… Does anyone knows what can be the cause? Is it possible that the tracker is requesting too soon without the car being ready to answer and that causes the error? Is it noised generated by the 3V3 voltage regulator? I’ve added an 120Ohm resistor to terminate the CAN bus but the issue is still there.
Changes that I made on the code can be seen here: GitHub.
The schematic is the following:
The OBD-II pinout is the following: