FreeRTOS Communication between tasks - Physical design

This page summarizes the projects mentioned and recommended in the original post on /r/embedded

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • cFE

    The Core Flight System (cFS) Core Flight Executive (cFE)

    https://github.com/nasa/cFE Here is somewhat an example of what I mean. Although, I believe their architecture actually pokes each thread and uses pipes rather than masking as I was talking about.My stuff doesn’t live anywhere to link sadly.

  • FreeAct

    FreeAct is a minimal Active Object (Actor) framework for FreeRTOS

    You will also need to be careful with blocking, because this clogs the event-loop that each of your tasks will be running. Among others, that means that you cannot use vTaskDelay(), for example. Instead, you would need to replace all such blocking mechanisms with event-driven equivalents. For example, you need to implement time-events instead of the blocking delay(). Here, you might want to take a look at the "FreeACT" minimal real-time framework based on FreeRTOS.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • qpc

    QP/C Real-Time Embedded Framework/RTOS for embedded systems based on active objects (actors) and hierarchical state machines

    The QP/C framework already seems to solve all your problems, so if you're asking how to organize your code, this is the best answer you can get. It also seems a little inconsistent that you are taking FreeRTOS, so you are not considering writing your own RTOS kernel. But at the same time, you are rolling out your own event-driven framework as though it was somehow easier, which is not the case and probably quite the opposite.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts