Site Information

 Loading... Please wait...

Blog

Know OBD2 Before You Start That Development Project

Posted by Wilfried Voss on

Teensy 4.0 OBDII CAN-Bus ECU Simulator Includes Teensy 4.0

We at Copperhill Technologies offer a variety of CAN (Controller Area Network) devices for developing automotive and industrial embedded systems. In that capacity, we receive frequent inquiries regarding OBD2 (Onboard Diagnostics). 

OBD2, or Onboard Diagnostics Second Generation, is a vehicle diagnosis system found in modern cars and trucks. The OBD2 system collects data from sensors and other monitoring devices, which are then examined by the vehicle's engine control unit (ECU) to determine whether any issues need to be addressed. Problems with the engine, gearbox, emissions system, and others, are among the most common faults that OBD2 can discover.
Source: https://www.autopi.io/blog/what-is-obd-2/

The inquiries we receive, unfortunately, also reflect some misunderstanding of OBD's purpose and functionality. To make it a point, OBD2 is a mere diagnostics system that allows you to monitor the vehicle's performance. It does not allow you to control the car stereo, windows, steering wheel, or brakes (there were multiple inquiries in that direction, ignoring the more than serious liability aspects). 

Of course, there are valid approaches to ODB2 development. Besides some unique ideas, most are about vehicle maintenance and fleet management, including telematics, vehicle performance, and predictive failure analysis. 

Furthermore, some entrepreneurs with great ideas miss the stringent hardware requirements to meet harsh environmental conditions, such as temperature and vibration. Your solution should work in Death Valley as well as Antarctica. Many of our customers use the Raspberry Pi with the PiCAN series of CAN Bus HATs for their OBD2 projects. This approach is a great starting point to prove the concept, but in the majority of cases, not recommended for mass production. Alternatively, if you deem your OBD2 project a fun hobby, you are on the right track. 

To make it a point, regardless if your OBD2 project is a mere hobby or a great business idea, you need to know OBD2. For example, OBD2 is not a mere protocol based on the CAN Bus. There are five different OBD2 protocols. They are: 

  • ISO 15765 (CAN bus): Mandatory in US cars since 2008 and is today used in the vast majority of cars 
  • ISO14230-4 (KWP2000): The Keyword Protocol 2000 was a common protocol for 2003+ cars in, e.g., Asia 
  • ISO9141-2: Used in EU, Chrysler & Asian cars in 2000-04 
  • SAE J1850 (VPW): Used mostly in older GM cars 
  • SAE J1850 (PWM): Used mostly in older Ford cars 

Source: https://www.csselectronics.com/pages/obd2-explained-simple-intro

However, since ISO 15765 (CAN Bus) has been mandatory for US cars since 2008, one can assume that OBD2 in the majority of cars in the US uses Controller Area Network. 

For more information on OBD2, see:


Teensy 4.0 OBDII CAN-Bus ECU Simulator Includes Teensy 4.0Teensy 4.0 OBDII CAN-Bus ECU Simulator Includes Teensy 4.0

This is a CAN-Bus OBDII ECU simulator using the Teensy 4.0 module (included). Useful for testing OBDII interface and writing diagnostic software. ECU PIDs parameters are adjustable via potentiometers.

This board requires a 12 VDC power supply. A 12 VDC adapter is included.

More Information...

Arduino-Compatible Microsoft Azure Certified IoT Development Kit with Visual Studio Code Support

This Microsoft Azure Certified IoT DevKit (IOT-AZ3166) is an all-in-one kit optimized for prototyping and developing Internet of Things (IoT) applications leveraging Microsoft Azure services. It supplies an Arduino-compatible board with multiple peripherals such as an OLED display, sensors, hardware debugging chip (ST-Link), and security chip. The project collection offers creative examples for learning and reference, plus [...]

Read More »


Miniature Embedded Cortex-M7 Module for IIot Applications Supports up to Three CAN FD Ports

TQ announced their TQMa117xL system-on-chip (SOC) module to develop space-saving and energy-efficient control systems. The board supports up to three CAN FD interfaces.The module uses the power of the NXP i.MX RT1170 MCU. It comes a compact size of 31 mm x 31 mm (1.2 " x 1.2") and supplies all CPU signals via a total [...]

Read More »


Fast-Boot Your Raspberry Pi 3 Linux In Under Two seconds

Raspberry Pi enthusiasts are looking for a way to fast boot a Raspberry Pi mini PC. They may be interested in a new project available via Github. The project describes the fast booting of a Raspberry Pi 32 Linux in under two seconds. Check out the video link below to demonstrate how quickly you [...]

Read More »


Computer On Module With NXP i.MX 8M Mini CPU Supports Two CAN FD Ports, FreeRTOS, Linux

F&S Elektronik Systeme extended their product line of Picocore modules, which integrate up to two CAN (FD) Bus interfaces.The Picocore MX8M module utilizes the NXP i.MX 8M Mini CPU with one, two, or four ARM Cortex-A53 cores operating at 1.8 GHz plus a Cortex-M4 processor for real-time processing at 400 MHz. The boards use an adapted [...]

Read More »


A Beginner's Guide to SAE J1939 Embedded Software Development

Introduction Welcome to my beginner's guide! By opening this page, you have entered the first and probably most crucial stage toward developing your SAE J1939 project: Reading. Over the years, I dealt with many newcomers to the J1939 technology, some of them motivated by great product ideas. Others were thrown into a project because they were [...]

Read More »


STM32 Programming - Developing with FreeRTOS, Using Assembly, C/C++

The STM32F103 Arm Microcontroller and Embedded Systems: Using Assembly and C The STM32F103 microcontroller from ST is one of the most widely used ARM microcontrollers, and the blue pill board utilizes the STM32F103 microcontroller.  It comes at a low price, and it is widely available around the world. This book uses the blue pill board to discuss [...]

Read More »


Dual-Mode Bluetooth 5 Wireless Module Compatible With Bluetooth Low Energy And Legacy Bluetooth Classic

Fujitsu Components America announced the release of its FWM7BTZ61 series of Bluetooth Ver. 5.0 (dual-mode) wireless radio modules compatible with Bluetooth Low Energy and legacy Bluetooth Classic BR/EDR, providing designers the adaptability to choose between the two operating modes in one module. The fully integrated FWM7BTZ61 series utilizes the Cypress Semiconductor CYW20819 SoC and features Bluetooth Low [...]

Read More »


ATX Industrial Motherboard With Server-Class Intel Xeon E Processor

Axiomtek, a manufacturer devoted to research, development, and manufacture of series of innovative and reliable industrial computer products of high efficiency, is pleased to announce the release of its IMB525R, a new server-grade ATX motherboard powered by the Intel® Xeon® E, 9th/8th generation Intel® Core™, Intel® Pentium® or Intel® Celeron® processors with the Intel® C246 chipset. The [...]

Read More »


NXP ARM Cortex‑M7 Computer-On-Module With Dual CAN Bus Interface

F&S Elektronik Systeme (Germany) announced its PicoCore RT1, a compact-size controller (35 mm x 40 mm) with two CAN Bus interfaces.The computer-on-module integrates the 600‑MHz i.MX RT1050 ARM Cortex‑M7 from NXP. For the internal working memory, an SDRAM is available. For the program memory, SPI-connectable flash memory is offered. Additionally, an external SD-card slot is provided. The [...]

Read More »