WiFi радио из старой магнитолы. Интернет радиоприемник из роутера своими руками


Интернет-радио из D-Link Dir 320 своими руками :: NoNaMe

Интернет-радио из D-Link Dir 320 своими руками

Решил я как-то сделать из своего домашнего роутера D-Link 320 интернет-радио...

Самое смешное это то, что у меня это получилось =)

Теперь расскажу как я это сделал.

----------------------<cut>----------------------

Первым делом это установка прошивки DD-WRT и в дальнейшем OPTWARE. О том, как её установить я рассказал в своей прошлой статье, поэтому опущу эти вопросы.

Ссылка на статью: 123box.ru/blogs/bionicman2005/...

А продолжу с главы номер IV. Дополнительный софт

Для того, чтобы установить интернет-радио на роутере будет необходимо установить:

adduser — программа для добавления пользователя (не root)icecast — графическая оболочка для радио вещанияices0 — основной сервис вещания радиоlighttpd — для поддержки web-оболочки.

Для этого, в командной строке telnet, пишем:

/opt/bin/ipkg-opt install lighttpd | Подробная инструкция о настройке указана в предыдущей статье./opt/bin/ipkg-opt install adduser/opt/bin/ipkg-opt install icecast/opt/bin/ipkg-opt install ices0

Интернет-радио из D-Link Dir 320 своими руками

После благополучной установки переходим к настройке программ.

Настройку программ удобнее всего проводить на компьютере, а не через telnet, поэтому достаем флешку из роутера и подключаем к компьютеру.

Сразу подготовьте музыку к загрузке (оригинальное название треков менять не нужно).После того, как вы это сделаете, загружайте музыку в папке под названием, например, "radio" в папку "opt"

Настройка IceCast:

Файл, который нужно будет настраивать находится тут: /opt/etc/icecast.xmlДалее что в коде файла:

Пункт <clients>20</clients> | Укажите сюда количество одновременных слушателей вашего радио. Мне пока не

удалось проверить сколько потоков осилит роутер, поэтому точно сказать число не могу.

<source-password>password</source-password> | сюда пишите любой пароль<relay-password>tplink</relay-password> | повторяем этот пароль

<admin-user>admin</admin-user> | Логин к админской панели Web-интерфейсам радио.<admin-password>password</admin-password> | пароль

<hostname>192.168.0.1</hostname> | сюда укажите айпи роутера (внутренний)<port>8081</port> | порт для подключения (укажите любой удобны, кроме 80 т.е. роутер его использует).

<logdir>/tmp/</logdir> | один из важных моментов настройки. Укажите как тут.

Второй важный момент настройки: (Замените свой кусок этим куском)

<security><chroot>0</chroot><changeowner><user>nobody</user><group></group></changeowner></security>

//Дело в том, что IceCast категорически не хочет работать через права root. Поэтому нужно добавить обычного пользователя. Он будет называться "nobody".

С кодом закончили.

Теперь нужно добавить файлы error.log и access.log в корень папки "tmp" на флешке.Если этой папки нет, нужно её тоже создать.

Настройка ICESФайл, который нужно будет настроить, находится тут:/opt/etc/ices.conf.dist

Файл переименовываем в "ices.conf" и помещаем в папку с вашей музыкой.

Работа с кодом:

Устанавливаем как в IceCast:

<Hostname>192.168.0.1</Hostname><!-- Port of the same --><Port>8081</Port>Пароль что вы указывали ранее в icecast:

<Password>password</Password><Name>DIR320 Radio</Name> | название вашего радио

<Genre>Metal</Genre> | Стиль музыки вещания

<Description>Zel Radio on Dir320</Description> | Описание вашего радио

<URL>http://192.168.0.1/</URL> | Ссылка на ваше радио

<Public>0</Public> | Если вы хотите, чтобы о вашем радио узнали, поставьте "1", если нет, то "0"

<Bitrate>128</Bitrate> | качество вещаемой музыки

Настройка завершена.

Краткое резюме:1. конфигурация icecast.xml2. создание файлов в /tmp/ error.log и access.log3. переименовка файла ices.conf.dist в ices.conf4. конфигурация файлов ices.conf5. загрузка музыки на флешку в /opt/radio/6. перенос ices.conf в /opt/radio/

После того, как всё это выполнено, флешку можно вставлять обратно в роутер. Остальные настройки будут через telnet.

V. Окончательные настройки.

Подключаемся к роутеру через telnet, авторизуемся.

Создаем плейлист вашей музыки. Для этого пишем:

cd ..cd ..cd /optcd /radiols > playlist.txt

Далее создаем пользователся "nobody"Пишем:

adduser -S nobody

Игнорируем все, что написано про пароль.

Далее запускаем icecast.Для этого пишем:

cd ..cd ..cd ..icecast -b -c opt/etc/icecast.xml

// теоретически не должно появится никаких ошибок. Если всё-таки будут, то проверьте правильно ли указаны

адреса error.log и access.log

// Если будет ошибка про права root. То проверьте правильно ли вы указали пользователя "nobody" и добавили ли его через предыдущий пункт.

Всё нормально, если откроется страничка по адресу: 192.168.0.1:8081 (адрес, что вы указали в настройках ранее).

Интернет-радио из D-Link Dir 320 своими руками

// Если не открывается, проверьте этапы с настройки lighttpd и icecast.

Последний этап

Запуск радио.Для этого пишем:

cd ..cd ..cd ..cd /optcd /radioices -c ices.conf

После этого запускайте ваш аудио-плеер на компьютере и открывайте http://192.168.0.1:8081/ices (айпи и порт — те, что вы указывали ранее).

С этого момента должно работать радио!

Интернет-радио из D-Link Dir 320 своими руками

Теперь кратко о том, что нужно, чтобы запустить радио после всех настроек.

Так как после каждой перезагрузки роутера настройки о пользователях слетают, нужно будет каждый раз добавлять пользователя "nobody".

Для этого прописывать: adduser -S nobody

После этого запускать IceCase: icecast -b -c opt/etc/icecast.xmlИ уже после этого запускать Ices через папку с музыкой: ices -c ices.conf

Интернет-радио из D-Link Dir 320 своими руками Интернет-радио из D-Link Dir 320 своими руками

Вывод: Это возможно! Это отлично работает! Если настроить лучше, чем это сделал я, то можно будет прописать в автозагрузку роутера всё необходимое, как я это сделал в предыдущей статье, и тогда радио будет работать 24\7 =)

\\ Я ковырялся, но что-то не хватило сил настроить как положено, прошу простить.Если кто-нибудь напишет "рецепт" нормального запуска (через автозагрузку) буду признателен.

Благодарю автора сайте за инструкцию по настройке IceCast и Ices: opennet.ru/base/sys/icecast...

Надеюсь вам было интересно! Спасибо за внимание!

P.S. Можете послушать моё радио по ссылке: ufm.servegame.com:8081/icesМаксимальное количество пользователей 10, поэтому не всегда получится подключиться.Чтобы к вам смогли подключиться без внешнего айпи, используйте сервис no-ip. Программу, необходимую для работы я залил:

Необходимо зарегистрироваться чтобы прочитать текст или скачать файлы Прошу прощения за депозит.

itog.info

Проект RadioduinoWRT — интернет радио из восьмидесятых

Обычно, старую и поломанную технику редко чинят — чаще выбрасывают, но ведь существуют варианты и по интересней 😉 Так, например, немецкий энтузиаст Raffael Herrmann решил не выбрасывать старый Hi-Fi радиоприемник, а переделать его в современный аппарат для удобного прослушивания интернет радиостанций.

Вид спереди на получившийся интернет радиоприемник

Вид спереди на получившийся интернет радиоприемник

Проект было решено назвать RadioduinoWRT и, как некоторые уже поняли, в его основе лежит популярная микроконтроллерная платформа Arduino и альтернативная ОС для роутеров OpenWRT. Первоначально Raffael подумывал об использовании популярного компьютера Raspberry Pi в качестве основы для своего проекта, но, взвесив все «за» и «против», он решил использовать компактный WiFi роутер TP-Link WR703N и микроконтроллер Arduino Mega. Вроде бы Raspberry Pi всем устраивал, но применение полнофункционального компьютера для простого интернет радио Raffael посчитал избыточным. При этом, в пользу связки из TP-Link WR703N и Arduino Mega говорило их наличие :), а также тот факт, что их использование делало проект более интересным.

Радио в стойке с усилителем Радио в стойке с усилителем Начинка проекта Начинка проекта Вид сзади на радиоприемник Вид сзади на радиоприемник

Для придания роутеру TP-Link WR703N функций интернет радиоприемника, Рафаэль перепрошил его многофункциональной прошивкой OpenWRT и добавил к нему USB звуковую карту для вывода звука. Не смотря на тот факт, что в данном проекте используется довольно дешевая USB звуковая карта, качество воспроизводимого звука, по словам автора проекта, находиться на довольно приличном уровне, да и мой личный опыт использования таких «свистков» вполне совпадает с мнением автора проекта. При этом, при желании, в проект можно установить звуковую карту хоть профессионального уровня. Для того чтобы получить удобное управление радиоприемником, Рафаэль установил микроконтроллер Arduino Mega, который он подключил к роутеру, а также периферии: кнопкам, дисплею, инфракрасному приемнику и регулятору «крутилке».

Компоновка проекта с подписями компонентов

Компоновка проекта с подписями компонентов

Программная часть проекта RadioduinoWRT включает в себя музыкальный плеер Music Player Daemon (MPD), а также программу MPC для управления им. Благодаря данной программной связке, а также обилию кастомного кода, Рафаэль получил возможность управлять своим радиоприемником с помощью веб-интерфейса, пульта дистанционного управления, специальных клиентов MPD и кнопками на передней панели устройства.

С внешним и внутренним видом проекта RadioduinoWRT вы можете ознакомиться по фотографиях, оценить же проект в действии можно просмотрев прикрепленное видео. Если же данный проект вас заинтересовал, то рекомендуем ознакомиться с детальным ворклогом по его постройке, на домашней странице автора.

Источник: Hack a dayОбсудить: форум

www.modmag.net

WiFi радио из старой магнитолы / Хабрахабр

image Эта статья посвящена практическим аспектам изготовления недорогого WiFi радио на основе OpenWrt роутера под управлением микроконтроллера Stellaris.
Цели и обоснование выбора компонентов
Основной целью было изготовить устройство для обеспечения фоновой музыкой кухню, с максимально простым и наглядным интерфейсом пригодным к использованию домашними.Второстепенные цели:
  • исправить неработающую магнитолу
  • пристроить неисправный роутер и заказанную в припадке шопоголизма отладочную плату Stellaris
  • оценить удобство работы с микроконтроллером Stellaris
Выбор остальных компонент схемы несущесвеннен.
Корпус
Обычно этот раздел ставится в конец. Но на мой взгляд. тема достаточно важная, особенно если предстоит эксплуатация устройства в условиях агрессивных сред (я имею ввиду кухню). Jeff сделал корпус из фанеры. Хорошее решение для тех кто хочет нормального звучания и умеет гнуть фанеру. В моем исполнении такой корпус выглядел бы слишком колхозно, поэтому я выбрал отыгравшую свое старую пузатенькую магнитолу с CD диском. Широкое основание CD проигрывателя позволяет разместить наиболее габаритный элемент конструкции -плату роутера, динамики дают основу аудио тракта, а ручка для переноски необходимую мобильность. Кроме того, есть шанс использовать органы управления магнитолы.
Интерфейс
Одним из факторов тормозящих применение новых технологий является небходимость смены пользовательского интерфейса. Поэтому было решено остановится на наиболее простом варианте: большой экран для отображение номера станции, 2 кнопки следующая/предыдущая станция, 2 кнопки контроля громкости и кнопка старт/стоп проигрывания. Для практического использования устройства оказалось важным помнить последний установленный уровень звука и выбранную станцию.
Конструкция
В качестве основы была выбрана инструкция 4х летней давности с сайта MightyOhm. Она достаточно подробно описана и я не вижу смысла воспроизводить ее тут целиком. Остановлюсь только на отличиях. При построении радио по такой схеме существует дилемма разделения управления между линуксом и микроконтролером. Я остановился на варианте когда большая часть логики управления расположена на МК из за нелюбви и отсутствии большого опыта линукс администрирования а так же желания поиграться с МК. Кроме того, меня смущает проблема необходимости повторения процедуры настройки при перепрошивке роутера. Поэтому, со стороны опенврт я добавил только
  • скрипт начала проигрывания с обновлением плей листа из интернет
  • скрипт отображения статуса плеера
  • метку окончания загрузки роутера
Программное обеспечение
Stellaris это вам не ардуина, одних только UART портов, свободно работающих на 115200 у него 6 штук, что позволяет при отладке использовать два из них в качестве переходника USB — UART для ПК. Первая задача выполняемая ПО МК это проброс информации между UART1 подключенного к роутеру и UART0, который может быть подключен к ПК. Вторая — анализ проходящей информации и посылка событий в конечный автомат включая информацию об изменении состояния кнопок. Третья — реализация конечного автомата с анализом входящих сообщений и изменении информации на устройствах отображения

После старта, МК ожидает сигнала окончания загрузки роутера, обновляет плей лист из интернет (я использую DropBox для хранения плейлиста), восстанавливает уровень звука и станцию, и посылает команду на начало проигрывания.

Предложенные схема и код рабочие, но создавались по кусочкам в течении полугода, как следствие, получились достаточно сумбурными и ценны только как рабочее демо.

Изготовление
Донор, неведомое чудо китайской промышленности начала века. Со старой магнитолы снимается все оборудование кроме динамиков и платы с кнопками. Можно попробовать сберечь аудио усилитель и питание если у вас есть время и вдохновение.Потрошение. После соответствующей доработки корпуса он фаршируется новым оборудованием:Фаршировка.Платой роутера (1) Мне достался знаменитый Asus WL-500gP V2, достался за пиво в связи с проблемами по WAN порту, которые не влияли на работу в качестве WiFi хоста. Теоретически роутер должен подойти любой с возможностью установки OpenWrt и USB портом.USB звуковой картой (5) Я заказал такую, как показана на картинке и она работает, кроме того, была успешно опробована Asus Xonar U3, но она не дала ожидаемого улучшения качества звучания. Я подозреваю в связи с низкими битрейтом и качеством аудио тракта. Еще одна опробованная китайская USB звуковая карта, в прозрачном корпусе без кнопок, работать отказалась, при том что на ПК все было в порядке, причина неизвестна.Аудио усилителем (4) Я заказал его на EBay по принципу «шо подешевле». Не могу рекомендовать из за сильных высокочастотных шумов, хотя включенные последовательно с динамиками резисторы помогли их уменьшить до приемлемого уровня с сохранением достаточного уровня громкости.Устройствами индикации При построении радио по такой схеме достаточно использовать пару светодиодов для индикации состояния либо ориентироваться по светодиодам роутера, но чтобы ресурсы МК не простаивали я заказал вот такой OLED экранчик (3). Экран замечательный — компактный и контрастный, но слишком мелкий, особенно если предполагается эксплуатация радио людьми со слабым зрением. Поэтому в конструкцию был добавлен семисегментный индикатор с контроллером (6) показывающий наиболее важную на мой взгляд информацию — номер выбранной станции.Материнской платойМК (2), память (7) и разъемы на периферийные устройства я скоммутировал на макетке. Основанием для выбора внешней памяти стало сообщение о баге с флеш памятью в ранних версиях стелларис значительно снижающем количество циклов перезаписи. Без микросхемы памяти можно обойтись или же использовать внутренний флеш МК, но это потребует доработки ПО.Питанием (8) Роутер требует 5в 2а, усилитель 12в Устройствами управления (кнопками) Конструкция моей магнитолы позволила использовать после соответствующей модификации родную плату с кнопками. Надеюсь вам повезет также.Готово
Бухгалтерия
1 ASUS WL-500g Premium V2 $10 (дохлый WAN порт)
2 EK-LM4F120XL Stellaris LM4F120 LaunchPad Evaluation Board $7.99 (сейчас)
3 New 3.3V 0.96" 128X64 OLED LCD LED Display Module Shield white Color SSD1306 $8.74
4 10W Mini HIFI 12V Digital power amplifier Stereo High power amplifier Board $4.99
5 USB2.0 To 3.5mm Audio Microphone Speaker Port Adapter 7.1 Channel 3D Sound Track $2.08
6 0.56" LED 7 Segment 4 Digit Common cathode MAX7219 arduino Blue White Green $3.68
MAX7219 $0.45
7 AT25040A ~$1
8 Switch Power Supply Driver for LED Strip Light AC 110/220V 5V 2A 10W $8.16
12V 1A 12W DC Switch Power Supply Driver $4.99
Stellaris
Стелларис порадовал, широкими возможностями и хорошей документацией, но осталось впечатление что продукт сыроват. Как со стороны железа, что возможно связано с тем что я использовал плату из предзаказа, так и со стороны ПО. При этом комьюнити не слишком большое, по сравнению с той же ардуиной, что приводит к тому, что сделав шаг в сторону от предложенных TI примеров вы оказываетесь на минном поле из загадок и багов вооруженные только документацией и исходниками. Так например, оказывается, что использование UART выше 2 требует внесения изменений в код библиотеки. На моей плате оказались закорочены PB7 и PD1 пины, хотя возможно это следствие моих не слишком корректных экспериментов. Не удалось заставить нормально работать пользовательские кнопки и другие не критичные но досадные мелочи.
Что осталось нереализованым:
  • Прикрутить управление через ИК пульт, благо пинов и вычислительных мощностей МК хватает.
  • Завести через реле на МК управление питанием роутера что позволит реализовать «спящий» режим и при необходимости резетить роутер.
  • Наладить NTP и отображать точное время.
  • Реализовать таймер автоматического выключения радио после 4-5 часов проигрывания
  • Добавить в конструкцию жесткий диск с коллекцией музыки и возможность использования его при отсутствии интернета.
  • Добавить возможность использования нескольких плейлистов и кнопку переключения между ними.
  • Заменить кнопки громкости и выбора станции поворотными переключателями из старых мышек.
Выводы
Все поставленные основные и второстепенные цели достигнуты. Успешный опыт эксплуатации устройства в течении нескольких месяцев доказывает правильность выбранных решений.

habrahabr.ru

Cамодельный приёмник интернет-радиостанций. - sonny80

Основной целью проекта являлось создание простого радиоприёмника, воспроизводящего потоковое аудио непосредственно из локальной сети или интернет-радиостанции без применения персонального компьютера. Т.е. приемник должен подключаться непосредственно в сеть Ethernet и иметь возможность самостоятельного подключения к серверам в локальной сети или к интернет-серверам при наличии маршрутизатора. 

Конечно же, вполне возможно прослушивать интернет-радиостанции с помощью Wi-Fi КПК или смартфонов, однако для меня покупка не дешевого электронного гаджета только для этой цели (поскольку кроме меня слушать радио будут и другие жители квартиры) показалась нецелесообразной.

Вполне возможно, что я отыскал бы в "интернетах" какой-нибудь китайский "черный ящик" "Wi-Fi Radio", по-охотился бы за ним на E-Bay и купил бы его по цене Rst7-cbsie сделало свое дело и было принято решение делать устройство самостоятельно.

К тому же в работе готовых интернет-радиоприёмников мне показалось очень много "темных" мест (таких как работа через сервер-посредник, сомнительная руссификация и прочее). 

Предварительный обзор существующих и планируемых к прослушиванию радиостанций показал, что наиболее распространенными протоколами потокового вещания являются протоколы shoutcast и icecast. Как оказалось в последствии данные протоколы являются и наиболее простыми для реализации, особенно в начальной стадии проекта.

Далее был произведен обзор существующих простых решений для самостоятельной сборки. 

Ими стали:

После внимательного изучения вышеуказанных ресурсов и консультаций с Rst7-cbsie о возможности расширения функций его TCP/IP стека "uNike" задача построения малобюджетного сетевого проигрывателя стала выглядеть вполне реалистичной. 

В качестве Ethernet контроллера мной была выбрана все та же "глючная" ENC28j60 (то что было под рукой и уже работало в других задачах).

Портировав новую версию TCP/IP стека "uNike" под ENC28j60, я для начала "покрутил" её в Proteus'e, а затем, после положительных результатов моделирования, и в железе. Собранная система была "нацелена" на локальный Shoutcast-сервер. Получаемый "железом" по сети Ethernet mp3-поток выдавался через RS-232 порт в ПК, где успешно декодировался программой-проигрывателем.

На этой успешной стадии проект был отложен "в долгий ящик" в связи с наступлением лета, делами и отсутствием свободного времени.

...

Следующим этапом необходимо было реализовать декодирование аудиопотока посредством чипа VS1053b фирмы VLSI. Неспешно изучалась документация, рисовалась схема, разводилась плата, которая вскоре была изготовлена в виде отдельного модуля.

Плата декодера vs1053 крупным планом«Плата декодера vs1053b крупным планом»

Далее была собрана вот такая замысловатая макетная система:

Общий вид макета самодельного автономного интернет-радиоприемника

«Общий вид макета самодельного автономного интернет-радиоприемника»Еще один общий вид процессорной макетной плат«Еще один общий вид процессорной макетной платы»

Как видно из рисунков, макет построен на базе 8-битного микроконтроллера AVR ATmega32, Ethernet<->SPI контроллера enc28j60, обвязки для согласования уровней 5В/3.3В, аппаратного mp3/aac+/wma/flac декодера vs1035b фирмы VLSI, а также потребовалась установка внешнего буфера памяти под аудиоданные объемом 128 KiB (1 мегабит). 

В качестве интерфейса "человек-машина" служат ЖК-дисплей 16*4 символа Winstar Wh2604A и, для простоты, пара кнопок "Воспроизведение/Стоп" и "Выбор станции", а также пара светодиодов.

На приведенных рисунках можно заметить подключенный FM-транслятор "Made in China", к которому подключается звуковой выход vs1053b и далее стерео-аудиосигнал ретранслируется в FM-диапазоне на радиоприёмники в пределах помещения.

Вот на такой системе и происходила отладка встроенного программного обеспечения. 

Результаты работы

На данном этапе в локальной сети успешно воспроизводятся MP3 потоки до 320 кбит/с и AAC+ до 128 кбит/с (в принципе, даже без применения дополнительного буфера).

В сети интернет показатели немного хуже из-за периодических перепосылок пакетов при сбоях.. Но даже в этих условиях станции 96 и 128 кбит, на хороших cерверах работают вполне устойчиво благодаря реализации алгоритма Fast Retransmit в TCP/IP стеке.

При очень больших  потерях пакетов проблема частой буферизации может быть решена применением релейных ретрансляторов радиостанций. Хорошим примеров является сервер radio.mv.ru, на котором можно попросить администратора добавить радиостанции для ретрансляции, чтобы слушать их потом практически без сбоев.  Далее я прошил свой список радиостанций (от федеральных каналов до экзотических, например, канал с перуанской фольклорной музыкой :-) ). И практически забыл о существовании местных УКВ-радиостанций с их навязчивой рекламой.

Чтобы не быть голословным привожу несколько скриншотов работы устройства:  Слушаем WRN.Russkij

«Слушаем WRN.Russkij»

Вот я слушаю радиопередачи русскоязычных служб иностранных радиостанции (DEGEN-DE1103 после этого был продан :-) ).

Слушаем 1.FM с кодеком AAC+«Слушаем 1.FM с кодеком AAC+»Слушаем DI.FM 64kbits/aac+«Слушаем DI.FM 64kbits/aac+»Слушаем ETN.FM 128kbits aac+«Слушаем ETN.FM 128kbits aac+»

Как видно из рисунков, теперь я могу выбрать музыку на любой вкус в отличном качестве из репертуаров таких интернет радиостанций, как "1.FM", "DI.FM", "SKY.FM", "ETN.FM".

Слушаем радиоканал-мелодия с рускими тэгами128kbits mp3

«Слушаем радиоканал-мелодия с рускими тэгами128kbits mp3»

Ну и для живущих рядом любителей ретро-музыки тоже нашелся хороший канал. Также сделана поддержка русских мп3 - тэгов, чего может и не быть в китайских коробках.

На данный момент в память радиоприёмника можно записать до 16 радиостанций, что ограничивается размером встроенной  энергонезависимой памяти EEPROM в микроконтроллере ATmega32. 

Как видно из рисунка, конфигурирование списка радиостанций производится с помощью веб-консоли из браузера. Это позволяет обходится без программатора, USB, COM портов при необходимости его изменения.Дальнейшее развитие

В дальнейшем планируется собрать всю систему на паре печатных плат и перейти на более современный микроконтроллер Atmel AVR ATxmega32A4. Также можно добавить протокол радиостанции RTSP (тот самый, что "mms://). Однако пока вполне успешно можно обходиться и без этого "детища" Microsoft.

БлагодарностиХочется выразить огромную благодарность Rst7-cbsie за техническую поддержку и консультации, и конечно же, за создание TCP/IP стека с открытым кодом.

sonny80.livejournal.com

Отличный интернет радиоприёмник своими руками (часть четвёртая)

В ожидании serial to USB кабеля забегу вперед и расскажу о дальнейших действиях.

После того, как в прошлой части мы присоединили кабель, нужно проверить его работоспособность. Для этого этого подключаем наш USB выход к ПК. Нам скорее всего понадобятся дрова, как приедет мой шнур - скажу где взял дрова для него. Вообще у производителей есть всё, а у меня Windows 7, полагаю, сама разберётся.

Далее нам нужен любой терминальный клиент - я люблю родную putty Выставляем настройки подключения - COM3, 115200 baud, 8N1. Как проверю у себя - сделаю скриншот.

Подключаем антенну и питание к рутеру. Он грузится и наш терминальный клиент должен будет показать что-то вроде:

Decompressing..........doneCFE version 1.0.37 for BCM947XX (32bit,SP,LE)Build Date: Thu Mar 6 10:05:04 CST 2008 ([email protected])Copyright (C) 2000,2001,2002,2003 Broadcom Corporation.Initializing ArenaInitializing Devices.Boot partition size = 131072(0x20000)et0: Broadcom BCM47xx 10/100 Mbps Ethernet Controller 4.130.31.0Total memory: 16384 KBytes

CPU type 0x29029: 240MHz...

Если мы это видим - то ура, серийный порт работает. Надо подождать пару минут - родная прошивка рутера будет грузиться и выдаст тонну полезной информации, которая для наших целей неважна. Когда рутер загрузится в терминальном клиенте можно нажать Enter и поработать в командной строке. Если хочется.

Теперь самое главное - нам нужен OpenWRT для раскрытия потенциала нашего рутера. Чтобы получить свой готовый для наших целей установщик Linux - есть два способа. Первый описан у автора этой статьи - в его блоге.

Второй способ мне нравится намного больше - Jeff уже сделал всю работу за нас и мы можем скачать его, проверенный образ .

Дело за установкой OpenWRT:

Роутер выключен.1) Подключаем нашим кабель serial to USB роутер к компу (как написано выше). Запускаем putty с настройками указанными выше и ждём, не подключаемся.

2) Подключаем сетевой кабель - от компа к Lan1 порту роутера. По умолчанию ip роутера - 192.168.1.1 так что себе берём свободный той же подсетки.

3) Нажимаем у удерживаем скрепкой конпку Restore (с задней стороны роутера - рядом с EZSetup).

4) Подключаем питание к роутеру. Продолжаем удерживать конпку restore до тех пор, пока индикатор питания не начнёт мигать один раз в секунду. Как дождёмся - отпускаем Restore.

5) Подключаемся при помощи putty (через com3 порт - пункт первый) и должны увидеть после пары загрузочных предложений следующее:

Reading :: TFTP Server. Failed.: Timeout occured Reading :: TFTP Server.Failed.: Timeout occured

6) Запускаем ещё одну копию putty и подключаемся через Lan. Вбиваем команду:

echo -e "binary\nrexmt 1\ntimeout 60\ntrace\nput openwrt-xxx-x.x-xxx.bin\n" | tftp 192.168.1.1

После этого в первой копии putty (serial порт) должно появится:

Reading :: TFTP Server. TFTP_BLKLEN!! break!! last block!!Done. 1918724 bytes read Download of 0x1d4704 bytes completed Write kernel and filesystem binary to FLASH (0xbfc20000) Programming... copysize=1918724, amtcopy=1918724

Если не появилось - значит как-то криво подключились к роутеру через Lan

7) Если появилось - ждём 5-10 минут - роутер перепрошивается - и выдаёт нам:

done. 1918724 bytes written

Если прервём процесс и не дождемся - роутеру крышка.

8) Если дождались и ничего не сломали - отрубаем роутеру питание. Ждём пару секунд и подключаем обратно. Коннектимся при помощи putty к serial порту и видим что роутер проводит первую загрузку системы. По окончанию выдаст:

mini_fo: using base directory: /mini_fo: using storage directory: /jffs

9) Нажимаем Enter и видим банер OpenWRT и его командную строку:

10) радуемся, на сегодня всё, гасим роутер.

semaev.livejournal.com


Смотрите также