Sigma Firmware 1.0
El sistema se basa en un bloque de código C++ que rueda en Teensy 32 sobre el core TeensyDuino de Stoffregen y en otro bloque de código lua que rueda de forma independiente sobre NodeMCU en WS8212. Todo el firmware está aún en una fase temprana de desarrollo pero hay varios bloques funcionales que permiten un funcionamiento básico (aunque en fase Beta). El sistema está formado en este momento por unas 25 clases que contienen unas 12000 líneas de código hasta ahora. El sistema es modular y está organizado en varias librerías.
LovSystem
Este es el objeto que forma el core del firmware y rueda el “ciclo central”. El ciclo central es ejecutado una vez por frame y consta de todos los pasos necesarios para construir un nuevo frame.
Se adquieren los valores de los sensores, como posición y movimiento, mensajes MIDI provenientes de Wire, Radio o File, los posibles inputs del usuario y se capturan un grupo de muestras de audio correspondientes a la duración de ese frame.
Con estos valores se hace una extracción de tempo y beat de audio, cada módulo del instrumento MIDI activo realiza sus cálculos y la librería de luz y color calcula en RAM el contenido del nuevo frame que es enviado a los drivers de los LED.
LovAudio
LovCroma
LovMidi
LovWiFi
LovMotion
luaFrim