Specialized tools – INPA and ISTA – should be used to diagnose BMW. These tools use the EDIABAS system. For petrol engines, OBD tools are used only to see misfire counters. There, too, are limitations – misfire counters can be seen only for N43/N53 series engines and newer ones.
The offer of OBD readers is quite broad. The most popular ones are the “cheap range,” sold by eBay, AliExpress, and other platforms. Price of these adapters – starting from EUR 3 .. 4.
How does the typical adapter look:

The brand/name of the manufacturer has no meaning because all these adapters are the same. Yes, there are “newer” versions (2.1, not 1.5) available, but they have even more bugs.
I purchased 15 .. 20 pieces of the adapters in the image with WiFi and USB connections. I have not tested BT connection adapters because I use the computer, not a mobile phone, for diagnostics. A short summary:
a. one mini-batch (4 pieces) arrived non-working. I disassembled them and ensured that the supply voltages were correct and, obviously, no software was loaded in the chip. Good news – the seller admitted that the whole batch supplied to him was non-working and swiftly sent me a replacement;
b. USB connection performs at an average level. Quite often, communication errors are present, and the adapter should be disconnected from the OBD nest to “restart”;
c. WiFi connection is a nightmare. To have one successful reading, you will need 5 .. 10 minutes. The WiFi network “drops” regularly. Notices regarding timeout appear regularly. The data exchange during data reading drops regularly – the menu has been red partially, or – if the menu is red in full, obvious data errors can be seen. Working with these adapters is a true test of patience. No, the computer is not to blame. No, other possible interferences (for example, some powerful WiFi networks) are not to blame. Even if this adapter is the only WiFi network available and is in the range of 1 m of the computer, the connection is unsafe.
My rating for these adapters is quite harsh – they can not be used if you plan to use this product more often than once a year. The show corresponds to the price – what can you expect for several USD…
True, though, the price of these adapters has increased significantly for several years. Around the Year 2022 .. 2023, the price of this China crap reaches even 15 .. 20 .. 25 EUR!
What are the alternatives? As I am interested in exactly OBD Mode 6, I have to look for a “standard” OBD 2 system reader. The reader that uses the software and PCB developed by the manufacturer itself. One of the most visible players in this area is Klavkarr. The company, based in France, has developed their own OBD reader.
https://www.klavkarr.com/
In their OBD readers, Klavkar does not use chips manufactured in China but has developed their product based on the microcontroller of the PIC16F series. The software, too, is 100% of their development.
Yes, the prices of the Klavkarr ODB readers have risen significantly. If some 3 .. 5 years ago the simplest (USD) version cost around EUR 40 .. 50, now you will have to spend EUR 90.

I purchased a model Klavkarr 100 with a USB connection. On the computer, I installed the application EOBD Facile, developed by Klavkarr itself (the paid version because only the paid version has ODB Mode 6 available).

I must admit that the adapter report is quite short: everything works perfectly. Not even one time any data communication error was noticed. Plug in the adapter in the OBD nest, plug in the USB cable in the computer, and – forget.

True though, an interesting nuance – sometimes (exactly with this adapter – haven’t observed that with cheap China adapters) for F series car, two DME of the engine are located. But in this case, too – no problem.

One of the DMEs has 50+ parameters available, and the second – has only 0 .. 3. It is clear that the first one has to be chosen.

Short comments regarding EOBD Facile software itself:

a. OBD Mode 6 readings are stable;

b. menu of the dynamic parameters of the Lambda probes is not working;

c. the live data reading module is impractical (no group select/unselect options; storing of config);

d. the graph module is impractical (no option to define Y scale, zoom Xaxis, etc.).

For this report not to sound like an advertising article, I will mention the following experience too. A while ago, I got in touch with this company. I asked them if they knew something regarding the misfire counters for older BMW engines (for example, N52 and N46). Is there any feedback from users/comune, or any information – if/in which used defined fields the manufacturer (BMW AG) reports misfire counters for these engines/DMEs. The answer was quite sad – they only manufacture OBD tools and have no other interest.