RTEMS | Implementing MicroPython Support and Packaging It For RTEMS (#22)

Sameer Srivastava (@l1zard) gitlab at rtems.org
Mon Aug 25 19:43:00 UTC 2025




Sameer Srivastava commented: https://gitlab.rtems.org/groups/rtems/-/work_items/22#note_129429


Updated the [issue](https://gitlab.rtems.org/l1zard/micropython/-/issues/1#note_129428) tracking tests (594/594 passing tests).  

We had plans to enable `zlib`, but it is being replaced with `deflate`, which is easy to enable, but on the port we currently don't have streams because we are developing it on qemu-pc686. Streams are required by the only class provided in deflate - DeflateIO. More [here](https://docs.micropython.org/en/latest/library/deflate.html#classes).  

`binascii` has been enabled.  

The latest updates have been pushed to the [port-files](https://gitlab.rtems.org/l1zard/micropython/-/tree/port-files/ports/rtems) branch.  

Update on `_thread`:  
I was able to successfully create and run MicroPython threads using a Tasks based implementation.  

Initially locks were implemented using RTEMS Semaphores, but since that would have limited the total number of locks that can be allocated, based on Chris' suggestion I switched to `rtems_mutex`, which made locks work much better (more passing tests), but now the threads don't run immediately. I can create a thread and the task gets created, it gets added to the linked-list tracking thread state, but it only runs when I allocate a new lock and call its `acquire()` method. I suspect that this is due to interrupts not being configured properly. Awaiting feedback on this. The latest threads code is in the [threads_experiments](https://gitlab.rtems.org/l1zard/micropython/-/tree/threads_experiments/ports/rtems) branch.  

I have also created a [code-cleanup](https://gitlab.rtems.org/l1zard/micropython/-/commits/code-cleanup) branch with updated history to better follow RTEMS [coding conventions](https://docs.rtems.org/docs/main/eng/coding-conventions.html) (comments use `/* */` instead of `//`), add include guards, etc.

-- 
View it on GitLab: https://gitlab.rtems.org/groups/rtems/-/work_items/22#note_129429
You're receiving this email because of your account on gitlab.rtems.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/bugs/attachments/20250825/c2292c00/attachment.htm>


More information about the bugs mailing list