Re:Moving to a RTOS on the RP2040
by lloydatkinson on Friday July 05, 2024 @02:46AM
(#40880325)
I believe this has come up before but what are some of the differences between RTIC and Embassy?
[ Parent
| on HN ]
Re:Moving to a RTOS on the RP2040
by Katzenmann on Friday July 05, 2024 @03:03AM
(#40880387)
RTIC is really simple and doesn't use it's own HALs. Also it's macro system makes it hard to modularize your code since all tasks need to be in one module. I've played around with it a bit and it seems like it could be great in the future, but currently not really.
Embassy has it's own HALs which makes it better at async and has also nicer ergonomic IMO
Importantly for RP2040 users, RTIC 2.0.0 is currently single-core only.
I’m using RTIC for the firmware on my STM32H7 based product (https://umi.engineering) and it has been a joy.
Re:Moving to a RTOS on the RP2040
by jamesmunns on Friday July 05, 2024 @01:12PM
(#40884410)
> Embassy has it's own HALs which makes it better at async and has also nicer ergonomic IMO
Worth noting, you don't HAVE to use the embassy HALs with the embassy executor. However, AFAIK, the only mainstream non-embassy HALs that supports async is the ESP32 HALs.
There's no technical lock in, it's just that everyone I've seen implementing async support (outside ESP32) tends to do it within the Embassy project today. That may change over time.
Re:Moving to a RTOS on the RP2040
by Katzenmann on Saturday July 06, 2024 @06:18AM
(#40889444)
The Atsamd-rs dev has been working on async support without embassy as far as I know but I don't know if it's usable yet
One of the things not immediately apparent for people coming to Embassy is that you can mix and match RTIC with the Embassy HALs. So the more appropriate comparison is RTIC vs the Embassy async executors.