RogerClark wrote:Did you just unzip all the files directly into the hardware folder. If so you need to make a folder called STM32L4 and move the files into that folder then restart your IDE. (as the IDE supports multiple third party cores and each needs to be in their own folder under the hardware folder)

Create a ~/Arduino/hardware/grumpyoldpizza/STM32L4 and put all the files from github in there. Also install the SAMD core to pull in the compiler and such.

There is an official json file where all of this is automated, but because we are in the middle of adding 2 new cpus, so the code is in flux.

RogerClark wrote:Did you just unzip all the files directly into the hardware folder. If so you need to make a folder called STM32L4 and move the files into that folder then restart your IDE. (as the IDE supports multiple third party cores and each needs to be in their own folder under the hardware folder)

Create a ~/Arduino/hardware/grumpyoldpizza/STM32L4 and put all the files from github in there. Also install the SAMD core to pull in the compiler and such.

There is an official json file where all of this is automated, but because we are in the middle of adding 2 new cpus, so the code is in flux.

Experimental because not all the internal locks have been added to avoid entering for example "STOP" mode, while an active peripheral still was ... well, active. But nice to play with.

A new keyword has been added "retained". If you add that to a variable declaration, then it will be treated like a normal initialized data element (".data" section). Except if you return from "STANDBY" mode. In that case it will keep the value it had before entering "STANDBY" mode. So kind of battery backed RAM. L476 has 32k, L432/L433 have 16k of that.

There is now also a "I2S" class, API wise same as has been added to Arduino Zero for their MKRZERO product lately. Figured it would be a waste pusblishing an API that does the same, but is different. N.b there is also a ArduinoSound library (https://www.arduino.cc/en/Reference/ArduinoSound) that is layered ontop of this I2S class. Hence lots of bits to play with, although the current code is the first pass, so expect some bugs.

Also for NUCLEO-L476RG SDIO is exposed on the PC8/PC9/PC10/PC11/PC12/PD2 pins, and SDCARD via SPI on PC10/PC11/PC12/PD2.

The code will work with most breakout boards that have no pullups on CS/DAT3. SDIO is a tad fiddely, as cabling can have an adverse effect.

SPI gets around 2.3MB/sec, SDIO with default speed (read 24MHz) is at roughly 11MB/sec, and SDIO with high speed (read 48MHz) get about 22MB/sec. Write rates differ from card to card though. A class 10 card will not get more than 10MB/sec ...

USB support is now configurable, so that either CDC or CDC+MSC (or none) can be selected.

I extracted your files into C:\Users\Guido\AppData\Local\Arduino15\packages (where other packages like ESP8266, ATTinyCore, etc. reside), but no STM32L4 boards are shown on Arduino menu...
In which folder I have to extract your files?
Thanks
Guido