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.

СС2564 Inquiry not work and no visibility

Other Parts Discussed in Thread: CC2564

Hello!

We are developing a portable device with bluetooth. We decided to use bluetooth smart ready module and selected the CC2564. We made simple PCB for testing chip. As the host used STM32F4. We use stack from www.ti.com/.../cc256xstbtblesw

After configuring debug UART and HCI-UART demonstration project SPP Demo (processors.wiki.ti.com/.../CC256x_TI_Bluetooth_Stack_SPPDemo_App) had started and the controller had communicated with the CC2564. But after entering server mode, calling "open" command and calling "inquiry" command, I had 0 found devices. My device also is not visible.
This device is located close to the antenna connected to the spectrum analyzer and I see the activity of the device in the air when running inquiry. I also tried some other sample project like HID Demo, but with the same behaviour.

Next, I downloaded and installed the hardware evaluation tool (www.ti.com/.../swrc256) and connected the module via the USB-UART to my computer. I began to check the work using the instructions (processors.wiki.ti.com/.../CC256x_Testing_Guide). The module is successfully responding to request information about itself.
After downloading the service pack by hardware evaluation tool appear the problem: module stops responding any command. However, the module accepts the command because it correctly performs HCI_VS_DRPb_Tester_Con_TX and HCI_VS_DRPb_Tester_Packet_TX_RX as I can see at spectrum analyzer. But I made no succesfull commands more.

I also tried to connect the module in linux using hciattach. System connects it and loads the service pack, creates new hci device, but hcitool scan produces an empty list. Built-in laptop bluetooth hcitool scan works correctly.

Omnidirectional antenna is being used for evaluation board, a gain of about 6 dB, is matched and connected with the cable. The devices with which communication is supposed are placed side by side, the signal from the evaluation board to the spectrum analyzer can be seen. I do not think the problem is in the radio.

Actually, I don't know how to make, at least, that the module was visible in the air, and worked to scan other devices.

  • Hi,

    It's possible that you are downloading the wrong firmware.

    If you're using a CC256x device (and not CC256xB), then you can swap the "BasePatch" between "\Bluetopia\btpsvend\CC256X.h" & "\Bluetopia\btpsvend\CC256XB.h"


    Regards,
    Gigi Joseph.
  • Thanks for your answer!

    I'm actually using not CC2564B device. I try to change header to CC256X.h" by adding __SUPPORT_CC256X_PATCH__ directive in Keil project's options.

    I faced with first problem: there are BasePatch, LowEnergyPatch and AvprPatch arrays in CC256XB.h, but in CC256X.h there is only Patch array. I tried to add some ifdef to BTPSVEND.c to load Patch instead of BasePatch when __SUPPORT_CC256X_PATCH__ is defined. But I don't know what I must do with HCI_VS_EnableFeature function because it call DownloadPatch(BluetoothStackID, LowEnergyPatchLength, LowEnergyPatch); and maybe I loose LE functionality.

    But when I've compiled SPP Demo project with all fix and patch, and flashed it, I still had no inquiry and no visibility. There is my UART log in the text below:

    // Start evaluation board

    OpenStack().
    Bluetooth Stack ID: 1
    Device Chipset: 4.0
    BTPS Version : 4.0.2.1
    Project Type : 6
    FW Version : 6.85
    App Name : SPPDemo
    App Version : 0.2
    LOCAL BD_ADDR: 0x78A5048E30A4

    ******************************************************************
    * Command Options: Server, Client, Help *
    ******************************************************************

    // next I choose server mode

    Choose Mode>server

    ******************************************************************
    * Command Options: Inquiry, DisplayInquiryList, Pair, *
    * EndPairing, PINCodeResponse, PassKeyResponse, *
    * UserConfirmationResponse, *
    * SetDiscoverabilityMode, SetConnectabilityMode,*
    * SetPairabilityMode, *
    * ChangeSimplePairingParameters, *
    * GetLocalAddress, GetLocalName, SetLocalName, *
    * GetClassOfDevice, SetClassOfDevice, *
    * GetRemoteName, SniffMode, ExitSniffMode, *
    * Open, Close, Read, Write, *
    * GetConfigParams, SetConfigParams, *
    * GetQueueParams, SetQueueParams, *
    * Loopback, DisplayRawModeData, *
    * AutomaticReadMode, SetBaudRate, Send *
    * Help, Quit *
    ******************************************************************

    // and open server

    Server>open 1
    Server Opened: 1.

    // start the scan of other device (my android is near and visible, and some other devices)

    Server>inquiry
    Server>

    Server>DisplayInquiryList
    Inquiry List: 0 Devices.

    // I have no found device. I also cannot found my board from any android phone and PC

    Server>SetDiscoverabilityMode 2
    Discoverability: General.

    Server>SetConnectabilityMode 1
    Connectability Mode: Connectable.

    Server>SetPairabilityMode 2
    Pairability Mode Changed to pmPairableMode_EnableSecureSimplePairing.
    I/O Capabilities: Display Yes/No, MITM: TRUE.

    // still cannot found device

     

    My project placed here: www.dropbox.com/.../cc2564_fw.7z

  • Hi,

    This is a known issue. Please refer to this specific post for the fix: e2e.ti.com/.../1666187

    ~Miguel