Cuprins:

Difuzor Bluetooth Raspberry Pi: 4 pași
Difuzor Bluetooth Raspberry Pi: 4 pași

Video: Difuzor Bluetooth Raspberry Pi: 4 pași

Video: Difuzor Bluetooth Raspberry Pi: 4 pași
Video: Balena Sound. Raspberry Pi 4. Airplay, Bluetooth Audio & Spotify connect 2024, Noiembrie
Anonim
Difuzor Bluetooth Raspberry Pi
Difuzor Bluetooth Raspberry Pi

Salutare tuturor.

Iată un Instructable despre cum să faci un difuzor Bluetooth folosind Raspberry Pi. Acest lucru a fost făcut după o nouă instalare a celei mai recente Raspbian (începând cu 2020-10-31.) În acest instructable vom converti Raspberry Pi pentru a primi sunet prin Bluetooth și îl vom transmite prin mufa audio încorporată 3.5. Dacă utilizați Raspberry Pi 1 sau 2, va trebui să utilizați un adaptor Bluetooth separat. Pentru acest instructabil vom folosi Raspberry Pi 3B.

Provizii

Raspberry Pi 1, 2, 3 sau 4.

Difuzor cu intrare jack audio 3.5.

Sursa de alimentare pentru Raspberry Pi.

Mouse și tastatură pentru Raspberry Pi (sau puteți conecta SSH cu un alt computer).

Dongle Bluetooth dacă utilizați Raspberry Pi 1 sau 2.

Pasul 1: Conectați-vă la Raspberry Pi

Acest pas este destul de auto-intuitiv!

Va trebui să vă conectați la Raspberry Pi fie prin SSH, fie cu un monitor, mouse și tastatură. Dacă vă aflați în interfața grafică Raspian, deschideți un terminal. Dacă sunteți SSH, atunci veți fi deja acolo.

Înainte de a continua cu pașii următori, este recomandabil să vă asigurați că ați actualizat sistemul.

sudo apt-get update

sudo apt-get upgrade

Aceasta s-ar putea sa dureze cateva minute.

Pasul 2: Sortează Bluetooth

Dacă intri

sudo systemctl status blue *

atunci probabil va returna ceva ca mai jos.

pi @ raspberrypi: ~ $ sudo systemctl status blue *

● bluetooth.service - Serviciu Bluetooth Încărcat: încărcat (/lib/systemd/system/bluetooth.service; activat; presetare furnizor Activ: activ (rulează) de la Sâm 2020-10-31 12:36:04 GMT; acum 40min Docs: om: bluetoothd (8) PID principal: 523 (bluetoothd) Stare: „Rulează” Sarcini: 1 (limită: 2065) CGroup: /system.slice/bluetooth.service └─523 / usr / lib / bluetooth / bluetoothd 31 oct 12: 36: 04 raspberrypi systemd [1]: Pornirea serviciului Bluetooth … 31 oct 12:36:04 raspberrypi bluetoothd [523]: daemon Bluetooth 5.50 31 oct. 12:36:04 raspberrypi systemd [1]: Serviciu Bluetooth pornit. 31 oct. 12: 36: 04 raspberrypi bluetoothd [523]: Pornirea serverului SDP 31 oct. 12:36:04 raspberrypi bluetoothd [523]: interfață de gestionare Bluetooth 1.14 31 oct. 12:36:04 raspberrypi bluetoothd [523]: inițializarea driverului SAP a eșuat. 31 oct. 12:36:04 raspberrypi bluetoothd [523]: sap-server: Operațiunea nu este permisă 31 oct. 12:36:04 raspberrypi bluetoothd [523]: Punct final înregistrat: expeditor =: 1,10 p 31 oct. 12:36:04 raspberrypi bluetoothd [523]: Punct final r egistered: sender =: 1.10 p 31 oct 12:36:04 raspberrypi bluetoothd [523]: Nu s-a setat confidențialitatea: Respins (0x ● bluealsa.service - proxy BluezALSA Încărcat: încărcat (/lib/systemd/system/bluealsa.service; static; presetare furnizor:

Veți observa că există o serie de erori. Mai întâi le vom rezolva.

Primele pe care le vom sorta sunt „inițializarea driverului SAP a eșuat”. și „sap-server: Operațiunea nu este permisă”. introduce

sudo nano /lib/systemd/system/bluetooth.service

în terminal. Va veni cu asta.

[Unitate]

Descriere = Serviciu Bluetooth Documentație = om: bluetoothd (8) ConditionPathIsDirectory = / sys / class / bluetooth [Service] Type = dbus BusName = org.bluez ExecStart = / usr / lib / bluetooth / bluetoothd NotifyAccess = main # WatchdogSec = 10 #Restart = la eșec CapabilityBoundingSet = CAP_NET_ADMIN CAP_NET_BIND_SERVICE LimitNPROC = 1 ProtectHome = adevărat ProtectSystem = complet [Instalare] WantedBy = bluetooth.target Alias = dbus-org.bluez.service

Adăuga

--noplugin = seva

după

ExecStart = / usr / lib / bluetooth / bluetoothd

pentru a o face ca mai jos.

[Unitate]

Descriere = Serviciu Bluetooth Documentație = om: bluetoothd (8) ConditionPathIsDirectory = / sys / class / bluetooth [Service] Type = dbus BusName = org.bluez ExecStart = / usr / lib / bluetooth / bluetoothd --noplugin = sap NotifyAccess = main # WatchdogSec = 10 # Restart = on-failure CapabilityBoundingSet = CAP_NET_ADMIN CAP_NET_BIND_SERVICE LimitNPROC = 1 ProtectHome = adevărat ProtectSystem = complet [Instalare] WantedBy = bluetooth.target Alias = dbus-org.bluez.service

Salvează și ieși. (ctrl-x, y, introduceți). Atunci

sudo reboot

Când vă întoarceți la terminal, introduceți

sudo systemctl status blue *

Erorile ar trebui rezolvate, cu excepția uneia.

Setarea confidențialității nu a reușit: respinsă (0x0b)

introduce

sudo systemctl reporniți albastru *

a repara.

Nu am terminat încă. De asemenea, va trebui să adăugăm utilizatorul „pi” la Bluetooth folosind

sudo adduser pi bluetooth

pi @ raspberrypi: ~ $ sudo adduser pi bluetooth Adăugarea utilizatorului `pi 'la gruparea` bluetooth' … Adăugarea utilizatorului pi la gruparea bluetooth Finalizat.

În continuare, trebuie să oferim bluealsa posibilitatea de a reda fluxuri audio prin intermediul interfețelor audio Raspberry Pi (și anume mufa audio 3.5).

sudo nano /lib/systemd/system/bluealsa.service

Ar trebui să vină cu

[Unitate]

Descriere = BluezALSA proxy Requires = bluetooth.service After = bluetooth.service [Service] Type = simplu User = root ExecStart = / usr / bin / bluealsa

Adăuga

-p a2dp-source -p a2dp-sink

după

ExecStart = / usr / bin / bluealsa

a face

[Unitate]

Descriere = BluezALSA proxy Requires = bluetooth.service After = bluetooth.service [Service] Type = simplu User = root ExecStart = / usr / bin / bluealsa -p a2dp-source -p a2dp-sink

Salvați și ieșiți (ctrl-x, y, introduceți).

Atunci

sudo reboot

Acest lucru face ca Bluetooth-ul nostru să fie mai mult sau mai puțin pregătit. Acum ne vom împerechea și ne vom conecta la Raspberry Pi.

Pasul 3: Asociere, conectare și încredere

Acum am prezentat elementele de bază pentru realizarea unui difuzor Bluetooth. Dar trebuie totuși să ne putem conecta pentru a reda muzică prin ea.

Mai întâi, introduceți

sudo bluetoothctl

atunci

aprinde

atunci

scanează pe

ar trebui să apară așa ceva

pi @ raspberrypi: ~ $ sudo bluetoothctl

Agent înregistrat [bluetooth] # pornire Schimbarea puterii a reușit [bluetooth] # scanare pornită Descoperire [CHG] Controler B8: 27: EB: A2: FD: 3C Descoperire: da [NOU] Dispozitiv 60: D8: 19: C0: 2E: 41 FARTHINGSLAPTOP [NOU] Dispozitiv A4: E4: B8: 59: BE: 8D A4-E4-B8-59-BE-8D [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D Nume: APR-BLACKBERRY [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D Alias: APR-BLACKBERRY [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D TxPower: 0 [CHG] Dispozitiv A4: E4: B8: 59: BE: UUID-uri 8D: 00001800-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: UUID-uri 8D: 00001801-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D UUID-uri: 00001200-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D UUID-uri: 0000113b-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D UUID-uri: 00001124-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D UUID-uri: 0000110e-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: UUID-uri 8D: 0000110f-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: UUID-uri 8D: 0000110c-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D UUID-uri: 0000110a-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D UUID-uri: 0000111f-0000-1000-8000 -00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: UUID-uri 8D: 00001203-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D UUID-uri: 00001116-0000-1000 -8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D UUID-uri: 0000112f-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D UUID-uri: 00001105-0000 -1000-8000-00805f9b34fb [CHG] Dispozitiv A4: E4: B8: 59: BE: 8D UUID-uri: 00001132-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 RSSI: - 66 [bluetooth] #

în acest exemplu vom asocia și conecta dispozitivul numit FarthingsLaptop.

Deci (înlocuiți adresa Mac cu dispozitivul la care vă veți conecta).

perechea 60: D8: 19: C0: 2E: 41

[bluetooth] # pereche 60: D8: 19: C0: 2E: 41

Se încearcă asocierea cu 60: D8: 19: C0: 2E: 41 [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 Conectat: da Solicitați confirmare [agent] Confirmați cheia de acces 478737 (da / nu): da [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 00000002-0000-1000-8000-0002ee000002 [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 00001000-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 00001104-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 00001105-0000-1000-8000 -00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 00001106-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 00001107-0000-1000 -8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 0000110a-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 0000110b-0000 -1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 0000110c-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 0000110e -0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 00001112-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 00001115-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 0000111b-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 0000111e-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 0000111f-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 0000112f-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 UUID-uri: 00001304-0000-1000-8000-00805f9b34fb [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 Servicii Rezolvat: da [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 Împerecheat: da Împerecherea reușită

Apoi ne putem conecta la dispozitiv.

conectați 60: D8: 19: C0: 2E: 41

Conexiune reușită

[bluetooth] # conectare 60: D8: 19: C0: 2E: 41

Se încearcă conectarea la 60: D8: 19: C0: 2E: 41 [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 Conectat: da Conexiune reușită [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 Servicii Rezolvate: da [CHG] Dispozitiv 60: D8: 19: C0: 2E: 41 RSSI: -59

În continuare vom avea încredere în dispozitiv, astfel încât să ne putem conecta la acesta fără confirmare.

încredere 60: D8: 19: C0: 2E: 41

[bluetooth] # trust 60: D8: 19: C0: 2E: 41

[CHG] Dispozitivul 60: D8: 19: C0: 2E: 41 Încredere: da Modificarea 60: D8: 19: C0: 2E: 41 încredere reușită

În acest moment ar trebui să fiți conectat, dar veți observa că, dacă redați muzică, aceasta nu se redă prin difuzorul conectat la Raspberry Pi. Asta vom face la următorul pas.

Pasul 4: Redarea muzicii

Până acum ar trebui să fiți conectat la Raspberry Pi, dar nu difuzează muzică prin difuzor.

Puteți repara acest lucru prin comandă

bluealsa-aplay 00: 00: 00: 00: 00: 00

Acum ar trebui să auziți sunetul prin difuzor atunci când redați conținut media, dar nu doriți să executați această comandă de fiecare dată când doriți să redați o melodie, așa că o vom face să ruleze la pornire.

introduce

sudo nano /etc/rc.local

Ar trebui să vină cu asta.

#! / bin / sh -e

# # rc.local # # Acest script este executat la sfârșitul fiecărui nivel de rulare multi-utilizator. # Asigurați-vă că scriptul va „ieși de la 0” la succes sau orice altă valoare # la eroare. # # Pentru a activa sau dezactiva acest script, trebuie doar să schimbați # de biți de execuție. # # În mod implicit, acest script nu face nimic. # Imprimați adresa IP _IP = $ (hostname -I) || adevărat dacă ["$ _IP"]; apoi printf "Adresa mea IP este% s / n" "$ _IP" fi ieșire 0 Ente

bluealsa-aplay 00: 00: 00: 00: 00: 00

chiar inainte

ieșire 0

deci arată așa.

#! / bin / sh -e

# # rc.local # # Acest script este executat la sfârșitul fiecărui nivel de rulare multi-utilizator. # Asigurați-vă că scriptul va „ieși de la 0” la succes sau orice altă valoare # la eroare. # # Pentru a activa sau dezactiva acest script, trebuie doar să schimbați # de biți de execuție. # # În mod implicit, acest script nu face nimic. # Imprimați adresa IP _IP = $ (hostname -I) || adevărat dacă ["$ _IP"]; apoi printf "Adresa mea IP este% s / n" "$ _IP" fi bluealsa-aplay 00: 00: 00: 00: 00: 00 exit 0 Salvați și ieșiți (ctrl-x, y, introduceți)

Atunci

sudo reboot

Când pornește, conectați-vă și redați o melodie!

Acum ar trebui să aveți un difuzor Bluetooth complet funcțional!

Dacă aveți întrebări, lăsați un comentariu mai jos și voi răspunde la ele cât mai curând posibil.

Mulțumesc pentru căutări.

Recomandat: