Snacast firmware

Hi @LatherConch

Here’s some loose instructions that get the device going, at present the device buttons don’t work. I plan on re-visiting that when I get some time and setting up some CI / CD scripts so I don’t have to keep rebuilding by hand, and later fixing the buttons.

Pretty much as per the instructions under installation on: snapclient/README.md at master · CarlosDerSeher/snapclient · GitHub

  • clone: git clone https://github.com/CarlosDerSeher/snapclient
  • cd snapclient
  • git submodule update --init
  • Copy the lyrat 4.3 config: cp sdkconfig_PSRAM_lyrat_v4.3 sdkconfig
  • Setup the IDF docker image https://github.com/CarlosDerSeher/snapclient/blob/master/doc/docker_build.md
  • Launch the IDF build docker: sudo docker run --rm -it -v .:/project -w /project -v /dev:/dev --privileged espressif/idf
  • Configure anything you need here:
    • I think the partition table is already set, but I do remember having to tweak it a little bit.
    • Snapclient configuration / or use mDNS
    • Wifi configuration or use the wifi provisioning provided by esp idf.
  • Build the binaries: idf.py build

If all goes well you should have a complete build, you can then use something like esptool to flash using something like:

`esptool.py -p /dev/ttyUSB0 -b 460800 --before default_reset --after hard_reset --chip esp32  write_flash --flash_mode dio --flash_size detect --flash_freq 80m 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/partition-table.bin 0xd000 build/ota_data_initial.bin 0x10000 build/snapclient.bin 0x370000 build/storage.bin`

The Muse should now appear in your snapcast installation.