Read this thread!
http://www.e90post.com/forums/showthread.php?t=480261
Two errors in it though: 1. ignore what they say about buying the more expensive cable, the £25 ($30-$40) ebay one is fine (clear plug & cable) i've done loads of coding with it without a single problem. 2. When the guide says go to cas then cas for the digital speedo, it's actually cas then kombi. you'll understand by the time you get to that part!
*Edit*
Oh, i've just realised you've got a 2011, so the cable you need is slighty different, one without the k line like this
http://www.ebay.com/itm/BMW-USB-OBD-...e86a42&vxp=mtr
Or just buy the normal one and de solder pin 8! Like this one
http://www.ebay.com/itm/New-INPA-K-C...a5eefa&vxp=mtr