ESPradio
Интернет радиоприемник ESPmini

Предлагаю вашему вниманию простой интернет радиоприемник на esp8266 без использования ЦАП. Формирование звука происходит посредством ШИМ. Ниже представлена вся необходимая документация для сборки.

Конструкция

Схема простая до безобразия. Первый вариант схемы. Прошивка ESPmini_fw_37_oldsch.bin



Вариант схемы соответствующий печатной плате ревизии 1.1. Прошивка ESPmini_fw_37.bin

Управление производится 4 кнопками. Кнопки "Канал+ / Канал-" переключают станции из плей листа который содержит 10 станций. "Уровень+ / Уровень-" соответственно уровень звука громче тише. Красный светодиод- отображает ошибку воспроизведения потока, зеленый- воспроизведение идет.

При первом включении после прошивки приемник запускается в режиме точки доступа с именем "ESPmini", сеть открытая без пароля.

После того как произвели подключение к сети "ESPmini" автоматически откроется страница конфигурации приемника. Если автоматически страница не открылась нужно открыть браузер и в адресной строке набрать 192.168.1.1 , откроется веб интерфейс через который можно настроить приемник.

В разделе "Станции" по умолчанию установленно 4 потока их можно изменить на свои. Через раздел "Система" производятся настройки WiFi подключения SSID вашей сети и ключ к сети соответственно. После ввода SSID и PASW нажимаем кнопку "Сохранить" затем "Перезагрузка" после чего приемник перезагрузится и подключится к вашей сети, сразу же пойдет воспроизведение станции по умолчанию "Европа+".

После успешного подключения к настроенной wifi сети режим точки доступа у приемника отключается, так же как и веб интерфейс cтановится недоступным.

Для того чтобы принудительно запустить приемник в режиме точки доступа для конфигурирования нужно: выключить приемник, зажать кнопки "Канал+ / Канал-" после чего включить приемник, приемник перейдет в режим точки доступа и появится сеть "ESPmini" после чего можно будет подключиться и сконфигурировать приемник. Начиная с версии прошивки 35 в режим точки доступа можно попасть нажав назначенную кнопку на ИК пульте, выход из режима точки доступа осуществляется той же кнопкой или снятием и подачей напряжения питания (перезагрузкой) модуля.

25.12.2018

Многие просили добавить выбор потока по назначенной кнопке, c версии 33 данная функция реализована см.схему. Так же реализовано управление при помощи пульта ДУ, конфигурирование и назначение кнопок пульта через веб интерфейс.

Для того чтобы назначить кнопку пульта нужно: запустить приемник в режиме точки доступа, зайти в веб интерфейс, перейти в раздел "Система", "Настройка пульта" нажать кнопку на пульте- в поле "Принятый код пульта:" отобразится код кнопки, назначить принятый код кнопки определенной функции нажав кнопку "Установить", далее проделать аналогичные действия с остальными полями, после чего нажать кнопку "Сохранить". Всё, кнопки назначены. Потренироваться можно в демо интерфейсе приемника.

Демо веб интерфейс приемника можно посмотреть здесь. Версия 34.

25.01.2019

Первая партия заводских приемников


29.01.2019

Начиная с версии прошивки 36 приемник поддерживает OLED дисплей с контроллером SSD1306 128х64. После прошивки по умолчанию индикация режимов происходт при помощи светодиода. Если ваша конструкция приемника с дисплеем то необходимо зайти в веб интерфейс и в разделе "Система" установить "Тип индикатора" Display после чего нажать кнопку "Сохранить" и перезагрузить приемник.
Примечание: Если вы используете дисплей то светодиод и токоограничивающие резисторы необходимо удалить! В противном случае дисплей не будет нормально работать.

Обзор конструктива

WEB интерфейс и базовые настройки

Приобрести модуль можно в нашем интернет магазине


Прошивка и первое включение

Для того чтобы перевести модуль в режим загрузки прошивки необходимо:
1. Подключить USB-UART конвертер с логическими уровнями 3.3v к гнезду P1 Uart (см.схему)
2. Нажать кнопку "Уровень-"(vol-)
3. Подать питание на приемник не отпуская кнопки

Далее, потребуется утилита Flash download tools прошивка будет осуществляется при помощи ее. Важное замечание, Flash download tools необходимо разворачивать в корень диска и путь к файлам прошивки не должен содержать кириллических символов. Перед первой прошивкой необходимо воспользоваться опцией ERASE в настройках Flash download tools (см.картинку).

Конфигурацию Flash download tool устанавливаем согласно картинки. CrystalFreq- 26M, Spi Speed- 40MHz, Spi Mode- DIO, Flash Size- 8Mbit (зависит от применяемого модуля), ставим галочку DoNotChgBin. Указать адрес секций согласно файлу (см.картинку): 0x00000- прошивка. Выбрать COM порт uart конвертера, установить скорость Baud 921600 и нажать кнопку Start. Если все сделано верно то должен пойти процесс прошивки.


Исходные коды

При написании проекта использовалась крайняя версия Arduino 1.8.8 и Arduino core for ESP8266 WiFi chip версия 2.4.2 все библиотеки использовались самые свежие на 15.12.2018г. Конфигурация среды Arduino: Generic ESP8266 Module, Crystal Freq 26Mhz, Flash Freq 40Mhz, Flash Mode DIO, LwIP v1.4 Higher Bandwidth, Flash size: 4M(3M SPIFFS).

Downloads:
ESPmin_sch.pdf Схема.
ESPmini_arduino_37.zip Исходный проект Arduino + необходимые библиотеки версия 37.
ESPmini_fw_37.bin прошивка bin версия 37.

ESPmini_arduino_37_oldsch.zip Исходный проект Arduino для первого варианта схемы + необходимые библиотеки версия 37.
ESPmini_fw_37_oldsch.bin прошивка для первого варианта схемы bin версия 37.

Что нового в прошивке:

Версия 37
-добавил логотип приветствия;
-оптимизировал и модифицировал библиотеку esp8266Audio (модифицированная версия прилагается к проекту Arduino);
-добавил отображение имени вещающей станции;
-добавил отображение битрейта потока;
-устранил недочеты отображения на дисплее;
-устранил ошибку обновления через веб интерфейс;

Версия 36
-добавил поддержку OLED дисплея SSD1304, выбор варианта индикации через веб интерфейс;
-добавил функцию распознавания типа потока в библиотеку esp8266Audio;
-добавил русские шрифты в библиотеку SSD1306;
-добавил индикацию процесса подключения к WiFi при помощи светодиода;

Версия 35
-добавил кнопки прямого выбора потоков с ИК пульта с 0 по 9 поток;
-добавил функцию переключения кнопкой ИК пульта в режим точки доступа и обратно;
-добавил функцию отключения UART интерфейса, управление функцией через веб интерфейс;
-добавил функцию восстановления "заводских настроек";
-поправил функцию обновления прошивки через веб интерфейс;

Версия 34
-добавил captive portal;
-устранил баг с потерей конфигурации;
-корректировка схемы;

Версия 33
-добавил 5 кнопок выбора потока;
-добавил управление пультом ду (поддержка любых пультов);
-корректировка схемы;

Версия 32
-написана первая публичная версия;


Бубнов Евгений esp-radio.ru e-mail: rv9c@yandex.ru