This has been my big project for the past several months, and it is now ready for it’s first official release!
Yeti is a Python runtime framework designed for use on FIRST Robotics Competition Robots. It effectively isolates the robot-specific python code of your robot into “Modules” – independent python files dynamically loaded at run-time.
When using yeti, you can configure “fallback” modules. If at any time a yeti module fails – it is immediately unloaded. If a fallback module has been configured, then it will be automatically loaded – allowing your robot to cleanly recover from what would have been match-stopping errors.
Yeti also comes with a clean, built-in WebUI for loading, unloading, and reloading live yeti modules. This allows you to make on-the-fly programming changes – loading your new code without even leaving teleoperated mode!
The source code and documentation for Yeti can be found on GitHub.
https://github.com/Team4819/Yeti
Questions, comments and advice are welcome! Bugs can be reported in yeti’s issue tracker:
https://github.com/Team4819/Yeti/issues
Special thanks to Dustin Spicuzza (virtuald) for all of the sound advice given towards the development of yeti!