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.

CC1352P: How to send "ADV_NONCONN_IND" on Simple Peripheral and scan it on Simple Central

Part Number: CC1352P
Other Parts Discussed in Thread: SYSCONFIG

I just bought two LAUNCHXL-CC1352P-2 and worked on examples: "simple_peripheral" and "simple_central", I got two questions:

1. how to send ADV_NONCONN_IND legacy advertising on simple peripheral ;

2. how to scan this ADV_NONCONN_IND and display the advertising data on simple central;

Thank you for help

Michael   

  • Hi, 

    The Sub-1 GHz SW support team will answer this tomorrow since today is a national holiday in Norway.

    Regards,

       Richard

  • Hi Michael,

    It sounds like you are a bit new to Bleutooth Low Energy. I will recommend you to check out SimpleLink Academy, specifically the lab on BLE Advertising and Scanning. https://dev.ti.com/tirex/explore/node?node=AKvX4BPHvI6W3ea9a0OTxA__pTTHBmu__LATEST 

    You can configure advertisement mode with SysConfig on the peripheral side.

    For the entral side you should configure scanning, then implement some way to read out the information in the application.

  • Thanks, Marie, 

    Yes I am new on the TI bluetooth stack, as I said I just bought two LAUNCHXL-CC1352P-2 and played with it. that is the reason I need help.

    I read the doc in your link and BLE 5 stack user's guide, I did not find the answer, as in "simple_peripheral.syscfg", could you just tell me which selection is for "ADV_NONCONN_IND" and which is for "ADV_SCAN_IND"

      

    Thanks,

    Michael

  • Hi Michael,

    To use ADV_NONCONN_IND select the non-connectable and non-scannable undirected advetisement.

  • Thank you, Marie! I still have a related question about how to decode BLE advertising PDU type on Simple Central under "SC_EVT_ADV_REPORT" in "SimpleCentral_processAppMsg" by checking "pAdvRpt->evtType", for which I didn't see any change for "Connectable and scannable undirected" and "non-connectable and non-scannable undirected", at the beginning, I don't know what is wrong for my understanding, after you confirmed I should use "non-connectable and non-scannable undirected" on Simple Peripheral, I think I did some thing wrong on Simple Central side, could yo please tell what I should to do on Simple Central side to decode AD PDU type?   

  • Hi Michael,

    With the SC_EVT_ADV_REPORT there is an appended message with the format GapScan_Evt_AdvRpt_t. The definition for this message is:

    /// Event for advertising report
    typedef struct {
      /**
       * Bits 0 to 4 indicate connectable, scannable, directed, scan response, and
       * legacy respectively
       */
      uint8_t  evtType;
      /// Public, random, public ID, random ID, or anonymous
      GAP_Addr_Types_t addrType;
      /// Address of the advertising device
      uint8_t  addr[B_ADDR_LEN];
      /// PHY of the primary advertising channel
      GapScan_ScannedPhy_t primPhy;
      /// PHY of the secondary advertising channel
      GapScan_ScannedPhy_t secPhy;
      /// SID (0x00-0x0f) of the advertising PDU. 0xFF means no ADI field in the PDU
      uint8_t  advSid;
      /// -127 dBm <= TX power <= 126 dBm
      int8_t   txPower;
      /// -127 dBm <= RSSI <= 20 dBm
      int8_t   rssi;
      /// Type of TargetA address in the directed advertising PDU
      GAP_Addr_Types_t directAddrType;
      /// TargetA address
      uint8_t  directAddr[B_ADDR_LEN];
      /// Periodic advertising interval. 0 means no periodic advertising.
      uint16_t periodicAdvInt;
      /// Length of the data
      uint16_t dataLen;
      /// Pointer to advertising or scan response data
      uint8_t  *pData;
    } GapScan_Evt_AdvRpt_t;

    Thus the first 5 bits will indicate the properties of the advertisement.

  • Thanks, Marie, that is what I checked, BUt no matter what I sent from Simple Peripheral (ADV_IND, ADV_SCAN_IND, or ADV_NONCONN_IND), GapScan_Evt_AdvRpt_t.evtType always be 0, I can not find where  I was wrong. 

  • Basically, I just want to know what kind of ADV PDU type received on Simple Central

  • Hi Michael,

    Can you use a sniffer to verify that the peripheral is actually sending two different types of advertising packets?

    Cheers,

    Marie H.