What is good / proven / low-cost bluetooth module, preferably with open source driver software, for getting data back and forth between my microcontroller and smartphone (either Android or iPhone)? Can you provide good general purpose examples and resources for interfacing phones and microcontroller using bluetooth?
In my experience getting Bluetooth running on Android is far easier than on iOS, as iOS does not support the Bluetooth Serial Port Protocol (SPP). Many places online sell Bluetooth modules that handle all the Bluetooth stack stuff internally - all you need to do is connect a microcontroller via UART, pair the module to your phone, and read/write to the socket in your Android app. The module handles all the Bluetooth stack stuff.
Also see this answer.
I have a bluetooth 'module' in mind. If you want you can have a look at RN41 from Roving Networks. It is a little costly but it has built in DSP and bluetooth stack so all you need to do is provide instructions. A similar product is RN52 also from Roving and a little cheaper than RN41. The main difference is that RN52 can run on 1.8V and RN41 runs on minimum of 3.3V.
Forgot to add: You can interface microcontrollers easily with either of these modules through UART. If you need further information just ask.
I was thinking of testing out one of these: http://redbearlab.com/bleshield/ It uses a nordic nRF8001. The site has an SDK and demo code to connect to an iPhone.
If have purchased the RN52 Breakout board (sold amongst other from sparkfun, https://learn.sparkfun.com/tutorials/rn-52-bluetooth-hookup-guide) and connected it with my stereo. The configuration was easy and i was able to stream audio from an iPhone to that device, i think, although i haven´t done it yet, is as simple as audio, no problem with IOS.
But i burned the board, because i connected 9V instead of 3V, so i have to buy another one, but these boards from sparkfun are not cheap, there is another alternative from indie (https://www.tindie.com/products/sg92/rn52-bluetooth-breakout-a2dp-uart-spp-audio-data/), more cheaper but which i haven't tested until now. I think i buy one of these, but the handling with IOS should be as easy as with the one from sparkfun.