Hi @jpnorair! Indeed, the Zephyr integration is a bit unusual. In a nutshell, Zephyr has a pretty sophisticated structure and each Zephyr module is shipped as a standalone package. It might be a tedious task, but I believe it’s possible to point PlatformIO to custom Zephyr packages using the platform_packages
option, for example:
[env:nucleo_f401re]
platform = ststm32
framework = zephyr
board = nucleo_f401re
platform_packages =
platformio/framework-zephyr @ file:// /path/to/zephyr/zephyr/sources
platformio/framework-zephyr-mbedtls @ file:// /path/to/zephyr/modules/crypto/mbedtls
platformio/framework-zephyr-hal-st @ file:// /path/to/zephyr/modules/hal/st
platformio/framework-zephyr-canopennode @ file:// /path/to/zephyr/modules/lib/canopennode
.... and so on for all Zephyr packages
Please keep in mind that each Zephyr module should contain a valid package.json
file. Besides, the framework-zephyr
package should also contain PlatformIO build scripts (you can copy them from the original package).