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

nRF51822 does not found service

Hi Guys,

I am new in BLE world, so sorry if I ask stupid questions.

I have a Simblee RFD77101 and a nRF 51822 chip. I would like to connect from nRF51 to Simblee and change data via BLE.

I started to use SDK 11 and tutorial ble_central/ble_app_uart_c project with s130 v2.0.0 soft device. To find Simblee and connect to it works well, but data changing not. ble_db_discovery does not find any services, so I cannot send and receive data on any characteristics... I do not get any callback to get "something happend". So my questions:

  1. Shouldn't nRF51 find at least the base services?

  2. Should I add custom service to find Simblee's service?

  3. I started to use wrong project? Or what am I doing/thinking wrong?

Thanks for help! :)

Edit 01:

The Simblee firmware is unknown for me, but yes, i register the service (in ble_nus_c.c, ble_nus_c_init function). Now, I get some debug info:

Connected to target
[DB]: Starting discovery of service with UUID 0xfe84 for Connection handle 0
BLE Event: 48
[DIS]: Services (0), Status: 266
Service UUID 0xfe84 Not found

If I do not specify the service uuid (pass NULL for sd_ble_gattc_primary_services_discover third parameter), i get the base service with characteristics (0x2a00, 0x2a01, 0x2a02, 0x2a04 If i remember well)

Now, if i delete these rows, in ble_nus_c.c, ble_nus_c_init function

err_code = sd_ble_uuid_vs_add(&nus_base_uuid, &p_ble_nus_c->uuid_type);
VERIFY_SUCCESS(err_code);

I get this debug text, and after that, the nRF51 chip crashed, restarted

Connecting to target 77a68eed44c1
BLE Event: 29
BLE Event: 16
Connected to target
[DB]: Starting discovery of service with UUID 0xfe84 for Connection handle 0
BLE Event: 48
[DIS]: Services (0), Status: 0
Found service UUID 0xfe84
BLE Event: 50
previously discovered: 0
currently discovered: 1
Char uuid: 0, read: 1, write: 0, write_no: 0, notify: 1
BLE Event: 50
previously discovered: 1
currently discovered: 1
Char uuid: 0, read: 0, write: 1, write_no: 1, notify: 0
BLE Event: 50
previously discovered: 2
currently discovered: 1
Char uuid: 0, read: 0, write: 1, write_no: 1, notify: 0
BLE Event: 50
BLE Event: 51

I red the documentation about sd_ble_uuid_vs_add , but I do not understand it... :/ What is vendor specific uuid?!

And there are some defines, what i am using for

//#define NUS_BASE_UUID                  {{0x9E, 0xCA, 0xDC, 0x24, 0x0E, 0xE5, 0xA9, 0xE0, 0x93, 0xF3, 0xA3, 0xB5, 0x00, 0x00, 0x40, 0x6E}} /**< Used vendor specific UUID. */
//#define NUS_BASE_UUID  {{0x96, 0x07, 0x0C, 0x49, 0x10, 0x11, 0x0E, 0xDF, 0x53, 0x2B, 0x91, 0x23, 0x60, 0x0B, 0x57, 0x4D}}
#define NUS_BASE_UUID  {{0x2D, 0x30, 0xC0, 0x80, 0xF3, 0x9F, 0x4C, 0xE6, 0x92, 0x3F, 0x34, 0x84, 0xEA, 0x48, 0x05, 0x96}}

#define BLE_UUID_NUS_SERVICE           0xFE84                      /**< The UUID of the Nordic UART Service. */
#define BLE_UUID_NUS_TX_CHARACTERISTIC 0xC081                      /**< The UUID of the TX Characteristic. */
#define BLE_UUID_NUS_RX_CHARACTERISTIC 0xC082                      /**< The UUID of the RX Characteristic. */

Here is an additional image with infos, what i know about Simblee https://ibb.co/jDgfaG

As a result about this debug, i just setup something wrong. But what?

Related