YoRadio ESP32网络收音机实战指南:80元物料,从采购到接入Home Assistant
【免费下载链接】yoradioWeb-radio based on ESP32-audioI2S library项目地址: https://gitcode.com/GitHub_Trending/yo/yoradio
YoRadio 是一个把 ESP32 开发板变成网络收音机的开源项目:它能播放全球在线电台,内置 Web 控制页面,还能通过 MQTT 接入 Home Assistant 这类智能家居平台。本文面向没有编程基础的 DIY 新手,按"买件—接线—配网—加电台"的顺序,把动手过程一次讲完。
从洞洞板原型到带外壳成品,都是同一套 YoRadio 固件的不同形态
一分钟速览:定位、成本与上手难度
| 项目 | 说明 |
|---|---|
| 定位 | 基于 ESP32-audioI2S 音频库的开源网络收音机 |
| 成本 | 基础配置 50-80 元;彩屏加外壳约 100-150 元 |
| 难度 | 无需编程经验,大部分操作在浏览器里完成 |
| 适合人群 | DIY 新手、智能家居玩家、想自制音乐设备的人 |
快速上手:四步在 ESP32 上放出声音
🔧第一步:备齐物料
最小采购清单:一块 ESP32 开发板(WROOM-32 即可)、一个 I2S DAC 模块(或 VS1053b 音频解码器)、一块屏(0.96 寸 SSD1306 OLED 或 3.5 寸 ST7796/ILI9488 彩屏)、三五个轻触按键加一个编码器。想加时钟和定时功能,再配一颗 DS1307 或 DS3231 RTC 芯片。
官方推荐的按键与编码器排布:编码器管音量,按键切台
第二步:定义硬件并烧录
打开examples/myoptions.h,把屏、按键、音频芯片接在哪个引脚写进去。官方提供了接线表生成工具,可以自动生成这个文件,不用手写定义。之后在 Arduino IDE 里上传固件即可。
烧录时注意按标注选好板型与分区表,为 Web 页面预留存储空间
第三步:配网
设备首次上电会建一个 WiFi 热点,手机连上后在浏览器打开 192.168.4.1,填入家里 WiFi 的名称和密码保存。页面最多存 5 个网络,断网时会自动切换,出门带着也不怕没网。
192.168.4.1 的 Web 页面可一次保存多个 WiFi 网络
第四步:加电台
在同一个 Web 界面里贴入电台的流媒体 URL 并保存,就能开始播放;音量、切台用编码器或按键控制。
Web 播放界面:当前电台、音量、信号强度与电台列表一目了然
进阶玩法:按场景组三个联动
用 Home Assistant 定时放歌
项目内置 MQTT 客户端,仓库HA/custom_components目录里还带了官方 Home Assistant 集成,拷进 HA 的 custom_components 目录后,YoRadio 会作为 media_player 出现。之后写自动化很省事:早 7 点开播新闻台,离家时全屋静音。
离线也能听
插一张 microSD 卡就能播本地音乐,MP3、AAC、FLAC 都支持,适合车库、地下室这类没网的地方。
设置页里还能调均衡器与音效,按口味微调声音
红外遥控与插件
接红外接收头后,内置的 IR 录制页可以把旧遥控器的按键"抄"过来。插件系统(示例代码在examples/plugins里)还支持背光控制、深度睡眠等扩展。
实操案例:给办公室厨房装一台 Lo-Fi 播放器
一位程序员同事按这个思路做了一台:ESP32 板 + VS1053b 模块 + 1.3 寸 ST7789 彩屏 + 编码器 + 三颗按键,物料约 90 元,3D 打印外壳后落在 100-150 元区间。
- 选 VS1053b 而非 I2S DAC,MP3 解码交给模块,ESP32 专心跑 Web 服务和屏幕
- 只加 3 个 Lo-Fi 电台,改名为"晨间咖啡""午后摸鱼""下班前"
- 用 MQTT 接入办公室网络,在 Home Assistant 里配了两条自动化:开办公场景时开播,离岗时关
避坑 FAQ:价格、难度、音质、兼容性
Q:物料到底花多少钱?A:ESP32 + I2S DAC + 0.96 寸 OLED 的基础组合 50-80 元;换 3.5 寸彩屏、加外壳约 100-150 元。
Q:完全不会编程能用吗?A:可以。硬件定义文件改一次(生成工具可代劳),Arduino IDE 上传即可,后面加电台、改网络全在浏览器完成。
Q:音质能到什么程度?A:取决于 DAC 模块。I2S DAC 配合格式不错的音箱可接近 CD 级;MP3/AAC/FLAC 均能正常解码播放。
Q:国内电台兼容吗?A:不限语言,能给出流媒体 URL 的电台都能播。
Q:I2S DAC 和 VS1053b 怎么选?A:二选一,且只能在配置里启用一个。VS1053b 把 MP3 解码卸给模块,I2S DAC 的解析上限更高。
获取源码,开始动手
git clone https://gitcode.com/GitHub_Trending/yo/yoradio代码拉下来后按 README 里的烧录说明操作,一小时内就能听到第一首歌。引脚定义拿不准时,优先对照examples/myoptions.h和官方接线表,比凭空猜省时间。
【免费下载链接】yoradioWeb-radio based on ESP32-audioI2S library项目地址: https://gitcode.com/GitHub_Trending/yo/yoradio
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考