There is now a replacement firmware available for ELM327L based Bluetooth and WiFi adapters, that has the following advantages over the standard firmware:
It is required to buy adapters based on a PIC18F25K80 microcontroller.
Search for PIC18F25K80 ELM327
on Aliexpress. It’s best to buy it with a Bluetooth module based on a CSR BC417 chip. The ones with BK3231 chip are supported too.
For programming the firmware see: programming
You could buy the preprogrammed Bluetooth adapter also at EBAY.
There are also Deep OBD OBD-II bluetooth adapters for BMW vehicles types E36
, E38
, E39
, E46
, E52
, E53
, E83
, E85
, E86
with a fixed pin 7 + 8 connection available.
Adapters from these links include a license for the BMW coding function of one F series or higher vehicle.
Vehicles E36
, E38
, E39
, E46
, E52
, E53
, E83
, E85
and E86
additionally require a connection between OBD pin 7 and 8 (or a pin7-pin8 adapter) to access all ECUs.
For vehicles with OBD I socket in the engine bay additionally the pin 8 of the OBD II socket has to be connected at the vehicle side (OBD1-OBD2.pdf
)!
Hint: For some Android radio models the Bluetooth name OBDII
is required for pairing!
Hint: To prevent entering Bluetooth PIN manually on the android smartphone you could use the app Bluetooth Force Pin Pair and configure the PIN accordingly.
For BMW F-models use the ENET WiFi Adapter.
Beginning with firmware version 0.6 there is the possibility to perform a factory reset of the adapter. This resets the Bluetooth pin to 1234, the Bluetooth name to Deep OBD BMW and the mode to D-CAN.
To perform the factory reset you have to open the adapter and connect the unused pad of R26 with GND during power on.
If the firmware updated failed, use firmware update failure procedure.
You could use the Bluetooth adapter on a windows (10 or higher) PC (with INPA, Tool32 or ISTA-D as a replacement for an OBD or ADS adapter. The following steps are required to establish the connection:
Api32\EdiabasLibConfigTool.exe
and follow the instructions in the status window: Search the adapter, select it, click Check Connection
and patch the required EDIABAS installations.EDIABAS\bin\api32.dll
inside ISTA-D first.VCI Config
select as Interface type
: Ediabas default settings (ediabas.ini)
First programming of PIC18F25K80 microcontroller should be done with a PICkit 3 programmer. Here is instruction for flashing ELM327 adapter with Deep OBD firmware.
The source for the firmware could be found in the subdirectory CanAdapterElm
.
If not explicitly specified, default LED layout is: (RX LED: PB6, TX LED: BP7).
The subdirectory names below are the Bluetooth chip types:
default
: For unmodified ELM327L adapter with any Bluetooth chip. Baud rate 38400def115200
: For ELM327L adapter with any Bluetooth chip but modified baud rate 115200 (E.g. external YC1021 with modified EEPROM)bc04
: For adapter with BK3231 Bluetooth chip and bc04 firmwarehc04
: For adapter with BC417 Bluetooth chip and hc04, hc05 and hc06 firmwareesp8266
: For adapter with ESP8266 WiFi chip (RX LED: PB5, TX LED: BP7) Replace ESP8266ex firmwareyc1021
: For adapter with integrated YC1021 Bluetooth chip (RX LED: PB6, TX LED: BP4) Replace YC1021 firmwarespp_uart
and spp_uart2
(RX LED: PB6, TX LED: BP4): OpenSource Bluetooth firmware for adapters with BC417 Bluetooth chip (recommended for old Android car radios with Rockchip platform)
spp_uart.xpv
and spp_uart.xdv
: Firmware for Bluetooth module with BC417 chipsetusbspi.dll
: This is a replacement library for BlueSuite and BlueLab for programming CSR BC03/BC04 Bluetooth chipsets via FT232R breakout boards. For more information see the ReadMe.txt
file.There are two firmware files, the complete file (CanAdapterElm.X.production.unified.hex
) and the update file (CanAdapterElm.X.production.hex
) without bootloader, that is only needed by the Deep OBD app.
The latest firmware version will be always included in the Deep OBD app.
Also you can get compiled firmware files from the latest binary package.
There is improved ELM327 V2.3 compatible firmware available. It switches adapter to a mode compatible with most ELM327 softwares.
Flashing can be done over bluetooth with the Deep OBD app (at the moment this is only available for Bluetooth adapters).
Afterwards you can flash the Deep OBD replacement firmware over Bluetooth firmware again.
Binariy files (complete ELM327V23.X.production.unified.hex
) and (update ELM327V23.X.production.hex
) could also found in the the latest binary package.
If the firmware update or switching to the ELM327 firmware fails, all LEDs are active and the adapter stops in the bootloader mode.
In this state it’s possible to retry the update in the adapter menu of the Deep OBD app after reconnecting the adapter and ignoring the error message.