Unlock the full potential of your ELM327 based Bluetooth or WiFi OBD2 adapter with a replacement firmware. This upgrade delivers significant improvements over the standard firmware, enhancing performance and adding new functionalities.
This firmware is designed to provide:
- Faster and More Stable CAN Communication: Experience quicker and more reliable data transfer on CAN bus systems.
- Extended Protocol Support with K-Line: Gain compatibility with a wider range of vehicles, including those using K-Line protocols (covering all variations).
- VAG Protocol Integration: Now supports VAG specific protocols like KWP2000, KWP1281, and TP2.0, crucial for diagnosing and working with older Volkswagen Automotive Group vehicles (approximately up to model year 2012).
- Effortless Firmware Updates via Bootloader: A built-in bootstrap loader allows for firmware updates without needing to physically open the adapter.
- Deep OBD App Compatibility for Updates: Firmware updates are streamlined using the Deep OBD app, provided the replacement firmware is initially programmed.
- Optimized Power Consumption: Sleep mode implementation reduces power draw, extending battery life and minimizing drain during vehicle diagnostics.
- Custom ELM327 Firmware Flashing: Offers the flexibility to flash modified ELM327 firmware versions, catering to advanced users and specific needs.
- Two Firmware Options:
- Standard Bluetooth and WiFi Adapters: Operates at a baud rate of 38400.
- Modified Bluetooth Adapters (Recommended): When paired with a custom Bluetooth firmware, it achieves a higher baud rate of 115200 and allows customization of the Bluetooth PIN (up to 16 digits) and name (up to 31 characters).
Purchasing a Compatible OBD2 Bluetooth Adapter
To take advantage of this firmware update, ensure you acquire an ELM327 adapter built around the PIC18F25K80 microcontroller. When searching online marketplaces like Aliexpress, use the query PIC18F25K80 ELM327
. For optimal performance and compatibility, prioritize adapters equipped with a Bluetooth module based on the CSR BC417 chip. Adapters using the BK3231 chip are also supported. For initial firmware programming instructions, refer to the programming guide section.
Opting for a Pre-programmed OBD2 Adapter
For users seeking a ready-to-use solution, pre-programmed Bluetooth OBD2 adapters are available for purchase. Consider exploring options like the Bluetooth adapter on eBay or Deep OBD OBD-II Bluetooth adapters, particularly designed for BMW models such as E36, E38, E39, E46, E52, E53, E83, E85, and E86. These specialized adapters often feature a fixed pin 7+8 connection, essential for comprehensive diagnostics on these BMW models. Purchasing from these links may include a license for BMW coding functionalities within the Deep OBD app for newer F-series or later vehicles.
For full ECU access on BMW models E36 to E86, a connection between OBD pin 7 and 8 is necessary, either built-in or via an external pin 7-pin 8 adapter. For older BMWs with OBD I sockets in the engine bay, ensure pin 8 of the OBD II socket is correctly connected at the vehicle side, as detailed in the OBD1-OBD2.pdf
guide. Tip: Some Android car radios require the Bluetooth name “OBDII” for successful pairing. Tip: To bypass manual Bluetooth PIN entry on Android devices, utilize apps like Bluetooth Force Pin Pair to preconfigure the PIN. For BMW F-series models and newer, the ENET WiFi Adapter is recommended for optimal diagnostic and coding operations.
Performing a Factory Reset on Your OBD2 Adapter
Starting from firmware version 0.6, a factory reset function is implemented. This feature resets the Bluetooth PIN to “1234”, the Bluetooth name to “Deep OBD BMW”, and the operating mode to D-CAN. To initiate a factory reset, you’ll need to open the adapter casing and briefly connect the unused pad of resistor R26 to Ground (GND) during power-up. In scenarios of failed firmware updates, consult the firmware update failure section for recovery procedures.
Utilizing Your OBD2 Adapter with INPA, Tool32, or ISTA-D
This Bluetooth OBD2 adapter can serve as a wireless replacement for traditional OBD or ADS adapters when used with Windows PCs (Windows 10 or newer) and diagnostic software suites like INPA, Tool32, or ISTA-D. To establish a connection, follow these configuration steps within your diagnostic software:
Step-by-Step Guide to Programming ELM327 Adapter with Deep OBD Firmware
The initial programming of the PIC18F25K80 microcontroller necessitates a PICkit 3 programmer. Detailed instructions for this process are available in the flashing guide.
The firmware source code is located in the CanAdapterElm
subdirectory. Unless specified otherwise, the default LED configuration is: RX LED on PB6 and TX LED on BP7. Firmware subdirectories are categorized by Bluetooth chip type:
default
: For standard ELM327L adapters with any Bluetooth chip, operating at a 38400 baud rate.def115200
: For ELM327L adapters modified for a higher 115200 baud rate (e.g., using an external YC1021 with modified EEPROM).bc04
: Specifically for adapters with the BK3231 Bluetooth chip and bc04 firmware.hc04
: Designed for adapters using the BC417 Bluetooth chip and hc04, hc05, or hc06 firmware.esp8266
: For adapters equipped with the ESP8266 WiFi chip (RX LED on PB5, TX LED on BP7). Refer to the ESP8266 firmware replacement guide.yc1021
: For adapters with integrated YC1021 Bluetooth chips (RX LED on PB6, TX LED on BP4). See the YC1021 firmware replacement instructions.spp_uart
andspp_uart2
(RX LED on PB6, TX LED on BP4): Featuring OpenSource Bluetooth firmware for BC417 Bluetooth chip adapters, recommended for older Android car radios with Rockchip platforms.spp_uart.xpv
andspp_uart.xdv
: Firmware files for Bluetooth modules with the BC417 chipset.usbspi.dll
: A replacement library for BlueSuite and BlueLab, enabling programming of CSR BC03/BC04 Bluetooth chipsets via FT232R breakout boards. More details are in theReadMe.txt
file.
Two firmware file types are available: the complete firmware (CanAdapterElm.X.production.unified.hex
) and the update firmware (CanAdapterElm.X.production.hex
), which excludes the bootloader and is intended for updates via the Deep OBD app. The latest firmware version is always integrated into the Deep OBD app. Compiled firmware files can also be obtained from the latest binary release package.
Exploring ELM327 V2.3 Firmware Compatibility
An enhanced ELM327 V2.3 compatible firmware version is available. This firmware switches the adapter to a mode compatible with a wide array of ELM327 software applications. Flashing to this version can be performed wirelessly over Bluetooth using the Deep OBD app (currently only for Bluetooth adapters). Subsequently, you can flash back to the Deep OBD replacement firmware via Bluetooth. Binary files for both complete (ELM327V23.X.production.unified.hex
) and update (ELM327V23.X.production.hex
) versions are included in the latest binary release package.
Resolving Firmware Update Failures
In the event of a firmware update or ELM327 firmware switching failure, if all LEDs illuminate and the adapter enters bootloader mode, recovery is still possible. In this state, retry the update process through the adapter menu within the Deep OBD app after reconnecting the adapter and dismissing any error messages.