Supported Platform
What does "Supported Platform" Mean?
A platform refers to a combination of hardware and operating system (OS). A supported platform satisfies the following criteria:
✅ Reference project exists and is accessible to the core F Prime team.
📚 Platform library exists and is used as part of a reference application. The platform library provides OSAL implementation, cmake support, drivers, and anything else needed to build and run the Reference project.
🔁 Tested continuously as part of a continuous integration (CI) pipeline (e.g., unit tests, integration tests).
🔧 Actively maintained by the F Prime community or core F Prime team.
📄 Documented build and run instructions are available for users.
Supported Platforms
Hardware | OS | Architecture | Reference Project |
---|---|---|---|
BeagleBone Black | VxWorks 7 | ARMv7 | fprime-vxworks-reference |
Raspberry Pi | Linux | ARMv8 | fprime-workshop-led-blinker |
x86 | Linux | x86_64 | F Prime Ref |
Apple M* | Darwin | ARM | F Prime Ref |
Target Platforms (Planned Support)
These are platforms that the F Prime community or core team is actively working or planning to support. They may have partial implementations, early-stage deployments, or nothing yet.
Hardware | OS | Architecture | Status | Reference Project |
---|---|---|---|---|
PyCubed | Baremetal | RISC-V | In development | fprime-baremetal-reference |
PyCubed | Zephyr | RISC-V | In development | |
3PySquared | Baremetal | ARM | In development | fprime-baremetal-reference |
3PySquared | Zephyr | ARM | In development | |
Pi Pico 2 | Baremetal | RISC-V | In development | fprime-baremetal-reference |
Pi Pico 2 | Zephyr | RISC-V | In development | |
Pi Pico | Baremetal | ARM | In development | fprime-baremetal-reference |
Feather M4 | FreeRTOS | ARM | In development | |
HPSC | VxWorks 7 | RISC-V | In development | |
HPSC | Linux | RISC-V | In development | |
PolarFire SoC | VxWorks 7 | RISC-V | In development | |
PolarFire SoC | Linux | RISC-V | Not started | |
GR712RC | VxWorks 7 | SPARC V8 | Not started | |
Vorago | Baremetal | ARM | In development | |
VOXL2 | Linux | ARM64 | In development |
How to Contribute a New Supported Platform
We welcome contributions to expand the list of supported platforms! Here’s how to get started:
- Pick a hardware and OS platform that is not in development or is not listed.
- Create a platform library. Take a look at
How-To: Develop an F Prime Library
. - Create a reference project for your platform that uses your platform library. Use
fprime-vxworks-reference
orfprime-baremetal-reference
as examples for the file structure. - Include build, run, and hardware setup instructions in a README.md.
- Set up CI for your reference project and have CI run the F Prime provided integration test scripts.
- Optional: submit a request to add your reference project to fprime-community by opening a discussion. Provide platform description in your request.
Tip
- Follow the naming and file-structure convention as the example reference projects.
- Avoid using hardcoded paths in your toolchain file. Use environment variables.
- Test on actual hardware if possible—emulated environments may behave differently.