Documentation
Everything you need to build, flash, and extend the firmware.
Building from source
Requires ESP-IDF v6.0 or newer. AMY sources must be vendored
under components/amy/src/ — see the
vendor instructions.
$ git clone --recursive https://github.com/espressif/esp-idf.git -b v6.0
$ cd esp-idf && ./install.sh esp32s3 && source export.sh
$ cd /path/to/RavinePhoenix.1une.cc
$ git clone --depth 1 https://github.com/shorepine/amy.git /tmp/amy
$ cp -r /tmp/amy/src/* components/amy/src/
$ idf.py set-target esp32s3
$ idf.py build
$ idf.py -p /dev/ttyUSB0 flash monitor
$ cd esp-idf && ./install.sh esp32s3 && source export.sh
$ cd /path/to/RavinePhoenix.1une.cc
$ git clone --depth 1 https://github.com/shorepine/amy.git /tmp/amy
$ cp -r /tmp/amy/src/* components/amy/src/
$ idf.py set-target esp32s3
$ idf.py build
$ idf.py -p /dev/ttyUSB0 flash monitor
Populating the firmware binaries
After idf.py build, copy the four output files into
website/public/firmware/:
$ cp build/bootloader/bootloader.bin website/public/firmware/
$ cp build/partition_table/partition-table.bin website/public/firmware/partitions.bin
$ cp build/boot_app0.bin website/public/firmware/
$ cp build/po33.bin website/public/firmware/firmware.bin
$ cp build/partition_table/partition-table.bin website/public/firmware/partitions.bin
$ cp build/boot_app0.bin website/public/firmware/
$ cp build/po33.bin website/public/firmware/firmware.bin
UART shell reference
Connect at 115 200 baud and press Enter:
po33> help # show all commands
po33> play # start sequencer
po33> stop # stop sequencer
po33> bpm 140 # set tempo (60..240)
po33> pattern 5 # choose pattern 0..15
po33> rec 2 # record into slot 2
po33> stoprec # stop recording
po33> free # heap stats
po33> save # persist patterns + samples
po33> load # reload from flash
po33> sleep # enter deep sleep immediately
po33> play # start sequencer
po33> stop # stop sequencer
po33> bpm 140 # set tempo (60..240)
po33> pattern 5 # choose pattern 0..15
po33> rec 2 # record into slot 2
po33> stoprec # stop recording
po33> free # heap stats
po33> save # persist patterns + samples
po33> load # reload from flash
po33> sleep # enter deep sleep immediately