This system consists of two components:
KellerLightServer: Running on a Raspberry Pi
ESPLightController: Running on an ESP32
Both are connected via a micro-USB cable, communicating via Serial.
The raspberry pi also has a microphone attached to record and process audio data.