/aiko_engine_mp

microPython event based engine supporting network messages (MQTT), times and various hardware drivers

Primary LanguagePythonOtherNOASSERTION

Aiko Engine MP (microPython)

Contents

Pages

The Aiko Engine MP provides ...

  • Modular microPython based framework
  • Abstractions for event handling, networking and timers
  • Currently supported and tested on a range of ESP32 development boards
  • Support for low-level LED panel graphics functions
  • Support for OLED screens
  • Support Lolibot robotics project
  • Download the source code from https://github.com/geekscape/aiko_engine_mp and cd into it: git clone https://github.com/geekscape/aiko_engine_mp && cd aiko_engine_mp
  • Ensure you have a compatible board or compatible port
  • Make sure you have a Python virtual environment set-up, including virtualenvwrapper
  • Create mkvirtualenv upython and work on the new virtual environment workon upython
  • Install AMPY from Adafruit pip install -U adafruit-ampy
  • Plug in your ESP32 device and make sure you can see it, e.g ls /dev/tty.* provides e.g /dev/tty.wchserial1410
  • Export the serial port to an environment variable, so AMPY can use it, e.g export AMPY_PORT=<port> where port is the device address shown by the ls command above
  • Run the Aiko Engine MP flash script, i.e ./scripts/flash_standard.sh

Note: For Lolin32-Lite boards, the serial port is notoriously problematic and requires a slight delay in order for the connection to occur properly. If you're seeing errors that look like ampy.pyboard.PyboardError: could not enter raw repl then this is probably related.

In this case, set a delay to sleep the program when it iss uploading the files: export AMPY_DELAY=4 will usually do the trick.

Associated open-source ESP32 hardware ...