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

helo,is there any bluetooth protocol ducuments for the nrf 52832

helo,imy name is nissim and i am trying to make my own app to some watch that runs nrf52832 soc

the development group that make the app said that they need the bluetooth protocol ducuments

that the watch manufecter used

isnt at a generiq information

and second i can i send command with the nordic connect tool that will make test manualy

like sending "do heart rate test"

thanks a lot 

nissim

  • I don't think that you want the full Bluetooth protocol document, but want to know what services, characteristics etc. the watch may support.

    If the watch implements services and characteristics that have been ratified by the Bluetooth SIG then you will be able to determine what they are by using the Nordic nRF Connect App. It will give easy to read names to any service or characteristic that has been ratified by the Bluetooth SIG.

    If the watch manufacturer uses any custom services or characteristics then you'll need to get in touch with the manufacturer as neither Nordic nor the Bluetooth SIG will know what they are. In this case the nRF Connect app will just display a UUID for any service or characteristic that it doesn't recognise.

  • helo and thanks for the rapid answer

    can i send you a segment of text capture by your tool

    i manage to understand the meaning of the data

    is it the sig uuid?

    and also 'how can i send command to get the data from the watch manualy

    i tried macro and with a little success

    i want to be able to send commands like "do heart rate test" for example

    thanks

    nissim

    examples :

    V 22:30:53.064 Reading characteristic 00002a19-0000-1000-8000-00805f9b34fb
    D 22:30:53.064 gatt.readCharacteristic(00002a19-0000-1000-8000-00805f9b34fb)
    I 22:30:53.294 Read Response received from 00002a19-0000-1000-8000-00805f9b34fb, value: (0x) 46, "F"
    A 22:30:53.294 "70%" received

    this is the battery test

    value 46 hex= 70 dec

    D 22:30:53.544 gatt.readCharacteristic(0000fec9-0000-1000-8000-00805f9b34fb)
    I 22:30:53.657 Read Response received from 0000fec9-0000-1000-8000-00805f9b34fb, value: (0x) D1-85-33-B9-DA-71

    this is the mac address data

    D1-85-33-B9-DA-71

     

    I 22:31:21.345 Notification received from 00002a37-0000-1000-8000-00805f9b34fb, value: (0x) 16-4E-00-04
    A 22:31:21.345 "Heart Rate Measurement: 78 bpm,

    (4Ehex=78dec)my note

     

    I 22:35:03.380 Notification received from 0000fee3-0000-1000-8000-00805f9b34fb, value: (0x) FE-EA-10-08-69-4E-73-4A
    A 22:35:03.380 "(0x) FE-EA-10-08-69-4E-73-4A" received

    Blood pressure test  115\74

    FE-EA-10-08-the value header for this kind of test

    73 hex=115 dec

    4A hex=74 dec

     

  • Hi,

    Those all look like ratified characteristics and services as they all have a base UUID of XXXXXXXX-0000-1000-8000-00805F9B34FB.

    Ratified UUIDs tend to be referred to by a shortened form e.g. Battery Level characteristic is 0x2A19, so the full UUID is 00002A19-0000-1000-8000-00805F9B34FB.

    I would suggest that you have a look at www.bluetooth.com/specifications/gatt for details of the ratified services and characteristics etc.

    Usually your app will need to poll for the data by reading the desired characteristic (once connected) but some of characteristics support notification and if your app is set to allow notifications for a characteristic (it has to be explicitly set as a rule) then you'll get updates automatically.

    Devices that support ratified services and characteristics have a proscribed method of behaviour in order to ensure that they are all compatible. 

    For example "do heart rate test" doesn't really exist as it should be running all of the time on the watch and all that you need to do is read the characteristic and decode the data that is returned.

  • helo and thanks again,i understand

    if the watch dosent transmit the data by interval times ,i cant work wit it ,only manualy?

  • The watch will probably update some of the characteristic data on a regular basis.

    If a characteristic supports Notification then your smartphone app needs to set the Notification descriptor itself.

    Once set you don't need to manually "poll" (read) the characteristic value, instead the Bluetooth stack handles that on a lower level and you only need to have an event handler for the characteristic update event.

    I would suggest that you try running the Nordic nRF Connect App on a smartphone and connect to the watch. You will then be able to see all of the services and characteristics that it supports and gain an insight into how it behaves.

    By setting the notification bit for a characteristic (shown by a multiple down arrow symbol) you'll see the values updating automatically, otherwise you'll need to tap the single arrow symbol to read the value manually.

    From what I can remember Battery Level and Heart Rate support Notification. In fact I think that the Heart Rate characteristic Notification is mandatory. So the watch will always try and Notify your app of an update to the Heart Rate.

    I hope that this helps.

Related