I have the ELM 327 bluetooth from Aliexpress for 4$ and I used on my Anrdoird with Torque, stopped using it after getting the BMWhat (named Carly now), from Amazon, it is way more better and easier to use, the best diagnostic tool for the price, I also coded the car (Fold mirrors when locked, amber corner delete, lock car when reaching set speed etc ...) with it, the application is always updated with new stuff. I highly recommend it if you have a BMW.
Adapter if your BMW is built before 03/2007:
http://www.amazon.com/Original-Carly-Package-Micro-usb-Adapter/dp/B00X3V4F3G/ref=sr_1_3?ie=UTF8&qid=1441887739&sr=8-3&keywords=carly+for+bmw
Adapter if your BMW is built after 03/2007:
http://www.amazon.com/Original-BMW-Bluetooth-Adapter-Android/dp/B00DQTLE2A/ref=sr_1_2?ie=UTF8&qid=1441887739&sr=8-2&keywords=carly+for+bmw
Application:
https://play.google.com/store/apps/details?id=com.iViNi.bmwhatFull&hl=en