
Bill of Materials
- Raspberry Pi4 model B (Minimum 4GB RAM).
- 32GB MicroSD Card (e.g. SanDisk MicroSD Card [Class 10 A1]).
- SK Pang PiCAN3 CAN-Bus Board for Pi 4 with 3A SMPS + RTC (incl. Fixing Screws) [docs]
- SK Pang Metal Case for PiCAN2, PiCAN3 and PiCAN FD for Raspberry Pi 4.
- SK Pang DB9 Female to OBDII Male Flat Cable [CiA-STD].

Recommended :
- Official Raspberry Pi 4 Power Supply (5.1V 3A)
- Portable power bank with USB-C (5.1V 3A)
- Mini HDMI Plug to Standard HDMI Jack Adapter
- Rii Miniature Wireless USB Keyboard with Touchpad
- A pair of D-sub 9 pin 120 Ohm CAN Bus termination adapters
for building a test CAN bus.

Correct Board Jumper Connections

Connection Cable (ODBD2 connector to 9pin D type [CiA std.] connector.

[ Cable wiring according to CiA (CAN in Automation) standard. ]

Board Details
The SK Pang PiCAN3 CAN-Bus Board for Pi 4 interface provides a simple and reliable way of connecting a Raspberry Pi to a vehicle’s Controller Area Network (CAN) bus. Once installed, the hardware is recognised by Linux as a standard SocketCAN network interface, typically named can0. Rather than using proprietary drivers or APIs, applications communicate with the CAN bus using the same Berkeley socket programming model employed for conventional networking, making development straightforward and highly portable.
For development and diagnostics, the Linux can-utils package provides an invaluable set of command-line tools. Utilities such as candump capture and display live CAN traffic, cansniffer highlights changing signals in real time, cansend transmits individual CAN frames for testing, while canplayer can replay previously recorded CAN logs to reproduce vehicle behaviour without requiring access to the original vehicle. Additional tools allow engineers to measure bus utilisation, configure CAN gateways and work with higher-level protocols including ISO-TP.
For vehicle diagnostics, SocketCAN also supports ISO-TP transport, enabling applications to communicate with Electronic Control Units using standard OBD-II services. This allows software running on the Raspberry Pi to request Mode 01 live engine data, retrieve Diagnostic Trouble Codes (DTCs), and read vehicle identification information such as the VIN. Combined with Node.js, Python or C/C++ applications, PiCAN, SocketCAN and can-utils provide a powerful, low-cost platform for vehicle monitoring, diagnostics and the development of innovative connected vehicle applications.

