Мазмұны:

Sonos Spotify винил эмуляторы: 26 қадам
Sonos Spotify винил эмуляторы: 26 қадам

Бейне: Sonos Spotify винил эмуляторы: 26 қадам

Бейне: Sonos Spotify винил эмуляторы: 26 қадам
Бейне: Broke 90 in Smart Tv 2024, Шілде
Anonim
Image
Image
Sonos Spotify винил эмуляторы
Sonos Spotify винил эмуляторы

Назар аударыңыз, бұл жоба бойынша нұсқаулардың соңғы жиынтығы емес:

Ең соңғы нұсқаулар мен қолдау алу үшін https://www.hackster.io/mark-hank/sonos-spotify-vinyl-emulator-3be63d сайтына кіріңіз

Винилден музыка тыңдау керемет. Бұл физикалық және тактильді. Сіз кездейсоқ тректерді емес, тұтас альбомды тыңдайсыз. Сіз аяқталған кезде байқайсыз және саналы түрде басқа нәрсені таңдайсыз. Сіз өзіңіз қалаған нәрсені іздеудің орнына коллекция құрып, оны шолуға болады.

Бұл сонымен қатар қымбат және көлемді, әсіресе егер сіз винилге жұмсайтын кез келген ақша сіз жазылатын ағындық қызмет арқылы қол жетімді музыканың көшірмесі деп ойласаңыз.

Бұл жоба музыканы шынымен жеткізу үшін Spotify-ге сүйене отырып, винилдің икемділігі мен коллекциялық аспектілерін қайталауға тырысады. Raspberry Pi -ге қосылған NFC оқырманына физикалық нысанды орналастыру (екеуін де жасыруға болады) сол тегпен байланысты альбомды ойнай бастайды.

Мен сізге 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 картасы: Менде 32 Гб бар, бұл Amazon -да (6 фунт)

Сіздің желіңізде жұмыс істейтін кейбір Sonos жабдықтары (менің ойымша, егер сіз мұнда болсаңыз …)

Spotify Premium есептік жазбасы

Ұсынылады:

Pi үшін жағдай: 5 фунт стерлингтен басталатын көптеген нұсқалар бар

Калифорнияның лайықты бөтелкесі Зинфандел: Мен Риджді ұсынамын, бірақ басқалары бар

2 -қадам: Қажетті жабдықтар 2: NFC оқу құралы

Қажетті жабдықтар 2: NFC оқу құралы
Қажетті жабдықтар 2: NFC оқу құралы
Қажетті жабдықтар 2: NFC оқу құралы
Қажетті жабдықтар 2: NFC оқу құралы

Бұл нұсқаулар USB арқылы қосылатын ACR122U NFC оқу құралы үшін жасалған.

ACR122U

Мен оны Amazon -дан 38 фунтқа сатып алдым (көбінесе жеткізілім жақсы болғандықтан), бірақ дәл осы оқырманды сатып алудың арзан нұсқалары бар.

ACR122U әр түрлі фирмалық атаулармен сатылатын сияқты көрінеді (менікі «Yosoo» сенімді брендімен шыққан), бірақ мен айтайын, олар бәрі бірдей және American Card Systems құрастырған.

Мен ACR122U жарнамалаған ең арзан баға 21 фунт стерлингті құрайды, бірақ бұл Қытайдан тікелей жеткізіледі, сондықтан сізге біраз күту қажет болуы мүмкін.

Басқа опциялар

Бұл жоба nfcpy деп аталатын python кітапханасына негізделген, ол мұнда қолдау көрсетілетін құрылғылар тізімін жүргізеді:

Теорияда бұл жоба аз интеграциямен тізімдегі кез келгенімен жұмыс істеуі керек.

Бір тартымды нұсқа - бұл Adafruit PN532, ол тікелей Raspberry Pi -ге қосқыш кабельдерді қосатын тақта. Мен оны сынап көрдім және оны нағыз әуесқой деп таптым. Бұл дәнекерлеуді қажет етеді, мысалы.

Оның бір артықшылығы - бұл кішірек, бірақ іс жүзінде тақта ACR122U ішегімен бірдей. Егер сізде шынымен де қосымшаға орын қажет болса, онда пластмассаны ACR122U -дан ажыратып, тақтаны қолдануға болады.

3 -қадам: Қажетті жабдықтар 3: NFC тегтері

Қажетті жабдықтар 3: NFC тегтері
Қажетті жабдықтар 3: NFC тегтері

Жасағыңыз келетін әр альбом үшін сізге NTAG213 стандартына сәйкес келетін NFC тег қажет болады.

Бұларды сатып алатын жерлер көп.

Мен бірінші партияны Amazon -дан сатып алдым, онда 9 фунт стерлингке 10 пакет алдым (Prime жеткізілімін қосқанда)

Мен Ұлыбританиядан тапқан ең жақсы өнім - Seritag - оларда әр түрлі стильдердің кең таңдауы бар, олардың веб -сайтында керемет кеңестер бар, сіз не алғаныңызды білесіз (Amazon -да әрқашан дұрыс емес). Оларда тапсырыстың ең аз мөлшері мен көптеген нұсқалары жоқ. Тегтер бір тег үшін 27p басталады

4 -қадам: Raspberry Pi ОЖ -ні SD картасына жүктеңіз

Raspberry Pi ОЖ -ны SD картасына жүктеңіз
Raspberry Pi ОЖ -ны SD картасына жүктеңіз
Raspberry Pi ОЖ -ны SD картасына жүктеңіз
Raspberry Pi ОЖ -ны SD картасына жүктеңіз

Компьютерде немесе Mac компьютерінде Raspberry PI бейнелеуші қосымшасын жүктеп алып, іске қосыңыз.

Raspberry Pi операциялық жүйесін орнатқыңыз келетін SD картасын салыңыз.

ОС таңдауды нұқыңыз және әдепкі расби тілін таңдаңыз.

SD КАРТАСЫН ТАҢДАУ түймесін басып, қосылған SD картасын таңдаңыз.

ЖАЗУ түймесін басыңыз. Бұл біраз уақыт алуы мүмкін.

Аяқтағаннан кейін ол сізге SD картасын алып тастау керектігін айтады. Бірақ содан кейін оны қайтадан қосыңыз, өйткені алдымен үй шаруашылығының бірнеше нүктелері қажет.

5 -қадам: Raspberry Pi OS кескінінде SSH қосыңыз

Raspberry Pi OS кескінінде SSH қосыңыз
Raspberry Pi OS кескінінде SSH қосыңыз

ОЖ SD картасына жазылғаннан кейін сізге бірнеше қосымша тапсырмалар қажет.

Біз Raspberry Pi -ге пернетақтаны немесе мониторды қоспай -ақ қол жеткізгіміз келеді (оны «бассыз» деп атаймыз), біз оны жергілікті желі арқылы компьютер немесе Mac көмегімен SSH деп аталатын хаттамамен жасай аламыз. Дегенмен, қауіпсіздік мақсатында SSH әдепкі бойынша өшірілген. Біз оны іске қосуымыз керек.

Біз мұны бос файл жасау арқылы жасай аламыз:

ssh

біз жасаған SD картасында. Бұл кеңейтудің ешқандай түрі болмауы маңызды (мысалы.txt). Файлдың өзі ешқандай мазмұнды қажет етпейді - Pi жүктелген кезде оның болуы SSH қосады.

6 -қадам: Қосымша: Raspberry Pi -де Wi -Fi орнатыңыз

Қосымша: Raspberry Pi -де Wi -Fi орнатыңыз
Қосымша: Raspberry Pi -де Wi -Fi орнатыңыз
Қосымша: Raspberry Pi -де Wi -Fi орнатыңыз
Қосымша: Raspberry Pi -де Wi -Fi орнатыңыз

Егер сіз Raspberry Pi маршрутизаторына Ethernet арқылы қосуды жоспарласаңыз, бұл қадамды өткізіп жіберуге болады. (Сіз бұл шешім туралы көп ойланғыңыз келуі мүмкін, бірақ оны Wi -Fi арқылы іске қосу оны орналастыру тұрғысынан өмірді айтарлықтай жеңілдетеді)

SD картасының түпкі каталогында wpa_supplicant.conf деп аталатын қарапайым мәтіндік файл жасаңыз.

Файлға төмендегі мәтінді енгізіңіз:

ел = гб

update_config = 1 ctrl_interface =/var/run/wpa_supplicant network = {scan_ssid = 1 ssid = «MyNetworkSSID» psk = «MyPassword»}

Елді сәйкесінше өзгертіңіз (GB - Ұлыбритания, АҚШ - АҚШ, DE - Германия және т.

Wi -Fi маршрутизаторының нақты мәліметтері болу үшін Wi -Fi тіркелгі деректерін өзгертіңіз.

Файлды сақтаңыз.

SD картасын қауіпсіз шығарыңыз.

7 -қадам: Raspberry Pi құрылғысын қосыңыз

Raspberry Pi -ді қосыңыз
Raspberry Pi -ді қосыңыз

Жаңа жасаған SD картасын Raspberry Pi -ге салыңыз.

Raspberry Pi құрылғысын USB кабелі арқылы қосыңыз. Оның жүктелуін күтіңіз.

8 -қадам: Raspberry Pi -дің IP -мекен -жайын табыңыз

Енді сіз Raspberry Pi -дің IP -мекен -жайын табуыңыз керек, осылайша сіз оған қосыла аласыз. Сіз мұны екі жолмен жасай аласыз:

  • маршрутизаторды орнату беті арқылы - егер сізде eero сияқты заманауи маршрутизатор болса, онда бұл өте оңай;
  • немесе iOS пен Android үшін қол жетімді смартфон қосымшасы арқылы «саусақ» деп аталады - оны жүктеп алыңыз, маршрутизаторға қосылыңыз және құрылғыларды іздеңіз - олардың біреуі «Таңқурай» деп аталуы керек - бұл сізге қажет IP -адрес болады.

9 -қадам: Raspberry Pi пәрмен жолына қосылыңыз

Raspberry Pi пәрмен жолына қосылыңыз
Raspberry Pi пәрмен жолына қосылыңыз

Mac компьютерінде Терминалды ашыңыз (немесе егер сіз Windows жүйесін қолдансаңыз, Putty бағдарламасын жүктеп алыңыз).

Келесі пәрменді енгізіңіз:

ssh pi@[сіздің Pi -дің IP -мекен -жайы]

Сіз алатын кез келген қауіпсіздік ескертулерін қабылдаңыз. Сізден әдепкі pi пайдаланушысы үшін құпия сөз сұралады

таңқурай

10 -қадам: Raspberry Pi OS GUI орнатыңыз

Raspberry Pi OS GUI орнатыңыз
Raspberry Pi OS GUI орнатыңыз
Raspberry Pi OS GUI орнатыңыз
Raspberry Pi OS GUI орнатыңыз

Сіз енді Pi -ге пәрмен жолы арқылы қосылдыңыз, бұл өте жақсы, бірақ сіз оны VNC (Virtual Network Computing) арқылы қол жеткізетін графикалық пайдаланушы интерфейсіне қол жеткізе алатындай етіп орнатқыңыз келеді. Болжам бойынша, біз бұған да мүмкіндік беруіміз керек.

Алдымен пәрмен жолына келесі екі пәрменді (әрқайсысын енгізу арқылы) енгізу арқылы Pi бағдарламалық жасақтамасының жаңартылғанын тексеріңіз:

sudo apt жаңарту

sudo apt install realvnc-vnc-server realvnc-vnc-viewer

Содан кейін Raspberry Pi параметрлері мәзірін ашыңыз:

sudo raspi-config

Интерфейс опциялары> VNC> Иә тармағына өтіңіз.

Шығу пернесін басу арқылы конфигурация қосымшасынан шығыңыз және теру арқылы пәрмен жолынан Pi қайта жүктеңіз:

sudo қайта жүктеу

11 -қадам: Raspberry Pi GUI -ге қосылыңыз және орнатыңыз

Raspberry Pi GUI -ге қосылыңыз және орнатыңыз
Raspberry Pi GUI -ге қосылыңыз және орнатыңыз
Raspberry Pi GUI -ге қосылыңыз және орнатыңыз
Raspberry Pi GUI -ге қосылыңыз және орнатыңыз

VNC Viewer бағдарламасын жүктеңіз және ашыңыз.

Raspberry Pi үшін IP мекенжайын енгізіп, «Қосылу» түймесін басыңыз. Ол сізге пайдаланушы аты мен құпия сөзді сұрайды:

Пайдаланушы аты = pi

Құпия сөз = таңқурай

Бұл сізді GUI -ге жүктеуі керек.

Бұл сізге география мен пернетақта орналасуын растауды ұсынады.

Бұл сізге құпия сөзді өзгертуді ұсынады (жақсы идея).

Ол сізден Wi -Fi мәліметтерін орнатуды сұрайды, бірақ сіз оны өткізіп жібере аласыз, себебі олар жұмыс істейді. (Егер сіз Ethernet желісінде жұмыс істеп, екінші рет ойланып жүрсеңіз - бұл сіздің мүмкіндігіңіз, бірақ сіздің IP мекенжайыңыз өзгеруі мүмкін екенін ескеріңіз)

Содан кейін ол жаңартуларды тексереді, жүктейді және орнатады (біраз уақыт кетуі мүмкін).

Орнату шебері арқылы жұмыс істегеннен кейін экран ажыратымдылығын өзгертуді ұсынамын, себебі әдепкі шамалы. Мұны істеу үшін жоғарғы сол жақтағы Таңқурай> Параметрлер> Raspberry Pi конфигурациясы> Дисплей> Рұқсатты орнату түймешігін басу арқылы жасауға болады.

Бұл күшіне енуі үшін сізге Pi -ді қайта жүктеу қажет болады.

12 -қадам: Node.js және NPM орнатыңыз

Node.js және NPM орнатыңыз
Node.js және NPM орнатыңыз

Содан кейін сізге қажет тәуелділіктерді орнату үшін Raspberry Pi пәрмен жолын жүктегіңіз келеді.

Сіз мұны VNC арқылы қосылу арқылы жасай аласыз және пәрмен жолына ұқсайтын жоғарғы жағындағы түймені басу арқылы жасай аласыз; немесе сіз Mac/дербес компьютерден терминал мен Putty көмегімен тікелей қосыла аласыз. Егер сіз Raspberry Pi -мен жұмыс жасауға аз үйренсеңіз, онда біріншісін жасау оңайырақ болады.

(Кеңес: Мәтінді Mac/компьютерден көшіріп, оны VNC арқылы Raspberry Pi-ге CONTROL-V түймесін басу арқылы қоюға болады, бірақ егер сіз терминалға қоюға тырыссаңыз, онда CONTROL-SHIFT-V пернесін басу қажет)

Бірінші жұмыс - келесі екі пәрменді енгізу арқылы бағдарламалық жасақтаманың жаңартылғанын қайта тексеру. Олар жүктеуге және орнатуға біраз уақыт кетуі мүмкін.

sudo apt-get жаңартуы

sudo apt-get жаңарту

Келесіде node.js мен NPM -ді жүктеп, орнатқыңыз келеді (олар туралы көп уайымдамаңыз, олар келесі тапсырмалар үшін пайдалы және қажет):

sudo apt-get nodejs npm орнатыңыз

Ол сізден дискілік кеңістікті қуана алатындығыңызды бірнеше рет сұрайды - сіз Y түймесін басасыз

13 -қадам: SONOS HTTP API орнатыңыз

SONOS HTTP API орнатыңыз
SONOS HTTP API орнатыңыз
SONOS HTTP API орнатыңыз
SONOS HTTP API орнатыңыз

Біздің жобаның артқы жағының негізі-джиши жасаған node-sonos-http-api пакеті. Сіз бұл туралы бәрін оқи аласыз:

Біз бұны пәрмен жолына енгізілген келесі пәрменмен github -дан жүктейміз:

git клоны

және біз оны келесі командалармен орнатамыз

cd node-sonos-http-api

npm орнату -өндіріс

Содан кейін біз оны келесі пәрменмен іске қоса аламыз:

npm басталуы

Бұл аяқталғаннан кейін біз оның жұмыс істейтінін тексеруіміз керек.

Ең алдымен, біздің Raspberry Pi интернет браузерін ашып, https:// localhost: 5005/өтіңіз. Жақсы интерфейс Sonos логотипімен және API қалай жұмыс істейтіні туралы кейбір құжаттамамен ашылуы керек.

Әрі қарай, бұл желідегі басқа дербес компьютерде немесе Mac браузерін қолданып, https:// [theIPaddressofyourPi]: 5005/тармағына өтіп, біз дәл осындай нәтижеге қол жеткізетінімізді көру арқылы кеңірек желіден жұмыс істейтінін тексерейік. Бізге … жөн болады.

Енді біз жүйені бір нәрсе жасауға мәжбүрлейміз. Браузерді қолданыңыз және келесіге өтіңіз:

192.168.4.102:5005/ Асхана/ойнату уақыты

Жоғарыда көрсетілген IP мекенжайын Raspberry Pi адресімен және «Асхана» Sonos аймақтарының атауларының біріне ауыстыру керек. Ол сол бөлмедегі музыканы ойнатуы немесе кідіртуі керек (музыка ойнап жатқанына немесе ойналмағанына байланысты). Әрине, жұмыс істеу үшін Sonos кезегінде бір нәрсе болуы керек.

Әрі қарай, мен осы оқулықта мысал ретінде жоғарыдағы IP мекенжайы мен асхананы қолданамын. Әрине, сіз оларды әр уақытта IP мекенжайыңызбен және сіздің аймағыңыздың атауымен ауыстыруыңыз керек.

14 -қадам: Sonos HTTP API -ді үнемі іске қосыңыз

Sonos HTTP API -ді үнемі іске қосыңыз
Sonos HTTP API -ді үнемі іске қосыңыз

Бізде Sonos HTTP API жұмыс істеп тұрғаны өте жақсы, бірақ ол бұзылса ше? Немесе қуат жоғалады немесе Raspberry Pi -ді қайта жүктеу керек пе?

Терминалды терезені жабу және біз жаңа ғана тырысқан әрекетті қайталау арқылы әсерді көруге болады. Бұл жұмыс істемейді, себебі HTTP API терминал терезесімен бірге тоқтады.

Біз бұл үнемі жұмыс істеп тұрғанын қалаймыз және оны әр іске қосудан бастап жасаймыз. Біз мұны PM2 деп аталатын керемет нәрсемен жасаймыз.

Терминалдың жаңа терезесінде оны келесідей орнатыңыз және іске қосыңыз:

sudo npm орнату -g pm2

pm2 күйі

Енді оны Sonos HTTP API іске қосуға рұқсат етіңіз:

cd node-sonos-http-api

pm2 start npm - start pm2 іске қосу жүйесіd

Бұл соңғы пәрмен ұқсас нәрсені жасайды:

sudo env PATH = $ PATH:/usr/bin/usr/local/lib/node_modules/pm2/bin/pm2 іске қосу жүйесіd -u pi --hp/home/pi

Pi жасайтын нәрсені көшіріп алыңыз (жоғарыдағы мәтін емес, басқаша болуы мүмкін) және оны пәрмен жолына енгізіңіз. Бұл жүйеге жүктеу кезінде PM2 іске қосуды әр уақытта нұсқайды.

Соңында енгізіңіз:

pm2 сақтау

бұл бәрін үнемдейді.

Енді бұл Raspberry Pi пәрменімен қайта жүктеу арқылы жұмыс істегенін тексеріңіз

sudo қайта жүктеу

Pi қайта жүктелгеннен кейін ол PM2 мен Sonos HTTP API іске қосылады деп үміттенемін. Сіз мұны сол желідегі браузерді пайдаланып, біз бұрын қолданған мекен -жайға өту арқылы тексере аласыз және Sonos логотипі мен нұсқауларын көре аласыз:

192.168.4.102:5005/

бұл мен үшін, бірақ сіздікі IP мекенжайына байланысты болады.

15 -қадам: Spotify ойнаңыз

Қызметтің Spotify -ке кіре алатынын тексерейік.

Браузерді ашып, келесі мекен -жайға өтіңіз (IP мекенжайы мен бөлме атауын алмастыратыны анық):

192.168.4.102:5005/ Асхана/spotify/now/spotify/spotify: альбом: 2dfTV7CktUEBkZCHiB7VQB

Сіз Джон Грант туралы естуіңіз керек. Ләззат алыңыз.

16 -қадам: Spotify URI іздеңіз

Spotify URI мекенжайларын табыңыз
Spotify URI мекенжайларын табыңыз

Біртүрлі, мен білемін, бірақ Джон Грантты бәрі бірдей ұнатпайды. Мүмкін сіз басқа нәрсені тыңдағыңыз келе ме?

Сіз Spotify сілтемелерін жұмыс үстелінен, вебтен немесе мобильді қосымшалардан ала аласыз, бірақ жұмыс үстелі - бұл URI -ді дәл сіз қалаған форматта жеткізетіндіктен, ең оңай.

Spotify жұмыс үстелі қосымшасында тыңдағыңыз келетін альбомға өтіңіз (мүмкін Лимонад Бейонсе шығар?)

Жүрек түймесінің жанындағы үш кішкентай нүктені басыңыз.

Бөлісу мәзірінен төмен өтіп, Spotify URI көшірмесін таңдаңыз

Бұл ұқсас нәрсені көшіреді

spotify: альбом: 7dK54iZuOxXFarGhXwEXfF

алмасу буферіне, ол - Beyonce Lemondade альбомына арналған Spotify URI.

Браузерді қайтадан іске қосыңыз және келесі мекен -жайға өтіңіз (IP мекенжайы мен бөлмені ауыстыру және жаңа көшірілген URI -ге қою):

192.168.4.102:5005/ Асхана/spotify/now/[Spotify URI ойнағыңыз келеді]

Сіз өзіңіз таңдаған пьесаны тыңдауыңыз керек.

Егер сіз веб -қосымшаны қолданғыңыз келсе, ол сізге веб -сілтеме береді (төмендегідей):

open.spotify.com/album/7dK54iZuOxXFarGhXwEXfF

оны жұмыс істеу үшін оны spotify: album: код пішіміне түрлендіру қажет.

17 -қадам: Spotify URI туралы ескертпе

Spotify URI интерфейсі және олар node-sonos-http-api-мен интерфейсінің көп бөлігі интуитивті.

Сіз альбомдарға, тректерге және ойнату тізіміне тікелей сілтеме жасай аласыз.

URI альбомы келесідей көрінеді:

spotify: альбом: 6agCM9GJcebduMddgFmgsO

Жолдың URI келесідей көрінеді:

spotify: трек: 4fNDKbaeEjk2P4GrRE1UbW

Ойнату тізімдері басқаша жұмыс істейді. URI -ді Spotify -тен көшіргенде ол келесідей болады:

spotify: ойнату тізімі: 5huIma0YU4iusLcT2reVEU

Алайда, оны API -де жұмыс істеу үшін жоғарыда айтылғандардың басына spotify: user қосу керек. Бұл жалпыға ортақ ойнату тізімдеріне де қатысты және иә, бұл сіз екі рет spotify дегенді білдіреді.

Түсінікті болу үшін пайдаланушыға белгілі бір пайдаланушының аты болуы қажет емес, тек мәтіндік пайдаланушы. Жоғарыда көрсетілген ойнату тізімінің жұмыс істеуі үшін дұрыс URI келесідей болады:

spotify: пайдаланушы: spotify: ойнату тізімі: 5huIma0YU4iusLcT2reVEU

18 -қадам: HTTP сұраныстарын жіберу үшін Raspberry Pi орнатыңыз

HTTP сұрауларын жіберу үшін Raspberry Pi орнатыңыз
HTTP сұрауларын жіберу үшін Raspberry Pi орнатыңыз

HTTP сұрауларын веб -браузерге қолмен терудің орнына, біз оны автоматтандыруды қалаймыз, осылайша Raspberry Pi белгілі бір ынталандыру кезінде (NFC оқу құралы іске қосылады) өзі жасайды.

Біз Raspberry Pi -ге бұған рұқсат беру үшін сұраныстар деп аталатын кітапхананы қолданамыз. Оның орнатылғанын тексерейік.

Pi телефонындағы терминалды ашып, келесіні теріңіз:

sudo pip орнату сұраулары

Мүмкін, ол қайтып келеді және қазірдің өзінде орнатылғанын айтады, бұл жағдайда керемет. Олай болмаса, оны орнатады.

19 -қадам: Spotify деректерімен NFCC тегтерін жасаңыз

Spotify деректерімен NFCC тегтерін жасаңыз
Spotify деректерімен NFCC тегтерін жасаңыз
Spotify деректерімен NFCC тегтерін жасаңыз
Spotify деректерімен NFCC тегтерін жасаңыз
Spotify деректерімен NFCC тегтерін жасаңыз
Spotify деректерімен NFCC тегтерін жасаңыз
Spotify деректерімен NFCC тегтерін жасаңыз
Spotify деректерімен NFCC тегтерін жасаңыз

Енді біз Spotify URI альбомын NFC тегіне жазғымыз келеді. Бұл тегтердің әрқайсысы Raspberry Pi -ге белгілі бір альбомды ойнауды айту үшін қолданылатын нәрсе.

Сіз Android телефонын қолдана отырып NFC тегіне жаза аласыз, бірақ мен оны Mac немесе компьютер арқылы жасау оңай деп ойлаймын, себебі Spotify URI интерфейсін Spotify жұмыс үстелі қосымшасынан алуға болады.

USB NFC оқу құрылғысын компьютерге немесе Mac компьютеріне қосыңыз. Мен ACR122U американдық карта жүйелерінде қолданамын.

NFC құралдарын компьютерге немесе Mac компьютеріне жүктеңіз. Оны орнатыңыз және ашыңыз.

Оқырманмен байланыс кейде баяу болуы мүмкін және ол оқырманды мүлде таба алмайды деп айтуы мүмкін. NFC құралдарындағы Басқа қойындысына өтіп, Connected NFC Reader түймесін жиі басыңыз. Оқырман оны таппас бұрын оны бірнеше рет ажыратып, қайта қосу қажет болуы мүмкін.

Ақыр соңында ол сізге оқырманды тізімнен таңдауға және оның қосылғанын айтуға мүмкіндік береді. «NFC тегін күту» дегеннен басқа ештеңе көрсетілмейтін ақпарат қойындысына өтіңіз.

NFC бос тегін алыңыз. Оқырманға жүктеп, сонда қалдырыңыз. NFC құралдары тег туралы ақпаратты көрсетеді.

Жазу қойындысына өтіп, Жазба қосу> Мәтін түймешігін басыңыз. (URL немесе URI таңдамау үшін абай болыңыз - мен білемін, бұл қызықтырады, себебі сіз URI көшіресіз, бірақ сізге мәтін қажет)

Біз бұрын қолданған әдісті қолдана отырып, Spotify -тен URI алыңыз. Егер сіз қарапайым мысал алғыңыз келсе, төменде біздің бұрынғы Джон Грант альбомы берілген.

spotify: альбом: 2dfTV7CktUEBkZCHiB7VQB

ОК батырмасын басыңыз, содан кейін Жазу түймесін басыңыз (бұл соңғы қадамды ұмытпаңыз - сіз оны басқанша ол жазылмайды). Бұл тегтің сәтті жазылғанын хабарлайды.

Оқырманнан белгіні алып тастаңыз

20 -қадам: NFC оқу құралын Raspberry Pi -ге орнатыңыз

NFC оқу құралын Raspberry Pi -ге орнатыңыз
NFC оқу құралын Raspberry Pi -ге орнатыңыз

NFC оқу құралын Raspberry Pi құрылғысындағы USB порттарының біріне қосыңыз.

Біз NFC оқырманымен байланысу үшін nfcpy Python кітапханасын қолданамыз. Оны Pi пәрмен жолына келесіні енгізу арқылы орнатыңыз:

pip install -U nfcpy

Содан кейін біз бұл кітапхана NFC оқырманы көре алатынын тексере аламыз:

python -m nfc

Егер ол жұмыс істеген болса, онда сіз мынаны көресіз:

Бұл Linux-4.19.97-v7+-armv7l-debian-10.3 жүйесіндегі Python 2.7.16 жүйесінде жұмыс істейтін nfcpy бағдарламасының 1.0.3 нұсқасы.

Мен қазір сіздің жүйеңізде контактісіз құрылғыларды іздеймін ** ACS ACR122U PN532v1.6 usb: 001: 011-де табылды 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 басқару -R

Сізге беретін екі пәрменді де көшіріңіз және орындаңыз (жоғарыдағыдай емес, себебі сіздікі басқаша болуы мүмкін), содан кейін NFC оқу құралын USB портынан ажыратыңыз және қайта қосыңыз.

Тексеру пәрменін қайталап көріңіз:

python -m nfc

Бұл жолы ол қате туралы хабарсыз табылғанын айту керек.

21 -қадам: Vinylemulator Python сценарийлерін орнатыңыз

Бізде барлық құрылыс блоктары бар:

  • Біздің Raspberry Pi NFC кірісін тыңдай алады
  • Біздің Raspberry Pi Sonos -қа Spotify URI берілген кезде Spotify ойнату тізімдерін ойнауды айтуға қабілетті
  • Бізде сақталған Spotify URI бар NFC тегі бар

Енді біз осы құрылыс блоктарының бәрін пайдалы нәрсеге тартуымыз керек. Бұл мен жазған қысқа питон сценарийі арқылы (алдыңғы NFC/Spotify/Sonos жобаларының көмегімен) винилемулятор деп аталады.

Сіз файлдардың бастапқы кодын github сайтынан қарай аласыз:

Мұны Raspberry Pi -ге орнату үшін біз оны github -дан келесі пәрменмен клондауымыз керек:

git clone

22 -қадам: Винилемуляторды теңшеңіз

Винилемуляторды теңшеңіз
Винилемуляторды теңшеңіз
Винилемуляторды теңшеңіз
Винилемуляторды теңшеңіз

Raspberry Pi файл менеджерін ашып, үй> pi> vinylemulator тармағына өтіңіз

Usersettings.py файлын ашыңыз

Бұл файлдағы жолдардың бірі келесідей болады:

sonosroom = «Асхана»

«Асхана» бөлігін Sonos бөлмесінің қай атауын басқарғыңыз келетініне өзгертіңіз.

Бұл файлда sonos-http-api IP мекенжайын реттеуге мүмкіндік беретін параметр бар. Сіз оны «localhost» ретінде өзгерте алмауыңыз керек, бұл ол жұмыс істейтін Raspberry Pi -ді қолданады.

Файлды сақтап, жабыңыз.

23 -қадам: винилемуляторды тексеріңіз

Винилемуляторды сынау
Винилемуляторды сынау
Винилемуляторды сынау
Винилемуляторды сынау

Raspberry Pi пәрмен жолына өтіңіз.

Келесі пәрменді енгізіңіз:

python vinylemulator/readnfc.py

Егер бәрі жақсы болса, бұл сценарийді жүктейді және оқырман дайын екенін айтады. Оқырманның шамы жасыл түспен жануы керек.

Оқырманға NFC белгісін қойыңыз, ол дыбыс шығарады.

Терминал NFC тегінен оқығандарын көрсетеді және ол жіберген HTTP сұраныс мекенжайын көрсетеді. Сіздің таңдаған альбомыңыз Sonos динамиктерінен ойнатылуы керек.

Бұл сценарий терминал терезесін жапқанша жұмыс істей береді. Сіз әр түрлі альбомды NFC түртуге болады, ол сол альбомға ауысады.

24 -қадам: Винилемуляторды үнемі және іске қосылған кезде іске қосыңыз

Sonos-http-api сияқты, біз де винилемулятордың оны шақырған кезде емес, үнемі жұмыс істеп тұрғанын қалаймыз. Біз мұны қайтадан жасау үшін pm2 пайдалана аламыз.

Алдымен терминал терезелерін жабу арқылы іске қосылған винилемулятордың барлық жағдайларын жабыңыз.

Содан кейін жаңа терминал терезесін ашып, келесі екі пәрменді теріңіз:

pm2 бастау vinylemulator/readnfc.py

pm2 сақтау

Бұл Raspberry Pi қайта жүктеу арқылы жұмыс істегенін тексерейік. (Сіз sudo reboot тере аласыз немесе оны Raspberry мәзірінен тінтуірдің көмегімен жасай аласыз.

Pi қайта іске қосылғанша күтіңіз және оның оқырманға NFC белгісін түрту арқылы жұмыс істейтінін көріңіз. Сіз музыканы алуыңыз керек.

25 -қадам: Өзіңізді құттықтаңыз

Қазір бәрі функционалды. Сіз Raspberry Pi -ді орналастыруды жоспарлаған жерге жылжыта аласыз. Ол сіз қосқан кезде оны қалай орнатсаңыз, солай қайта іске қосылады және жұмыс істейді.

Сіздің келесі тапсырмаларыңыз көңілді: бәрін әдемі ету.

26 -қадам: оны әдемі етіңіз - оқырманды жасырыңыз

Әдемі етіп жасаңыз - Оқырманды жасырыңыз
Әдемі етіп жасаңыз - Оқырманды жасырыңыз
Әдемі етіп жасаңыз - Оқырманды жасырыңыз
Әдемі етіп жасаңыз - Оқырманды жасырыңыз
Әдемі етіп жасаңыз - Оқырманды жасырыңыз
Әдемі етіп жасаңыз - Оқырманды жасырыңыз
Әдемі етіп жасаңыз - Оқырманды жасырыңыз
Әдемі етіп жасаңыз - Оқырманды жасырыңыз

Оны әдемі етудің бірінші бөлігі - бұл NFC ақ түсті пластикалық оқырманды бір жерге жасыру.

Мен оны Sonos Play -дің жанындағы есептегіштің астына жабыстырудың өте төмен технологиялық нұсқасымен жүрдім: 5. Есептегіштің ағашы өте жұқа, сондықтан NFC өте алады, сондықтан мен сиқырлы және көрінбейтін жерде NFC белгісін түрту арқылы музыка ойнаймын.

Ұсынылған: