Central SMP Client and DFU upgrade from other MCU

Hi,

I am using Nordic nRF52833 as a peripheral which uses mcuboot and DFU over BLE. I can easily upgrade firmware on that device by connecting to it with nRF Connect mobile app via SMP service. 

On the other hand due to some legacy reasons I have another device with STM32F and PAN1026 BLE module which role is central. Now I would like to implement handling of SMP protocol and send firmware upgrades to peripheral device with nRF52833. So I would like to implement something similar that is already on Nordic's Android app on my device with STM32F. I am already able to connect with PAN1026 and do some basic stuff. As I understand I will have to handle upgrade files and send data chunks over BLE SMP service to nRF52833 peripheral. 

Where should I start? Is there any existing example to enable upgrades not only from mobile app but from any other platform? 

Thank you in advance!

Parents Reply Children
  • Hi, 

    Thanks for your reply.

    I checked out that too and it explicitly says: "This sample does not provide the means to program a device using DFU. It demonstrates the communication between SMP Client and SMP Server." Basically it's "blank" project.

    I agree it could be a good starting point but as you said it's between two Nordics. I am looking for a way to have implementation on other MCU and I guess that I will need to port some part of the code etc. Is there information about the  API available for (I am guessing) commands like eg. Init, Update, End?  I am not familiar with nRF Connect sources for Andorid but would there be any useful information for easier porting to other MCU?

    Thank you and have a nice day.

Related