DFU lib to do firmware update via software - stm32

My use case is I am trying to do the firmware update of a stm32 uC, using the DFU protocol via an application written in C++.
Can someone recommend a DFU library that i could use in order to do this?

Related

SDIO probe function isn't been called after moving SDIO device driver library to an old Linux platform using platform device and no device tree

I currently porting a sdio device driver (which's working on linux 4.3 or higher) to an old linux platform 3.10.14. The new one uses device tree to manage sdio bus and the driver uses some sdio api like sdio_register_driver, int sdio_probe(struct sdio_func*, struct sdio_device_id*), but the old one uses platform device with api platform_device_register used in the kernel. I installed the module to system have the old kernel and the probe function isn't called, please help me to fix this. I'm a newbie, I hope you guys can understand what I describe.
Thanks,
I tried replace field drv.of_match_table in struct sdio_driver (because of no device tree in old kernel) to drv.name (because platform device detects base on name field) but the probe function still isn't called

Is there any flutter packages that support Bluetooth on windows

Currently I am working on a project that needs to have Bluetooth features in Desktop
But I didn't find any working packages.
Can any one suggest me the good packages ??
check out this link.
https://www.tldevtech.com/best-bluetooth-packages-for-flutter/
From the link, quick_blue(https://pub.dev/packages/quick_blue) library supports Bluetooth features in Desktop from Flutter.
Try those BLE packages,they are supported to windows.
https://pub.dev/packages/quick_blue
https://pub.dev/packages/flutter_blue_plugin
From quick_ble package have following features
Scan BLE peripheral
Connect BLE peripheral
Discover services of BLE peripheral
Transfer data between BLE central & peripheral
You can use win_ble package.
This is specifically developed to work for Flutter for Windows. Also it's up to date.
Current version of it is 0.04
You can use win_ble package.
This is specifically developed to work for Flutter for Windows. Also it's up to date.
Check it out here👇
win_ble

STm32L4R5VG firmware upgrade in run time

In my application, I am using STm32L4R5VG as a host MCU. I want to upgrade the firmware of host MCU in run time over USB through the Android mobile app.
I have looked into USB DFU mode, but in that case, my device will enumerate as ST USB and also I need to enable the boot loader with boot pin.
In actuality, my device will connect with the Android mobile app using the CDC class device and enumerates as VCP. So I want to send the firmware file from Android mobile to host MCU over VCP and write into Bank2 of internal flash (as current code is in Bank1). Once the file transfer is done, the device will reboot on its own and check for the latest firmware and boots from Bank2.
I am stuck at how to write at bank2 securely during run time and perform self reset to boot from Bank2.
If anyone already worked on this or know about this then please guide me or point to the link where I can get details for this.

I have version 1.1.0 of my movesense. Can I flash the firmware to 1.9 without any problems with Showcaseapp-1.9.6.apk?

I downloaded the Showcaseapp-1.9.6.apk. (I am on android)
I downloaded 1.9.0_hr_wakeup_DFU.zip
The showcase app does not show my Smart Sensor (movesense) in the app under "movesense connection" also can't select device because its not listed.
The following message from the readme is confusing me:
WARNING: in case the new firmware is not based on the latest Movesense stack, the device looses the capability to be updated!!!
Does this mean I have to update from 1.1 to 1.2 to 1.3 and so on?
Kind regards
No worries, you can update directly from 1.1 => 1.9. However, since your firmware is that old you need to use the "_w_bootloader" DFU packet (contains updated bootloader which was introduced in v1.2). Basic rule is that you'll need the "_w_bootloader" DFU packet if there was softdevice / bootloader change between the two versions.
There may be some issues updating the sensor if you are using the latest Android showcase app (1.9.x). In that case you can download older version from movesense-mobile-lib bitbucket site / downloads. iOS sample app should not have that limitation but you will need also the nrf connect / nrf toolbox apps.
Full Disclosure: I work for the Movesense team

Beginner setup of a nrf52840 dongle

I bought a nordic nrf52840 dongle and I am trying to program it using the nRF connector. I have followed this tutorial https://electronut.in/nrf52840-thread/, and after I create the application.hex I need to flash it in the dongle. However when I try to write this new .hex I have the following error:
nrf-connector-error
I know that I need a bootloader and a SoftDevice, and that probably I need to merge them using some mergehex tool. I can't understand how to create this bootloader and SoftDevice.
Thanks!
To use nRF Connect with USB bootloader you have to shift your application RAM/FLASH regions. RAM should start at 0x20000008 and FLASH should start at 0x1000. That's all you have to do.