This is the Mono Framework for Mono devices based on ESP32.
The goal is to end up with a directories like
xtensa-esp32-elf/
esp-idf/
mono32/
that is, the compiler tool chain, the ESP libraries, and Mono32 framework. The important part is that your PATH
must include the xtensa-esp32-elf/bin
directory, and you must have an environment variable IDF_PATH
pointing to the esp-idf
directory.
To install the dependencies, see
- Espressif IoT Development Framework.
- Tool chain: MacOS or Windows or Linux.
To update the dependencies, run update-dependencies.sh
.
For single-step debugging etc., see debugging.md
.
- Create a build system that produces a trivial Mono framework, such that the framework and tool chain are the only dependencies needed to build applications and flash them to Mono32 hardware.
- Setup continuous integration infrastructure to monitor and build when this repo changes.
- Make the trivial framework and Mono32 work with OpenOCD such that it is possible to single-step debug.
- Auto detect which serial port the Mono32 is running on so that one does not have to specify the port.
- Make transfer speed (flash) configurable (
--baud 2000000
). - Port one app at a time to this new framework, building up the framework along the way.
- Generate (parts of)
mono.mk
instead of hard-coding settings dug out from ESP-IDF. - Cleanup non-header files, eg. in
console/
. - Encapsulate ESP32 SPI to the screen into mbed spi.
- Autobuild a distributable bundle with the libs, headers, and xtensa-esp-elf tool chain.