This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

has anybody from TI tested cc2540 against iphone4S

Other Parts Discussed in Thread: CC2540

We know that Bluegiga has already tested their modules against iphone4S and the result is yes. Has anybody from TI tested cc2540 against iphone4s? I guess Bluegiga's module is based on Nordic's solution. Does it mean that iPhone4s doesn't need MFi and CP to use BLE? From the iOS SDK it appears to be so as there is no meniton of it in the framework. Can anybody give us more information about BLE in iphone4s?

  • Hi,

    I think you are guessing wrong when it comes to Bluegiga and Nordic... Everything we know points towards that the CC2540 kit should work with iPhone 4S. We cannot really comment on Apple's development environment, for more information about this you should sign up as an iOS app developer and look at their documentation.

    Best regards,

    Karl

  • thank you for your prompt reply. that's just what I would like to know. I am Apple developer and MFi holder. And I have gone through their documents about BLE. Just want to verify these information. now I am safe to purchase the iphone4s to test with my cc2540kit.

  • I tested iPhone 4S with CC2540 just moments ago and the standard iOS5 Bluetooth discovery feature (under Settings app >General > Bluetooth) couldn't find the keyfob. I tried to load the keyfob with all the variations of the .hex files, including the latest keyfob demo (available here: http://processors.wiki.ti.com/index.php/Category:KeyFobDemo) but to no avail. It looks like the Broadcom chip in the new iPhone just isn't compatible with CC2540. Time to try bluegiga!

  • I haven't had a chance to test out with an iPhone4S myself, but I suspect that they may only be allowing access to the BLE by means of iOS applications, and not through the standard Bluetooth connections menu.

    I can't speak about other vendor's chips specifically, but I can assure you that the CC2540 and TI's BLE stack are fully compliant with the Bluetooth 4.0 core specification, and interoperability should not be an issue.

  • The BlueGiga modules (such as BLED112 ) have the CC2540. You can see it in their datasheets. 

  • Here is a demo of the CC2540 communicating with the Iphone 4S:

    http://www.youtube.com/watch?v=srKwKU1Pblc

    -Per

  • Hi Per,

    Does TI consider to publish your source code for the application that run on on iPhone 4s (this one from the video)or some other design guides, examples etc?

    Thanks

  • Hello Stan,

     

    TI is going to release the source code of this project as far as I know.

    Source: comment section of Karl T's blog http://e2e.ti.com/blogs_/b/bluetooth_low_energy_blog/archive/2011/10/28/bluetooth-low-energy-in-iphone-4s.aspx

    BR,

    Gijs

  • Hi all,

    The source code will be published on the wiki today!

    It is updated since the youtube clip was recorded and does the following:

    • Connects to keyfob
    • Shows live accelerometer data
    • Shows live battery level data
    • Shows live button data
    • Can sound buzzer when button is pressed

     

    If you cant wait until the released on the wiki:

    0268.TI-BLE-Demo.zip

    :)

    BR

  • Hello,

    - I have received the mini-kit and updated both the dongle (with cc2540_ble1.1_USBdongle_HostTestRelease_Master.hex) and the Keyfob (with cc2540_ble1.1_keyfob_SimpleBLEPeripheral.hex)

    - I have use the code from the WIKI: http://processors.wiki.ti.com/index.php/Category:IPhone4SBLEDemo

    - I have compiled and run and the code on my iPhone 4S

    Application is working fine on the iPhone:

    - When I click on the keyfob button, the iPhone GUI is updated

    BUT:

    - Accelerometer data are not displayed and updated

    - Battery level is not displayed

    - Can not activate the sound on the keyfob from the iPhone application

    - Is there any  update of the iPhone4S application to have more features available ?

    The traces from the XCode console:

    Known peripherals : 0
    List of currently known peripherals :
    didDiscoverPeripheral
    Stopped Scanning
    Known peripherals : 1
    List of currently known peripherals :
    0  |  00000000-0000-0000-C2F5-F7675C59E236
    ------------------------------------
    Peripheral Info :
    UUID : 00000000-0000-0000-C2F5-F7675C59E236
    RSSI : 0
    Name : Simple BLE Peripher
    isConnected : 0
    -------------------------------------
    Connecting to peripheral with UUID : 00000000-0000-0000-C2F5-F7675C59E236
    Connection to peripheral with UUID :
    00000000-0000-0000-C2F5-F7675C59E236 successfull
    Services of peripheral with UUID : 00000000-0000-0000-C2F5-F7675C59E236 found
    Fetching characteristics for service with UUID : <1800>
    Fetching characteristics for service with UUID : <1801>
    Fetching characteristics for service with UUID : <180a>
    Fetching characteristics for service with UUID : <fff0>
    Fetching characteristics for service with UUID : <ffe0>
    Characteristics of service with UUID : <1800> found
    Found characteristic <2a00>
    Found characteristic <2a01>
    Found characteristic <2a02>
    Found characteristic <2a03>
    Found characteristic <2a04>
    Characteristics of service with UUID : <1801> found
    Found characteristic <2a05>
    Characteristics of service with UUID : <180a> found
    Found characteristic <2a23>
    Found characteristic <2a24>
    Found characteristic <2a25>
    Found characteristic <2a26>
    Found characteristic <2a27>
    Found characteristic <2a28>
    Found characteristic <2a29>
    Found characteristic <2a2a>
    Characteristics of service with UUID : <fff0> found
    Found characteristic <fff1>
    Found characteristic <fff2>
    Found characteristic <fff3>
    Found characteristic <fff4>
    Found characteristic <fff5>
    Characteristics of service with UUID : <ffe0> found
    Found characteristic <ffe1>
    Finished discovering characteristicsCould not find service with UUID
    <ffa0> on peripheral with UUID 00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffa0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffa0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffa0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Enabling accelerometer
    Could not find service with UUID <1804> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Updated notification state for characteristic with UUID <ffe1> on
    service with  UUID <ffe0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffb0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffb0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffb0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffb0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffb0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffb0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Key values updated !
    Key values updated !
    Could not find service with UUID <ffb0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Key values updated !
    Key values updated !
    Could not find service with UUID <1802> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffb0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <1802> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <1802> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffb0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffb0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffb0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236
    Could not find service with UUID <ffb0> on peripheral with UUID
    00000000-0000-0000-C2F5-F7675C59E236

  • that hex file doesn't have these functions. you have to compile and download the source code to have these functions.

  • Sorry but I'm not very familiar with Hex file and low level development.

    Can you please help me and explain me what you mean by "'you have to compile and download the source code to have these functions"

    What is the source code I need to download ?

    How to compile it ?

    Please help..


    Fred

  • iPhone4 demo is working fine with the zip file provided by this post :

    http://e2e.ti.com/support/low_power_rf/f/538/t/155248.aspx