I have a generic el cheapo WiFi one that pairs up nicely with an app called FourStroke on my iPhone - much more reliably, in fact, than the Bluetooth one I used to use with an Android phone. Have used it to get data readouts and to read fault codes, then clear them once I had rectified the issue.