Skip to content

v0.1.5

Choose a tag to compare

@github-actions github-actions released this 22 Oct 08:06
· 106 commits to main since this release

evo-esp32 0.1.5 for the Waveshare ESP32-C5-Touch-LCD-2.8: a standalone music player, the evo fabric on a microcontroller.

Files. Two matter: evo-esp32-waveshare-esp32-c5-touch-lcd-28-0.1.5.bin, the firmware, and evo-esp32-sdcard-0.1.5.zip, the card folder (the settings file and a list of radio stations). SHA256SUMS is for checking the download; the "Source code" archives are the code, not something to flash.

Install

  1. esptool 5 on your computer. With Python: pip install esptool (Windows: py -m pip install esptool). Without Python: the standalone esptool binary for Windows, macOS or Linux from esptool's releases.

  2. Plug the board in over its USB-C port. It appears as a serial port with no driver to install: Windows COM3 or similar (Device Manager, Ports), macOS /dev/cu.usbmodem…, Linux /dev/ttyACM0 (your user in the dialout group, or sudo).

  3. Flash, with your port in place of PORT:

    esptool --chip esp32c5 --port PORT write-flash 0x0 evo-esp32-waveshare-esp32-c5-touch-lcd-28-0.1.5.bin
    

    esptool verifies the write by itself. If it cannot connect, hold the board's BOOT button while plugging it in, then run the command again.

  4. The card. A FAT32 microSD card (32 GB or less works as sold). Unzip the card folder onto its root: evoconfig.txt (open it in any text editor and fill in your Wi-Fi name and password) and Radio/, the stations; a share line there names a NAS share or export for the library's Network page. Put your music in folders of your own anywhere on the card: FLAC, WAV and MP3, 44.1 to 96 kHz, with cover.jpg in an album's folder for its picture. Insert the card.

  5. Power on. The music starts within a few seconds; the network joins behind it (its address is in Settings). Tap the Library tab: Card is the card's folders and Radio, a tap on a station plays it; Network is the media servers on your network (a NAS, Plex, MiniDLNA, Volumio), their folders and tracks. evostatus.txt on the card says what the player read and whether it joined.

Every setting, the Settings page, where the controls are in each style, and internet radio (your own .m3u/.pls files, station logos): Configuration. What the board can and cannot play: Hardware.

Updating is the same flash command with the new file. A full flash clears the device's stored network hint; the card keeps your settings, so leave it in.

Known in this release

  • Music on the network: the library's Network page lists the DLNA (UPnP AV) media servers found on the network, and the shares named in evoconfig.txt — SMB 2 or later (share = smb://nas/Music, with a user and password where the server wants one), SMB1 by name only for an old box (smb1://), and NFS version 3 (nfs://nas/volume1/music) — each a tree of folders whose tracks play with the progress ring, seek, shuffle and repeat, as the card's. A file on a web server plays the same way from a playlist entry that carries its length. SMB 3.1.1 is spoken, signed and encrypted where the server requires it; NFS version 4 is not spoken yet, and a server that insists on it says so in the log.
  • From the air: MP3, AAC (AAC-LC and HE-AAC), FLAC and Ogg Vorbis, as one stream or as HLS; the BBC's national stations are in the shipped list. An HE-AAC station is the heaviest thing the board does and plays in real time with a little of the core to spare.
  • Multiroom three ways, see Multiroom: the player is a Snapcast client (a server named in evoconfig.txt or found on the network); it is a device in Volumio's Multiroom, found and grouped from Volumio's own screen, with its cover and no volume slider; and it is a room of an Evo multiroom group by its Evo id (bottom of Settings).
  • On the 2.4 GHz band, or with a weak signal, the status strip says so: a stream's timing wanders there. 5 GHz is the band for streams.
  • 176.4 and 192 kHz files are beyond the chip and are greyed in the library; 96 kHz plays with the network up.
  • The on-board codec is mono through its speaker and headphone output; stereo is a DAC board on the header (see Audio out).
  • No over-the-air update yet: every update is this flash.

The changes in full: CHANGELOG.


Support this project

evo-esp32 is designed, built and maintained by one developer in his own time. If it has earned a place on your shelf, you can support its development:

evo-esp32 is provided as-is: the fabric and this firmware under the Business Source License 1.1 (converting to Apache 2.0 four years after each release), the SDK others implement against under Apache 2.0. Sponsorship is a thank-you, not a purchase: it buys no priority, no features and no support agreement.