1. 13

  2. 2

    Arduino & MicroPython are two of my favourite tools for when I’m screwing around with microcontrollers. The ultimate cool feature would be if Arduino made it easy to link Arduino C++ into a project-specific MicroPython runtime to make it easy to write native drivers and then high level app logic…

    1. 1

      I know almost nothing about the Arduino ecosystem, how much SRAM do these devices typically have? The ones I looked at on their web site all seemed to have 32 KiB, but the pyboard seems to have 192 KiB. I’m curious because we’re working on a (soon to be open source) CHERI microcontroller and RTOS and, in about 200 KiBs of RAM, we have a demo that runs an MQTT client, mBedTLS, a network stack, and the microvium JavaScript interpreter, all in separate compartments with strong isolation between them (along with an unprivileged scheduler, a shared heap, and full spatial and temporal memory safety for C/C++). I’m wondering if micropython would fit in a compartment on our system as an alternative to JavaScript.

      1. 1

        Arduino was originally for a specific set of AVR boards but has expanded to support many different boards and CPU architectures. I mostly use it with esp32 boards (with 0.5-8M of ram depending on the board) and ARM Cortex M7 boards with similar amounts of RAM.

    2. 1

      Link to MicroPython docs

      MicroPython implements Python 3.4 and some select features of Python 3.5 and above.

      These select features seem to include await/async, type hints, and :=.