This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Central device can not find 2 services(0x1001,0x0001)

Peripheral device has 2 services,but central can find only 1 service(0x1001). I want to find other service(0x0001) According to the message seems to be looking for 0x1001,but ! want to looking for every services.

I don not know why this program look for only 0x1001.

Incidentally Central program is based ble_app_uart_c.

Please tell me how to find every services.

I Hope to have a central sample program that handles multiple services

Message is Starting discovery of service with UUID 0x1001 on connection handle 0x0. Found service UUID 0x1001. Discovery of service with UUID 0x1001 completed with success on connection handle 0x0

Parents
  • Thank you for your reply. Unfortunately it has become impossible to test now.

    So,I ask you. What I have to change is

    To the function ble_nus_c_handles_assign

    p_ble_nus-> handles.nus_rx2_handle = p_peer_handles-> nus_rx2_handle;
    

    With function ble_nus_c_tx_notif_enable

    || (p_ble_nus_c -> handles.nus_tx_cccd_handle == BLE_GATT_HANDLE_INVALID)
    

    so

    | ((p_ble_nus_c -> handles.nus_tx_cccd_handle == BLE_GATT_HANDLE_INVALID) && (p_ble_nus_c -> handles.nus_tx_cccd_handle == BLE_GATT_HANDLE_INVALID))
    

    Change it

    Is it right.

Reply
  • Thank you for your reply. Unfortunately it has become impossible to test now.

    So,I ask you. What I have to change is

    To the function ble_nus_c_handles_assign

    p_ble_nus-> handles.nus_rx2_handle = p_peer_handles-> nus_rx2_handle;
    

    With function ble_nus_c_tx_notif_enable

    || (p_ble_nus_c -> handles.nus_tx_cccd_handle == BLE_GATT_HANDLE_INVALID)
    

    so

    | ((p_ble_nus_c -> handles.nus_tx_cccd_handle == BLE_GATT_HANDLE_INVALID) && (p_ble_nus_c -> handles.nus_tx_cccd_handle == BLE_GATT_HANDLE_INVALID))
    

    Change it

    Is it right.

Children
No Data
Related