I went with one I purchased from Amazon called "LZLRUN INPA K+CAN K+DCAN Car Diagnostic Tool Cable OBD USB Interface for BMW". I played again with it for about an hour last night and found that I can occasionally talk to the 'engine' section. 70% of the time I get a communications error but I was sometimes able to talk to the engine module. I was never able to get a connection to the other modules, even thought I did jumper the wires as recommended on the forum. I'm wondering if the 2006 Elantra I'm trying it on might use different wires.