- What is it?
- Directories and Files
- Supported Boards
- Licensing
- Invitation to Collaborate
- How to Help this Project?
"FreeACT" is a minimal real-time embedded framework (RTEF) based on the FreeRTOS kernel. FreeACT implements the Active Object (a.k.a. Actor) design pattern.
This presentation explaining "FreeACT" is available on YouTube in the following playlist:
The material was originally presented by Miro Samek at the Embedded Online Conference 2020
FreeACT/
+---3rd_party/ - third-party software (needed in the examples)
| +---FreeRTOS-Kernel/ - stripped down FreeRTOS-Kernel (FeeRTOS-202210-LTS)
| +---CMSIS/ - ARM CMSIS
| +---efm32pg1b/ - low-level code to support the EFM32PG1B (Pearl Gecko) board
| +---ek-tm4c123gxl/ - low-level code to support the EK-TM4C123GX (TivaC LaunchPad) board
| +---nucleo-h743zi/ - low-level code to support the STM32 NUCLEO-H743ZI board
|
+---examples/
| +---blinky_button/ - Blinky-Button exammple with FreeACT
| | +---armclang/ - projects for ARM/KEIL with "compiler 6" (armclang)
| | | efm32pg1b.uvprojx - project for EFM32PG1B (Pearl Gecko) board
| | | ek-tm4c123gxl.uvprojx - project for EK-TM4C123GX (TivaC LaunchPad) board
| | | nucleo-h743zi.uvprojx - project for STM32 NUCLEO-H743ZI board
| | +---gnu/ - makefiles for GNU-ARM toolchain
| | ek-tm4c123gxl.mak - makefile for EK-TM4C123GX (TivaC LaunchPad) board
| | nucleo-h743zi.mak - makefile for STM32 NUCLEO-H743ZI board
| |
| +---other-examples/ - other examples coming soon...
|
+---inc/ - include directory
| FreeACT.h - FreeACT interface
+---src/ - source directory
| FreeACT.c - FreeACT implementation
The examples are provided for the following embedded boards:
- TivaC LaunchPad (EK-TM4C123GXL) (ARM Cortex-M4 with single-precision FPU)
- Pearl Gecko (EFM32-SLSTK3401A) (ARM Cortex-M4 with single-precision FPU)
- STM32 NUCLEO-H743ZI (ARM Cortex-M7 with double-precision FPU)
- other boards coming in the future...
FreeACT is licensed under the MIT open source license, which is the same used in FreeRTOS.
This project welcomes collaboration! Please help to improve FreeACT, port it to other processors, integrate it with other embedded software, add interesting examples, etc. To avoid fragmentation, this repository is intended to remain the home of FreeACT. To contribute, please clone, fork, and submit pull requests to incorporate your changes.
If you like this project, please give it a star (in the upper-right corner of your browser window):