
Those of you that have a higher spec LEAF knows how annoying it is to press OK every time you want to use the radio/nav system after starting the vehicle. Due to a recent discovery by one of my Patrons (kudos to Jonas Andersson!), my interest in the quite undocumented AV-CAN grew. Since my own car is a base model LEAF, and I already installed an Android headunit, I couldn't experiment directly with this. Thankfully one of my friends own a LEAF that has the higher spec navigation system, and we could experiment on it.
To bypass the nagscreen is quite easy. Just send some messages onto the AV-CAN (OBD2 pin 11 = H, pin 3 = L) roughly 9 seconds after the car is started. You can get it to go straight to FM, Nav or Status.
To get it to Status, send these 3x messages 100ms between each:
0x681 0x04 30 40 0d b1 ff ff ff
0x681 0x04 40 40 0d b1 ff ff ff
0x681 0x04 50 40 0d 31 ff ff ff
To get it to FM, send these 3x messages 100ms between each :
0x681 0x04 20 40 0d a3 ff ff ff
0x681 0x04 30 40 0d a3 ff ff ff
0x681 0x04 40 40 0d 23 ff ff ff
We then built a ESP32 based box with a MCP2551-IP CAN transceiver tacked onto it. We coded up a simple program that detects when CAN messages start to arrive, waits for X amount of seconds, and fires the desired selection onto the bus. The device is powered via OBD2 pin8, which is a switched 12V supply, so the device doesn't consume power when the car is off.
The finished product, tucked behind the OBD2 port

Here you can see it in action