Skip to content

Springer-Electronics/OBD2C

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Designed using Kicad 8

Unlike harness box, OBD2-C doesn't use relay.

The purpose of it is to sniff CAN buses that are already present in OBD-2 port, similar to what white panda was doing in the past, but compatible with OBD-C, though often only diagnostic CAN is populated on OBD-2.

The device exposes three CAN buses out of OBD-C:

  • CAN0 (3, 11)
  • CAN1 is routed to the JST (pin 2,3) connector (can be connected .e.g to StepperServoCAN) and has optional 120ohm termination resistor (see jumpers). Alternatively, bus 1 can be rerouted using jumpers as a GMLAN (obd pin 1) as in white panda - but unlike white panda it uses single wire hack and is not tested
  • CAN2 (pins 12, 13)
  • CAN3 (pins 6, 14) - this one can be used e.g. as "ELM327" or vin reading in openpilot

OBD-2 connector pinout https://www.csselectronics.com/cdn/shop/files/obd2-connector-pinout-socket.svg

Some notes regarding openpilot bus names mapping to STM32 peripherals and harness - (the indexes are not always consistent): HARNESS_STATUS_NORMAL

openpilot STM32F4 Harness WhitePanda
sbu1 sbu2
sbu2 sbu1
bus 0 CAN1 CAN0 CAN1
bus 1 CAN2 CAN1 CAN2
bus 1(obd) CAN2 alt CAN3 GMLAN
bus 2 CAN3 CAN2 CAN3

HARNESS_STATUS_FLIPPED

openpilot STM32F4 Harness WhitePanda
sbu1 sbu1
sbu2 sbu2
bus 0 CAN3 CAN0 CAN1
bus 1 CAN2 alt CAN1 CAN2
bus 1(obd) CAN2 CAN3 GMLAN
bus 2 CAN1 CAN2 CAN3

+obd means set_obd_multiplexing(True) in openpilot aka panda.set_obd(True) in panda lib aka set_can_mode(CAN_MODE_OBD_CAN2) in panda firmware.

Confusing? Yes. Especially inside panda firmware.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published