2
0

Тайлбар байхгүй

philippe44 26c9a9e897 Verify that SPI works with SH1106 5 жил өмнө
.settings e51604dd3d more tweak 5 жил өмнө
build-scripts 90d52dabaf More refactoring 5 жил өмнө
components 26c9a9e897 Verify that SPI works with SH1106 5 жил өмнө
idf-patch c44c31f6d4 i2s ... 5 жил өмнө
main 90d52dabaf More refactoring 5 жил өмнө
plugin 1ca33a3330 allow player to change its name 5 жил өмнө
server_certs 53369475dc More OTA work 5 жил өмнө
.cproject 7c37a0cb1a tweaking JTAG debugging on Windows 5 жил өмнө
.gitattributes a5b37a13c9 :confetti_ball: Added .gitattributes & .gitignore files 5 жил өмнө
.gitignore c85d2afbaf json button mapping config 5 жил өмнө
.gitmodules f3c41e2f6d cleanup of unused submodules 5 жил өмнө
.project 7c37a0cb1a tweaking JTAG debugging on Windows 5 жил өмнө
CMakeLists.txt 07873a7710 Jenkins integration - Migrate to CMake 5 жил өмнө
Dockerfile 6cf04a3a83 Merge branch 'master' into nvs_parameters 5 жил өмнө
Makefile 7c37a0cb1a tweaking JTAG debugging on Windows 5 жил өмнө
Makefile_std.mk 8aedca48a7 OTA Work in progress 5 жил өмнө
README.md 55e0efdb4a Update README.md 5 жил өмнө
TODO 3304571312 add comments & and a TODO 5 жил өмнө
alltags.txt c5fc6b8a81 nvs configuration fixes 5 жил өмнө
github.pem 53369475dc More OTA work 5 жил өмнө
makeBuildDocs.sh b1f234d460 Added in better build instructions. Added script for generating documentation and scripts to add to release zip. (#12) 5 жил өмнө
non-ota-partitions.csv 372dcb1640 align non-ota build 5 жил өмнө
partitions.csv e9ba659b4f Refactor configuration. needs new recovery image! -- release 5 жил өмнө
repo.xml a51ff972ea repo update 5 жил өмнө
sdkconfig.defaults f2920675f8 config file clean-up 5 жил өмнө

README.md

Squeezelite-esp32

Supported Hardware

SqueezeAMP

Works with the SqueezeAMP see here and here. Add repository https://raw.githubusercontent.com/sle118/squeezelite-esp32/master/plugin/repo.xml to LMS if you want to have a display

Use the squeezelite-esp32-SqueezeAmp-sdkconfig.defaults configuration file.

ESP32-A1S

Works with ESP32-A1S module that includes audio codec and headset output. You still need to use a demo board or an external amplifier if you want direct speaker connection.

ESP32-WROVER + I2S DAC

Squeezelite-esp32 requires esp32 chipset and 4MB PSRAM. ESP32-WROVER meets these requirements. To get an audio output an I2S DAC can be used. Cheap PCM5102 I2S DACs work others may also work. PCM5012 DACs can be hooked up via:

I2S - WROVER
VCC - 3.3V
3.3V - 3.3V
GND - GND
FLT - GND
DMP - GND
SCL - GND
BCK - (see below)
DIN - (see below)
LCK - (see below) FMT - GND
XMT - 3.3V

Use the squeezelite-esp32-I2S-4MFlash-sdkconfig.defaults configuration file.

Configuration

To access NVS, in the webUI, go to credits and select "shows nvs editor". Go into the NVS editor tab to change NFS parameters. In syntax description below <> means a value while [] describe optional parameters.

I2C

The NVS parameter "i2c_config" set the i2c's gpio used for generic purpose (e.g. display). Leave it blank to disable I2C usage. Note that on SqueezeAMP, port must be 1. Syntax is

sda=<gpio>,scl=<gpio>,port=0|1

SPI

The NVS parameter "spi_config" set the spi's gpio used for generic purpose (e.g. display). Leave it blank to disable SPI usage. The DC parameter is needed for displays. Syntax is

data=<gpio>,clk=<gpio>[,dc=<gpio>][,host=0|1|2]

DAC/I2S

The NVS parameter "dac_config" set the gpio used for i2s communication with your DAC. You can also define these at compile time but nvs parameter takes precedence. Note that on SqueezeAMP and A1S, these are forced at runtime, so this parameter does not matter. If your DAC also requires i2c, then you must go the re-compile route. Syntax is

bck=<gpio>,ws=<gpio>,do=<gpio>

SPDIF

The NVS parameter "spdif_config" sets the i2s's gpio needed for SPDIF.

SPDIF is made available by re-using i2s interface in a non-standard way, so although only one pin (DO) is needed, the controller must be fully initialized, so the bit clock (bck) and word clock (ws) must be set as well. As i2s and SPDIF are mutually exclusive, you can reuse the same IO if your hardware allows so.

Note that on SqueezeAMP, these are automatically defined, so this parameter does not matter.

Leave it blank to disable SPDIF usage, you can also define them at compile time using "make menuconfig". Syntax is

bck=<gpio>,ws=<gpio>,do=<gpio>

Display

The NVS parameter "display_config" sets the parameters for an optional display. Syntax is

I2C,width=<pixels>,height=<pixels>[address=<i2c_address>][,HFlip][,VFlip]
SPI,width=<pixels>,height=<pixels>,cs=<gpio>[,HFlip][,VFlip]
  • VFlip and HFlip are optional can be used to change display orientation

The NVS parameter "metadata_config" sets how metadata is displayed for AirPlay and Bluetooth. Syntax is

[format=<display_content>][,speed=<speed>]
  • 'speed' is the scrolling speed in ms (default is 33ms)

  • 'format' can contain free text and any of the 3 keywords %artist%, %album%, %title%. Using that format string, the keywords are replaced by their value to build the string to be displayed. Note that the plain text following a keyword that happens to be empty during playback of a track will be removed. For example, if you have set format=%artist% - %title% and there is no artist in the metadata then only