ESP32 无线音响系统 (AirPlay 2 / 蓝牙 / AUX + NJW1195A 硬件级音量控制)。
|
|
2 долоо хоног өмнө | |
|---|---|---|
| .agents | 2 долоо хоног өмнө | |
| .githooks | 2 долоо хоног өмнө | |
| cmake | 2 долоо хоног өмнө | |
| components | 2 долоо хоног өмнө | |
| data | 2 долоо хоног өмнө | |
| docs | 2 долоо хоног өмнө | |
| main | 2 долоо хоног өмнө | |
| scripts | 2 долоо хоног өмнө | |
| .clang-format | 2 долоо хоног өмнө | |
| .clang-tidy | 2 долоо хоног өмнө | |
| .clangd | 2 долоо хоног өмнө | |
| .gitignore | 2 долоо хоног өмнө | |
| .gitmodules | 2 долоо хоног өмнө | |
| CLAUDE.md | 2 долоо хоног өмнө | |
| CMakeLists.txt | 2 долоо хоног өмнө | |
| CONTRIBUTING.md | 2 долоо хоног өмнө | |
| LICENSE | 2 долоо хоног өмнө | |
| README.md | 2 долоо хоног өмнө | |
| dependencies.lock | 2 долоо хоног өмнө | |
| platformio.ini | 2 долоо хоног өмнө | |
| requirements-dev.txt | 2 долоо хоног өмнө | |
| sdkconfig.defaults.bt | 2 долоо хоног өмнө | |
| sdkconfig.defaults.esp32p4 | 2 долоо хоног өмнө | |
| sdkconfig.defaults.esp32s2 | 2 долоо хоног өмнө | |
| sdkconfig.defaults.esp32s3 | 2 долоо хоног өмнө | |
| sdkconfig.defaults.esparagus-audio-brick | 2 долоо хоног өмнө | |
| sdkconfig.defaults.esparagus-audio-brick-s3 | 2 долоо хоног өмнө | |
| sdkconfig.defaults.esparagus-louder | 2 долоо хоног өмнө | |
| sdkconfig.defaults.esparagus-louder-s3 | 2 долоо хоног өмнө | |
| sdkconfig.defaults.music-box | 2 долоо хоног өмнө | |
| sdkconfig.defaults.squeezeamp | 2 долоо хоног өмнө | |
| sdkconfig.defaults.squeezeamp-4m | 2 долоо хоног өмнө | |
| sdkconfig.defaults.waveshare-esp32s3 | 2 долоо хоног өмнө | |
| sdkconfig.defaults.wrover | 2 долоо хоног өмнө | |
| version.txt | 2 долоо хоног өмнө |
本项目基于开源的 airplay-esp32 深度定制,针对专用音响硬件进行了全面升级:
NJW1195A 音频处理芯片。panel_uart.c),可与外部屏幕、按键面板或 MCU 进行双向通信。该固件专为搭配了 NJW1195A 芯片和外部通信串口的定制 ESP32 硬件设计:
SPI_CLK / SPI_DATA / SPI_CS:用于控制 NJW1195A 的音量和通道切换。UART2 (TX: GPIO4, RX: GPIO5),波特率 115200,用于与外部控制板交互。项目使用 ESP-IDF v5.x 进行构建。
确保您已经正确安装并配置了 ESP-IDF 环境:
# 1. 激活 ESP-IDF 环境
. $HOME/esp/esp-idf/export.sh
# 2. 设置目标芯片为 ESP32 (或 ESP32-S3,取决于您的实际硬件)
idf.py set-target esp32
# 3. 编译并烧录固件
idf.py build
idf.py -p /dev/ttyUSB0 flash monitor
(注意:如果是首次烧录,或者修改了网页文件 data/www/index.html,需要同步烧录 SPIFFS 分区)
ESP32-AirPlay-Setup 的 Wi-Fi 热点。192.168.4.1)。为了获得最佳体验,强烈建议您在苹果手机上将其安装为原生应用:
http://您的音响名称.local(例如 http://musicbox.local,无需查找复杂且会变动的 IP 地址!借助苹果原生的 mDNS 即可秒连)。如果您需要发布新版本固件,只需修改项目根目录下的 version.txt 文件内容(例如修改为 1.2.0)。
在下次执行 idf.py build 时,CMake 会自动将该版本号编译进固件中,并在网页控制台的右上角同步展示。
本项目基于原 airplay-esp32 开发,遵循非商业开源协议。禁止未经授权用于任何商业盈利用途。