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

По мотивам проекта ESPmini но на этот раз с приминением внешнего ЦАП TDA1387, а так же любого другого с шиной I2S.

Конструкция

Схема.



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

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

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

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

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

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

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

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

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

Структура файлов

Ниже приведена структура файлов используемых в приемнике.
ESPmini_DAC_39_0x0.bin - файл прошивки. Используется как для первоначальной прошивки приемника так и для обновления через WEB интерфейс.
ESPmini_DAC_39_0x300000.bin - файл образа файловой системы SPIFFS. Используется только для первоначальной прошивки.
stream_list.json - список потоков. Файл содержит в себе обновляемый список потоков.
config.json - файл конфигурации приемника. Содержит в себе всю конфигурацию и настройки.
radioon.mp3 - файл озвучивания. Приветствие
goap.mp3 - файл озвучивания. Запуск точки доступа
apmode.mp3 - файл озвучивания. Точка доступа запущена
goconnect.mp3 - файл озвучивания. Попытка подключения к сети
okconnect.mp3 - файл озвучивания. Соединение установленно
errconnect.mp3 - файл озвучивания. Ошибка подключения
goradio.mp3 - файл озвучивания. Запуск радио
nostreem.mp3 - файл озвучивания. Нет потока
сh0.mp3 по ch9.mp3 - файл озвучивания. Озвучивание каналов
Файлы озвучивания можно заменить на свои. mp3 файлы должны иметь битрейт не более 128kbps и общий объем всех mp3 файлов не должен превышать 700Кб.

Фото видео

Размеры плат 45x45мм



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


Список станций

Список из 780 вещающих в mp3 формате радиостанций.


Обновление через WEB интерфейс

Через веб интерфейс можно просто и быстро обновить: прошивку приемника, озвучку действий, список потоков.

Обновление прошивки приемника производится в следующей последовательности:
1. Распаковываем архив ESPmini_DAC_web_update_xx (см.раздел Downloads)
2. Для обновления прошивки нам потребуется файл ESPmini_DAC_xx_0x0.bin
3. Запускаем приемник в режиме точка доступа (см.выше) и подключаемся к нему, открываем страничку конфигурации по адресу 192.168.1.1
4. Переходим в раздел "Обновление" - "Обновление ПО приемника" выбираем ранее распакованный файл ESPmini_DAC_xx_0x0.bin и нажимаем кнопку "Обновить прошивку"
5. Через пару минут, приемник сообщит результат по окончинии процесса обновления. Прошивка приемника обновлена.

Обновление файлов озвучивания действий:
1. Распаковываем архив ESPmini_DAC_web_update_xx
2. Для обновления нам потребуются 18 файлов mp3 из папки "data"
3. Запускаем приемник в режиме точка доступа (см.выше) и подключаемся к нему, открываем страничку конфигурации по адресу 192.168.1.1
4. Переходим в раздел "Обновление" - "Обновление файлов озвучивания" выбираем все 18 файлов разом (выбор с зажатым Shift) и нажимаем кнопку "Обновить"
5. Через пару минут, приемник сообщит результат по окончинии процесса обновления. Файлы озвучивания обновлены.

Обновление списка потоков:
1. Распаковываем архив ESPmini_DAC_web_update_xx или скачиваем свежий файл stream_list.json
2. Для обновления нам потребуются файл stream_list.json из папки "data"
3. Запускаем приемник в режиме точка доступа (см.выше) и подключаемся к нему, открываем страничку конфигурации по адресу 192.168.1.1
4. Переходим в раздел "Обновление" - "Обновление списка станций" выбираем файл stream_list.json и нажимаем кнопку "Обновить"
5. Через пару минут, приемник сообщит результат по окончинии процесса обновления. Список станций обновлен.

Сохранение и восстановление конфигурации приемника

При помощи данной функции можно легко и быстро восстановить все настройки приемника, например после полной прошивки.

Сохранение файла конфигурации:
1. Запускаем приемник в режиме точка доступа (см.выше) и подключаемся к нему, открываем страничку конфигурации по адресу 192.168.1.1
2. Переходим в раздел "Обновление" - "Сохранение и восстановление конфигурации" нажимаем кнопку "Сохранить"
3. Загрузится файл config.json. В этом файле находятся все настройки приемника.

Восстановление настроек приемника:
1. Запускаем приемник в режиме точка доступа (см.выше) и подключаемся к нему, открываем страничку конфигурации по адресу 192.168.1.1
2. Переходим в раздел "Обновление" - "Сохранение и восстановление конфигурации" нажимаем кнопку "Выбрать файл" и выбираем файл config.json
3. Нажимаем кнопку "Восстановить". Для того чтобы настройки восстановились, перезагружаем приемник. Все.


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

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

Для первоначальной прошивки нам потребуется архив с файлами ESPmini_dac_xx.zip, распаковываем его и переходим к конфигурированию прошивальщика.

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


Конфигурация Flash download tools

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

Downloads:
ESPmini_DAC_39.zip прошивка bin версия 39 для приемников с внешним ЦАП.
ESPmini_DAC_web_update_39.zip пакет файлов для обновления через WEB интерфейс.

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

Версия 39
-добавил возможность назначать статические IP адрес, шлюз, маску;
-добавил возможность выбора потоков радиостанций из обновляемого списка (на текущий момент 780 станций);
-добавил возможность обновления через веб интерфейс: голосовых уведомлений, списка станций;
-добавил возможность делать бекап настроек приемника и восстановление настроек;
-увеличил размер буфера на 1кб;
-изменил User-Agent приемника (некоторые потоки не запускались с прежним);
-куча мелких улучшений;

Версия 38 промежуточная
-добавил поддержку ЦАП;
-переназначил кнопки управления;

Версия 38
-добавил голосовое озвучивание действий;
-устранил щелчки при переключении потоков;

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

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

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

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

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

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


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