Оглавление:
- Шаг 1: Необходимые материалы 1: Raspberry Pi
- Шаг 2: Необходимые расходные материалы 2: Устройство чтения NFC
- Шаг 3: Необходимые расходные материалы 3: Метки NFC
- Шаг 4: Загрузите ОС Raspberry Pi на SD-карту
- Шаг 5. Включите SSH в образе ОС Raspberry Pi
- Шаг 6. Необязательно: настройте Wi-Fi на Raspberry Pi
- Шаг 7: включите Raspberry Pi
- Шаг 8: Найдите IP-адрес вашего Raspberry Pi
- Шаг 9: подключитесь к командной строке Raspberry Pi
- Шаг 10: Настройте графический интерфейс Raspberry Pi OS
- Шаг 11: Подключитесь и настройте графический интерфейс Raspberry Pi
- Шаг 12: Установите Node.js и NPM
- Шаг 13: Установите SONOS HTTP API
- Шаг 14: Сделайте так, чтобы HTTP API Sonos работал постоянно
- Шаг 15: поиграйте в Spotify
- Шаг 16. Найдите URI Spotify
- Шаг 17: примечание об URI Spotify
- Шаг 18: Настройте Raspberry Pi для отправки
- Шаг 19: Создайте тег (ы) NFCC с данными Spotify
- Шаг 20. Настройте устройство чтения NFC на Raspberry Pi
- Шаг 21: установите скрипты Python Vinylemulator
- Шаг 22: Настройте винилэмулятор
- Шаг 23: протестируйте винилемулятор
- Шаг 24: заставьте Vinylemulator работать постоянно и при запуске
- Шаг 25: поздравьте себя
- Шаг 26: Сделайте это красивым - спрячьте своего читателя
Видео: Виниловый эмулятор Sonos Spotify: 26 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:48
Обратите внимание, что это не последний набор инструкций для этого проекта:
Посетите https://www.hackster.io/mark-hank/sonos-spotify-vinyl-emulator-3be63d, чтобы получить последний набор инструкций и поддержку
Слушать музыку на виниле - это здорово. Это физически и тактильно. Вы слушаете целый альбом, а не случайные треки. Вы замечаете, когда все закончилось, и сознательно выбираете что-то другое. Вы можете создать коллекцию и просматривать ее, вместо того, чтобы искать именно то, что вам нужно.
Это также дорого и громоздко, особенно если учесть, что любые деньги, которые вы тратите на винил, скорее всего, являются копией музыки, к которой у вас уже есть доступ через потоковую службу, на которую вы подписаны.
В этом проекте предпринимается попытка воспроизвести тактильные аспекты виниловых пластинок и создание коллекций, в то же время полагаясь на Spotify для доставки музыки. Размещение физического объекта на считывающем устройстве NFC, подключенном к Raspberry Pi (оба из которых могут быть скрыты), начнет воспроизведение альбома, связанного с этим тегом.
Я проведу вас через все шаги - от настройки Raspberry Pi до кодирования тегов NFC. Это мой самый первый проект Raspberry Pi и мой первый код Python, поэтому я изучил оба, разрабатывая его. Таким образом, эти инструкции предполагают буквально нулевые предыдущие знания и рассказывают вам на каждом этапе.
Общая стоимость основных компонентов для его сборки составляет приблизительно 50-60 фунтов стерлингов.
Я бы хотел посмотреть, что вы построите!
Шаг 1: Необходимые материалы 1: Raspberry Pi
Серверная часть, которая взаимодействует с вашей сетью, Sonos и Spotify, будет управляться Raspberry Pi. На самом деле вам очень мало нужно, чтобы это заработало.
Существенный:
Raspberry Pi: я использовал Raspberry Pi 3 Model B +, но он также будет работать с Raspberry Pi 3 Model A + (23 фунта стерлингов)
Источник питания USB: у меня был один валяется - есть официальный доступный, если у вас его нет (9 фунтов стерлингов)
Карта Micro SD: у меня на Amazon есть карта емкостью 32 ГБ, которой достаточно для этого приложения (6 фунтов стерлингов).
Некоторое оборудование Sonos работает в вашей сети (я предполагаю, что оно у вас уже есть, если вы здесь…)
Аккаунт Spotify Premium
Рекомендуемые:
Случай для Pi: есть много вариантов, начиная с 5 фунтов стерлингов.
Бутылка приличного калифорнийского зинфанделя: рекомендую Ridge, но есть и другие.
Шаг 2: Необходимые расходные материалы 2: Устройство чтения NFC
Эти инструкции предназначены для считывателя ACR122U NFC, который подключается через USB.
ACR122U
Я купил этот на Amazon за 38 фунтов стерлингов (в основном потому, что у него была первоклассная доставка), но есть более дешевые варианты купить этот же ридер.
Что сбивает с толку, ACR122U, кажется, продается под разными торговыми марками (моя продавалась под далеко не обнадеживающим брендом «Yosoo»), но насколько я могу судить, все они одинаковы и созданы American Card Systems.
Самый дешевый, который я нашел, рекламируемый ACR122U стоит 21 фунт стерлингов, включая доставку, но он идет прямо из Китая, поэтому вам, возможно, придется немного подождать.
Другие варианты
Этот проект основан на библиотеке Python под названием nfcpy, которая поддерживает список поддерживаемых устройств здесь:
Теоретически этот проект должен работать с любым из тех, что в этом списке, с небольшой интеграцией.
Одним из заманчивых вариантов является Adafruit PN532, плата, которая должна подключаться напрямую к Raspberry Pi с помощью соединительных кабелей. Я попробовал и убедился, что это настоящая ошибка. Например, требуется пайка.
Одним из преимуществ этого является, на первый взгляд, то, что он меньше, но на самом деле плата примерно такого же размера, как внутренности ACR122U. Если вам действительно не хватает места для вашего приложения, вы можете снять пластик с ACR122U и просто использовать плату.
Шаг 3: Необходимые расходные материалы 3: Метки NFC
Для каждого альбома, который вы хотите создать, вам понадобится тег NFC, соответствующий стандарту NTAG213.
Их можно купить во многих местах.
Я купил свою первую партию на Amazon, где получил упаковку из 10 штук за 9 фунтов стерлингов (включая доставку Prime).
Лучше всего, что я нашел здесь, в Великобритании, - это Seritag - у них действительно широкий выбор разных стилей, отличные советы на их веб-сайте, вы точно знаете, что получаете (не всегда так на Amazon). У них нет минимального размера заказа и тонны опций. Теги начинаются с 27 пунктов за тег
Шаг 4: Загрузите ОС Raspberry Pi на SD-карту
На своем ПК или Mac загрузите и запустите приложение Raspberry PI imager.
Вставьте SD-карту, на которую хотите установить операционную систему Raspberry Pi.
Нажмите ВЫБРАТЬ ОС и выберите Rasbian по умолчанию.
Нажмите ВЫБРАТЬ SD-КАРТУ и выберите SD-карту, которую вы вставили.
Нажмите НАПИСАТЬ. Это может занять некоторое время.
Как только это будет сделано, вам будет предложено удалить SD-карту, что вы должны сделать. Но затем подключите его снова, так как в первую очередь вам нужно выполнить несколько операций по уборке.
Шаг 5. Включите SSH в образе ОС Raspberry Pi
После того, как ОС была записана на SD-карту, вам необходимо выполнить несколько дополнительных задач.
Мы хотим получить доступ к Raspberry Pi без подключения клавиатуры или монитора (также известного как «безголовый»), что мы можем сделать через нашу локальную сеть с помощью нашего ПК или Mac по протоколу SSH. Однако по соображениям безопасности SSH по умолчанию отключен. Нам нужно включить это.
Мы можем сделать это, создав пустой файл с именем:
ssh
на только что созданной SD-карте. Важно, чтобы у него не было никакого расширения (например,.txt). Сам файл не обязательно должен содержать какой-либо контент - просто его наличие включит SSH при загрузке Pi.
Шаг 6. Необязательно: настройте Wi-Fi на Raspberry Pi
Вы можете пропустить этот шаг, если планируете подключить Raspberry Pi к маршрутизатору через Ethernet. (Хотя вы, возможно, захотите хорошенько подумать над этим решением - если он будет работать через Wi-Fi, жизнь станет намного проще с точки зрения размещения этого)
Создайте простой текстовый файл с именем wpa_supplicant.conf в корневом каталоге SD-карты.
Вставьте в файл следующий текст:
country = gb
update_config = 1 ctrl_interface = / var / run / wpa_supplicant network = {scan_ssid = 1 ssid = "MyNetworkSSID" psk = "MyPassword"}
При необходимости измените страну (GB - Великобритания, US - США, DE - Германия и т. Д.)
Измените там учетные данные Wi-Fi, чтобы они соответствовали вашим фактическим данным маршрутизатора Wi-Fi.
Сохраните файл.
Осторожно извлеките SD-карту.
Шаг 7: включите Raspberry Pi
Вставьте только что созданную SD-карту в Raspberry Pi.
Подключите Raspberry Pi к источнику питания через USB-кабель. Подождите, пока он загрузится.
Шаг 8: Найдите IP-адрес вашего Raspberry Pi
Теперь вам нужно найти IP-адрес Raspberry Pi, чтобы вы могли подключиться к нему. Сделать это можно двумя способами:
- через страницу настройки роутера - если у вас современный роутер, такой как eero, это очень просто;
- или через приложение для смартфонов под iOS и Android под названием «fing» - загрузите его, подключитесь к маршрутизатору и просканируйте устройства - одно из них должно называться «Raspberry» - это будет нужный вам IP-адрес.
Шаг 9: подключитесь к командной строке Raspberry Pi
Откройте Терминал на своем Mac (или, если вы используете Windows, загрузите и используйте Putty).
Введите следующую команду:
ssh pi @ [IP-адрес вашего Pi]
Примите любые предупреждения системы безопасности, которые вы получите. Вам будет предложено ввести пароль для пользователя pi по умолчанию, который
малина
Шаг 10: Настройте графический интерфейс Raspberry Pi OS
Теперь вы подключены к своему Pi через командную строку, что прекрасно, но вы также хотите настроить его, чтобы вы могли получить доступ к графическому пользовательскому интерфейсу, к которому мы будем обращаться через VNC (виртуальные сетевые вычисления). Как и ожидалось, нам также нужно включить это.
Прежде всего убедитесь, что ваше программное обеспечение Pi обновлено, введя следующие две команды (каждая с последующим вводом) в командную строку:
sudo apt update
sudo apt установить realvnc-vnc-server realvnc-vnc-viewer
Затем откройте меню настроек Raspberry Pi, введя:
sudo raspi-config
Перейдите в Параметры интерфейса> VNC> Да.
Выйдите из приложения конфигурации, нажав клавишу ESC, и перезагрузите Pi из командной строки, набрав:
перезагрузка sudo
Шаг 11: Подключитесь и настройте графический интерфейс Raspberry Pi
Загрузите и откройте VNC Viewer.
Введите IP-адрес своего Raspberry Pi и нажмите «Подключиться». Вам будет предложено ввести имя пользователя и пароль, которые:
Имя пользователя = пи
Пароль = малина
Это должно загрузить вас до графического интерфейса.
Вам будет предложено подтвердить географию и раскладку клавиатуры.
Затем он предложит вам сменить пароль (хорошая идея).
Он попросит вас указать данные о Wi-Fi, но вы можете пропустить это, поскольку они уже работают. (Хотя, если вы работаете в сети Ethernet и задумываетесь, то сейчас у вас есть шанс … но учтите, что ваш IP-адрес может измениться)
Затем он проверит наличие, загрузит и установит обновления (это может занять некоторое время).
После того, как вы пройдете через мастер настройки, я бы порекомендовал изменить разрешение экрана, так как по умолчанию оно довольно мало. Вы можете сделать это, щелкнув Raspberry в левом верхнем углу> Настройки> Конфигурация Raspberry Pi> Дисплей> Установить разрешение.
Вам нужно будет перезагрузить Pi еще раз, чтобы это вступило в силу.
Шаг 12: Установите Node.js и NPM
Затем вы хотите загрузить командную строку Raspberry Pi для установки необходимых нам зависимостей.
Вы можете сделать это, подключившись через VNC и нажав кнопку вверху, которая выглядит как командная строка; или вы можете подключиться напрямую со своего Mac / ПК, используя Терминал и Шпатлевку, как мы это делали ранее. Если вы менее привыкли работать с Raspberry Pi, то проще сделать первое.
(Совет: вы можете скопировать текст со своего Mac / ПК и вставить его в Raspberry Pi через VNC, нажав CONTROL-V, но если вы пытаетесь вставить в Терминал, вам нужно нажать CONTROL-SHIFT-V)
Первая задача - еще раз проверить актуальность вашего программного обеспечения, введя следующие две команды. Их загрузка и установка может занять некоторое время.
sudo apt-get update
sudo apt-get upgrade
Затем вы хотите загрузить и установить node.js и NPM (не слишком беспокойтесь о том, что они собой представляют, они полезны и необходимы для наших следующих задач), набрав следующее:
sudo apt-get install nodejs npm
Он спросит вас пару раз, если вы счастливы занять дисковое пространство с ними - вы так что нажмите Y
Шаг 13: Установите SONOS HTTP API
Основой серверной части нашего проекта является пакет node-sonos-http-api, созданный jishi. Вы можете прочитать все об этом здесь:
Мы загрузим это с github с помощью следующей команды, введенной в командную строку:
git clone
и мы установим его с помощью следующих команд
cd node-sonos-http-api
npm install --production
Затем мы можем запустить его с помощью следующей команды:
npm start
Как только это будет сделано, мы должны проверить, что он работает.
Прежде всего, откройте интернет-браузер на Raspberry Pi и перейдите по адресу https:// localhost: 5005 /. Приятный интерфейс должен открываться с логотипом Sonos и некоторой документацией о том, как работает API.
Затем давайте проверим, работает ли это из более широкой сети, используя браузер на другом ПК или Mac в той же сети, перейдя по адресу https:// [theIPaddressofyourPi]: 5005 / и посмотрим, получим ли мы тот же результат. Мы должны.
Теперь мы фактически заставим систему что-нибудь делать. Используйте браузер и перейдите к:
192.168.4.102:5005/Столовая / playpause
Вы должны заменить указанный выше IP-адрес на адрес вашего Raspberry Pi, а «Столовую» - на одно из названий ваших зон Sonos. Он должен либо воспроизвести, либо приостановить (в зависимости от того, играет музыка уже или нет) музыку в этой комнате. Очевидно, что что-то должно быть в очереди Sonos, чтобы это работало.
В дальнейшем я собираюсь использовать приведенный выше IP-адрес и Столовую в качестве примеров в этом руководстве. Очевидно, вам следует каждый раз заменять их своим IP-адресом и названием зоны.
Шаг 14: Сделайте так, чтобы HTTP API Sonos работал постоянно
Здорово, что у нас запущен HTTP API Sonos, но что, если он выйдет из строя? Или вы теряете питание или вам нужно перезагрузить Raspberry Pi?
Вы можете увидеть эффект, закрыв окно терминала и повторив то, что мы только что попробовали. Это не сработает, потому что HTTP API остановился вместе с окном терминала.
На самом деле мы хотим, чтобы это работало постоянно, и делаем это каждый раз при запуске. Мы делаем это с помощью классной штуки под названием PM2.
В новом окне терминала установите и запустите его следующим образом:
sudo npm install -g pm2
статус pm2
Теперь давайте запустим наш HTTP API Sonos:
cd node-sonos-http-api
pm2 start npm - запуск pm2 запуск systemd
Эта последняя команда генерирует что-то похожее на:
sudo env PATH = $ PATH: / usr / bin / usr / local / lib / node_modules / pm2 / bin / pm2 startup systemd -u pi --hp / home / pi
Скопируйте то, что генерирует ваш Pi (не точный текст выше - ваш может быть другим), и введите его в командную строку. Это дает системе указание запускать PM2 каждый раз при загрузке.
Наконец, введите:
pm2 сохранить
что экономит все.
Теперь проверьте, сработало ли это, перезагрузив Raspberry Pi с помощью команды
перезагрузка sudo
Надеюсь, что после перезагрузки Pi он также запустит PM2 и, в свою очередь, HTTP API Sonos. Вы можете проверить это, перейдя с помощью браузера в той же сети к адресу, который мы использовали ранее, и увидеть логотип Sonos и инструкции:
192.168.4.102:5005/
это то, что есть для меня, но ваше будет зависеть от IP-адреса.
Шаг 15: поиграйте в Spotify
Давайте проверим, есть ли у сервиса доступ к Spotify.
Откройте браузер и перейдите по следующему адресу (очевидно, заменив его своим IP-адресом и названием комнаты):
192.168.4.102:5005/Столовая / spotify / now / spotify / spotify: альбом: 2dfTV7CktUEBkZCHiB7VQB
Вы должны послушать Джона Гранта. Наслаждаться.
Шаг 16. Найдите URI Spotify
Странно, я знаю, но не всем нравится Джон Грант. Может вы хотите что-нибудь послушать?
Вы можете получить ссылки Spotify из настольных, веб-или мобильных приложений, но рабочий стол, безусловно, самый простой, поскольку он предоставляет URI именно в том формате, который вы хотите, так что начните с этого.
В настольном приложении Spotify перейдите к альбому, который вы хотите послушать (может быть, Lemonade by Beyonce?)
Нажмите на три маленькие точки рядом с кнопкой в виде сердца.
Спуститесь в меню, чтобы поделиться, и выберите Копировать Spotify URI.
Это скопирует что-то вроде
spotify: альбом: 7dK54iZuOxXFarGhXwEXfF
в буфер обмена, который является URI Spotify для альбома Lemondade Бейонсе.
Снова запустите браузер и перейдите по следующему адресу (очевидно, заменив IP-адрес и комнату и вставив только что скопированный URI):
192.168.4.102:5005/Dining Room / spotify / now / [Spotify URI, который вы хотите воспроизвести]
Вы должны услышать свой выбор.
Если вы предпочитаете использовать веб-приложение, оно предоставит вам веб-ссылку (примерно так, как показано ниже):
open.spotify.com/album/7dK54iZuOxXFarGhXwEXfF
вам нужно преобразовать его в формат spotify: album: code, указанный выше, чтобы он работал.
Шаг 17: примечание об URI Spotify
URI Spotify и способ их взаимодействия с node-sonos-http-api по большей части интуитивно понятны.
Вы можете напрямую ссылаться на альбомы, треки и плейлисты.
URI альбома выглядит так:
spotify: альбом: 6agCM9GJcebduMddgFmgsO
URI дорожки выглядит так:
spotify: трек: 4fNDKbaeEjk2P4GrRE1UbW
Плейлисты работают немного иначе. Когда вы копируете URI из Spotify, он будет выглядеть примерно так:
spotify: плейлист: 5huIma0YU4iusLcT2reVEU
Однако, чтобы заставить его работать с API, вам нужно добавить spotify: user: в начало вышеупомянутого. Это применимо даже к публичным плейлистам и, да, это означает, что вы дважды говорите spotify.
Чтобы быть очень ясным, user не обязательно должно быть именем конкретного пользователя, только текстовый пользователь. Итак, правильный URI для приведенного выше плейлиста, чтобы заставить его работать, будет:
spotify: пользователь: spotify: список воспроизведения: 5huIma0YU4iusLcT2reVEU
Шаг 18: Настройте Raspberry Pi для отправки
Вместо того, чтобы вручную вводить HTTP-запросы в веб-браузер, мы хотим автоматизировать его, чтобы Raspberry Pi делал это сам при предъявлении определенного стимула (запускается считыватель NFC).
Мы будем использовать библиотеку под названием requests, чтобы позволить нашему Raspberry Pi делать это. Давайте проверим, что он установлен.
Откройте терминал на своем Pi и введите следующее:
запросы на установку sudo pip
Вполне вероятно, что он вернется и скажет, что он уже установлен, и в этом случае отлично. Если нет, он его установит.
Шаг 19: Создайте тег (ы) NFCC с данными Spotify
Теперь мы хотим записать URI альбома Spotify в тег NFC. Каждый из этих тегов - это то, что вы будете использовать, чтобы указать Raspberry Pi воспроизвести определенный альбом.
Вы можете записать в тег NFC с помощью телефона Android, но я считаю, что проще всего сделать это через Mac или ПК, так как тогда вы можете легко получить URI Spotify из настольного приложения Spotify.
Подключите USB-ридер NFC к ПК или Mac. Я использую ACR122U от American Card Systems.
Загрузите инструменты NFC на свой ПК или Mac. Установите и откройте его.
Иногда подключение к считывателю может быть немного медленным, и может быть сказано, что он вообще не может найти его. Перейдите на вкладку «Другое» в инструментах NFC и периодически нажимайте кнопку «Подключенное устройство чтения NFC». Возможно, вам придется несколько раз отключить и снова подключить считыватель, прежде чем он его найдет.
В конце концов, это даст вам возможность выбрать читателя из списка и сказать, что он подключен. Перейдите на вкладку «Информация», на которой ничего не будет отображаться, кроме «Ожидание тега NFC».
Возьмите пустую метку NFC. Наденьте на ридер и оставьте там. NFC Tools отобразит информацию о теге.
Перейдите на вкладку «Запись» и нажмите «Добавить запись»> «Текст». (Будьте осторожны, чтобы не выбирать URL-адрес или URI - я знаю, что это заманчиво, потому что вы копируете URI, но вам нужен текст)
Получите URI из Spotify, используя метод, который мы использовали ранее. Если вам нужен простой пример, то ниже представлен наш предыдущий альбом Джона Гранта.
spotify: альбом: 2dfTV7CktUEBkZCHiB7VQB
Нажмите «ОК», а затем нажмите «Записать» (не забудьте этот последний шаг - на самом деле он не записывается, пока вы не нажмете на него). Он сообщит вам, что тег успешно записан.
Снимите бирку с ридера
Шаг 20. Настройте устройство чтения NFC на Raspberry Pi
Подключите устройство чтения NFC к одному из портов USB на Raspberry Pi.
Мы будем использовать библиотеку Python nfcpy для связи с устройством чтения NFC. Установите его, набрав в командной строке Pi следующее:
pip install -U nfcpy
Затем мы можем проверить, может ли эта библиотека видеть наш считыватель NFC, набрав следующее:
Python -m NFC
Если это сработало, вы увидите следующее:
Это версия 1.0.3 nfcpy, запущенная в Python 2.7.16 на Linux-4.19.97-v7 + -armv7l-with-debian-10.3
Сейчас я ищу в вашей системе бесконтактные устройства ** нашел ACS ACR122U PN532v1.6 на usb: 001: 011 Я не пробую последовательные устройства, потому что вы мне не сказали - добавьте параметр --search-tty чтобы я посмотрел - но будьте осторожны, это может сломать других серийных разработчиков
Однако есть большая вероятность, что вы получите сообщение об ошибке, в котором говорится, что программа для чтения найдена, но у вашего пользователя (pi) нет разрешения на доступ к ней. Если вы все же получили это сообщение об ошибке, в нем также будет объяснено, как решить проблему, а именно путем ввода двух команд, которые выглядят примерно так:
sudo sh -c 'echo SUBSYSTEM == / "usb \", ACTION == / "add \", ATTRS {idVendor} == / "04e6 \", ATTRS {idProduct} == / "5591 \", GROUP = / "plugdev \" >> /etc/udev/rules.d/nfcdev.rules '
sudo udevadm control -R
Скопируйте и выполните обе команды, которые он вам дает (не совсем то, что указано выше, поскольку ваша может быть другой), затем отключите и снова подключите устройство чтения NFC к USB-порту.
Попробуйте снова выполнить команду проверки:
Python -m NFC
На этот раз он должен сказать, что нашел его без сообщений об ошибках.
Шаг 21: установите скрипты Python Vinylemulator
Теперь у нас есть все строительные блоки:
- Наш Raspberry Pi может прослушивать вход NFC
- Наш Raspberry Pi может указывать Sonos воспроизводить плейлисты Spotify при наличии Spotify URI.
- У нас есть тег NFC с сохраненным на нем URI Spotify.
Теперь нам нужно превратить все эти строительные блоки во что-нибудь полезное. Это делается с помощью написанного мной короткого скрипта на Python (с большой помощью из предыдущих проектов NFC / Spotify / Sonos), который называется vinylemulator.
Вы можете просмотреть исходный код файлов на github:
Чтобы установить это на наш Raspberry Pi, нам нужно клонировать его из github с помощью следующей команды:
git clone
Шаг 22: Настройте винилэмулятор
Откройте файловый менеджер Raspberry Pi и перейдите на главную> pi> vinylemulator.
Откройте файл usersettings.py
Одна из строк в этом файле будет гласить:
sonosroom = "Столовая"
Измените «Столовую» на любое имя комнаты Sonos, которым вы хотите управлять.
В этом файле также есть параметр, позволяющий настроить IP-адрес файла sonos-http-api. Вы можете оставить это без изменений как «localhost», что означает, что он будет использовать Raspberry Pi, на котором он работает.
Сохраните файл и закройте его.
Шаг 23: протестируйте винилемулятор
Перейдите в командную строку Raspberry Pi.
Введите следующую команду:
python vinylemulator / readnfc.py
Если все в порядке, это загрузит скрипт и сообщит, что читатель готов. Индикатор на считывателе должен загореться зеленым.
Поместите метку NFC на считыватель, который подаст звуковой сигнал.
Терминал покажет, что он прочитал из тега NFC, и покажет адрес HTTP-запроса, который он отправил. Выбранный вами альбом должен воспроизводиться через динамики Sonos.
Этот сценарий будет работать до тех пор, пока вы не закроете окно терминала. Вы можете нажать разные теги NFC для альбома, и он переключится на этот альбом.
Шаг 24: заставьте Vinylemulator работать постоянно и при запуске
Как и sonos-http-api, мы хотим, чтобы vinylemulator работал постоянно, а не только тогда, когда мы его вызываем. Мы можем использовать pm2, чтобы сделать это снова.
Сначала закройте все запущенные вами экземпляры vinylemulator, закрыв их окна терминалов.
Затем откройте новое окно терминала и введите следующие две команды:
pm2 запустить vinylemulator / readnfc.py
pm2 сохранить
Давайте проверим, сработало ли это, перезагрузив Raspberry Pi. (Вы можете ввести sudo reboot или сделать это с помощью мыши в меню Raspberry.
Подождите, пока Pi снова запустится, и убедитесь, что он работает, нажав тег NFC на считывателе. Вы должны получить музыку.
Шаг 25: поздравьте себя
Теперь все работает. Вы можете переместить Raspberry Pi туда, где вы планируете его разместить. Он перезапустится и будет работать так, как вы его настроили, каждый раз, когда вы его подключаете.
Следующие ваши задачи - веселые: сделать все красиво.
Шаг 26: Сделайте это красивым - спрячьте своего читателя
Первое, что нужно сделать, чтобы сделать его красивым, - это спрятать где-нибудь неприятный белый пластиковый считыватель NFC.
Я выбрал решительно низкотехнологичный вариант - приклеил его к нижней стороне стойки рядом с моим Sonos Play: 5. Древесина счетчика достаточно тонкая, чтобы пропускать NFC, поэтому я включаю музыку, нажимая метку NFC на волшебном и невидимом месте.
Рекомендуемые:
Автономный эмулятор Retro CP / M: 8 шагов
Автономный эмулятор Retro CP / M: в этом проекте используется модуль VGA32 ESP v1.4 для запуска комбинации или RunCPM и FabGL для создания автономного компьютера, на котором запущена система, эквивалентная CP / M 2.2. Популярная в 1980-х годах как операционная система для небольших компьютеров. Вы можете вернуться
Как создать DJ-сеттинг для начинающих - Виниловый стиль!: 7 шагов
Как создать ди-джейскую установку для начинающих - виниловый стиль! В этой инструкции я покажу вам, как создать ди-джейскую установку с классическим стилем проигрывателя виниловых пластинок. Если вы любитель или хотите стать профессионалом и, возможно, совершить кругосветное путешествие с заработком, эти шаги помогут вам
Sonos Like Spotify Wifi Speaker: 9 шагов (с изображениями)
Sonos Like Spotify Wifi Speaker: в этом проекте мы построим Wifi Speaker со встроенным клиентом Spotify. Это означает, что вы можете легко выбрать Spotify для воспроизведения на этом конкретном динамике. Вам не нужно иметь дело с дрянным bluetooth, поскольку он основан на Ethernet. Ваш
KIM Uno - эмулятор микропроцессора Dev Kit за 5 евро: 13 шагов (с изображениями)
KIM Uno - эмулятор набора для разработки микропроцессоров за 5 евро: KIM Uno - это портативный программно-определяемый набор для разработки (ретро) микропроцессоров. Но позвольте мне представить идею этого, вернувшись в прошлое: еще в конце 2018 года мне пришло в голову, что я хотел создать небольшой портативный микропроцессорный комплект для разработки, просто как
Виниловый конверт с мягкой подкладкой для MacBook Air менее чем за 10 долларов США: 9 шагов
Сделай сам для MacBook Air виниловый конверт с мягкой подкладкой менее чем за 10 долларов: хотя вы, возможно, упали где-то от 1800 до 3200 долларов за MacBook Air, вы все равно можете отказаться от рукава от 30 до 100 долларов за него. Я решил применить буквальный подход и попытаться использовать обычный розничный конверт, чтобы в безопасности разместить свой MacBook Air, пока