Интернет радио на esp8266: ESP, IoT — Самое дешёвое интернет-радио на базе esp8266 и esp32.
|Содержание
ESPradio
Все о ESP32 и ESP8266
На этом сайте можно найти конструкции различных устройств выполненых на микроконтроллерах ESP32, а так же ESP8266. В описаниях конструкций содержатся схемы, чертежи печатных плат, прошивки микроконтроллеров — все что необходимо для сборки.
Обновления
3 августа 2022
Обновил список станций, актуальных потоков 7702 шт.
Модуль ESPradio v2 и набор для сборки доступен для покупки в нашем магазине.
4 марта 2021
Обновлена прошивка ESPradio. Новая версия 387 ESPradio.
3 марта 2021
Переезжаем на новый хостинг и меняем имя сайта на espradio.ru НОВЫЙ САЙТ
Появились в продаже модули ESPradio V2 магазин.
11 января 2021
Добавлена поддержка Bluetooth. Версия 63 тестовый вариант ESPradio V2.
5 мая 2020
Теперь приемник может воспроизводить «зашифрованные» потоки по протоколу https, а так же подкасты, mp3 файлы из сети и самое главное потоки Pcradio. Версия прошивки 62.
Обновился список потоков теперь 6700 проверенных радиостанции.
30 апреля 2020
Внесены небольшие изменения в схему ESPradio V2.
19 марта 2020
Обновился список потоков теперь 2474 проверенных радиостанции.
11 марта 2020
Обновление прошивки ESPradio V2 версия 61.
3 декабря 2019
Продолжаю допиливать прошивку ESPradio V2 версия 60.
28 ноября 2019
Очередное обновление, появился режим «метеостанции» ESPradio V2.
21 ноября 2019
Теперь ESPradio V2 можно приобрести в магазине
20 ноября 2019
Обновил прошивку до версии 57, теперь воспроизводит AAC потоки без внешнего кодека! ESPradio V2.
10 октября 2019
Новая конструкция ESPradio V2.
11 августа 2019
Новая конструкция универсального счетчика WCounter.
19 марта 2019
Обновил описание ESPmini.
Внимание! требуются срочное обновление 39 версии прошивки ESPmini. Причина: в некоторых случаях WEB страница конфигурирования не загружалась. Обновленную версию можно скачать ниже.
ESPmini ревизия плат до 1.5 обновление через WEB интерфейс
ESPmini DAC обновление через WEB интерфейс
15 марта 2019
В продаже появились наборы для самостоятельной сборки ESPmini и ESPmini DAC. Все есть в наличии
12 марта 2019
Несколько дней занимался добавлением новых функций в прошивку, теперь «настраивать» приемник стало еще удобнее.
Новая версия прошивки 39 ESPmini DAC
Новая версия прошивки 39 ESPmini
Обновил описание конструкций
7 марта 2019
Опубликовал новую конструкцию интернет радиоприемника ESPmini DAC
Модули ESPmini DAC в сборе можно приобрести в магазине
5 марта 2019
Сформировал список вещающих радиостанций в формате mp3. 780 проверенных потоков.
2 марта 2019
Получил новую партию комплектующих для ESPmini. Теперь приемники в наличии!
22 февраля 2019
Инструкция по сборке набора ESPradio
1 февраля 2019
Интернет магазин стал более гибким. Теперь можно выбрать доставку, а так же комплектацию. Цены ниже
30 января 2019
Обновление прошивки ESPmini версия 37
29 января 2019
Обновление прошивки ESPmini теперь поддерживается дисплей! версия 36
26 января 2019
В наличии появилось много наборов для сборки ESPradio на модуле ESP32.
25 января 2019
Прошел месяц с момента первой публикации открытого проекта ESPmini.
Вот и платки подоспели.
Так же их можно приобрести в магазине
17 января 2019
Обновление прошивки и схемы ESPmini. Версия прошивки 34
28 декабря 2018
Обновление прошивки. Версия прошивки 386
22 декабря 2018
Доставили новую партию плат для интернет радиоприемника ESPradio.
21 декабря 2018
Новый проект интернет радиоприемника с открытыми исходными кодами. ESPmini
2 ноября 2018
Новые функции в интернет радиоприемнике. Версия прошивки 384
4 октября 2018
Обновилась прошивка интернет радиоприемника до версии 383
27 сентября 2018
Обновилась прошивка интернет радиоприемника ESPradio до версии 381
21 сентября 2018
Обновилась прошивка интернет радиоприемника до версии 380
12 сентября 2018
Обновлен дизайн сайта.
Открылся интернет магазин!
21 мая 2018
Добавлен проект «Интернет радиоприемник ESPradio».
Radio — Web radio из проводов и палок за $10: elchupanibrei — LiveJournal
?
Categories:
- catIsShown({ humanName: ‘общество’ })» data-human-name=»общество»> Общество
- Дача
- Cancel
Сегодня я расскажу наверное про самый дешевый способ собрать internet radio.
Спасибо за это французскому инженеру на пенсии karaWin и его проекту Ka-Radio. Нам понадобится NodeMCU или Wemos D1 Mini или Wemos LOLIN D1 в количестве одной штуки. Лучше брать с ESP12-S на борту, но и старая ревизия ESP12-F тоже пойдет. У меня была вот такая:
Wemos D1 Mini
Аппаратный кодек VS1053b. Советую брать на красной плате, цепь питания выполнена качественнее чем на синей. Обязательно проверьте кварц, должен быть на 12.288MHz, иначе звук будет немножко растянут. Обязательно заменить стабилизатор 2.5в на 1.8в . Китайцы перепутали VS1053b с VS1003 и влепили не тот. На форуме VLSI Solution пишут, что от такой напруги чип быстро деградирует.
аппаратный кодек VS1053b
Берем провода и соединяем так:
подключение ESP8266 и VS1053b по схеме Ka-Radio
К аналоговому входу A0 подключаются кнопки управления. Если их нет замыкаем контакт на землю, чтобы избежать фантомных нажатий.
управление Ka-Radio без смартфона
Качаем Ka-Radio и Espressif Flash Download Tools. Скомпилированный проект находится в папке ESP8266-Firmware/bin/. Заходим в диспетчер устройств windows и посмотрим какой порт винда назначила вашему USB-COM адаптеру. Мне выдала COM4. Меняем скорость с 9600 на 115200. После этого идём в Flash Download Tools и выбираем свой порт, указываем путь и адреса для *.bin файлов. Пустое поле в DETECTED INFO — это норма. Информация в нем появится во время загрузки кода в ESP8266 — вот такой китайский логика. По умолчанию скорость работы внутренней флешки 40MHz. Можно попробовать увеличить до 80MHz — Ka-Radio будет шустрее. Делать осторожно — некоторые китайские serial flash не работают на таких скоростях. Прошиваем ESP8266 согласно картинке:
настройка Espressif Flash Download Tools для Ka-Radio
Все. Передергиваем питание, подключаемся к открытой точке доступа «WifiKaRadio». Открываем браузер с адресом 192.168.4.1. На странице Settings вводим имя роутера и пароль. Ставим галку напротив «Use DHCP». Если подключение к роутеру прошло успешно «WifiKaRadio» исчезнет. Идем в админку роутера и смотрим IP нашего web radio. Интерфейс очень задумчив — успел заварить и выпить чаю.
интерфейс Ka-Radio
Ka-Radio proof of concept
С подключением VS1053b к усилителю есть нюанс. Напрямую нельзя, можно спалить выходной каскад. Кодек использует виртуальную землю GBUF для выхода на наушники. Надо поставить разделительные конденсаторы С1, С68 на 10мкФ х 10в и подпаяться к GND вместо GBUF. Элементы R8, C5, R7, C4, R6, C3 уже есть на красной плате, а R1, R79, C2, C69, R2 и R80 можно не устанавливать.
схема подключения VS1053b к усилителю
Отличным вариантом оконечного усилителя для дешманского радио является D-class стерео усилитель PAM8403. Две красных можно взять за 99 центов. Выходная мощность 3W x 3W на 4Ом с искажениями THD 10% и КПД 90%. Напряжение питания 2.5в — 5.5в
самая лучшая плата PAM8403
Чтобы усилитель не фонил в эфир, на частоте 1MHz и выше, надо допаять 1000мкФ х 10в. Желательно добавить ферритовые бусины и 220пФ на все четыре провода к динамикам.
выходной фильтр PAM8403 для подавления ВЧ помех
Еще одна неприятная особенность Ka-Radio — цифровые помехи и шумы в паузах. При проигрывании станций их не слышно — они маскируются полезным сигналом. Лечится соединением виртуальной земли GBUF кодека VS1053b с VREF PAM8403 через конденсатор C3 в 47мФ х 10в.
конденсатор C3 для подавление цифровых помех и шумов в паузах
Второй способ победить помехи — использовать усилитель с дифференциальным входом. Один из дифов подключается к земле и все синфазные помехи вычитаются входным каскадом. Типичный представитель на Aliexpress — HT6872. Выходная мощность 2.8W на 4Ом с искажениями THD 10% и КПД 90%. Напряжение питания 3.6в — 6.5в. У усилителя есть встроенный фильтр EMI — не нужны ферритовые бусины и конденсаторы на выходе. По звуку он мне понравился больше чем PAM8403 — высоких богаче и они почище. Так же как и PAM8403 легко работает от плохого блока питания или дохлых батарей.
подключение HT6872
Еще один усилитель AB-class с дифференциальным входом и вольтодобавкой — HT8698. Выходная мощность 4.75W x 4.75W на 4Ом с искажениями THD 10%. Напряжение питания 2.5в — 5.5в. Звук сказка. Есть басы, высокие не каша. Монстры Bose и Harman-Kardon нервно курят. Но есть одно но — очень требователен к питанию. От старой самсунговской зарядки Ka-Radio с ним не завелся. На средней громкости в пиках 1.5А, на максимальной около 2А.
подключение HT8698
Третий способ — развязать земли. Например использовать усилитель с отдельным блоком питания.
В общем я собрал на коленке за полчаса и оно неплохо играет. Получилось в 4-5 раз дешевле чем Orange Pi Zero с LMS.
web radio из проводов и палок
Отличная балалайка для гаража или дачи с доступом к интернету.
UDP: Получил новую «красную» плату VS1053b — качество жесть. Пока не пропаял все детали и чип, радио спотыкалось, шумело или не играло совсем.
Если AutoPlay работает через раз после включения — радио не хватает ампер. Замените блок питания.
Если в Settings убрать галочку с DHCP, web морда становится чуть-чуть быстрее.
Если список радиостанций не обновился или пропал, нажмите Refresh locale list.
UDP: Для эстетов есть двухсторонняя плата от dsaltas.
UDP: О Ka-Radio32 на ESP32 читаем тут.
Tags: #diy, #esp8266, #ka-radio, diy, esp8266
Subscribe
Arduino IDE 2.0 и ESP8266 — обман на ровном месте
Arduino наконец выкатили финалочку Arduino IDE 2.0. Я повелся, снес предыдущий релиз и долго матерился. Оказывается все предыдущие plugin не…
CM1107 — китайский CO2 сенсор
Пишу библиотеку для CM1107. Хочу прикрутить к CO2Meter. Брал когда-то б/у за $5 на алишечке. Как и SCD30 тоже двухлучевой, на этом сходства…
Почти дописал CO2Meter
Потихоньку прикручиваю Sensirion SCD30. В этот раз отказался от тормозного Chart.js в пользу легкого и быстрого dygraphs. Судя по графику, щелей…
Photo
Hint http://pics.livejournal.com/igrick/pic/000r1edq
Arduino IDE 2.
0 и ESP8266 — обман на ровном месте
Arduino наконец выкатили финалочку Arduino IDE 2.0. Я повелся, снес предыдущий релиз и долго матерился. Оказывается все предыдущие plugin не…
CM1107 — китайский CO2 сенсор
Пишу библиотеку для CM1107. Хочу прикрутить к CO2Meter. Брал когда-то б/у за $5 на алишечке. Как и SCD30 тоже двухлучевой, на этом сходства…
Почти дописал CO2Meter
Потихоньку прикручиваю Sensirion SCD30. В этот раз отказался от тормозного Chart.js в пользу легкого и быстрого dygraphs. Судя по графику, щелей…
Портативное интернет-радио ESP8266 — Cassiopeia Ltd
В последнее время я собирал несколько звуковых коробок (усилители, секвенсоры), и когда я подумал о создании интернет-радио, я нашел отличный проект Esp-радио, использующий Arduino IDE для программирования ESP8266. Модуль WiFi (версия ESP-12E). Документация достаточно полная, и автор Эд будет рад помочь, задав вопросы на github. Мне было довольно легко заставить прототип работать; Я потратил гораздо больше времени на то, чтобы положить его в красивую коробку. Это очень функциональный проект; радио может быть настроено через веб-сервер, и я решил иметь только 2 кнопки на коробке: канал вверх и вниз.
Он использует ESP8266 для подключения к WiFi и выбора интернет-радиостанции. Поток MP3 передается на звуковую карту (чип VS1053) через SPI. У меня уже был шилд Arduino MP3 с точно таким же чипом, поэтому я использовал его в своем прототипе. Для ESP8266 я начал с NodeMCUv1.0 и подумал, что позже заменю его базовым модулем ESP-12E, но очень удобно иметь USB-соединение и регулятор напряжения на NodeMCU, а в наши дни это довольно дешево, поэтому я решил оставить NodeMCU. Ниже заглянуть в коробку и список компонентов:
- слева: зеленая перфорированная плата с NodeMCUv1. 0, подключенная к 2 рядам розеток, включая серию делителей напряжения, считывание состояния 2 кнопок с 1 аналоговым входом (см. документацию Esp-radio)
- вверху слева: 2 кнопки, входящие в делитель напряжения
- вверху по центру: 0,96-дюймовый OLED-экран, подключенный к NodeMCU через SPI (модель отличается от Esp-радио, но аналогичные соединения)
- вверху справа: двухполюсный выключатель для 2 отдельных линий электропитания
- под переключателем: стереопотенциометр для регулировки громкости
- сзади: 2 динамика 3 Вт 4 Ом
- между динамиками: стереоусилитель класса D PAM8403 2x 3 Вт на 4 Ом
- спереди снизу: 2 ионно-литиевых элемента 18650 (извлечены из старого аккумулятора ноутбука)
- внизу справа (не видно): 2 платы защиты/зарядки литиевых элементов
- внизу справа (не видно): плата усилителя постоянного/постоянного тока для блока питания усилителя
- справа: синяя плата Arduino MP3 с чипом VS1053, позже замененная этой коммутационной платой VS1053
Мой первый прототип был намного проще: NodeMCUv1. 0 на макетной плате, с питанием через USB, с подключением SPI к плате MP3, с питанием от 5 В на NodeMCU. Я использовал Arduino IDE 1.6.8, потому что он не работал с 1.6.5. Подробную информацию о том, какие библиотеки установить, см. в документе PDF Esp-radio. Я понял, что вы также должны загрузить папку «data» в SPIFFS ESP8266, это отдельная операция от загрузки скетча. После некоторой настройки (см. документ) я получил звук через разъем для наушников на моем MP3-экране. Последовательный вывод очень полезен для отладки.
Некоторые из дальнейших шагов и проблем, с которыми я столкнулся:
- у меня были сбои в воспроизведении музыки, даже при очень быстром доступе в Интернет. наконец, я понял, что это помехи от SD-карты на моем MP3-экране, который также использует SPI. как только я вынул SD-карту из шилда, проблема исчезла (позже я переключился на коммутационную плату VS1053 без SD-карты).
- я добавил OLED-экран, такой же дешевый, который я всегда использую, с этой библиотекой SSD1306. главное отличие в том, что для моего дисплея требуется вывод RST; так как здесь немного не хватает контактов ввода-вывода, я сначала попытался использовать ту же линию RST, что и VS1053 (комбинация с 2 диодами), но этот сброс не происходит сразу после включения питания, и я хотел, чтобы мой дисплей включился. немедленно. в итоге я использовал GPIO0 для OLED RST. Я знаю, экран маленький, но он отображает соответствующую информацию. мне пришлось немного изменить код, чтобы работать с моей библиотекой отображения. (см. ниже версию со стандартным 1,8-дюймовым TFT-экраном)
- Esp-радио также включает в себя веб-сервер с домашней страницей для выбора канала, регулировки громкости (0-100%) и даже базового управления низкими/высокими частотами. также удобно для отладки. с 1 аналоговым контактом на ESP8266, который уже используется для моих 2 кнопок, я не мог придумать простой способ изменить громкость этого VS1053 с помощью потенциометра, поэтому я просто добавил стереопотенциометр между выходом VS1053 и входной линией к усилитель мощности. громкость, отображаемая на экране (громкость VS1053), является максимальной, ее можно изменить только через браузер.
- добавление усилителя: это довольно просто, если вы питаете усилитель от источника питания, отличного от NodeMCU/MP3, но я надеялся использовать только 1 батарею внутри. проблема в том, что аудиовыход VS1053 смещен на 1,25 В, что кажется обычным для наушников. поэтому мы не можем подключить «GND» выходного разъема (который на самом деле не 0 В) к общему GND. этот документ VS1053 описывает простое решение для получения сигнала линейного выхода. однако при использовании одного источника питания все еще было много шума. Похоже, усилители класса D предъявляют особые требования к источнику питания, поэтому я решил использовать отдельные блоки питания. Я припаял 3 провода к разъему MP3 Shield и подключил их напрямую к потенциометру громкости и усилителю, как указано выше.
- Я использую 2 литий-ионных элемента типа 18650, извлеченных из старого аккумулятора ноутбука. они имеют номинальное напряжение 3,7 В, что слишком высоко для NodeMCUv1.0 через контакт Vin, а встроенный регулятор напряжения НЕ с низким падением напряжения (LDO) , он снимает входное напряжение примерно на 1 В. насколько я мог судить, ESP перестал работать при напряжении около 2,5 В (потоковая передача прекратилась). мое решение состояло в том, чтобы добавить настоящий стабилизатор напряжения LDO 3,3 В, такой как MCP1826 (с 220 мкФ на входе и 0,1 мкФ на выходе). MP3-шилд можно подключить прямо к выходу батареи через его контакт 5V. конечно, я включил плату защиты/зарядки для каждой ячейки с портами microUSB, доступными на боковой панели.
- усилитель работает при напряжении ниже 5 В, но с этими 4-омными динамиками он дает много искажений при 4 В, поэтому я включил плату усилителя постоянного/постоянного тока, чтобы довести напряжение до 5,45 В и получить максимальное усиление.
Коробка с выступами вырезана лазером из мягкой древесины толщиной 5 мм. Я склеил все вместе, кроме задней панели. Я выбрал наклонную верхнюю панель, чтобы было легче видеть (маленький) экран, и мне немного надоели мои обычные прямоугольные коробки. Я приклеил 4 опорных блока к боковым панелям для винтов, которые удерживают заднюю панель на месте.
Вот 2 платы защиты/зарядного устройства литиевых элементов внизу справа.
И ниже с меньшей коммутационной платой VS1053.
Я сделал вторую версию для друга, используя стандартный 1,8-дюймовый TFT-дисплей, с небольшими изменениями в эскизе (версия от 1 февраля 2017 года).
NodeMCU v1.0 на зеленой перфорированной плате (перед добавлением регулятора напряжения LDO), синий разъем VS1053, красный TFT-дисплей, все подключено перед укладкой в коробку0.96-дюймовые OLED и 1,8-дюймовые TFT-экраны
Портативное интернет-радио ESP8266
ESP8266 Веб-радио
Веб-радио
Уже несколько месяцев я собирался создать управляемое через Интернет радио, хотя это заняло несколько фальстартов, чтобы начать работать.
Первоначально я собирался использовать модуль RDA5807M, но он оказался слишком маленьким, чтобы его можно было легко припаять! Как только я подключил чертову штуку, производительность была ужасной; он даже не мог управлять наушниками без посторонней помощи.
Моя вторая попытка заключалась в использовании оценочной платы на основе Si4703. Этого было достаточно для базовой работы, но он мог только управлять наушниками. (Поскольку выход для наушников использовался как антенное соединение. Выход на небольшой усилитель просто давал ужасный всплеск шума).
Моя последняя попытка состояла в том, чтобы использовать плату на базе TEA5767, которая выглядит следующим образом: два для I2C. Справа от изображения пара разъемов 2,5 мм. Один для выхода на наушники, второй для внешней антенны. После подключения этот модуль работал отлично, с первого раза.
Плата в основном автономна, и, поскольку у нее есть собственный встроенный усилитель, она может управлять наушниками, а также подключаться к внешнему усилителю или динамикам.
У модуля TEA5767 есть два существенных недостатка:
- Вы не можете программно управлять громкостью.
- Хотя можно отключить/включить звук.
- Нет поддержки RDS
- Таким образом, вы не можете отобразить название станции, которую вы слушаете, на экране, если только вы не запрограммируете сопоставление.
Connecting
Connecting the hardware to the Webmos Mini D1 is pretty simple, following the example I found:
Radio Module | WeMos Mini D1 |
---|---|
VCC | v3.3 |
Grnd | Grnd |
SDA | D2 |
SCL | D1 |
Как это работает
Библиотека TEA5767 может использоваться для управления радио:
- https://github.