Musical/visual/dance performance of Borut Kržišnik's new album, Utopia, with Ryuzo Fukohara dancing and triggering / modulating sounds and projections by Simon Svetlik.
 
 
 
 
 
 
Go to file
Jurij Podgoršek 7a2d2b8d29 Zadnja generalka 2024-09-26 19:40:14 +02:00
AHRSensor Kotni vektorji, kup popravkov 2024-09-26 15:04:21 +02:00
boards Documentation update, base sketch for proto sensor 2024-08-20 14:02:45 +02:00
doc Documentation update, base sketch for proto sensor 2024-08-20 14:02:45 +02:00
lib RTIMUlib sketches (not used) 2024-09-26 15:29:48 +02:00
linux-receiver Popravki linux sprejemnika 2024-09-26 15:04:46 +02:00
src Popravki senzor kode, sprejemnika in monitor skripte 2024-09-26 15:49:08 +02:00
.gitignore Documentation update, base sketch for proto sensor 2024-08-20 14:02:45 +02:00
LICENSE Add initial arduino sketches, the js server/relay and LICENSE 2024-07-16 16:29:25 +02:00
README.org Documentation update, links to sources 2024-09-16 00:18:44 +02:00
build.sh Lilygo T7 base env, update source files (working prototype!) 2024-09-04 15:03:31 +02:00
dokumentacija.jpg Initial readme 2024-07-16 11:52:01 +02:00
flash.sh Lilygo T7 base env, update source files (working prototype!) 2024-09-04 15:03:31 +02:00
guix-shell.sh README update, some arduino/pio updates, basic WIP GUI 2024-09-03 15:04:59 +02:00
init.sh Documentation update, base sketch for proto sensor 2024-08-20 14:02:45 +02:00
monitor.sh Popravki senzor kode, sprejemnika in monitor skripte 2024-09-26 15:49:08 +02:00
package.json Add initial arduino sketches, the js server/relay and LICENSE 2024-07-16 16:29:25 +02:00
platformio.ini RTIMUlib sketches (not used) 2024-09-26 15:29:48 +02:00
requirements.txt Documentation update, base sketch for proto sensor 2024-08-20 14:02:45 +02:00
utopia.scd Zadnja generalka 2024-09-26 19:40:14 +02:00
utopia_mapiranje.scd Zadnja generalka 2024-09-26 19:40:14 +02:00

README.org

C2 - utopia

Musical/visual/dance performance of Borut Kržišnik's new album, Utopia, with Ryuzo Fukohara dancing and triggering / modulating sounds and projections by Simon Svetlik.

We plan to plant 5-6 sensors on Ryuzo, the IMU signals will be converted into MIDI for Borut in Simon.

Code

Arduino sensor

Arduino code that reads linear acceleration, sensor fused quaternion orientation data and the battery voltage on an ESP32S3 connected to an Adafruit BNO055 orientation sensor.

NOTE: you have to set the sensor ID via source! And the receiver's mac address. Linux monitor mode can receive packages pointed to other mac addresses though.

Arduino source (adafruit BNO055 on ESP32S3) Arduino source (adafruit BNO055 on an OlimexESP32S3)

Arduino receiver

Arduino source (ESP32S3 receiver) This may be simpler since it doesn't depend on the wifi card used, but the max rate seems to be about 160 packets per second.

Linux receiver

You need a wifi card that supports monitor mode for this. Two scripts are provided to turn monitor mode on/off; monitor_on.sh and monitor_off.sh. Run the receiver with pozeni.sh, the receiver's code in C can be found in main.c.

This way, around 700-800 packets can be received in a second. Also OSC packages are sent directly to supercollider, bypassing the SLIP decoder.

Supercollider receiver code

SLIPDecoder source

Library for decoding SLIP encoded OSC data via serial USB directly into supercollider. SLIPDecoder source

Microcontrollers

LilyGo ESP32-S3

https://www.lilygo.cc/products/t7-s3 Pinout

Sometimes doesn't want to flash; hold BOOT button and click RESET to enter flash mode. cnmat/OSC SlipEncodedSerial needed a modification; constructor argument typecast to HWCDC.

Should be compiled with -DARDUINO_USB_CDC_ON_BOOT=1 to enable USB CDC.

Olimex ESP32-S2-DevKit-Lipo-USB microcontroller

Sensor (Adafruit BNO055)

Materials

raw documentation

We also need some velcro and elastic tape to make sensors easily mountable and protoboards to hold it all together compactly designed 3d printed cases.

And a charging station for batteries (TODO).