Esp32 radio: Edzelf/ESP32-Radio: Internet radio based on ESP32, VS1053 and a TFT screen.
|Содержание
Wi-Fi радио на ESP32 в корпусе Альпиниста
Всем привет.
Хочу рассказать о том как я год назад собрал wifi радио и блютус колонку в корпусе от Альпиниста-418. За основу взят проект KaRadio32, который легко найти в сети. Довольно подробное описание схемы и программирования модуля здесь www.drive2.ru/b/487463808323813881/. Для гальванической развязки vs1053 и усилителя я использовал трансформаторы. Внутрь корпуса установлены модули повышения напряжения, ESP32, декодер, два трансформатора, усилитель, блютус модуль, энкодер от ардуино, дисплей.
Корпус предварительно был полностью разобран, отмыт и покрашен матовой черной краской для пластика. От оригинальных частей остался динамик (как ни странно но в хорошем состоянии и отличным звуком), регулятор громкости ( пришлось разобрать и смазать, чтобы не хрипел).
Печатная плата была полностью освобождена от оригинальных деталей. Теперь это просто основа для крепления модулей. Хотелось, по возможности, сохранить внешний вид. Переключатель ДВ-СВ теперь используется, как переключатель режимов Wi-Fi — bluetooth. Т.е. работает или интернет радио или блютуз колонка. Кнопки управления блютуз сделал сбоку, чтобы не сильно бросались в глаза.
На шкале (нарисованной в стиле шкалы Альпиниста) есть значки для напоминания назначения кнопок блютуз.
Немного пришлось повозиться, чтобы согласовать вал энкодера с ручкой настройки станций.
Для питания использовал два Li-Ion элемента 18650. Плата зарядного устройства с микро USB гнездом крепится вместе с зеркалом, которое отражает свет от индикаторных светодиодов в матовое стекло. Так что, мелкие светодиоды перепаивать не пришлось.
Каналы настраиваются через web интерфейс, где можно настраивать качество звука и порядок радиостанций.
По затратам получилось так:
1. Приемник грязный с разбитой шкалой — 300р.
2. ESP32 — 250р.
3. энкодер — 31 р.
4. 1.3 » дисплей — 242 р.
5. VS1053 — 393 р.
6. усилитель PAM8403 — 53 р.
7. аудиотрансформаторы за 5 шт.- 220 р.
8. зарядник TP4056 — 30 р.
9. бустер MT3608 — 150 р.
10. опыт — бесценно
Итого: около 1700 р. Аналогичный (но с доп. FM модулем) на Али стоит около 5000 р. Во время опытов собрал еще два варианта.
Но этот (последний) нравится больше других. Пользуюсь уже год и весьма доволен.
Добавить в избранное
Понравилось
+172
+271
Радио для всех — ESP32 Internet Radio
Говорят, что дешевый процессор кодеков MP3 VS1053 от aliexpress. com способен декодировать различные музыкальные форматы, включая аудио Ogg Vorbis / MP3 / AAC / WMA / MIDI. VS1053 также способен записывать в файл Ogg Vobis, но все рекомендации, доступные в Интернете, относятся либо к проприетарным платам, либо к ESP32-IDF, которые не рекомендуется использовать из-за чрезмерного кодирования
Принцип, лежащий в основе проекта, заключается в том, что если мы сможем доставить на плату кусок потоковых данных в точном количестве 32 байта в виде потока, он просто продолжит играть.
Это означает, что ESP32 должен подключить потоковый узел к фиксированному порту и затем получать потоковые данные с точностью до 32 байтов за раз. С другой стороны, плата будет продолжать обрабатывать данные, как машина притока / оттока, и поток продолжит воспроизводиться.
Основной код длиной почти 15 строк!
Используется библиотека с открытым исходным кодом ESP32 VS1053. Вы можете найти несколько примеров, включенных в библиотеку. Для смены станций я использовал вывод GPIO (D13) в качестве нажимного переключателя для программного сброса Сбросьте плату VS1053 для настройки на следующую станцию. Для операции переключения без дребезга я выгнал логического оператора, чтобы он стал «ложным» и «верным» в качестве альтернативы, чтобы предотвратить многократное переключение одним нажатием кнопки.
VS1053 — это устройство на 5 Вольт, но вы также можете легко настроить его на 3,3 Вольт. Таким образом, на радио ESP32 у вас будет только одно напряжение питания — 3,3 Вольт, которое может питаться от одной батареи LiPo. На плате VS1053 имеется два регулятора напряжения [AM1117] — 3,3 В и 2,5 В. С помощью цифрового мультиметра сначала выясните, какой из них предназначен для чего, а затем подключите перемычку с напряжением 3,3 В к входу регулятора 2,5 В и подключите этот провод в качестве входа 3,3 В к плате.
Держите соединительные провода как можно меньше. Более длинные, длинные и перекрывающиеся провода могут издавать гудящий шум на выходе звука, который обычно наблюдается на таких платах. Вывод звука стереофонический и достаточно усиленный для питания небольших колонок или наушников, но для работы с громкоговорителями большего размера вам, возможно, придется добавить усилители / усилители.
Li-Ion / Li-Po или Li-Ion при полной зарядке могут увеличить напряжение до 4, что не повредит ESP32, но вы можете потерять плату VS1053, а затем ждать еще 40 дней с aliexpress.com. Поэтому рекомендуется использовать 3-контактный регулятор напряжения HT7333-1 с низким энергопотреблением и малыми потерями, который имеет очень низкое падение напряжения и очень низкую потерю тока покоя. Но единственная проблема — HT7111-1 — крошечное устройство для поверхностного монтажа.
Схема с OLED
Оснащенный 3.3 Вольт подключен к выходу HT7333-1, который также является источником питания для ESP32.
Соединение в красном кружке перейдет к переключателю «нажми и включи» — теперь это временный нажимной выключатель. Для подключения к системе WiFi замените SSID и пароль на начало кода, а затем загрузите обычным способом Arduino. После загрузки ESP32 сначала скажет «Hello», чтобы указать, что VS1053 запущен и готов. Затем он подождет пару секунд, чтобы подключиться к компьютеру (следите за последовательным выходом). После подключения к Интернету он настроится на станцию в хосте [6], а затем начнёт звучать красивый потоковый голос «Битлз». Нажмите один раз переключатель [подключен к D13], и будет настроена следующая станция. Переменная char * sname [7] является необязательной. Вы можете иметь выбранные имена для каждой установленной радиостанции. Дополнительные имена станций могут быть добавлены в массивы хоста, пути и порта.
Радио ESP32 с OLED (опционально): Единственная проблема, которая остается — нет дисплея, который бы знал, какая станция играет! Универсальный дисплей I2C — это все, что требуется сейчас, чтобы завершить его сейчас. Но проблема в том, что тяжеловесный Adafruit SSD1306 вместе с библиотекой Adafruit_GFX, если он будет использоваться, создаст неприятный звук. Поэтому я использовал облегченную библиотеку SSD1306 esp8266-oled-ssd1306-master, которая специально создана для ESP8266 для запуска общих OLED-дисплеев SSD1306. С этой библиотекой дисплей I2C прекрасно работает без какого-либо влияния на вывод звука. Однако OLED не обязателен — без него радио работает просто отлично!
Есть два эскиза — bare_minimum_radio_player.ino & simple_esp32_radio_mod3.ino Первый — это всего лишь несколько строк кода для получения 32-байтовых данных с потокового сайта и последующего воспроизведения. Второй — это сложный эскиз для запуска радио вместе с OLED-дисплеем и нажимным переключателем для смены станции. Каждый эскиз сопровождается небольшим файлом «helloMP3.h», который фактически кодирует небольшую музыку или звуковое приветствие. Скомпилируйте эскиз вместе с этим файлом.
Необходимые библиотеки Arduino также добавляются в комплект программного обеспечения.
Скачать файлы
Интернет-радио с ESP32 — AZ-Delivery
Оплата и безопасность
- Американ Экспресс
- Apple Pay
- Google Pay
- Кларна
- Маэстро
- Мастеркард
- PayPal
- Магазин Оплата
- СОФОРТ
- Виза
Потребителем является любое физическое лицо, совершающее юридическую сделку в целях, которые преимущественно не могут быть отнесены ни к его коммерческой, ни к его независимой профессиональной деятельности.
Отказ
Вы имеете право отозвать этот договор или вернуть товар в течение 14 (четырнадцати) дней без объяснения причин. Срок аннулирования составляет четырнадцать дней со дня, когда вы или указанное вами третье лицо, не являющееся перевозчиком, завладели последним товаром. Чтобы воспользоваться своим правом на отзыв, вы должны сообщить нам (компания AZ-Delivery Vertriebs GmbH, Lärchenstraße 10, 94469 Deggendorf, номер телефона: 0991/99927827, адрес электронной почты: [email protected]) посредством четкого заявления (например, письма, отправленного по почте, факсу или электронной почте) о вашем решении отозвать этот контракт . Вы можете использовать прилагаемую форму отказа от модели, но это не обязательно. Для соблюдения периода отзыва достаточно, чтобы вы отправили уведомление об использовании права на отзыв до истечения периода отзыва.
Последствия отказа
Если вы отказываетесь от этого договора, мы должны возместить все платежи, которые мы получили от вас, включая расходы на доставку (за исключением дополнительных расходов, связанных с тем, что вы выбрали другой тип доставки, чем самый дешевый стандартная доставка, предлагаемая нами), немедленно и не позднее, чем в течение четырнадцати дней со дня, когда мы получили уведомление о вашем расторжении настоящего договора. Для этого погашения мы будем использовать те же средства платежа, которые вы использовали для первоначальной транзакции, если с вами прямо не согласовано иное; ни в коем случае с вас не будет взиматься плата за это погашение. Мы можем отказать в возмещении до тех пор, пока мы не получим товар обратно или пока вы не предоставите доказательства того, что вы вернули товар, в зависимости от того, что наступит раньше. Вы получили товар немедленно и в любом случае должны быть возвращены или переданы нам не позднее чем в течение четырнадцати дней со дня, когда вы сообщите нам об аннулировании настоящего договора. Срок соблюдается, если вы отправляете товар до истечения срока в четырнадцать дней. Вы несете прямые расходы по возврату товара. Вы должны оплатить любую потерю стоимости товара только в том случае, если эта потеря стоимости не ограничивается проверкой характера, свойств и функциональности товаров, необходимой для работы с ними.
Исключение или досрочное прекращение права отказа
Право отказа не распространяется на договоры
— на поставку товаров, не являющихся сборными и для производства которых осуществляется индивидуальный отбор или определение потребительские решительные или которые четко ориентированы на личные потребности потребителя;
— для доставки товаров, которые могут быстро испортиться или срок годности которых быстро истечет;
— на поставку алкогольной продукции, цена которой была согласована при заключении договора, но которая может быть поставлена не ранее чем через 30 дней после заключения договора и текущая стоимость которой зависит от колебаний конъюнктуры рынка на которые предприниматель не имеет никакого влияния;
— на доставку газет, журналов или журналов за исключением договоров подписки.
Право отказа истекает досрочно в случае договоров
— для доставки запечатанных товаров, которые не подлежат возврату по соображениям охраны здоровья или гигиены, если их пломба была удалена после доставки;
— для поставки товаров, если они были неразрывно смешаны с другими товарами после поставки в силу их характера;
— для доставки звуко- или видеозаписей или программ для ЭВМ в запечатанной упаковке, если после доставки пломба была снята.
Образец формы отказа
(Если вы хотите расторгнуть договор, пожалуйста, заполните эту форму и отправьте ее обратно.)
Кому:
Company
AZ-Delivery Vertriebs GmbH
Lärchenstraße 10
94469 Deggendorf
Адрес электронной почты: [email protected]
Я/мы (*) настоящим отзываем договор купли-продажи, заключенный мной/нами (*) следующие товары (*):
Заказан (*)/получен (*):
Наименование потребителя (потребителей):
Адрес потребителя (потребителей):
Подпись потребителя(ей):
(только в случае уведомления на бумаге)
Дата:
———————————————- ———
(*) Удалить при необходимости.
Информация о продукте
Ean | А 2-9+Д 03-10+Д 03-07+Б 3-4+С 4-6+Б 25-7+Б 23-7+А 8-8 |
Размер | 0 |
Weitere Projektvorschläge
Интернет-радио ESP32 | Журнал Elektor
- Домашняя страница
- Проекты сообщества Elektor
Как только вы разберетесь с процессором кодеков VS1053, всего с помощью 15 строк кода вы сможете создать свое интернет-радио, работающее на вашем интернет-соединении WIFI.
Интернет-радио ESP32
Дешевый процессор кодека MP3 VS1053, поставляемый с aliexpress. com, способен декодировать различные музыкальные форматы, включая аудио Ogg Vorbis/MP3/AAC/WMA/MIDI. лежать на столе довольно долго. VS1053 также может записывать в файл Ogg Vobis, но все руководства, доступные в Интернете, предназначены либо для проприетарных плат, либо для ESP32-IDF, которые я ненавижу пробовать из-за чрезмерного кодирования. Кода более чем в 20 строк достаточно, чтобы выгнать меня на 100 миль!
Идея:
Интернет-радио на ESP32 было интересным проектом, но из-за непонимания платы или формата кодека я до сих пор не мог настроить плату, пока однажды мне не пришла в голову мысль, что если я смогу передать кусок потоковых данных в точном количестве 32 байта на плату в виде потока, он просто продолжит играть.
Это означает, что ESP32 должен подключить сайт потоковой передачи к фиксированному порту, а затем получать потоковые данные точно порциями по 32 байта за раз. С другой стороны, плата будет продолжать обрабатывать данные, как машина притока/оттока, и поток будет продолжать воспроизводиться.
Основной код едва ли занимает 15 строк!
Конструкция: Используется библиотека ESP32 VS1053 с открытым исходным кодом. Вы можете найти несколько примеров, включенных в библиотеку. Для переключения станций я использовал контакт GPIO (D13) в качестве нажимного переключателя для мягкого сброса платы VS1053 для настройки на следующую станцию. Для операции переключения без дребезга я включил логический оператор, чтобы он стал «ложным» и «истинным» в качестве альтернативы, чтобы предотвратить многократное переключение при одном нажатии кнопки.
VS1053 — это устройство на 5 вольт, но вы можете легко настроить его для работы и на 3,3 вольта. Таким образом, на радио ESP32 у вас будет только одно напряжение питания — 3,3 вольта, которое можно питать от одной батареи LiPo. На плате VS1053 два регулятора напряжения [AM1117] — 3,3 вольта и 2,5 вольта. С помощью цифрового мультиметра сначала выясните, какой из них для чего предназначен, а затем подключите провод-перемычку от 3,3 вольта к входу регулятора 2,5 вольт и сделайте этот провод входом 3,3 вольта к плате [см. рис.].
Электропроводка VS1053: Соединительные провода должны быть как можно меньше. Более длинные, длинные и перекрывающиеся провода могут создавать гудящий шум на выходе звука, который я испытал с такими платами. Выходной звук является стереофоническим и достаточно усиленным для питания небольших динамиков или наушников, но для работы с большими динамиками вам, возможно, придется добавить усилители / усилители.
Конструктивное препятствие: Li-Ion / Li-Po или Li-Ion при полной зарядке могут поднять напряжение до 4, что приведет к не повредит ESP32, но вы можете потерять плату VS1053, а затем подождать еще 40 дней, чтобы прибыть с aliexpress.com. Поэтому я рекомендую вам использовать маломощный 3-контактный стабилизатор напряжения HT7333-1 с низкими потерями, который имеет очень низкое падение напряжения и очень низкие потери тока покоя. Но единственная проблема в том, что HT7111-1 — крошечное устройство для поверхностного монтажа. Нет проблем, позвоните мне и держите мои платы наготове, я припаю их для вас!
Схема с (OLED — опционально):
Подстроенное напряжение 3,3 вольта подключено к выходу HT7333-1, который также является источником питания для ESP32.
Прототип:
[Соединение, обведенное красным, будет идти к нажимному переключателю — теперь это импровизированный нажимной переключатель]
Тестирование: Для подключения к системе WiFi замените SSID и пароль в начало кода, а затем загрузить обычным способом Arduino. После загрузки ESP32 сначала скажет «Привет», чтобы указать, что VS1053 запущен и готов. Затем он подождет пару секунд, чтобы подключиться [ Следите за последовательным выходом ] компьютера. Оказавшись в Интернете, он настроится на станцию в хосте [6], а затем начнет литься красивый потоковый голос Beatles. Нажмите переключатель один раз [подключено к D13], и следующая станция будет настроена. Я нашел довольно много хороших станций, перечисленных в комментариях, которые вы хотели бы послушать прямо сейчас! Переменная char *sname[7] не является обязательной. Вы можете выбрать имена для каждой радиостанции, которую я установил для себя. Дополнительные имена станций могут быть добавлены в массивы узлов, путей и портов.
Радио ESP32 с OLED-дисплеем (дополнительно) : Единственная оставшаяся проблема — нет дисплея, чтобы узнать, какая станция играет! Универсальный дисплей I2C — это все, что требуется сейчас, чтобы все было готово. Но проблема в том, что тяжелый Adafruit SSD1306 вместе с библиотекой Adafruit_GFX, если они используются, сделают звук резким. Поэтому я использовал легкую библиотеку SSD1306 esp8266-oled-ssd1306-master, специально созданную для ESP8266 для работы с универсальными OLED-дисплеями SSD1306. С этой библиотекой дисплей I2C работает просто отлично, без какого-либо влияния на вывод звука. Тем не менее, OLED не является обязательным — радио работает без него!
Спецификация:
ESP32 7,5 долл. США
OLED 64*128 — 3 долл. США
Экран кодека VS1053 — 6 долл.