Прошивка для прослушивания интернет радио на роутере. (WifiRadio.SU v51.Full)

Прошивка WifiRadio.SU Full с веб интерфейсом, для прослушивания интернет радио на роутерах с прошивкой Openwrt.

На текущий момент на версиях openwrt 18 и выше, данная прошивка не работает (используйте модификацию light или standard).

Возможности:

  1. Поддерживаемые потоки: MP3 (AAC, OGG — опционально при установке mpd-full)
  2. Индикация проигрываемого трека: есть
  3. Функция Play/Stop: есть
  4. Веб интерфейс: настройки wifi, управление подписками, добавление своих станций, загрузка своих плейлистов, упрощенный пульт управления, управление громкостью, управление переключением станций, управление избранным, управление озвучкой, управление звуковым устройством, обновление прошивки.
  5. Время переключения между станциями: ~1 сек.
  6. Поддержка приложения управлением с Android: есть
  7. При нажатии 15 сек. на кнопку WPS создается точка доступа WifiRadio с паролем 12345678, подключившись к ней, можно зайти в веб интерфейс по http://ip адрес/play/, который вы присвоили проводной сети.

История изменений »

После обновления прошивки, в веб интерфейсе обязательно нужно обновить страницу клавишами CTRL+F5.

V51.Full (13.02.2019)

  • Для AAC станций удалена загрузка обложек в веб интерфейсе, для совместимости всех трансляторов.
  • Небольшие правки в кодировке названия трека.
  • Исправлена функция подсчета трафика.

V50.Full (25.01.2019)

  • Улучшение стабильности.
  • Мелкие исправления.

V47.Full (09.01.2019)

  • Изменения для работы с новой версией управления для android.

V46.Full (08.01.2019)

  • Некоторые мелкие улучшения.

V45.Full (06.11.2018)

  • Оптимизация отображения логотипов станций.

V42.Full (03.11.2018)

  • Исправлен формат скачивания пользовательского плейлиста для последующей загрузки.

V41.Full (02.11.2018)

  • Обновление для новой версии пульта под Android.

V40.Full (01.11.2018) Важное!

  • Изменён принцип обновления прошивки.
  • Добавлены логотипы станций.
  • На данную версию лучше перейти через кнопку «Восстановление прошивки»

V37.Full (31.10.2018)

  • Мелкие исправления.

V36.Full (29.10.2018)

  • В веб интерфейс добавлена информация о трафике и времени работы.
  • Исправлена индикация % сигнала wifi соединения.
  • Добавлена функция создания wifi точки доступа, для настройки без компьютера. (При нажатии 15 сек. на кнопку WPS создается точка доступа WifiRadio с паролем 12345678, подключившись к ней, можно зайти в веб интерфейс по http://ip адрес/play/, который вы присвоили проводной сети.) *

При условии полной установки прошивки, либо замены файла /etc/config/system

V35.Full (24.10.2018)

  • Изменения в настройке wifi: теперь сеть можно выбрать из выпадающего списка.

V34.Full (23.10.2018)

  • Небольшие изменения в веб интерфейсе
  • Функция «Восстановление прошивки» теперь не затрагивает пользовательские настройки.

V33.Full (21.10.2018)

Порядок установки прошивки на роутер.

Для установки нам понадобится:

  1. роутер прошитый на openwrt с веб интерфейсом LuCI
  2. имеющий usb порт
  3. имеющий ~4 мегабайта свободной flash памяти для установки всех компонентов (можно расширить память при помощи внешней флешки)
  4. также необходим usb звуковой адаптер или usb наушники

Для начала опишу настройку wifi в режиме клиента. После настройки радио будет видеться в Вашей основной сети и иметь доступ к интернет по wifi.

Рекомендуемые настройки сети »

Редактируем следующие файлы:

/etc/config/wireless (добавляем в Ваш файл)

config wifi-iface
	option network 'wwan'
	option ssid '*********' #имя Вашей точки доступа WiFi
	option encryption 'psk2' #тип шифрования Вашей точки доступа
	option device 'radio0'
	option mode 'sta'
	option key '********' #пароль Вашей точки доступа

/etc/config/network (полностью заменяем Ваш файл, но параметр option ifname ‘eth0’ меняем на свой)

config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'

config interface 'lan'
option ifname 'eth0'
option type 'bridge'
option proto 'static'
option netmask '255.255.255.0'
option dns '8.8.8.8' 
option ipaddr '192.168.2.1' #ip адрес для Вашего роутера openwrt по кабелю (можно не менять)
option gateway '192.168.1.254' #ip адрес Вашего роутера openwrt в домашней подсети

config interface 'wwan'
option proto 'static'
option netmask '255.255.255.0'
option gateway '192.168.1.1' #ip адрес Вашего роутера или модема с интернетом
option dns '8.8.8.8'
option ipaddr '192.168.1.254' #ip адрес Вашего роутера openwrt в домашней подсети

/etc/config/firewall (полностью заменяем Ваш файл)

config defaults
option syn_flood '1'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'

config zone
option name 'lan'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
option network ' '

config zone
option name 'wan'
option network 'wan'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
option masq '1'
option mtu_fix '1'

config forwarding
option src 'lan'
option dest 'wan'

config forwarding
option src 'wan'
option dest 'lan'

config rule
option name 'Allow-DHCP-Renew'
option src 'wan'
option proto 'udp'
option dest_port '68'
option target 'ACCEPT'
option family 'ipv4'

config rule
option name 'Allow-Ping'
option src 'wan'
option proto 'icmp'
option icmp_type 'echo-request'
option family 'ipv4'
option target 'ACCEPT'

config rule
option name 'Allow-DHCPv6'
option src 'wan'
option proto 'udp'
option src_ip 'fe80::/10'
option src_port '547'
option dest_ip 'fe80::/10'
option dest_port '546'
option family 'ipv6'
option target 'ACCEPT'

config rule
option name 'Allow-ICMPv6-Input'
option src 'wan'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
list icmp_type 'router-solicitation'
list icmp_type 'neighbour-solicitation'
list icmp_type 'router-advertisement'
list icmp_type 'neighbour-advertisement'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'

config rule
option name 'Allow-ICMPv6-Forward'
option src 'wan'
option dest '*'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'

config include
option path '/etc/firewall.user'

После редактирования этих файлов нужно перезагрузить роутер.

Далее устанавливаем саму прошивку.

Автоматический вариант установки через telnet или ssh (putty, xshell):

Если позволяет память, вместо mpd-mini нужно установить mpd-full, тогда появится поддержка AAC потоков. Инструкция по расширению памяти при помощи usb флешки по этой ссылке »

opkg update
opkg install curl mpd-mini mpc kmod-usb-core kmod-usb-audio kmod-sound-core alsa-utils kmod-usb-hid triggerhappy vsftpd unzip
wget -U "Mozilla/5.0" -O "/fw.zip" "http://wifiradio.su/download/wifiradio.su_full.zip"
unzip -o "/fw.zip" -d "/"
chmod -R 755 /www/cgi-bin/
chmod -R 755 /etc/wifiradio/
rm -r -f "/fw.zip"
reboot

После выполнения этих команд роутер перезагрузится и заиграет радио.

Чтобы попасть в web интерфейс с настройками, необходимо в браузере открыть:

http://ip_адрес_роутера/play/

Через web интерфейс можно управлять следующими функциями:

  • Переключать станции
  • Управлять громкостью
  • Управлять избранным (для переключения usb клавиатурой или андроид приложением)
  • Загружать плейлисты
  • Добавлять и удалять станции
  • Управлять подпиской на плейлист
  • Управлять озвучкой станций
  • Настраивать звуковое устройство
  • Настраивать WiFi подключение
  • Обновлять прошивку через OTA

Управление аппаратной кнопкой WPS на роутере: (нажатие 0-1 сек.) переключение станций по кругу, долгое нажатие на кнопку (4-10 сек.) возвращает на первую станцию в списке.

Имеется возможность управлять станцией через приложение для андроид.

*При использовании usb клавиатуры возможны несовпадения кодов событий, поэтому нужно будет подправить файл example.conf в папке triggerhappy/triggers.d

*Также возможно придется изменить название звукового устройства для управления громкостью. Сделать это можно через веб интерфейс.

Если возникнут вопросы, с радостью отвечу на них.

18 комментариев

  1. K0HCТАHTИH KyзьMин

    Здравствуйте. Очень заинтересовала идея сделать из роутера радио! Экспериментирую на Xiaomi MIR3G. Хочется иногда выключать (пауза или стоп). Когда можно ожидать рабочую версию full под openwrt 18.06…?

  2. oka676

    Добрый вечер. Подскажите, как правильно добавлять свою станцию? Нашел адрес потока https://online.krasnoyarskfm.ru/krasnoyarskfm_mp3. В браузере работает, в VLC работает. А при добавлении в web-морду показывает, что играет добавленная станция, а на самом деле играет следующая за ней станция.

Добавить комментарий