Pointer to outline of how to implement specific master side

I'm using an nRF52840 with SDK 15.3 under FreeRTOS and SES, BLE only

I'm trying to implement a master side (I've got the peripheral side running no problem).  The idea is that this will connect and control another peripheral type BLE device (another nRF52840 that I developed)....

I might know the MAC address of the target.  It'd also be nice to scan for it and decide what MAC address to work with... That part I know how to do.

I know the BLE schema since I control that on the other side.  All implemented with 128bit UUIDs.  I also control the advert packet and can easily filter on those.

What I want to do is to attach to it read write a couple of characteristics and then subscribe to one of them on Notify and stream that data into the rest of the application.

Do you have a pointer to an overview document on the steps I need to take to make that happen in this environment?  Or a code example of this sequence?

Best Regards

rjl

Parents Reply Children
  • Sorry, not quite what I was asking... let me clarify:  I don't have any problems using SDK in FreeRTOS.  I've got a dozen projects that use it in a peripheral role.  Never done one in a central role.  What I'm after is the broad outline of how to set up SDK for that and what functions to call to get it connected to the peripheral and access the various services and characteristics there, particularly one that is Notification type.

    I know the UUIDs of everything that I'm going to access and very likely know the MAC address of that target as well so do I need to be scanning in that case?  Do I need to go grab the schema? Can I just shortcut a pile of things because I already know what I've got to attach to?

  • About nRF Connect SDK: we're going to have to go to that here at some point soon I suspect as that's the Nordic direction.  I've got a major problem to solve there first dealing with VCcode: Our projects last 10-20 years so I have to be able to use old versions to recreate things in the future.  Microsoft (indeed almost the whole of the software industry) doesn't think in those terms so the tool chains aren't exactly set up to be able to recreate something very old.  VSCode, for instance, you can't load up several versions of it like you can with e.g. SES. This is a killer issue. 

    Also I'm NOT a fan of Zephyr in any way shape or form.  I can hold my nose and deal with that one...

  • Randy Lee said:
    What I'm after is the broad outline of how to set up SDK for that and what functions to call to get it connected to the peripheral and access the various services and characteristics there, particularly one that is Notification type.

    In that case I recommend having a look at the ble_app_uart_c example, https://docs.nordicsemi.com/bundle/sdk_nrf5_v17.1.0/page/ble_sdk_app_nus_c.html it connects, and does a service discovery of a 128-bit UUID service, and subscribe to a characteristic that uses notifications.

  • yah, this looks like the ticket.... I'll thread this stuff in and see what happens.

    Mange takk

Related