High-level language for ESP32 just got faster
Posted: Thu Jun 30, 2022 6:14 am
Over the last few months, we have worked hard on making Jaguar -- the Toit language based development environment for the ESP32 -- faster and better. Among other things, we have added support for 1-Wire, RMT, Soft AP, memory isolated drivers, and light-weight sampling-based profiling -- and we have improved the basic functionality for iterating really fast on your ESP32 code through live reloading. Everything is open source and built by a team of engineers that built the original V8 JavaScript engine for Google Chrome.
It takes less than 5 minutes to get started and then you can develop, update, and restart your code in less than two seconds via WiFi.
https://github.com/toitlang/jaguar
https://tinyurl.com/54ztsf2t
With the release of Jaguar v1.2.6 (today), we have improved core performance by 35% and we have added a much better garbage collector that leaves more memory available to your applications. We hope you'll give it a spin
--------------------
With Jaguar v1.2.6 you can now do your firmware updates over WiFi using 'jag firmware update':
and 'jag monitor' automatically decodes stack traces and profiling information:
It takes less than 5 minutes to get started and then you can develop, update, and restart your code in less than two seconds via WiFi.
https://github.com/toitlang/jaguar
https://tinyurl.com/54ztsf2t
With the release of Jaguar v1.2.6 (today), we have improved core performance by 35% and we have added a much better garbage collector that leaves more memory available to your applications. We hope you'll give it a spin
--------------------
With Jaguar v1.2.6 you can now do your firmware updates over WiFi using 'jag firmware update':
Code: Select all
[.....]$ jag firmware update -d agitated-physics
Updating firmware on 'agitated-physics' to Toit SDK v2.0.0-alpha.10
100% 1174k ⠠ [🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱🐱]
Code: Select all
[.....]$ jag monitor
Starting serial monitor of port '/dev/ttyUSB1' ...
[toit] INFO: starting <v2.0.0-alpha.10>
[jaguar] INFO: running Jaguar device 'agitated-physics' (id: '3452b85a-3f30-4900-804a-15c724eea9ba') on 'http://192.168.86.128:9000'
[jaguar] INFO: starting program 748381dd-849b-5cae-b0f5-f324c45fd48b
******************************************************************************
Decoded by `jag monitor` <2.0.0-alpha.10>
******************************************************************************
Profile of Richards (874 ticks, cutoff 1.0%):
25.2% Scheduler.schedule richards.toit:173:3
19.0% TaskControlBlock.run richards.toit:284:3
8.7% TaskControlBlock.check_priority_add richards.toit:297:3
6.9% TaskControlBlock.is_held_or_suspended richards.toit:274:3
6.9% Scheduler.queue richards.toit:216:3
6.3% WorkerTask.run richards.toit:371:3
5.5% DeviceTask.run richards.toit:347:3
4.3% HandlerTask.run richards.toit:393:3
3.2% Scheduler.release richards.toit:204:3
2.9% Scheduler.suspend_current richards.toit:196:3
2.6% Packet.add_to richards.toit:442:3
2.1% Packet.link= richards.toit:436:3
1.8% IdleTask.run richards.toit:323:3
1.5% TaskControlBlock.mark_as_not_held richards.toit:268:3
******************************************************************************
Richards - time per iteration: 920.43 ms (total 9.204263s)
Richards - allocated per iteration: 0.886 kb