Home > On-Demand Archives > Talks >
Containers and Managed Software on Micro-controllers
Kasper Lund - Watch Now - EOC 2021 - Duration: 36:05
Thank you! The Toit firmware uses a number of supporting libraries, such as Mbed TLS, Apache Nimble, and lwIP. Isolated from those, the Toit virtual machine takes up around 165kb of ROM in the .text segment and approximately 2kb of RAM in the .data and .bss segments.
Toit applications are compiled to an intermediate form that is interpreted on the device. Everything is well set up to support compiling directly to object code, so we are probably going to explore that next. For now, the interpretation supports live reloading which is pretty neat too: https://youtu.be/cU7zr6_YBbQ.
Seriously impressive vision of how the future of firmware could be. I would really like to see this kind of thing available for far more devices. Excellent presentation!
Thank you! We are currently integrating the first open source contributions on new ports starting with RISC-V based device like the ESP32-C3, so this is definitely coming to more devices. If you want to take the open source version for a spin, we've made that really easy through Jaguar: https://github.com/toitlang/jaguar.
If you're the type that likes to see it first, I have just uploaded a three minute YouTube video of Jaguar in action: https://www.youtube.com/watch?v=rXbe_1hyz80. Enjoy!
Your presentation and demo were really good. How much code space is used by the toit firmware? Is the code compiled to object code on the PC or is there some level of interpretation being performed on the target?