BlockDevice driver for NUCLEO_L476RG to write internal flash

I’m trying to port the mbed-os-example-lorawan-fuota example. It requires a driver class inheriting from BlockDevice. Now, QSPIF ist not configured in mbed-os and I read that the NUCLEO_L476RG wouldn’t support QSPI (although Quad-SPI is a listed feature of that board here ) thus I can’t use QSPIFBlockDevice.

Is there a BlockDevice driver I can use with that board and how is it configured?

Thanks in advance!

Without looking specifically at your board, the HeapBlockDevice is a class made to prototype with BlockDevices without having any dedicated hardware, as long as your microcontroller has enough RAM available. Downside is that upon Reset or Power Cycling, all your data will be lost. Take a look at https://os.mbed.com/docs/mbed-os/v6.5/apis/heapblockdevice.html for the documentation. I’ve had it working with the example provided by Mbed.

Also, you might want to check out STM32H743ZI2 QSPI Support, where you can find the kind of modifications you need to apply to your target to have it working with QSPI.

Hope it helps !

It turned out, that the NUCLEO board can use SQPIF for external flash but to access internal flash vie block device you simply use FlashIAPBlockDevice with the start-address and intended length.