uLisp on M5Stack (ESP32):
support for the LED matrix of the M5Atom Matrix
Last edited on December 14, 2021
I got a good friend join the uLisp fun and he extended my support for the single LED of the M5Atom Lite to support the 25 LEDs of the M5Atom Matrix. The single LED has just the same interface as the LED matrix, as expected.
It has a nice backwards compatible interface, the functions atomled (for C) and atom-led (for Lisp) just have a new second argument index, which is 0 by default, for the first— or, in case of the M5Atom Lite, only—LED.
The C function you can call like this:
atomled(0x00ff00); /* or: */ atomled(0x00ff00, 23);
where 0x00ff00 describes a RGB color in 32 bits.
And the uLisp function you can call very similarly like this:
(atom-led #xffff00) #| or: |# (atom-led #xffff00 23)
I have merged it to my repository ulisp-esp-m5stack already. Activate the new flag #define enable_m5atom_led_matrix in addition to #define enable_m5atom_led to use the whole LED matrix of the M5Atom Matrix instead of just the first LED.
See also built-in LED of the M5Atom Lite.