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.

Can't detect CC2541 project with anything other than TI dongle.

Other Parts Discussed in Thread: CC2541, CC2540

Hi,

We have a CC2541 project that can be discovered and interacted with using the dongle provided in the CC2540-MiniDK and Btool. However we are having no luck discovering it with anything else. We have tried Windows and iPhone 4S (using the TI BLE Multitool app), with both we first discover the key fob and then try our design. The key fob is always discovered and our project board never is.

We have done everything we can think of to try and make our board discoverable (including making it operate as similarly to the key fob as possible) but no luck.

Can anybody suggest something we may have over-looked? Being able to use Btool to speak to the board suggests the hardware design and antenna are ok. Our crystal accuracy is within the guidelines also.

The obvious major difference is that we're using CC2541 and the key fob is CC2540 but I would have assumed they should both present themselves in the same way?

Can anyone help please?

 

  • Hi,

    I posted this question before the holidays but got no response. Now the holidays are over I'm just wondering if anyone could help by sharing their experience with the CC2541? Has anyone made their CC2541 project communicate with anything other than the TI dongle? Can anyone suggest anything we could look into to try and get it working, we've tried everything we can think of.

    Any suggestions would be greatly appreciated.

    Thanks.

  • I have made a custom board with the CC2540 and have successfully paired it to an iphone 4s and 5.  What app are you using on the phone to test your communications to the device?  If it pairs properly with the TI dongle, there's no reason why it wouldn't pair with an iPhone, assuming the app is correct.

    Next, I would try an app that is proven to work, for example, LightBlue (free in the app store). It lets you scan for any device and view all of its services and chars.  

    What firmware do you have loaded on the cc2541? Is it custom, or is it an example project that ships with the stack? 

  • Hi Ben,

    The only issues I can think of right now is if a) the peripheral issues some parameter update request that is unacceptable to the iOS device, or b) if something is not formatted correctly in the advertisement data or scan response. See if you wish Vol 3, Part C section 11, page 1735 of the BLE Core Spec.

    Best regards,
    Aslak 

  • Hi guys,

    Thanks for your responses.

    We used the TI BLE Multitool app on iPhone (and the native Bluetooth controls on Windows). I'll give LightBlue a try.

    We developed a custom project but when we were getting this problem reverted to trying to run the keyfob firmware. Our board contains an accelerometer so we did our best to mimic the keyfob in every way but with no luck.

    There's nothing obvious that needs to be done differently between the CC2541 and the CC2540 is there?

    Cheers.

  • Hi guys,

    I tried the LightBlue app and had no luck. I also found out that the TI SensorTag is based on the CC2541 so pulled down the SensorTag app in the slight hope that having an app written for the exact same chip might uncover something, but again no luck there. The board simply doesn't appear in any of them (yet 

    As for not adhering to the BT spec when advertising, I would guess that by using the Keyfob code on our board (modified slightly for our LEDs, buttons, etc) we should be avoiding that problem? 

    I think a good next step would be to upgrade to V1.3 of the BLE stack and try out the SensorTag firmware on our board (modified accordingly). Would you agree?

    If there are any specific settings or lines in the code related to discovery that you think we could focus attention on then please let me know.

    Any advice is much appreciated because we're really struggling with this one, and thanks for your responses so far. 

  • Hi Ben,

    Could this be related to HW? Have you looked at your RF output on a spectrum analyzer? Maybe your frequency is off? The CC254x can handle pretty large frequency offsets (way outside BLE spec), that may not be the case with other BLE chips.

    /Fredrik

  • Hi Fredrik,

    Thanks that's a really good suggestion. Do you know what range the chips used in the Apple devices can handle so that we can identify if we are outside of those limits?

    I guess a good approach would be to run our CC2540-DK board and see what frequency it is operating on and copy that. Is it possible to set the frequency value in firmware? If so, could you tell me where that setting is please?

    Cheers,

    Ben

  • Hi Ben,

    I am not sure of the spec used in apple devices.

    What you could do is connect your board to the CCDebugger and use SmartRF Studio to make it send a CW at a certain frequency. Use a spectrum analyzer to check the actual output frequency .

    Cheers,

    Fredrik

  • Hi Ben,

     

    Did your resolve your problem? I am currently experiencing the same problem you are having. Our customized board is discoverable by TI BLE USB dongle but cannot be discovered by iphone. We have used the new 1.3 tool kit.

     

    Steve

  • Hi Ben,

    Were you able to find the cause of the problem?  What was the solution to your problem?

    We have 1 unit of a custom CC2541 board that worked previously on all iOS and Android phones.  However, after a few weeks of weekly re-flashing, that particular unit can now only be discovered and connected to by the TI dongle.  iOS and Android cannot even discover it.  All other units running the same code are working, which rules out a bug in the code.  Aside from the TI dongle, a keyfob running the simpleBLECentral code can also discover it.  It seems only devices using a TI chip can discover that single problematic board.

    Any suggestion from everyone will be helpful.  Thanks.

    Leo

  • My problem was solved by changing the 32 MHz crystal.  The crystal must have been damaged or something.