I'd like to develop a solution where a Bluetooth module can communicate with any Bluetooth capable smartphone device. Especially on the two main ones Android and iPhone. Also the goal is to be able to use old and new phones. So as far as I understand both 4.1BLE and the old 2.1 protocol should be supported.

Besides the communication there are a few basic tasks that have to be care of: I2C communication; processing basic commands received via Bluetooth; sending response and data back; read and write a few I/O port; handling RTC interrupt (alert).

Communication would be initiated from smartphone. A phone can connect one Bluetooth module only in the same time. Finishing data exchange the program running on the phone connect to the next available BT module and so on.

What would be the appropriate HW setup for this in the Cypress universe? The solution should be cheap, small and should fit for both industry and home usage.

What is the required operation mode? Is there any specific trick or setup in this? For example the module should be able to operate as master and slave according to which type of device it communicates to.

Is there any documentation, tutorial or a sample project in Creator with some module (that would be awesome :) ?