Is it possible to manually update libopencm3?

I am trying to run the libopencm3 USB serial example for the STM32 Discovery F4.

I created a new platformio project, set the board to Discovery F4, set the framework to libopencm3, and put the above C file in the src folder.

When I click build, I get errors that symbols such as rcc_hse_8mhz_3v3, RCC_CLOCK_3V3_168MHZ and rcc_clock_setup_pll are undefined.

I can see where these symbols are defined within the libopencm3 source on github. When I look at the corresponding file under my .platformio directory, I see that they are missing. Looking at the version.txt in my framework-libopencm3 folder, I see the contents is 16_10_2015, suggesting that this is quite an old version. But according to pio update, this is the latest version available with platformio.

Because libopencm3 is treated as a framework, rather than a library, it is not clear to me if or how I could update this manually. Any suggestions would be most appreciated.

You could open an issue in Issues · platformio/platform-ststm32 · GitHub so the PlatformIO team updates the framework to the latest released version…

There is already a github issue requesting this, which has been open for the past 9 months.

Users such as myself, and the OP of that github issue have indicated willingness to work on this issue. However, it seems that the process for building frameworks and making them available from platformio servers is manual, and can only be done by the core dev team.

@ivankravets @valeros When is the next update of the STM32 framework planned? They are a bit dated now. Should I open an issue and if so in which GitHub repo? Or is it possible to override it easily?