XOD support for Wio Terminal

The Seeed Studio Wio Terminal is a SAMD51-based microcontroller with wireless connectivity powered by Realtek RTL8720DN. It runs at 120MHz (Boost up to 200MHz), 4MB External Flash and 192KB RAM. It supports both Bluetooth and Wi-Fi providing backbone for IoT projects. The Wio Terminal itself is equipped with a 2.4” LCD Screen, onboard IMU(LIS3DHTR 3-Axis digital accelerometer), microphone, buzzer, microSD card slot, light sensor, and infrared emitter(IR 940nm). On top of that, it also has two multifunctional ports for Grove devices and 40 Raspberry Pi compatible pin GPIO for more add-ons. It has both Wi-Fi and Bluetooth connectivity making it perfect for a range of applications including IoT.

The Wio Terminal provides a package and platform for more advanced projects than the Seeed Grove Beginner Kit that is used for Biomaker training. The Wio Terminal is Arduino-compatible and a wide range of Arduino IDE libraries are available, but would benefit from availability of XOD library support for its specialised hardware.

Matt Wayland has been working hard to generate new libraries for the Wio Terminal, including a basic graphics library for the Wio Terminal LCD, available as:
wayland/wio-terminal-lcd/

The library uses XOD’s color literal data type, so that users can specify colors using the IDE’s built in colour picker. There are four example patches to demonstrate the functionality of the library. To make this (and other graphics libraries) a little easier to use, he created a few new nodes:

wayland/generate-grid/
wayland/generate-sequence/
wayland/moving-average/

Matt has created other XOD libraries specifically for the Wio Terminal:

wayland/wio-terminal-buzzer/
wayland/wio-terminal-sensors/
wayland/wio-terminal-buttons/

(be sure to upload the latest version of these libraries)

Matt is also converting additional libraries to cover LCD functionality such as fonts, loading images, plotting graphs, etc.

To use the Wio Terminal with XOD you will need to edit the file: xod/__packages__/extra.txt and add the following board definition:
https://files.seeedstudio.com/arduino/package_seeeduino_boards_index.json

Thanks to Matt! - and please share any experiences with the Wio Terminal…