Best OBD tool + iOS for BMW E90

Aim: Want to purchase a BMW E90 OBD2 reader device that also lets me reset codes.


  1. bimmergeeks ProTool app: Failure

shit doesn’t work.

generic OBD2 scanners DO NOT WORK. P-codes are nearly useless for diagnosing cars. Honestly the only thing generic OBD2 code readers are good for is to check emission monitor readiness and to see if someone reset the check engine light. THATS IT!


  1. ELM327 Bluetooth: Failure

It won’t work. Has to be their adapter – the reason is the QC of most of the generic adapters is poor. Apparently like 70% of the packets were getting dropped, so they decided not to support them. it kind of sucks (I have 2 useless bluetooth adapters), but it also prevents people from bricking modules using a flaky adapter. Fortunately it’s about the same cost as all but the cheapest ones, but those probably don’t work anyway.


  1. BMW INPA or ISTA Software (Free) on a windows laptop and a €15 K+D Can cable.

Ista D and Inpa toghtether will do more than anything else.
Ista D is what BMW used in there dealerships for years.
Inpa is there Engineering development tool.
You can do any type of coding with Inpa well beyond the canned
routines you get with things like Carly.
Ista D is like having a shop manual with guided trouble shooting. It also has schematics and mechanical diagrams
its something like 50 gigs of space on a disk.

The catch is you have to know your way around a PC and it you have
Apple products you have to run these programs inside a Virtual
machine. It will also require effort to set up and learn to steer either
of these.

Bmw Inpa

Inpa suite of tools diags and coding.
the most powerful tool for coding there is.

Ista D diagnostics and guided troubleshooting all in English
this like having a shop manual on your laptop.
Parts and wiring diagrams exploded views etc etc.
This is a big program that was developed for dealerships and used
for the active life of the e90.



  1. Foxwell NT530 Scanner loaded with the BMW software (€177) (Software for other makes are available for download at $60 a pop) is the ONLY low-cost tool I’ve ever seen that support multiple OEMs. The expensive, professional-level scanners typically provide access to most, or all, manufacturers OEM-specific information, but those scanners also typically cost $2-5K.


The BMW-software for the NT530 is EXCELLENT, and provides access to not only the engine computer, but virtually ALL computers on the car – Engine, transmission, brakes, ABS, Traction Control, Air Bags, Audio, Navigation, Climate Control, Locks, Alarm, etc. etc.

It is an EXCELLENT scanner, and mine has already paid for itself many times over in the ~9 months I’ve owned it.




  1. Autel MaxiCOM MK908Pro or Maxidas DS808 ($600 to $2500). This is a professional level diagnostics tool that mechanics and repair facilities will use. It does everything that BMW ISTA/INPA and Foxwell NT510/NT520 can do but the advantage is that it comes loaded with software for all Makes and Models (Asian, European, American).

If you have multiple cars in your family (like me), the “best value” is the Autel Maxidas DS808. At around $680 it covers every make and model.




  1. For simple engine diagnosis, emissions readiness, OBD code reader/clearing, freeze frame data, realtime PIDs, logging, gauges, etc., I’d get OBD Fusion and a Bluetooth LE OBD2 interface.


  1. I use a combination of the following, based on the need, for my E39, E46, E84, E92:
    – ELM327 Bluetooth LE OBD2 interface with OBD Fusion, Dash Command apps
    – Carly gen2 WiFi OBD adapter and Carly app
    – BMW Scanner 1.4 adapter and software
  2. If you are looking for a simple OBD2 scanner then Foxwell NT624 PRO is the best option with free lifetime software updates. You can also explore more OBD2 devices here and can choose one according to your requirements.


Definition of Generic and OEM-specific:

OBD access comes in two flavors: Generic and OEM-specific. ALL cars since the late ’90s MUST support “Generic” access. This supports a wide range of generic ENGINE-ONLY codes and VERY basic functions, like clearing faults and resetting the SES light. For many simple repairs, like a mis-fire, this is enough, for many, like turbo faults, it doesn’t even come close. These devices provide NO access to the MANY other controllers in the car, like transmission, air bags, atc.

Each manufacturer also provides their own, unique OEM-specific codes, which often provide MUCH more specific faults. The “cheap”, generic code readers CANNOT read or reset these. Each manufacturers interface is different, so a scanner than can access the Ford OEM-specific information cannot, in general, access any other manufacturers OEM-specific information.



All of these options are better than a stupid generic OBD2 scanner in that these have the ability to connect to each individual module on the car and read manufacturer specific codes.