Diagnose right in your browser — plug in an ELM327 and the site reads your car itselfProgram for Windows and macOS — all-module scan on any make

HomeComparisonsBimmerCode, BimmerLink

Diagnost vs BimmerCode and BimmerLink: a free alternative on Windows

Two apps from one developer confuse everyone: one codes options, the other reads faults. Diagnost does both in a single free Windows program, plus every other brand.

People looking for a BimmerCode alternative usually arrive with two problems at once: the coding app does not read fault codes, and the app that does read them is a second product with a second license. This page lays out what each tool actually does, using the vendors' own published information as of September 2026, and where the free Windows program Diagnost fits.

Three tools, three jobs

BimmerCode is a coding tool. It rewrites control unit settings on BMW, MINI and the 2019 Toyota Supra to enable factory options — folding mirrors, seatbelt chime, lighting behavior, cluster displays. It lists support for nearly all BMW and MINI built from 2005 onward, and runs on iOS, Android, Windows 10+ and macOS 12+. It does not do diagnostics. Site: bimmercode.app.

BimmerLink is the diagnostic half. It reads and clears fault codes across control units, shows a configurable live sensor dashboard, logs values to CSV, and runs service functions: battery registration, service reset, electromechanical parking brake service mode, DPF regeneration request, exhaust flap and Active Sound Design control, and sound tuning on S55 engines. It is iOS and Android only, covering BMW from 2003, MINI from 2006 and the Supra from 2019. Site: bimmerlink.app.

Diagnost merges both jobs into one free Windows 7-11 program, with a different center of gravity. It scans every module on any CAN car through ELM327, OBDLink or J2534 hardware, and on BMW it goes to dealer depth over K+DCAN for E chassis 1998-2013 and Mini R50-R56, or ENET for F, G and I, with the EDIABAS package. It also carries a built-in AI mechanic that queries modules on its own and explains the result.

What you want to do, and what does it

TaskBimmerCodeBimmerLinkDiagnost
Enable a hidden option (mirrors, lights, cluster)Yes, its main jobNoYes, checkbox based, BMW and Mini only
Read faults from every moduleNoYesYes, on any brand
Live sensors and graphsNoYes, dashboard and CSVYes, graphs and trip recording
Register a new batteryNoYesYes, BMW
Reset the service intervalNoYesYes, BMW
DPF regeneration requestNoYesNo
Cross-check mileage across modulesNoNoYes, BMW
Explain the cause, not just the codeNoPartly, through live dataYes, AI mechanic
Diagnose a non-BMW carNoNoYes, any CAN car

BimmerCode for PC: what is actually true

The desktop question gets answered wrongly all over the web, so here is the current state. BimmerCode does have a desktop build: Windows 10 and newer, macOS 12 and newer, with separate Intel and Apple silicon downloads. On desktop it works with an ENET cable, a DCAN USB cable or a WiFi adapter rather than Bluetooth dongles. The catch is licensing — the desktop license is tied to the machine, and licenses are platform specific, so an App Store purchase does not carry over to Windows.

BimmerLink, however, has no desktop version. That means a laptop-only setup can code but cannot diagnose, and you still need the phone for fault codes and live data. That gap is the practical reason to look at a single Windows program that does both.

Side by side

CriterionBimmerCode + BimmerLinkDiagnost
DevicePhone; BimmerCode also on desktopWindows 7-11
AdaptersSupported list onlyAny ELM327, OBDLink, J2534, K+DCAN, ENET, KKL
VehiclesBMW, MINI, Toyota SupraAny CAN car; dealer depth on BMW
CodingBroad option library across E, F and GHidden features by checkbox, BMW and Mini
DiagnosticsBimmerLink onlyAll modules, any brand
Price and licenseTwo separate purchases; licenses do not transfer between platformsFree; you only pay for an adapter
Coding backupYes, restore from backupYes, automatic, plus rollback on mismatch
History across visitsNoSessions stored per VIN, fault list diffed against the last visit
AI helpNoneBuilt-in AI mechanic

Adapter compatibility

BimmerCode keeps a closed list, and that is a deliberate engineering choice — coding does not tolerate a flaky link. The OBDLink CX is branded as made for the app; MX+, LX, SX and EX, UniCarScan UCSI-2100, vLinker BM and MC, and Veepeak OBDCheck BLE also appear. For F, G and I chassis it wants an ENET cable or a WiFi adapter such as the UniCarScan UCSI-3000.

Diagnost does not ask you to choose. It enumerates every adapter present — USB, Bluetooth, BLE, WiFi, J2534, cables — and uses the one that actually has the car on the other end, switching automatically when you unplug and replug. For BMW coding the hardware is the same as everyone else's: a K+DCAN cable on E chassis or an ENET cable on F, G and I, both around $10. For everything else a plain ELM327 is enough, with one caveat: a "v1.5" unit on the PIC18F25K80 is a complete clone and works, while a "v2.1" is usually cut down and missing AT commands, so some modules will not answer.

Where BimmerCode and BimmerLink are better

The coding library. On F and G chassis BimmerCode's option catalog is wider and better presented — readable feature names instead of hex values, tested presets, and an expert mode for manual edits. Diagnost's list on newer chassis is narrower, and claiming parity would be nonsense.

DPF and sound functions. Requesting a diesel particulate filter regeneration, muting Active Sound Design, and the parking brake service mode are BimmerLink features with no Diagnost equivalent.

A phone in your pocket. Coding mirrors in a parking lot is easier on a phone than with a laptop balanced on the passenger seat.

Where Diagnost is better

Everything that is not a BMW. The other two only speak BMW, MINI and Supra. The same Diagnost install reads Toyota, Nissan, VAG, Opel, Mercedes and Ford — engine, transmission, ABS and stability, airbags, body, cluster and climate — through the adapter you already own.

One program instead of two licenses. Faults and coding live in the same window, with no app switching and no second purchase.

Screen space and history. Interactive graphs, trip recording you can scrub afterwards, sessions stored per VIN, and a diff of the fault list against the previous visit. None of that exists in either app.

The AI mechanic. It decides which extra modules to interrogate and explains the likely cause in plain English rather than printing a code definition. The same reasoning is available without hardware in the chat at /diagnose and in the BMW diagnostics section.

Which to pick, and using them together

If your only goal is enabling options on an F or G car, BimmerCode does it faster and offers more. If you need DPF regeneration or ASD control, that is BimmerLink. If you want full-module diagnostics, an explanation of the cause, and coverage beyond BMW, start with the free Diagnost BMW build — trying it costs nothing.

The combination is a reasonable setup: the phone with BimmerCode for option coding wherever you happen to be, the laptop with Diagnost for real diagnostics in the garage. The only rule is to keep one program on the car at a time. If you are also weighing dealer software, see INPA and ISTA; for the other popular phone app, see the Carly comparison.

Questions and answers

What is the difference between BimmerCode and BimmerLink?

Same developer, two products. BimmerCode changes control unit settings to unlock factory options. BimmerLink reads and clears fault codes across all modules, shows live sensor data, and runs service functions such as battery registration and DPF regeneration. Neither replaces the other and each is licensed separately.

Is there a BimmerCode for Windows or PC?

Yes. As of September 2026 BimmerCode ships a desktop build for Windows 10 and newer and macOS 12 and newer, using an ENET cable, a DCAN USB cable or a WiFi adapter. The desktop license is separate and tied to the machine, and licenses do not transfer between platforms. BimmerLink has no desktop version at all.

Which adapters work with BimmerCode?

Only ones on its supported list: OBDLink CX, MX+, LX, SX and EX, UniCarScan UCSI-2100, vLinker BM and MC, Veepeak OBDCheck BLE, and for F, G and I chassis an ENET cable or a WiFi adapter such as the UniCarScan UCSI-3000. Cheap generic ELM327 clones are not listed.

Do I really need both apps?

If you want coding and diagnostics from a phone, yes, that is two purchases. Diagnost covers both jobs in one free Windows program, though its coding is limited to BMW and Mini.

Can one program both code and diagnose?

Diagnost does. It scans every module on any CAN car through a generic adapter, and on BMW it adds dealer-level access over K+DCAN and ENET: coding with checkboxes, battery registration, service reset, adaptations and cross-module mileage comparison.

Can I roll coding back if something goes wrong?

Both tools back up first. BimmerCode restores coding data from its backup. Diagnost writes a module backup automatically before coding and rolls the change back on its own if the value read afterwards does not match what was written.

Why does BimmerCode fail to connect over WiFi?

Usually the phone drops to mobile data because the adapter network has no internet, or another app is holding the socket. On the Diagnost side the equivalent setup is a WiFi ELM327 at 192.168.0.10 port 35000 or an ENET cable on a fixed IP, and the program keeps scanning adapters so unplugging and replugging does not need a restart.

Which chassis are supported?

BimmerCode lists nearly all BMW and MINI from 2005 plus the 2019 Toyota Supra; BimmerLink lists BMW from 2003 and MINI from 2006. Diagnost covers E chassis 1998-2013 and Mini R50-R56 over K+DCAN, and F, G and I over ENET, using the EDIABAS package.

Download Diagnost

Free program: scans every module on any make, live data, service functions and an AI mechanic built in. Finds the connected adapter on its own and picks the one that is on the car.

Download the programWindows 7–11 and macOS · the same AI mechanic inside

Other comparisons

Updated: 2026-09-05