Home › Guides › Coding and programming tools

BMW coding and programming tools

Coding changes settings in a control module that is already installed. Programming (flashing) replaces a module's software. Phone apps code; BMW's dealer software programs. Here is what each tool does and what it costs, from the makers' own pages.

Last checked . Prices change; check the linked page before you buy.

Tools compared

ToolWhat it doesPlatformsPrice (US)Source
BimmerCodeCoding: turn factory features on or off (for example lights, displays, comfort functions) on BMW, MINI and Toyota Supra.iOS, Android, Windows 10+, macOS 12+. Licenses are per platform.Free app; full version $49.99 in-app (US App Store)bimmercode.app, App Store
BimmerLinkDiagnostics: read and clear fault codes in all modules, live sensor data and logging, battery registration, DPF regeneration, exhaust flap and ASD control. Same maker as BimmerCode; the two can be used together.iOS, AndroidFree app; full version $39.99 in-app (US App Store)bimmerlink.app, App Store
CarlyDiagnostics, coding and used-car checks with Carly's own scanner.iOS, AndroidBMW Premium $98.89 per year with scanner; Basic package $89.80 one-timemycarly.com pricing
BMW ISTABMW's dealer diagnosis and programming software. Independent shops in the US can license it through BMW's aftermarket portal; programming needs a Windows PC and a BMW ICOM interface.WindowsNot published publicly; BMW lists prices inside its portalBMW AOS terms, BMW TIS, API International (OSS)
E-SysBMW engineering software used by enthusiasts for F and G series coding.WindowsNo official public source found—

BMW's TIS site sells 1-day and 1-year subscriptions to North American users and notes that key codes are not available there.

OBD adapters

BimmerCode and BimmerLink need an OBD adapter. BimmerCode's supported adapter list includes the OBDLink CX and MX+, UniCarScan UCSI-2100 and UCSI-3000 ENET, MHD ENET and Universal Wi-Fi, xA Ultra, bm3 ENET, a plain ENET cable and vLinker BM+.

AdapterPriceNote
OBDLink CX$79.95Sold as "Made for BimmerCode"
OBDLink MX+$139.95Works with other apps too

Prices from obdlink.com. Other adapters: see each maker's site.

Why programming needs a power supply

Programming writes new software to a module while the ignition is on and the engine is off, which drains the 12V battery. If voltage drops partway through, the write can stop and the module may not start. That is why shops connect a stable power supply, not a trickle charger, before programming. Coding with a phone app is shorter but uses the same battery.

BMW's own voltage and amperage requirement is in its service information, which isn't public. We left the number blank rather than guess.