alexandre burton
banner
burton.artificiel.org
alexandre burton
@burton.artificiel.org
montréal
Ah but you wanted an « event »!

That being said is the effect in the direction of what you are looking for?
February 21, 2025 at 2:56 PM
what happens if you click here: rb.gy/i3e3bv
February 21, 2025 at 2:38 AM
bon bon bon, on comprend: Lehmann ça sonne Suisse heh... 😉
February 4, 2025 at 4:31 AM
haha yes fresh out of a project with over 1000 devices, the update workflow, flexibility of an on-board interpreter and decent multitasking were all central to sanity.
January 27, 2025 at 5:53 PM
Le OTA passe par un transfert qui est une réaction du firmware (donc, malléable). dans une optique "unattended" le ESP peux checker un URL pour une sorte de manifeste et décider si un download HTTP doit être effectué, et ensuite se rebooter sur l'autre partition docs.espressif.com/projects/esp...
Over The Air Updates (OTA) - ESP32 - — ESP-IDF Programming Guide latest documentation
docs.espressif.com
January 27, 2025 at 5:52 PM
this does not comply with your dream’s criteria of «not connecting to wifi» (although one way or another, you need a form of connection to update things?) but it’s simple to have a switch mode between «update-aware» and «performance time» where the radios are down...
January 27, 2025 at 6:20 AM
in all cases once you’ve experienced the auto-downloaded OTA updates, it’s hard to go back to the old «upload firmware» workflow… NB VSCode + arduino-cli is more flexible than Arduino IDE (ex: it can be scripted to rename the compiled .bin at the correct spot for httpd upon successful compilation).
January 27, 2025 at 6:20 AM
these things can be expressed with a DSL implemented in lua (bridging the Lua State transparently to C++ functions and objects references). custom filters/generators can be added to ESP8266Audio as needed (liftable from Csound or pd). obviously CPU limits are quickly discovered.
January 27, 2025 at 6:20 AM
additional design+implementation effort to be done on the lua interface -> what kind of configurability is required by the «composition» layer, and (probably) by the synth/processing routing, and (also probably) parametric mapping of sensor inputs.
January 27, 2025 at 6:20 AM
+ github.com/sfranzyshen/... to provide a dynamic, interpreted playground. then you make the ESP connect to wifi and mDNS-discover an HTTP provider for OTA firmware and .lua) — so when the firmware or .lua (or even sound files) are updated on the server, the connected devices update themselves.
GitHub - sfranzyshen/ESP-Arduino-Lua: Lua scripting engine integrated in Arduino IDE as a Library for ESP8266/ESP32
Lua scripting engine integrated in Arduino IDE as a Library for ESP8266/ESP32 - sfranzyshen/ESP-Arduino-Lua
github.com
January 27, 2025 at 6:20 AM
then you can leverage FreeRTOS to build deterministically threaded code, and use arduino libs... starting with github.com/earlephilhow... (to interface I2S codecs sur as on the Lyra-T (or your own) — absolute requirement for decent audio)
GitHub - earlephilhower/ESP8266Audio: Arduino library to play MOD, WAV, FLAC, MIDI, RTTTL, MP3, and AAC files on I2S DACs or with a software emulated delta-sigma DAC on the ESP8266 and ESP32 and Pico
Arduino library to play MOD, WAV, FLAC, MIDI, RTTTL, MP3, and AAC files on I2S DACs or with a software emulated delta-sigma DAC on the ESP8266 and ESP32 and Pico - earlephilhower/ESP8266Audio
github.com
January 27, 2025 at 6:20 AM
your dream is achievable (presuming the funding for it is also not a dream). the espressif tooling is a harsh place and their audio examples are mostly aimed at IoT streams, voice synth, etc, but you can build upon github.com/espressif/ar... and the arduino loop() function becomes a FreeRTOS task.
GitHub - espressif/arduino-esp32: Arduino core for the ESP32
Arduino core for the ESP32. Contribute to espressif/arduino-esp32 development by creating an account on GitHub.
github.com
January 27, 2025 at 6:20 AM