company_banner

Теплое ламповое интернет-радио


    Это самая долгосрочная поделка в моей жизни. От идеи до конечной реализации, так чтобы ей можно было пользоваться, прошло 12 лет! За это время произошло колоссальное количество событий: переезды, рождения, смерти, но идея была со мной и ни смотря ни на что, я её доделал. И хочу рассказать о путях, терниях, чаяниях, которые сопровождали данную поделку и что из этого в результате получилось.

    Идея


    Саму идею Wi-Fi радио на базе маршрутизатора я увидел давным-давно вот в этом проекте. Если что — это 2009 год. Это было радио на базе роутера, Linux и mpd-демона. Тогда это были не совсем понятные для меня термины, но очень хотелось иметь подобное радио. И я загорелся этой идеей. Плюс меня очень вдохновляла любая ламповая техника: усилительные лампы, индикаторные лампы (6Е1П, которая у меня на аватарке), ЭЛТ-экраны. И так же очень радуют VFD-дисплеи (VFD — Vacuum Fluorescent Display или по-русски Вакуумно-люминесцентный индикатор (ВЛИ), или катодолюминесцентный индикатор (КЛИ).

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

    Итак идея: дисплей покупателя, некоторый одноплатный компьютер или роутер, Linux+mpd, вакуумно-люминесцентный индикатор и какие-то органы управления этим добром. Примерно по аналогии с проектом, который меня вдохновил.

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

    Основной концепт и дизайн


    У этого радио в те годы (примерно 2010 год) была и другая проектная цель. В те годы я изучал сербский язык и мне хотелось иметь простое устройство, где «щелкнув тумблером» получал сербскую радиостанцию. Телефоны, компьютеры были не вариант, так как они меня сами по себе сильно отвлекали: пока откроешь уже забудешь что делал. Второе, мне очень хотелось чтобы железяка оставалась максимально похожей на обычное привычное радио и им смог бы пользоваться даже пожилой человек. И последнее, хотелось чтобы управление было в минималистичном стиле: одна кнопка.

    Меня очень вдохновляли дизайнерские решения 30-40-х годов 20 века в архитектуре, интерьере и в частности в дизайне радиоприемников. Этот стиль зовется Ар-деко. В нашей стране яркий представитель этого стиля здание Ленинской библиотеки, станция метро Аэропорт, Маяковская, Красносельская (точнее будет сказать имеет влияние этого стиля). Если говорить о приемниках (дизайн которых они получили уже из архитектуры), то наиболее интересные варианты были тех, у кого шкала находится сверху.


    Дизайнерские решения, которые сильно вдохновляли

    Конечно, изначально корпус данного радио планировал делать из ценных пород дерева, наподобие приемника сверху. И даже когда-то тут на хабре познакомился с дизайнером, который делал аналогичный проект (не помню какой, простите); и мы даже сделали какие-то наброски, прикидывали проект, но все же тогда я не решился пойти по столь серьезному пути, а зря… В общем было много всяких странных мечтаний и желаний. Но все упиралось в жестокую реальность.

    Первые шаги реализации


    Основой всего Wi-Fi радио стал дисплей покупателя. Дисплей я подбирал очень долго, тупо ходил по магазинам и смотрел что мне больше всего нравится. Больше всего мне понравился дисплей Posiflex PD-2700. На нем я и остановился.


    Первое включение, и вывод изображения на экран

    По работе с данными дисплеями я писал отдельную статью. Можете почитать вот тут. Поэтому подробно останавливаться на принципе их работы я не буду.

    В качестве «мозгов» этого радио себя примеряли роутер TP-Link 3020, Nokia N800 (да-да, не удивляйтесь, именно N800), различные ноутбуки, промышленные компьютеры всех мастей, кассовые компьютеры, Raspberry Pi различных поколений, одноплатники и многое другое. Все говорит об универсальности принятых решений. И забегая вперед, некоторые решения были сделаны в угоду переносимости, а не удешевления конструкции.

    Но в целом, все эти решения мне не нравились, либо были чрезмерными по возможностям для такой задачи, либо наоборот были слишком низкой производительности и имели проблемы с воспроизведением звука (например роутеры). Далее я расскажу основные пути, по которым шел в реализации проекта. Без тупиковых ответвлений, типа Nokia N800 (при всей романтичности данного подхода).

    Рабочий прототип


    Первый рабочий прототип, который был автономен и даже играл радио и стоял на кухне, я реализовал на базе роутера TP-Link 3020 и китайской USB-звуковой карте за 100 рублей. Этот роутер отличная штука для таких поделок, его главное преимущество, что можно купить в ближайшем компьютерном магазине, в отличии от любого другого одноплатника. Основная ОС была OpenWRT, звук воспроизводился через самые дешманские колонки, за 500 что ли рублей с питанием от USB. В общем, все по нижней планке. И оно даже работало! Короче, лучше один раз увидеть, чем тысячу раз прочитать.


    После чего, стало понятно что как в видео управлять с планшета ну не вариант. Теряется смысл радио, когда можно использовать тот же самый планшет. Поэтому принял решение добавить управление с помощью энкодера. Изначально энкодер подключался к GPIO данного роутера (да, у него есть GPIO на борту), но мне не очень понравилась его работа и такое решение не было переносимо, поэтому в будущем сделал отдельный контроллер энкодера на базе arduino, которая подключается по UART.



    Энкодер подключен к GPIO TP-Link 3020

    После чего надо было сделать «настройку» радиостанции, и хотелось ее сделать так, чтобы она выглядела как в старых радиоприемниках, когда крутишь ручку, а ползунок бегает по экрану. Для этого был реализован шрифт вертикальной палки, пять штук. И перегружал ее каждый раз, о том как загружать шрифты читайте в моей статье. В результате получилось такое решение.


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


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


    Вариант прототипа

    И решил повторить. Для этого раздербанил колонку, снял с нее размеры и сделал прототип из картонки.


    Потрошу колонки, достаю усилитель и делаю замеры размеров

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


    Разметка размеров

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


    Картонное радио

    И оно даже работает!


    После чего срисовал все размеры, начертил и отправил в лазерную резку.


    Размеры

    После пришел порезанный акрил, и вот как это выглядит после сборки.



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



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



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

    Результирующая конструкция конечно прикольная, но не буду врать самому себе, не практичная. Конечно, это работало и даже некоторое время это изделие я слушал, однако вскрылся ряд проблем. Во-первых, пользоваться в таком виде было совершенно невозможно: собирает пыль, нельзя ничего поставить сверху, занимает много место. Во-вторых, TP-Link 3020 оказался слабоват для радио, и многие сталкивались с проблемой реализации на нем. В OpenWRT нет аппаратной поддержки плавающий точки, и поэтому mpd на 100% грузит процессор и это слышно в звуке (идут неприятные цифровые щелчки). Что в общем-то поставило крест на вот такой реализации. Плюс ряд обстоятельств в моей жизни не позволил больше заниматься данным проектом, и это радио было разобрано и убрано в буквальном смысле в ящик.

    Окончательное решение


    Но не стоит думать, что вот так просто я сдался. Нет, идея продолжала жить. И вот спустя некоторое время, решил все же добить это радио. И так удачно получилось, что у меня завалялся корпус, купленный в Китае. В качестве мозгов я взял beaglebone black, с которым работал в одном проекте и знаю его хорошие и плохие стороны. Платка конечно старая, но для данной задачи подходит отлично. Изначально качестве основной ОС хотел поставить OpenWRT, но получил там кучу проблем с драйверами Wi-Fi. Звуковую карту взял на популярном ЦАП PCM2704. Она легко ищется по данному запросу на популярном аукционе, белая такая платка. Звуковой картой очень доволен, но в целом можно было поставить любую, хоть SoundBlaster.


    Этапы прототипирования, пробуем разные звуковые карты, одноплатники, образы Linux, Wi-Fi-адаптеры и подбираем наиболее оптимальное решение

    В прошлой своей статье я говорил о том, что нужно потратить время на выбор компонентов, иначе будет головная боль. Тут случилось так же, я хотел USB-Wi-Fi-карту с поддержкой Linux. И не очень долго думая взял себе TP-Link N150. Если кратко, не делайте так. Она выпила у меня тонны крови, потратил на нее неделю. Под OpenWRT завести мне ее не удалось, на Ubuntu завел с какими-то лютейшими танцами с бубном. Если совсем кратко, то устанавливал ее вот по данному мануалу (там инструкция где-то в серединке). Стартовый скрипт (/etc/rc.local) у меня выглядит примерно вот так (после кучи экспериментов).

    #!/bin/sh
    PATH="/sbin:/bin:/usr/bin"
    
    ps -ef|grep wpa|awk '{print $2}' |xargs -i kill {}
    
    #in case you want to test the script
    ifdown wlan0
    sleep 0.1
    ifup wlan0
    sleep 0.1
    ifup wlan0
    sleep 0.1
    ifup wlan0
    sleep 0.1
    echo "nameserver 8.8.8.8" >> /etc/resolv.conf
    #END
    sleep 30
    #тут ниже запуск моих сервисов
    

    В общем, после всех мытарств все это завелось и все это было скомпоновано и убрано в корпус. Всех деталей не буду описывать, ибо у каждого будут свои. Но изготовил новые втулки для ножек, снизу основание из фанеры и к нему же все крепил. Дисплей крепил на деревянных рамках.


    Передняя панель

    Управление все осуществляется с помощью энкодера. Влево-вправо — выбор станции, нажатие на кнопку энкодера — пауза; двойное краткое нажатие на кнопку — вывод времени и даты (работает как часы).


    Задняя панель

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



    Внутри слева видим блок питания, снизу на морде дисплей в деревянной рамке, справа на морде энкодер. В верху USB-хаб, в который воткнуто питание, от него же питается дисплей, в хаб также вставлена звуковуха; сам одноплатник стоит на алюминиевом уголке на стойках, прикрученный к фанере. Справа спрятан контроллер энкодера, он выглядит вот так.


    Контроллер энкодера

    Это обычная ардуинка, которая подключена по UART к Beaglebone.

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


    Заметил, что если в статью добавляется описание кода, то ее читаемость снижается сразу вдвое. Поэтому в данной статье кода будет очень мало, хотя только описанию кода можно посвятить две статьи. Настройку mpd-демона описывать не буду, тысячи статей в том числе и на хабре, да и сам мануал обычно исчерпывающий на него. Настройку Linux на Beaglebone опущу. Разве что пришлось включить UART, для подключения Arduino. Но это тоже легко гуглится. Исходный код всего проекта обитает на гитхабе и доступен всем.

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

    В папке arduino_encoder лежит проект энкодера для ардуины. Там все интуитивно понятно и не вижу смысла это как-то разбирать. В папке Linux исходные коды самого радио, именно этот код кочевал из проекта в проект.

    • Makefile

    Это сборка самого проекта, тут ничего нового.

    • control.c

    Это головная программа, где и творится вся магия.

    • uart.c
    • uart.h

    Тут готовый код инициализации UART. Вот всем кто работает на си с UART в Linux, рекомендую заглянуть в эти два файла. Ну и так же всем кто смотрел мои вебинары по работе с UART под линукс раз и два тоже рекомендую в них заглянуть.

    • display.c
    • display.h
    • output.h

    Как можно догадаться — это код работы с дисплеем. Плюс к нему пришлось прикрутить код конвертации символов.

    • charset_coverter.c
    • charset_coverter.h

    Дисплей работает в кодировке CP866. И даже, чтобы вывести на него сообщение на русском из консоли приходится применять вот такой трюк:

    echo -en "Привет Хабру\nот dlinyj" | iconv -f UTF-8 -t CP866 > /dev/ttyACM0

    Но, есть нюанс: букв «ё» нет, твердый знак «ъ» и мягкий знак «ь» перепутаны местами. Так что после декодировки надо додекодировать.

    • mpc.c
    • mpc.h

    Работа с mpd-демоном. Вообще есть библиотеки для работы с ним, но так как мне нужно не очень большое количество функций, то решил написать все с нуля на сокетах. Быть может кому-то будет полезно.

    • term.c
    • term.h

    О, а это замечательная часть. Так как код отлаживать иногда приходилось без дисплея, то сделал себе «симулятор» дисплея, с управлением с клавиатуры вместо энкодера. Выглядит это вот так: на первой картинке дата и часы, на второй мелодия и станция.




    Подробнее, как такое писать рассказывал в статье «Терминальная графика».

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

    #! /bin/sh -
    # Some configuration settings
    VOLUME=60
    #mpc volume $VOLUME	# adjust this to suit your speakers/amplifier
    mpc clear	# clear current playlist
    
    mpc add http://relay3.slayradio.org:8000/						#*Slay Radio
    mpc add http://fr1.streamhosting.ch:8080						#*lounge-radio.com
    mpc add http://us-tx1.streams.bassdrive.com:9000/				#*DnBHeaven.com
    mpc add http://uk2.internet-radio.com:31491						#*AmbientRadio.org
    mpc add http://www.partyvibe.com:8010/							#*PARTY VIBE RADIO
    mpc add http://streamer.psyradio.org:8120						#*psyradio chillout
    
    mpc add http://live.coolradio.rs/cool128
    mpc add http://big2.bigportal.ba:8100/big2

    Если у вас есть какие-то потоковые радиостанции которые вы можете порекомендовать, особенно по электронной музыке, то пишите в комментариях :)

    Еще для удобства управления и настройки, добавил себе web-интерфейс из проекта ympd. Выглядит это вот так.


    В результате файл /etc/rc.local в конце выглядит вот так:

    sleep 30
    /home/ubuntu/addradio.sh > /dev/null 2>&1 &
    /home/ubuntu/wifi-radio/Linux/control > /dev/null 2>&1 &
    /home/ubuntu/ympd --webport 80 > /dev/null 2>&1 &

    Да, да, я знаю, что на Ubuntu systemd и rc.local использовать плохо и другие бла, бла, бла. Но я использую, потому что хочу и могу.

    Итог


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



    Видео чуть старое, сейчас антенна и Ethernet подключены и вполне себе даже работают.

    Куда расти?


    А расти есть куда. Один из ответвлений этого проекта, который я долго эксплуатировал — это проект Volumio. Это восхитительный плеер-агрегатор, который позволяет слушать радиостанции со всего мира, потоковые вещания и т.п. Всем хорош, прекрасно состыковался с моим проектом и выводил все станции на экран. Разве что органы управления были совершенно бесполезны. Еще можно добавить голосовое управление, есть чудесный проект Rhasspy, о котором даже была статья на Хабре. Он позволяет делать голосовое управление без связи с внешним сервером!

    Единственное, что стоит отказываться от mpd — это бутылочное горлышко. Если станции нет, он зависает в ожидании нее. Нет предбуферизации других станций и т.п. То есть, почва для роста есть. И тема безумно интересная, с кучей идей. Спасибо, что дочитали!

    RUVDS.com
    VDS/VPS-хостинг. Скидка 10% по коду HABR

    Похожие публикации

    Комментарии 161

      +6
      Каждому энкодеру по компьютеру!
        +6
        Долог и тернист был путь автора…

        Ваш покорный вчера взял приёмник Philips 1962 года выпуска, выкинул из него кишки, поставил Raspberry Pi Zero вместе с аудио-HAT от SeedStudio и настроил Spotify с помощью Mopidy. Осталось завести кнопки радиоприёмника и переменный резистор регулировки громкости через восьмиканальный ADC по I2C, чтобы можно было выбирать «станцию», да Google Assistant прикрутить.

        Бюджет — что-то типа $20 и час времени, большая часть из которого ушла на разглядывание схемотехники полувековой давности.
          +4
          Запустить wifi-радио, нет проблем. Качаете образ volumio и всё работает. Плюс, вы портите вещь, а я сделал всё с нуля.

          Проблема кроется именно в подборе правильного корпуса (нового), и реализации органов управления. Ну и так же главное ограничение было — выбор дисплея.
            +3

            Мы за Вас рады. Вчера каждый что-то сделал. Пост запилить забыл только… ИМХО, автор вот молодец — сделал и поделился!

              +6
              и час времени
              не верю)
              +1
              И не было жаль потрошить такой раритет?
                +3
                Я долго выспрашивал, надо ли кому-нибудь «кишки» в виде антикварных транзисторов — оказалось, что нет. Эти приёмники продают на eBay за пару десятков евро — с кончиной ДВ-вещания эти аппараты представляют только декоративный интерес. Декор сохраню полностью, на кнопки выбора диапазонов повешу spotify-станции. Из внешних отличий — только современный провод питания будет заходить в родной разъём.
                  +2

                  Да антикварные транзисторы никому не нужны. Тут суть в оригинальном радио да еще не советском, а от филипса. Артефакт ушедшей эпохи.

              +1

              Мне вот не понятно почему китайцы клепают кучу дешевых устройств с бт и фм, а вифи радио клепает один производитель за дорого?

                +4
                Ответ, вероятно, в целевом рынке.
                  0
                  Очень сложны в эксплуатации и настройке. Даже Алиса вон местами косячит. ИМХО, Алиса единственный более-менее вменяемый вариант такого радио. Хотя функционала мне у неё не хватает. Нельзя, допустим, добавить свои радиостанции.
                    +2
                    «Ой, кажется я потеряла эту волну. Попробуйте включить другое радиО!»
                      0

                      Что значит сложны? Я себе на кухню купил наконецто Auna. Куча предустановленных станций на все жанры и возможность добавлять свои потоки.
                      Крутишь ручку — настраиваешь.

                        +1
                        Ну тогда не знаю. Может спрос маленький. Хотя непонятно почему.
                          +1
                          Аналоговый радиоприемник — продукт длительной эволюции. Простой (внешне) и достаточно функциональный. И дешевый. А интернет-радио — дорогая имитация.
                            +1
                            Важен результат. В эфире сейчас сплошная реклама, да и каналы не блещут разнообразием. Чего пока нельзя сказать об интернет радио.
                              +2
                              Это пока. Как только тому, кто составляет плейлисты, надоест это делать бесплатно, так и появится либо реклама, либо подписка за денежку.
                                +3
                                Вот именно. У интернет радио есть техническая возможность авторизации, что ведет к появлению платных подписок. А эфирного радио такой функции нет, потому-что оно broadcast. Т.е. вероятность избавления от рекламы эфирного радио ничтожно мала. Даже DAB не спасает ситуацию.

                                Второе это стримминг. Т.е., интернет радио, стоящее у тебя на кухне может принимать поток, который делает твой компьютер в кабинете. Ты слушаешь уже свою музыку без необходимости делать погромче колонки компьютера. А ещё, эта схема вполне масштабируется до дом-работа. Я такое уже делал: запускал связку shoutcast сервер и shoutcast trans на своём шлюзе, который брал контент с локального NASа и стриммил. А слушал с ноутбука в командировках или всё с того же радио.
                                  +1
                                  А ещё можно было ip-телевидение с работы домой заворачивать…
                      +1
                      Справедливости ради один производитель — это касается только рынка СНГ, а если не ограничиваться им в поисках, то модели радио с wi-if есть на али у Ocean Digital, это если подешевле, в Германии есть модели у Blaupunkt и Grundig, которые правда давно уже не те что были когда-то, ну и Sangean с линейкой интернет-радио, который как я понимаю вы и имели в виду. Ну и есть ещё российский проект Wolna. Да особо дешёвых среди них нет, но это уже 5 производителей а не 1 и это только те про кого я знаю.
                        0
                        А как же Алиса?
                          +1

                          Ну Алиса это всетаки не WiFi радио.

                            0
                            А что же это?
                              +2

                              Согласен с SunUp. Смарт-колонка, с кучей не нужного и вендорлоком.

                            +1
                            Алиса, капсула и тому подобное это уже умные колонки, они в своей лиге с голосовым управлением, поиском и много чем ещё. Всё же и интернет-радио это только часть их возможностей, но соглашусь что при похожих ценах сейчас зачастую это лучший выбор чем традиционный интернет-радиоприёмник.
                            +1

                            OD да, от 5к. Я как раз и имел ввиду их.
                            Sangean там вообще цены не адекватные.
                            Auna как раз тоже родом из Германии, но оттуда если напрямую заказывать тоже не дешево.
                            Если брать от 10к русских рублей там конечно можно повыбирать, но както это дороговато имхо. RPi + BT колонка с китая это < 5к.
                            Сомневаюсь что в Sangean стоит железо сравнимое с RPi.

                              +1
                              Сомневаюсь что в Sangean стоит железо сравнимое с RPi.

                              Wolna на ESP32/8266 сделана, на хабре были статьи.
                              А вообще первопричина дороговизны интернет-радио на мой взгляд небольшие объёмы выпуска: удорожается производство и логистика, в постах про Wolna автор немного писал про экономику производства.
                                0
                                Sangean там вообще цены не адекватные

                                Ну там ещё и за качество звука и изготовления доплата приличная, если говорить про стационарные модели корпус там из натурального шпона, мебельный лак, говорю как владелец стационара Sangean без интернета правда, только FM/USB/Bluetooth. Но оверпрайс, да согласен, базовые их пластиковые модели особенно.
                                  0

                                  Да читал про Волну, о том и речь что Китайцы могли бы сделать интересное устройство за адекватный прайс. Возможно даже с фонариком. Те же есп все оттуда, вопрос только в прошивке.

                                0

                                Волну тоже рассматривал, но вторая версия выглядит так себе, а первая дороговато вышло.

                              +1
                              Отличное законченное изделие. Своими руками. Как хочется и нравится. Зачёт!

                              Индикатор действительно неплох, ЕМПИП он исходно RS-232, и их должно быть много и дёшево из-за постоянной смены поколений фискальных регистраторов.

                              Интернет радио вообще отличная вещь. Есть масса готовых, например, фирмы Auna, но функциональность привязана к сайту, а с локальным управлением могут быть нюансы.

                              Ещё вариант — Ka-Radio, функциональность на высоте, но динамики/усилитель/блок питания нужно собрать до кучи руками. Впрочем, можно втулить в готовые активные колонки.
                                +2
                                Спасибо на добром слове.

                                Индикатор действительно неплох, ЕМПИП он исходно RS-232

                                У меня было два индикатора: RS-232 и USB (который под капотом Virtual-COM). В работе ничем не отличаются. Проблема в том, что у всех индикаторов разный несовместимый протокол. Ну там символ вывести или стереть строку одинаково, а вот символ перегрузить — это каждый извращается как хочет.
                                  +2
                                  Отличное законченное изделие. Своими руками.

                                  Руководитель радиокружка, который я посещал, всегда говорил так: устройство должно работать в корпусе, а не в принципе.
                                    0
                                    У меня даже по данной теме есть статья С чего начинается устройство. Не смотря на то, что ей 8 лет, до сих пор актуальная.
                                      +1

                                      Спасибо.

                                        +1
                                        При всем уважении, но (имхо) так было бы совсем хорошо :)
                                          0
                                          Согласен, но не в данном корпусе.
                                    +2
                                    Приятно увидеть единомышленника!
                                    У меня тоже долгострой. Но пока около года только :)
                                    Вот такой:
                                    Фото
                                    Цель была сделать ретро интернет радио. На ebay купил Panasonic RF- 1405L. Выбирал по тому, чтобы было больше переключателей.
                                    Настройка — вместо КПЕ установлен энкодер.
                                    Одноплатник — Raspberry Pi Zero W. Дополнительно звуковая плата к нему и плата УНЧ.
                                    Музыку играет MPD. Управление самописное, на питоне.
                                    Долго думал, как сделать шкалу, чтбы не испортить внешний вид. Пока сделал голосовую индикацию. Крутишь ручку настройки, приемник при настройке на следующую станцию, говорит ее название и начинает играть.
                                    Думаю может еще добавлю настройку при помощи NFC.
                                    Еще нужно добавить регуляторы тембра.
                                    Может еще что нибудь придумаю.
                                    Хотел еще сделать воспроизведение плейлистов Youtube, но пока не нашел приемлемого клиента.
                                      +1
                                      Поиск по жанру, пятиминутка случайных радиостанций с возможностью быстро и удобно зафиксировать понравившиеся.
                                      Шкала, несомненно, представляет собой отдельную ценность, на на её место встал бы и аналогичный описываемому в статье индикатор.
                                        +1
                                        Сложно размер индикатора подобрать. Проще уж электронную бумагу или что-то подобнее.
                                          +1
                                          Я когда покупал тоже думал, что что-нибудь такое вставлю. Но в процессе изготовления понял, что не смогу вставить так, чтобы не испортить внешний вид, а в ретро внешний вид очень важен. поэтому теперь использую обходные пути.
                                          У меня от оригинала сейчас отличается только четырьмя головками болтиков в на боковой стенке и отверстием под разъемы в задней крышке.
                                          Еще придумал испольовать NFC — приделпть NFC ридер и сделать набор NFC карточек с названиями радиостанций.
                                          +1
                                          Вообще, рекомендую поглядеть в сторону volumio. Мой код предлагать не буду, ибо после питона разбираться в нём откровенно сложно, а дисплей может не подойти по размерам.

                                          Сам проект volumio умеет всё что вы хотите, и там хорошо документированное API, плюс решены проблемы с mpd. Единственное, что написан он на Node JS.

                                          А у вас нет git-проекта?
                                            +1
                                            А у вас нет git-проекта?

                                            Вечером проверю как там с актуальностью, постараюсь привести в прядок и выложить, раз есть интерес.
                                              +1
                                              Было бы интересно посмотреть.
                                              +1
                                              Вот, подчистил чуть-чуть и выложил на Gthub: webradio
                                              Я там использовал самописный простой фреймворк для работы с питоновским multiprocessing модулем. Можно бы было и без него, но мне с ним проще.
                                                +1
                                                Просмотрел. А что, очень прикольно. Как я понял mpd управляете под капотом с помощью mpc. Я раньше тоже так делал, но потом решил сделать на сокетах, чтобы исключить прослойку mpc.

                                                Но, блин, это реально прикольно. Снимите видео, жутко интересно. Спасибо!
                                                  +1
                                                  У меня был сначала гораздо более простой вариант, тоже через mpc, тогда еще почти ничего не было готово, работал через ssh. Потом, когда все переделал, испольвоание mpc решил оставить, так как претензий к нему не было, решил не делать лишних движений.
                                                  А про видео, это что сделать что-нибудь типа видео для youtube? Я такого еще не делал, не уверен, что получится нормально.
                                                  Кстати, одной из главных целей моего проекта было испольвоание этой моей питоновской библиотеки для программ, использующих мультипроцессорный режим (github.com/ekazanov/BaseApp)
                                                    +1
                                                    А про видео, это что сделать что-нибудь типа видео для youtube? Я такого еще не делал, не уверен, что получится нормально.


                                                    Тут все свои, и не требуется великое видеоблогерство. Просто демонстрация работы.

                                                    А в чём её фишка? Нельзя использовать системы межпросессного взаимодействия вшитые в *nix системы по умолчанию?
                                                      +1
                                                      Это обертка поверх пайтоновского иодуля multiprocessing. А тот как раз в свою очередь использует юниксовые системы.
                                                      Цель в удобстве и быстроте написания многопроцессорных программ.
                                                      Очень коротко фишки такие:
                                                      — Программа представляет собой несколько юникс процессов.
                                                      — Главный процесс.
                                                      — Процессы воркеры (один или больше).
                                                      — Все процессы обернуты в классы (включая главный).
                                                      — Каждый процесс может принимать или посылать сообщения (сообщение включает тип сообщения (имя для вызова обработчика сообщения), и данные (питоновские pickable типы)).
                                                      — Сообщения принимаются/передаются чрез очереди.
                                                      — Каждый процесс может кроме сообщений иметь вутреннюю event loop для своей внутренней логики, или только обработчики сообщений.
                                                      — Фреймворк включает в себя классы процессов, включаюшие в себя входные очереди сообщений и класс роутинга сообщений.
                                                      Это так, грубо.
                                                      Был у меня один проект, на работе, который был сделан без фреймворка, но с имплементацией внутри себя основных его фич. Это вдохновило меня на написание этого микрофреймворка, а веб радио — первый процесс с его использоваием.
                                                      Микрофремворк готов процентов на 80, но пользоваться вполне уже можно.
                                                        +2
                                                        Класс. Я просто сишный погроммист и всё это межпроцессное взаимодействие жёстко реализовано в юниксах. Но в питоне не встречал удобных механизмов. Явно тянет на хорошую статью на хабре, о разработке своего фреймворка :). Снимаю шляпу.
                                                          +1
                                                          Спасибо, это еще один долгострой. Вот добавлю несколько оставихся небольших фишек и разрожусь статьей.
                                                            +1
                                                            Заглянул к вам в блоге, очень много интересных тем, которые вы могли бы осветить :). Особенно завидую посещению курсов по системному программированию с Майклом Керриском :)
                                                              +1
                                                              Спасибо. Но не перепутали ли Вы меня с VlK? Я имею к нему отношение, но это не я, это мой сын. :) Это его блог.
                                                              Как программист он посильнее меня будет, но завто я еще в электронику умею! :)
                                                                +2
                                                                Может быть. Блог в профиле у вас.
                                                                  +2
                                                                  Пардон, это наверное моя проблема. Нужно проверить, что-то с настройками, он на моем хостинге свой блог держит.
                                                    +1
                                                    А у Вас есть где-нибудь образец, не обязательно Ваш, на что такое видео могло бы быть похоже?
                                                      +1
                                                      Так в посте же демонстрация моего изделия :).
                                                        +1
                                                        Мне стыдно! :)
                                                        Спасибо.
                                              +2
                                              Изделие красивое и законченное. Что важно. Внешняя антенна тоже очень хорошо. Я сделал 2 радио. Одно на распбери а второе на ESP32 (в корпусе ВЭФ202). Вещи приятные — очень странно что и не продает ни кто и даже тут очень мало коментариев под статьей. Дисплей применили тоже очень приятный. Я во втором радио так долго думал про то какой дисплей впишется в древний корпус что в итоге не поставил никакого — у вас очень органичено вышло
                                                0
                                                Большое спасибо на добром слове! Покажите фотографии ваших изделий, очень интересно!
                                                  0
                                                  Кстати, в корпусе ВЭФ можно даже поставить энкодер внутри при настройке
                                                  +3
                                                  Лет 6 назад на алике купил первое свое интернет радио.
                                                  Ocean Digital WR-200
                                                  image

                                                  Оно привязано к сервису Reciva, но позволяет формировать свои плейлисты из потоков, как доступных в каталоге Reciva, так и указанных пользователем через сайт Reciva. В самом радио что-либо вбить нельзя, только выбор энкодером. Звук приличный, есть линейный выход. Внутри какой-то SoC на девборде, которая воткнута в основную плату и USB-A гнездо, где живёт USB WIFI донгл. Это радио стояло везде, последние 3 года в кабинете без выключения — просто убираю иногда громкость на 3 деления и оно там бормочет.

                                                  Но затем мне захотелось интернет радио но чтобы с эзернетом и я купил второе.
                                                  Ocean Digital WR-282
                                                  image

                                                  Я видел на экране фотографии лота что там есть иконка WiFi соединения и иконка LAN соединения. Но пришло радио без этой опции (RJ45 не установелн, дырка просто заклеена наклейкой а на экране висит иконка, что эзернет не подключён). Это радио не было привязано ни к какому сервису и не понятно, откуда берёт свой каталог, но выбор, в принципе, приличный.

                                                  Это всё было отступление. А теперь, собственно, сама суть. Изначально я не хотел бы, чтобы радио было привязано к какому-либо сервису, т.к. не хочется зависеть от капризов этого сервиса. Т.е., есть желание и возможность переделки этих двух приёмников. Но есть белые пятна, к которым не понятно как подходить. Например, где брать потоки? Руками формировать списки или, например, есть какие-то открытые источники? Так же, было бы неплохо подвязать такое радио, например, к Яндекс.Музыка или другим подобным сервисам. Проблемы в замене SoC не вижу, внешний вид (энкодеры, кнопки и экран) лучше сохранить оригинальные.

                                                  Получилось сумбурно, но будет интересно послушать мнение автора.
                                                    0
                                                    Например, где брать потоки? Руками формировать списки или, например, есть какие-то открытые источники?


                                                    Я не знаю чёткого ответа на вопрос, лично я гуглю по теме и потом вбиваю руками. volumio как-то формирует списки динамически, и они у него при каждом включении разные. Можно поковырять его исходники. И там же посмотреть подвязку к яндекс музыке. Но с яндекс музыкой не ясно, есть же Алиса…

                                                    Экран возможно придётся реверсить в вашем случае. Но вообще железяки интересные.

                                                    А так, вообще есть куда расти с радио, и есть куча идей и тем как сделать «правильное» wifi-радио.
                                                      +1
                                                      С экранами вообще не проблема — они стандартные. В первом случает двухстрочник 1602, а во втором графика 128х64. Я открывал оба радио, там внутри довольно-таки прилично, но колхозингом, ессно, пахнет. У первого я менял ОЗУ, оно в какой-то момент года 3 назад начало ребутиться самопроизвольно, хотя питание, конденсаторы и прочее я проверял. Прошивку, кстати, сливал, внутри есть какие-то ссылки на reciva и хвосты xml файлов.
                                                      Чуток кишочков Ocean Digital WR-200
                                                      image
                                                      image
                                                      image
                                                      image

                                                      У него по платам тоже есть опция эзернета, но там ничего не распаяно + в корпусе не дырки + в прошивке никак про эзернет не упоминается, в отличии от WR-282.

                                                      Если ему сделать вебморду, то в принципе половина вопросов закрывается.
                                                        0
                                                        очень круто, тянет на статью.
                                                          +1
                                                          Не совсем вебморду, но давно и потихоньку пилят.
                                                            0

                                                            Можно ссылок где посмотреть прогресс?

                                                          0
                                                          А что за USB адаптер WL0196, ради которого такие сложности как разъем и вырез в плате?
                                                            +1
                                                            Собственно, WiFi. Вырез — чтобы плата не экранировала сигнал. SoC старый: Samsung S3C2410A, ARM920T на 200 МГц. Нет своего WiFi.
                                                        +3
                                                        Мой опыт эксплуатации показал что слушаем всего несколько радиостанций. Может быть 5-10. Во второй раз я сделал всего 8 станций и их достаточно. Так что каталог не имеет значения. Можно вбить руками все что надо. Но это конечно каждому свое
                                                          0
                                                          Да, собсно, я тоже в первом через ресиву набил 6 станций, которые на компе слушаю плеером. И из них, как правило, 1-2 тока торчит, остальные редко-редко по настроению. Но хотелось бы, чтобы радио управлялось не через сторонний сервис, а напрямую, через вебинтерфейс, например.
                                                          +1
                                                          Reciva, в общем-то неплохая платформа, на ней же можно получать адреса потоков. Работает на Java по http, не в каждом браузере запускается воспроизведение, но ссылки все рабочие.

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

                                                          Как вариант в VLC Player можно сформировать плейлист Icecast Radio Directory, ну или поискать непосредственно в самом Icecast.

                                                          Бывают, платы выходят из строя, рано или поздно это может произойти и с сайтами, вероятно тогда всерьёз и придётся озаботиться заменой платы.

                                                          Ещё кстати, вариант — эти плееры, в принципе, поддерживают dlna, раньше даже в сторах были соответствующие приложения, которые позже были выпилены. Путём перебора десятка dlna серверов удалось найти относительно совместимый с моим радио сервер — universalmediaserver, который смог скормить приёмнику ссылку на файл в локальной сети, затем с помощью Wireshark был проанализирован запрос и сгенерирован подобный уже вручную.
                                                          Но весь этот dlna настолько крив, что остаётся только посочувствовать автору библиотеки libupnp, на которой основаны чуть более чем все соответствующие проекты. Его опыт работы с dlna весьма красноречиво вынесен в заголовок статьи, упомянутой в статье про dlna на Википедии.

                                                          В общем, дорогу осилит идущий.
                                                            0
                                                            Ещё кстати, вариант — эти плееры, в принципе, поддерживают dlna, раньше даже в сторах были соответствующие приложения, которые позже были выпилены.

                                                            Вот, кстати, да. WR-200 в сети выглядит вот так:
                                                            image
                                                            image
                                                              +1
                                                              Там в свойстах поищите — он по запросу отдаёт 3-4 xml файла с описаниями функций. Зело коряво.
                                                                0
                                                                Контекстное меню по клику ПКМ на приёмнике на странице «Устройства и принтеры» -> Свойства -> Оборудование -> Размещение
                                                                Там будет адрес файла descritpion.xml, в котором ссылки на ещё пару-тройку xml:
                                                                RenderingControl.xml
                                                                AVTransport.xml
                                                                RecivaRadio.xml

                                                                Все адреса с длинными GUID, обмен через SOAP-XML, на любой чих нужно корректно сформировать запрос на пару килобайт, шаг вправо-шаг влево — хнычет на некорректность запроса. «Спасибо» dlna альянсу за детство нескучное наше.

                                                                Спецификация dlna, кстати, стоит 500 евро, так что неудивительно, что как-то это работает только у членов альянса. Нормальных свободных реализаций нет и не будет, см. Why do I hate DLNA protocol so much? отсюда.

                                                                Из опробованных десятка dlna серверов только Universal Media Server может что-то передать на приёмник.

                                                                Ну и в Windows он виден, не зря Microsoft входит в альянс. Но сделать с приёмником Windows ничего не может, у неё лапки. Хотя все интерфейсы описаны в выдаваемых по запросу с приёмника xml файлах.

                                                                В общем, поле непаханое и пахать некому. А сделали бы передачу параметра через uri — больше ничего бы не понадобилось: воспроизвести фай такой-то, с момента такого-то, громкость такая-то.
                                                                  +1
                                                                  Контекстное меню по клику ПКМ на приёмнике на странице «Устройства и принтеры»

                                                                  Указанной мной выше скриншот это в сетевом окружении. Там светится радио и не отключенный DLNA сервис компьютера жены. В «устройствах и принтерах» этого радио нет. Так что не могу выполнить указанные вами действия.
                                                                    +1
                                                                    Да не принципиально. Собственно, этот xml натолкнул меня на идею порыть дальше. Попробуйте установить Universal Media Server и посмотреть, увидит ли он радио и позволит ли скормить ссылку на локальный файл mp3.
                                                                    Это, кстати, максимум, чего мне с его помощью удалось добиться — скормить поток пока не получилось.
                                                                      +1
                                                                      Поставил UMS. Он увидел радивку.
                                                                      image
                                                                      Время потока показывает верно. И даже стоп сработал — радио заткнулось в статусе STOPPED. На остальные кнопки один ответ:
                                                                      16:28:41 ERROR Failed to send action «Seek» to HardWareMan Radio: Error: Internal error (HTTP response was: 500 SOAP error)
                                                                      16:28:48 ERROR Failed to send action «Pause» to HardWareMan Radio: Error: Transition not available (HTTP response was: 500 SOAP Error)
                                                                      16:29:42 ERROR Failed to send action «Seek» to HardWareMan Radio: Error: Internal error (HTTP response was: 500 SOAP error)


                                                                      TuneIn нашел как неизвестное устройство:
                                                                      image

                                                                      Думаю, это тупиковая ветка развития. Надо переделывать под нормальный свободный потоковый плеер. Желательно с вебмордой.
                                                                        0
                                                                        Кстати, на роутере можно сделать перенаправление host, и сделать так чтобы сайт как бы существовал, тем самым обмануть радио.
                                                                          +1
                                                                          Ну да, SOAP же это простой протокол обмена сообщениями.

                                                                          Ещё, кстати, проверьте на всякий случай telnet (в моём не отвечает) и ftp (есть, но не смог подобрать пароль).
                                                                            +1
                                                                            Ого! FTP на обоих нет — рефьюз. А вот telnet у Reciva нет, а у TuneIn — есть! Сейчас солью прошивку, может там пароль есть?
                                                                              +1
                                                                              «Ну вот, а то мама, мама...»
                                                                                +2
                                                                                Ложная тревога. Если оно там и есть, то пошифровано. Если интересно — вот прошивка от TuneIn. Это SPI FLASH W25Q32, типично для SoC.
                                                                                  0
                                                                                  Но нет. Far manager'ом попробуйте, всё как на ладони.
                                                                                  И спасибо, попробую у себя. А чем сливали?
                                                                                    0
                                                                                    Что именно на ладони? Загрузчик — да (он вообще в открытую), zimage тоже присутствует. А так же модули W950OSD, UIproto и mplayer. Ну и конфиг место, где указаны всякие имена файлов wifi.cfg и прочее. Если не зашифровано то как минимум сжато. Да, в буте есть текст «bad gzip magic numbers». Т.е., надо как-то распаковать блоки.

                                                                                    Сливал программатором, сдув плешку.
                                                                                      0
                                                                                      Личку проверьте.
                                                                                        0
                                                                                        В любом случае — реверсить хэш. Однако, всё равно спасибо.
                                                                +2
                                                                Вся техника может ломаться. К примеру, собранный мною интернет приемник на esp32 (Ka-radio) проработал полтора года, а затем стал зависать при включении. Я им был очень доволен. Похоже надо заказать снова esp32.
                                                                0
                                                                Например, где брать потоки?

                                                                Есть у меня подозрение что они все тянут какой-нибудь XML с этих сервисов. Можно попробовать поснифить трафик, или на край попарсить их личный кабинет и подергать оттуда ссылки. Если хочется каталог с возможностью выбора жанров, то думаю что можно парсить первый попавшийся агрегатор потоков.
                                                                У меня Auna привязана к Frontier Nuvola Smart Radio.
                                                                Там можно допихивать свои потоки в избранное, но возможность отвязаться от вендора была бы не лишней.

                                                                  +2
                                                                  Ocean Digital WR-200, как я уже сказал выше, привязана к Reciva и оно работает отлично прямо сейчас. А вот Ocean Digital WR-282, как оказалось, привязано к TuneIn. И я вчера его включил и оно мне один раз показало баннер «добудьте бесплатный аккаунт в TuneIn» и всё. Ни потоки из истории, ни каталог больше не загружаются, хотя сеть есть. при этом остальные функции (Line In, BlueTooth и FM) работают на ура. И TuneIn работало когда я включал его в последний раз (год — полтора назад). И в настройках нет возможности ввода данных аккаунта от TuneIn. Вот, о чём я и говорил — привязка к капризу сервиса. Так что, теперь это радио первое идёт на апгрейд до свободного. :) Сейчас, только наделаю фотографий кишочков да попробую отреверсить платы по максимуму.
                                                                  +1

                                                                  Судя по этому там возможно даже не https, так что можно попробовать по аналогии.


                                                                  UPD: И там же есть ссылка на каталог радио с открытым API.

                                                                  +2

                                                                  Выглядит круто. И звучит интересно. Но, зачем городить огород, когда в продаже полно устройств готовых? У меня такое стоит.

                                                                    0

                                                                    Готовое, с vfd-дисплеем? Покажите срочно

                                                                      +1

                                                                      LCD с зелёной подсветкой. Я не фанат олдскульных VFD. Но есть подозрение, что и на VFD что-то найти можно, если поискать.

                                                                        0
                                                                        Давайте так, проект стартовал в 2010 году, вы мне покажите wifi-радио, производства 2010-2012 года? Любое, даже без vfd. И просто с vfd. И после этого я готов признать, что сделал глупость.
                                                                        Иначе — это балабольство.
                                                                          +2

                                                                          Вы не делали глупость. Опыт разработки подобного устройства — бесценен. И сама идея потянет на не плохой стартап с офисом где-то на Западе, и производством в Китае(имеющееся у меня WiFI-радио дизайнили в Техасе, маркетинг и продажники их в Калифорнии, а производят его, насколько мне известно в Китае).


                                                                          Это реально круто — делать подобное. Когда есть время, и желание, сделать подобное. Просто ради одного экземпляра радио такие усилия(если это не хобби) — не слишком оправданны. Другой вопрос, если у вас есть планы выводить продукт на рынок, или если у вас просто хобби такое — делать крутые подделки для себя. Я бы всё же на вашем месте подумал, как коммерциализировать это дело. Думаю, кикстартер и единомышленники помогли бы вам наладить производство подобных девайсов.


                                                                          Ну и в 2010, вы правы, с WiFi радио было ещё сложно, массово они стали появляться на рынке где-то с 2014-2015 года.


                                                                          Даже не думал вас задеть, мы просто не верно друг друга поняли, если я вас как-либо задел, приношу свои глубочайшие извинения. Просто меня поразило как много вы готовы были трудиться ради получения одного экземпляра устройства. Ну и вы пишете про 2010-й год, но первый прототип собирали на TP-LINK TL-MR3020, а это, ЕМНИП, 2012-го года выпуска устройство. Может я ошибся, память подвела, но всё же. А в 2012-2013-м году движуха была уже такая, что найти WiFi-радио, во всяком случае в Китае и США, уже было не сложно. Скажу больше, у меня радио от C.Crane, это где-то 2012-2013-й год выпуска. Но была у них модель и 2009 года выпуска, см. https://www.youtube.com/watch?v=RMhn0NXYAtk


                                                                          Я не в коей мере не пытался задеть ваши чувства. Хотя я — мизантроп, и люблю иногда делать людям больно, это не тот случай. Я искренне восхищаюсь вашим начинанием. Просто, абсолютно искренне, не понимаю тех, кто пилит что-то самостоятельно, если можно взять готовое, и не тратить много времени и сил на пиление своего проекта. Если это не бизнес, и не хобби. Судя по вашей статье, это не бизнес. Остался лишь вопрос, а было ли это хобби, или девайс вы пилили просто потому, что в ваших краях готовой альтернативы не было?

                                                                            0
                                                                            Мир, дружба, жвачка.

                                                                            Меня заводил сам факт VFD-дисплея, его магия и очарование. Плюс, в действительности, когда начинал подобного ничего не было или я не встречал. Часто стараюсь делать сам, даже если есть в продаже, для опыта.

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

                                                                            По поводу стартапа… Это интересная мысль, но мне кажется я опоздал с ним лет на 10. Конкурировать с Алисой и подобными станциями уже смысла нет. Хотя, кто знает, кто знает.
                                                                              +2
                                                                              По поводу стартапа… Это интересная мысль, но мне кажется я опоздал с ним лет на 10. Конкурировать с Алисой и подобными станциями уже смысла нет. Хотя, кто знает, кто знает.

                                                                              Всё зависит от региона, где продавать. И кому. Скажем так, Алиса заходит для людей среднего возраста, и молодняка. А теперь угадайте, какие интернет-радио предпочитают граждане старшего возраста(за всех не скажу, но в некоторых регионах планеты явные фанаты WiFi-радио — люди определённого возраста)? Я сам о таком радио узнал от человека на пенсии в своё время :)


                                                                              Люди в возрасте любят девайсы с аналоговыми системами управления(кнопки, ручки, переключатели). И не очень жалуют технику с голосовым управлением и сенсорными экранами. Хотя с точки зрения логики как раз им бы Алисы и что-то подобное зашло бы на ура, ведь у них и руки двигаются менее точно, и зрение их уже нередко подводит. Так что как знать… Но да, раньше идею прокачать было бы проще до коммерческой стадии, тогда меньше было конкуренции и девайсов, что идут WiFi радио на замену.


                                                                              Так что я бы изучил предпочтения людей(особенно старшего поколения), динамику их подсаживания на умные колонки, и то, какой процент отказывается переходить на новомодные приблуды, и уже на основании подобного анализа дела бы окончательные выводы. И да, люди, рождённые до 1980-х, те, что пользовались устройствами с VFD, любят такие ламповые вещи, им бы радио с VFD на ура зашло.

                                                                              +2
                                                                              Лет 20 назад я купил это
                                                                              image
                                                                              www.universal-radio.com/catalog/wifi/3168.html
                                                                              работает до сих пор. Только мой клон звался IR168. На чём сделан — понятия не имею. Ручка — энкодер с нажатием.
                                                                              Имеет веб-интерфейс. Список станций когда-то качался с сайта, но можно создать руками, что сейчас и делаю.
                                                                              У меня даже бинарник с прошивкой есть. Думал как нибудь туда русский язык прикрутить, но увы — квалификация не та. Вообще крутая железяка. И UPnP работает.
                                                                              А у друга SANYO примерно такого же возраста. И родной сайт до сих пор работает.

                                                                        +1

                                                                        Такое это какое?

                                                                        +2

                                                                        Ну-у-у, получилось хорошо. Но дело в том, что теплое и ламповое не получилось. Выглядит как мобильная радиостанция из 80-ых.


                                                                        Если надо было теплое и ламповое — индикаторы надо было использовать газоразрядными. (https://ru.wikipedia.org/wiki/Газоразрядный_индикатор) а оконечный усилитель тоже сделать ламповый. И конечно деревянный корпус!

                                                                          +2
                                                                          Приклеить сверху 6Н23П и сразу будет тепло и лампово!
                                                                            +1
                                                                            Индикаторы на 6Е1П :)
                                                                            +1
                                                                            Цитирую википедию:
                                                                            Вакуумно-люминесцентный индикатор (ВЛИ), или катодолюминесцентный индикатор (КЛИ) (vacuum fluorescent display (VFD), нем. Digitron либо Fluoreszenzanzeige) — электровакуумный прибор, элемент индикации, работающий по принципу электронной лампы.

                                                                            Несмотря на то, что такой индикатор является, по сути, радиолампой, он не считается устаревшим радиоэлементом, продолжает производиться и сегодня, и применяется в современной радиоаппаратуре, в том числе и во вновь разрабатываемой[1][нет в источнике]. Как и д


                                                                            таки ламповая :))). Но я понимаю ваше несогласие и претензию. Хотелось да, в деревянном корпусе, об этом я писал. И ламповый усилитель тоже хотелось. Но больше хотелось закончить в этой жизни, поэтому решил пока сделать так.
                                                                              +1

                                                                              Нет, вы наверное не поняли. Никакие претензии. Так тоже получилось очень даже хорошо и атмосферно, просто не "ламповое", а такое эхо 80-ых — Диско, журнал Радио, Радио-86РК (Ну в моем случае Правец-8/Apple ][). Мне определено нравится.

                                                                                0
                                                                                Спасибо, спасибо!
                                                                              +1
                                                                              да отлично получилось!)
                                                                              кк картинку увидел — сразу триггер сработал, глянул автора — ну понятно))
                                                                                +1

                                                                                Даже так достаточно "тёпло-лампово" смотрится, если не совсем уж буквально подходить.
                                                                                Хотя ардековские радиоприёмники и радиолы — это и правда ещё более тёплое и уютное в плане внешности.

                                                                                +1
                                                                                Главное закончили, следующий этап, upgrade девайса версия 2.0)
                                                                                  +1
                                                                                  молодец, завидую упорству
                                                                                    0
                                                                                    Спасибо! Очень хотел сделать.
                                                                                    +1
                                                                                    Классный проект, масса удовольствия.
                                                                                      0
                                                                                      Спасибо!
                                                                                      +1
                                                                                      Погляди ещё на экосистему logitech media server и squeezelite программный плеер. Я им пользуюсь. Можно мультирум строить. Управлять из приложения. Есть api. Интеграция с новым spotify сервисом. Спасибо за статью
                                                                                        +2

                                                                                        Ох, прям какая ностальгия от этой статьи накатила.
                                                                                        Собирал в школе классе в 11 тоже свой интернет-радиоприёмник. В роли начинки — малинка 2011 года, к ней RTL-свисток для приёма эфирного радио и кусок провода на GPIO для передачи. Позднее добавилось гнездо для антенны и релюшка, чтобы щёлкать для виду или переключать антенну между приёмом и передачей :-)


                                                                                        Из радиостанций в основном крутились Happy Hardcore UK, тогда ещё живой Digitally Imported (эллиминейт зи эдс, буст зе куолити!) и, впоследствии, Радио "Проводач".


                                                                                        В качестве корпуса использовался первый попавшийся — бывший спутниковый приёмник Humax с горелыми мозгами. Из родного осталась только фронтальная панель, и дисплей на ней. На VFD тогда не было ни денег, ни опыта, а стандартные HD44780 были "недостаточно ламповыми и тёплыми", поэтому остался там родной — 4 семисегментника, и SAA1064 в качестве драйвера.


                                                                                        Поначалу всё было банально — на дисплее цифра с номером станции, кнопками переключение, вкл/выкл выбором входа на усилителе. Но потихоньку проект стал обрастать фичами — сначала часы в выключенном состоянии, потом автояркость часов в зависимости от времени суток, затем показ тегов с автоматической транслитерацией с японского в виде бегущей строки, куча разных анимаций и эффектов… честно говоря, даже сам поражаюсь, сколько всего можно было сделать на банальных семисегментниках :-) Для рисования шрифта и анимаций пришлось тулзу накидать.


                                                                                        Потом появилась возможность трансляции в FM-диапазон, чтобы слушать на карманном приемнике перед сном, не оставляя работать стойку с аппаратурой, а потом и приём AirPlay с тем же отображением тегов.


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


                                                                                        В итоге со временем в малинке сдохла карта памяти, а потом всё было разобрано на запчасти… Но из всей оставшейся в прошлом стойки с аппаратурой скучаю больше всего именно по этому радио: с


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

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

                                                                                          Но в любом случае это было круто!
                                                                                            +1

                                                                                            Нашел пару видосов: эффект выталкивания цифры наподобие механических индикаторов с барабанами, вторая версия ещё с кривым шрифтом и не показывающая теги Airplay, и какая-то чудом спасённая из сообщений ВК демка третьей версии, увы, тоже неполная :-(


                                                                                            Но, думаю, представление об интерфейсе получить можно и из них.

                                                                                              +1
                                                                                              По моему из этого индикатора выжат максимум :). Это круто, моё почтение!
                                                                                          +2
                                                                                          что-то все пошли по пути самурая) Есть же более простой способ! Я делал для отца радио так — взял древний смарт Gigabyte GSmart Rio R1 выкинул батарею, запитал от блока питания напрямую, поставил усилок на TDA2030, впихнул это все в корпус старого приемника, дисплей смарта вставил вместо шкалы настройки частот и все! В результате вайфай уже встроен в смарт, удобный дисплей, куча приложений для самых различных радиостанций и сервисов + можно даже Ютуб глянуть!
                                                                                            0
                                                                                            Годно.
                                                                                            Описываются проблемы как с запитыванием смартфона от блока питания, так и помех от БП на усилитель, в результате чего приходилось ставить гальваническую развязку по питанию усилка.
                                                                                            У Вас блок питания не сетевой ли, трансформаторный, родной в корпусе приёмника?
                                                                                              +1
                                                                                              Блок питания внешний на 12В, от древнего монитора. В корпусе приемника я поставил LM 317 настроив на 3,8 В для питания смарта (разобрал родную батарейку, достал контроллер, выкинул аккумулятор и вместо него и подал напряжение с БП на контроллер. А усилитель питается напрямую от 12В. Работает уже больше года, проблем никаких нет.
                                                                                                +1
                                                                                                Питание усилителя импульсное (высокочастотное) или 50 Гц? Второй случай проще, в первом у многих возникает неприятный импульсный шум в динамиках.
                                                                                                  +2
                                                                                                  БП импульсный, но нормального качества. От него работал монитор со встроенными колонками — шумов не было. В любом случае на входе питания усилка стоят два конденсатора для фильтрации. У меня два других усилителя питаются от ноутбучных БП и тоже шумов не замечал.
                                                                                              +2
                                                                                              Всё так, но у меня ключевое место был дисплей. Я не хотел ни дисплей телефона, ни чего либо другого…
                                                                                              0
                                                                                              Все делается на вай фай модуле ESP8266 или ESP32 если хочется качественнее звук-цап навешивается
                                                                                                +2
                                                                                                Гибкости данных модулей соизмеримо меньше, чем у одноплатника с linux. Там прямо на нём можно править код и проводить компиляцию. Так что да, делается, но это не спортивно и не интересно
                                                                                                  +2
                                                                                                  Это точно, один из главных мотивов для меня именно и был собственно поковыряться с одноплатиками.
                                                                                                  Ну и повозиться с паяльником, вспомнить старые времена.
                                                                                                    +1
                                                                                                    Так что да, делается, но это не спортивно и не интересно


                                                                                                    И спортивно (микроконтроллер вместо одноплатника — вполне себе challenge), и интересно.
                                                                                                      0
                                                                                                      Каждому своё. Можно сделать и так и так, но решение на esp32 не переносимо. Моё решение будет работать даже на компе с которого я пишу :)
                                                                                                        +2
                                                                                                        У микроконтроллера есть мощное приемущество — время загрузки. Распбери грузится минуты полторы. Для радио это не круто совсем. В итоге у меня было радио которое по факту играло всегда и выключался только усилитель. Хотя после такого решения загрузка ESP32 в 5 секунд уже казалась долгой. Все же радио на кухне — только поверни ручку это удобно
                                                                                                          +1
                                                                                                          Если речь за холодный пуск — то да. Ocean Digital стартуют примерно секунд 10 на холодную до сети, потом ещё в сеть соединяются — тут время разное, от 5 до 20 секунд. И у всех есть кнопка Power, которая суть режим пониженного энергопотребления. В этом режиме оно молчит и показывает время с NTP. Вот с него стартует очень быстро, в пределах 5 секунд. Так что при всём желании быстрого старта более универсальный вариант всё равно выиграет.
                                                                                                            0
                                                                                                            Если использовать Buildroot или OpenWRT загрузка будет происходить за 5-7 секунд. Но мне не удалось, это сейчас минус. Но никто не мешает его не выключать.
                                                                                                  • НЛО прилетело и опубликовало эту надпись здесь
                                                                                                      +1
                                                                                                      Выглядит здорово. Если будете делать что-то ещё в этом духе, попробуйте газоразрядные индикаторы, получается ещё теплее и ламповее.))
                                                                                                        0
                                                                                                        Не встречал газоразрядных индикаторов, которые умеют тексты выводить. Только одиночные цифры. Ну и как по мне это уже попса, разве что ленивый на них что-то не делал.
                                                                                                          +1
                                                                                                          Кстати, лампово — не значит тепло. Бывают ещё тиратроны с холодным катодом, такие стояли в блокираторах телефонов.
                                                                                                          Ну и если делать, как некоторые умельцы, газоразрядные индикаторы самостоятельно, то и текст можно, да хоть анимацию.

                                                                                                          image
                                                                                                            0
                                                                                                            Ну давайте ещё неоновые лампочки вспомним, они тоже холодные. Есть даже ламповые кварцевые резонаторы :).

                                                                                                            image

                                                                                                            Подробнее

                                                                                                            Ну и если делать, как некоторые умельцы, газоразрядные индикаторы самостоятельно, то и текст можно, да хоть анимацию.


                                                                                                            Так если рассуждать, то как BarsMonster можно начать свои микросхемы делать. Но нужно ли это, когда просто хочешь wifi-радио с vfd дисплеем покупателя?
                                                                                                              0
                                                                                                              Нет предела совершенству.
                                                                                                                0
                                                                                                                Нет, но можно всю жизнь без результатов делать разную дичь. А можно сделать может не совсем идеально, но с результатом.
                                                                                                            +1
                                                                                                            Тексты безусловно нет, только отдельные буквы. Т.е е можно получить нужный градус тёплой ламповости, при большом желании)
                                                                                                            разве что ленивый на них что-то не делал
                                                                                                            Выероятно я тот ленивый. Купил как-то по случаю ИН-18, и по сей день руки не дошли.
                                                                                                          +1
                                                                                                          Если у вас есть какие-то потоковые радиостанции которые вы можете порекомендовать, особенно по электронной музыке, то пишите в комментариях :)

                                                                                                          https://scenesat.com
                                                                                                            0
                                                                                                            Спасибо
                                                                                                              +1

                                                                                                              Уже упомянутый Проводач provoda.ch, хотя там дневной репертуар забит в последнее время чем-то очень на любителя — но вот ночью, после 22 по Мск, весьма вкусно

                                                                                                              +2
                                                                                                                +1
                                                                                                                  0
                                                                                                                    0
                                                                                                                    Старое радио, в особенности Детское.
                                                                                                                    Из подкастов — для тонких ценителей — Глас Галлифрея.
                                                                                                                      0
                                                                                                                      Спасибо.
                                                                                                                      А как ссылку на поток поиметь?
                                                                                                                        0
                                                                                                                        А там вверху слева на менюшку Listen наводите и выпадет список со ссылками на плейлисты с потоками в разных качествах.
                                                                                                                      0
                                                                                                                      Для полноты картины не хватает записи эфира в карту памяти.
                                                                                                                      И соответственно воспроизведение с нее же.
                                                                                                                        0
                                                                                                                        Если вы объясните зачем это нужно, и для чего это можно использовать, то готов принять ваше замечание. Пока, по моему, это просто повод докопаться.
                                                                                                                          0
                                                                                                                          Например для таймшифтинга если идет интересный подкаст, а надо отвлечься на пару минут.
                                                                                                                          Опять же, что слушать если инет отвалился? Интернет безотказный есть не везде.
                                                                                                                            0
                                                                                                                            Ну сомнительная тема, те радиостанции что я слушаю, нет смысла писать, так как я могу это послушать и офлайн. Так же если интернета нет, то слушаю mp3. Но в целом, функционал такой прикрутить ничего не стоит. Флешка есть, mpd есть. Просто нет смысла.
                                                                                                                        +1
                                                                                                                        Серьёзная работа.
                                                                                                                        Лично я бы убрал корпус у блока питания (он и так внутри корпуса, лучше охлаждаться будет) и избавился бы от лишних хабов и USB разъёмов.
                                                                                                                          0
                                                                                                                          Серьёзная работа.

                                                                                                                          Спасибо

                                                                                                                          Лично я бы убрал корпус у блока питания (он и так внутри корпуса, лучше охлаждаться будет) и избавился бы от лишних хабов и USB разъёмов.

                                                                                                                          Лично я бы вообще всё сделал по другому. Но лучше так, чем никак. У БП не такое энергопотребление, так что он там не особо греется.
                                                                                                                            +1
                                                                                                                            Лично я бы вообще всё сделал по другому.
                                                                                                                            :)) Я не про то, чтобы всё переделывать.
                                                                                                                            У БП не такое энергопотребление, так что он там не особо греется.
                                                                                                                            В закрытом объёме корпуса он греется хорошо. У меня в люстре подобный стоит, так там аж конденсатор деформировался.
                                                                                                                              0
                                                                                                                              Так там отверстия для вентиляции. Должно хватать.
                                                                                                                          +1
                                                                                                                          В середине 80-х бывал в НИИ, ЦНИЛах и видел что то подобное по дизайну (но только дизайн, в середине были осцилляторы и другие внутренности))). А так то автор молодец, следовал за своей целью, долгое время конечно, но, думаю он доволен проведённой работой!!!
                                                                                                                            0
                                                                                                                            Спасибо!
                                                                                                                            0

                                                                                                                            Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                                                                            Самое читаемое