
FreeRTOS meets Rust - cpeterso
http://www.hashmismatch.net/freertos-meets-rust/
======
kartD
Little off topic, but does anyone have a good resource or tutorial for
FreeRTOS. I find freertos.org sparse and not really illustrative.

~~~
stephen_g
The lack of documentation was one of the reasons I ditched FreeRTOS and moved
to ChibiOS, which I'm enjoying a lot. It has a much nicer API and cleaner
codebase, really good demo projects, and a good discussion forum where the
main developer usually answers any questions in a day or two. Unfortunately it
still isn't that much better in terms of written documentation though.

~~~
fest
The lack of vendor-agnostic hardware abstraction layer (drivers) in FreeRTOS
was my main reason to use ChibiOS for my projects.

Although, libopencm3 has progressed nicely, so FreeRTOS + libopencm3 could now
be a decent alternative to ChibiOS.

------
DCRichards
This could be interesting for things like Pebble which is based on FreeRTOS,
would be great to do some modifications on that level

[https://developer.pebble.com/blog/2014/05/23/FreeRTOS-
Modifi...](https://developer.pebble.com/blog/2014/05/23/FreeRTOS-
Modifications-From-Pebble/)

------
ambrop7
The problem with FreeRTOS is that it comes without batteries included, like
drivers, networking and filesystem. I see such features as a primary advantage
of an RTOS compared to a home-grown solution without threads (i.e. just main
and interrupts).

For those who like a full OS, RTEMS is a more complete solution.

~~~
kirrent
To be fair, that's by design and they make no secret of the fact that it's not
a fully featured OS. FreeRTOS has a lot of that stuff available but I think
that part of the reason it's so popular is because of how bare-bones,
lightweight, and portable it is. From their FAQ: What is a Real Time Kernel?
See the page "what is an RTOS" for a more detailed explanation than provided
here.

A Real Time Operating System can provide many resources to application writers
- including TCP/IP stacks, files systems, etc. The Kernel is the part of the
operating system that is responsible for task management, and intertask
communication and synchronisation. FreeRTOS is a real time kernel.

