Innehållsförteckning:

Raspberry Pi Bluetooth -högtalare: 4 steg
Raspberry Pi Bluetooth -högtalare: 4 steg

Video: Raspberry Pi Bluetooth -högtalare: 4 steg

Video: Raspberry Pi Bluetooth -högtalare: 4 steg
Video: Raspberry Pi 4: запускаем видео 4K, играем в игры и боремся с перегревом. Обзоры Амперки 2024, November
Anonim
Raspberry Pi Bluetooth -högtalare
Raspberry Pi Bluetooth -högtalare

Hej alla.

Här är en instruktion om hur man gör en Bluetooth -högtalare med Raspberry Pi. Detta gjordes efter en helt ny installation av den senaste Raspbian (per 2020-10-31.) I denna instruktionsbok kommer vi att konvertera Raspberry Pi för att ta emot ljud via Bluetooth och mata ut det via det inbyggda 3,5 -ljuduttaget. Om du använder Raspberry Pi 1 eller 2 måste du använda en separat Bluetooth -adapter. För denna instruerbara kommer vi att använda Raspberry Pi 3B.

Tillbehör

Hallon Pi 1, 2, 3 eller 4.

Högtalare med 3,5 ljudingång.

Strömförsörjning för Raspberry Pi.

Mus och tangentbord för Raspberry Pi (eller du kan SSH in med en annan dator).

Bluetooth -dongel om du använder Raspberry Pi 1 eller 2.

Steg 1: Logga in på Raspberry Pi

Detta steg är ganska självintuitivt!

Du måste vara inloggad på Raspberry Pi antingen via SSH eller med en bildskärm, mus och tangentbord. Om du är i Raspian GUI öppnar du en terminal. Om du är SSH'ing kommer du redan att vara där.

Innan du fortsätter med nästa steg är det lämpligt att se till att du har uppdaterat ditt system.

sudo apt-get uppdatering

sudo apt-get uppgradering

Detta kan ta några minuter.

Steg 2: Sortera ut Bluetooth

Om du anger

sudo systemctl status blå*

då kommer det förmodligen att returnera något som nedan.

pi@raspberrypi: ~ $ sudo systemctl status blå*

● bluetooth.service-Bluetooth-tjänst laddad: laddad (/lib/systemd/system/bluetooth.service; aktiverad; leverantörsinställning aktiv: aktiv (igång) sedan lör 2020-10-31 12:36:04 GMT; 40 minuter sedan Dokument: man: bluetoothd (8) Huvud -PID: 523 (bluetoothd) Status: "Running" Uppgifter: 1 (gräns: 2065) CGrupp: /system.slice/bluetooth.service └─523/usr/lib/bluetooth/bluetoothd 31 oktober 12: 36: 04 raspberrypi systemd [1]: Startar Bluetooth -tjänst … 31 okt 12:36:04 raspberrypi bluetoothd [523]: Bluetooth daemon 5.50 31 oktober 12:36:04 raspberrypi systemd [1]: Startade Bluetooth -tjänst. 31 okt 12 12: 36: 04 raspberrypi bluetoothd [523]: Startar SDP -server 31 oktober 12:36:04 raspberrypi bluetoothd [523]: Bluetooth -hanteringsgränssnitt 1.14 31 oktober 12:36:04 raspberrypi bluetoothd [523]: Initiering av SAP -drivrutin misslyckades. 31 okt 12:36:04 raspberrypi bluetoothd [523]: sap-server: drift inte tillåten 31 okt 12:36:04 raspberrypi bluetoothd [523]: Slutpunkt registrerad: avsändare =: 1.10 s 31 okt 12:36:04 raspberrypi bluetoothd [523]: Slutpunkt r egistered: sender =: 1.10 s 31 oktober 12:36:04 raspberrypi bluetoothd [523]: Det gick inte att ställa in integritet: Avvisas (0x ● bluealsa.service - BluezALSA -proxy laddad: laddad (/lib/systemd/system/bluealsa.service; statisk; leverantörsinställning:

Du kommer att märka att det finns ett antal fel. Vi kommer först att reda ut dessa.

De första vi kommer att sortera är "initialisering av SAP -drivrutinen misslyckades." och "sap-server: drift ej tillåten". Stiga på

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

in i terminalen. Det kommer att komma med detta.

[Enhet]

Beskrivning = Bluetooth -tjänst Dokumentation = man: bluetoothd (8) ConditionPathIsDirectory =/sys/class/bluetooth [Service] Typ = dbus BusName = org.bluez ExecStart =/usr/lib/bluetooth/bluetoothd NotifyAccess = main #WatchdogSec = 10 #Restart = on-failure CapabilityBoundingSet = CAP_NET_ADMIN CAP_NET_BIND_SERVICE LimitNPROC = 1 ProtectHome = true ProtectSystem = full [Install] WantedBy = bluetooth.target Alias = dbus-org.bluez.service

Lägg till

--noplugin = sap

efter

ExecStart =/usr/lib/bluetooth/bluetoothd

för att göra det som nedan.

[Enhet]

Beskrivning = Bluetooth -tjänst Dokumentation = man: 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 = true ProtectSystem = full [Install] WantedBy = bluetooth.target Alias = dbus-org.bluez.service

Spara och avsluta. (ctrl-x, y, enter). Sedan

sudo starta om

När du är tillbaka på terminalen anger du

sudo systemctl status blå*

Felen bör lösas, förutom ett.

Det gick inte att ställa in sekretess: Avvisas (0x0b)

Stiga på

sudo systemctl starta om blått*

att fixa.

Vi är inte helt klara än. Vi kommer också att behöva lägga till användaren "pi" till bluetooth med

sudo adduser pi bluetooth

pi@raspberrypi: ~ $ sudo adduser pi bluetooth Lägga till användare 'pi' till grupp 'bluetooth' … Lägga till användare pi till grupp bluetooth Klar.

Vi måste därefter ge bluealsa möjligheten att spela ljudströmmar genom Raspberry Pi -ljudgränssnitt (nämligen 3,5 -ljuduttaget).

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

Det borde komma med

[Enhet]

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

Lägg till

-p a2dp-source -p a2dp-sink

efter

ExecStart =/usr/bin/bluealsa

att göra

[Enhet]

Beskrivning = BluezALSA -proxy krävs = bluetooth.service Efter = bluetooth.service [Service] Typ = enkel användare = root ExecStart =/usr/bin/bluealsa -p a2dp -source -p a2dp -sink

Spara och avsluta (ctrl-x, y, enter).

Sedan

sudo starta om

Detta gör vår Bluetooth mer eller mindre redo. Nu ska vi parkoppla och ansluta till vår Raspberry Pi.

Steg 3: Parning, anslutning och förtroende

Vi har nu lagt grunden för att göra en Bluetooth -högtalare. Men vi måste fortfarande kunna ansluta för att spela musik genom det.

Ange först

sudo bluetoothctl

sedan

ström på

sedan

skanna på

något sånt här borde dyka upp

pi@raspberrypi: ~ $ sudo bluetoothctl

Agentregistrerad [bluetooth]# ström på Ändring av strömmen lyckades [bluetooth]# skanning på Discovery startade [CHG] Controller B8: 27: EB: A2: FD: 3C Upptäck: ja [NEW] Enhet 60: D8: 19: C0: 2E: 41 FARTHINGSLAPTOP [NEW] Enhet A4: E4: B8: 59: BE: 8D A4-E4-B8-59-BE-8D [CHG] Enhet A4: E4: B8: 59: BE: 8D Namn: APR-BLACKBERRY [CHG] Device A4: E4: B8: 59: BE: 8D Alias: APR-BLACKBERRY [CHG] Device A4: E4: B8: 59: BE: 8D TxPower: 0 [CHG] Device A4: E4: B8: 59: BE: 8D UUID: 00001800-0000-1000-8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 00001801-0000-1000-8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 00001200-0000-1000-8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 0000113b-0000-1000-8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 00001124-0000-1000-8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 0000110e-0000-1000-8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 0000110f-0000-1000-8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 0000110c-0000-1000-8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 0000110a-0000-1000-8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 0000111f-0000-1000-8000 -00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 00001203-0000-1000-8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 00001116-0000-1000 -8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 0000112f-0000-1000-8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 00001105-0000 -1000-8000-00805f9b34fb [CHG] Enhet A4: E4: B8: 59: BE: 8D UUID: 00001132-0000-1000-8000-00805f9b34fb [CHG] Enhet 60: D8: 19: C0: 2E: 41 RSSI:- 66 [bluetooth]#

i det här exemplet kommer vi att para ihop och ansluta till enheten som heter FarthingsLaptop.

Så (ersätt mac -adressen med den enhet du ska ansluta till).

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

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

Försöker para med 60: D8: 19: C0: 2E: 41 [CHG] Enhet 60: D8: 19: C0: 2E: 41 Ansluten: ja Begär bekräftelse [agent] Bekräfta lösenord 478737 (ja/nej): ja [CHG] Enhet 60: D8: 19: C0: 2E: 41 UUID: 00000002-0000-1000-8000-0002ee000002 [CHG] Enhet 60: D8: 19: C0: 2E: 41 UUID: 00001000-0000-1000-8000-00805f9b34fb [CHG] Enhet 60: D8: 19: C0: 2E: 41 UUID: 00001104-0000-1000-8000-00805f9b34fb [CHG] Enhet 60: D8: 19: C0: 2E: 41 UUID: 00001105-0000-1000-8000 -00805f9b34fb [CHG] Device 60: D8: 19: C0: 2E: 41 UUIDs: 00001106-0000-1000-8000-00805f9b34fb [CHG] Device 60: D8: 19: C0: 2E: 41 UUIDs: 00001107-0000-1000 -8000-00805f9b34fb [CHG] Device 60: D8: 19: C0: 2E: 41 UUIDs: 0000110a-0000-1000-8000-00805f9b34fb [CHG] Device 60: D8: 19: C0: 2E: 41 UUIDs: 0000110b-0000 -1000-8000-00805f9b34fb [CHG] Device 60: D8: 19: C0: 2E: 41 UUIDs: 0000110c-0000-1000-8000-00805f9b34fb [CHG] Device 60: D8: 19: C0: 2E: 41 UUIDs: 0000110e -0000-1000-8000-00805f9b34fb [CHG] Device 60: D8: 19: C0: 2E: 41 UUIDs: 00001112-0000-1000-8000-00805f9b34fb [CHG] Device 60: D8: 19: C0: 2E: 41 UUID: 00001115-0000-1000-8000-00805f9b34fb [CHG] Device 60: D8: 19: C0: 2E: 41 UUIDs: 0000111b-0000-1000-8000-00805f9b34fb [CHG] Device 60: D8: 19: C0: 2E: 41 UUID: 0000111e-0000-1000-8000-00805f9b34fb [CHG] Device 60: D8: 19: C0: 2E: 41 UUIDs: 0000111f-0000-1000-8000-00805f9b34fb [CHG] Device 60: D8: 19: C0: 2E: 41 UUID: 0000112f-0000-1000-8000-00805f9b34fb [CHG] Enhet 60: D8: 19: C0: 2E: 41 UUID: 00001304-0000-1000-8000-00805f9b34fb [CHG] Enhet 60: D8: 19: C0: 2E: 41 Tjänster Löste: ja [CHG] Enhet 60: D8: 19: C0: 2E: 41 Parade: ja Parning lyckades

Sedan kan vi ansluta till enheten.

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

Lyckad anslutning

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

Försöker ansluta till 60: D8: 19: C0: 2E: 41 [CHG] Enhet 60: D8: 19: C0: 2E: 41 Ansluten: ja Anslutningen lyckades [CHG] Enhet 60: D8: 19: C0: 2E: 41 Tjänster Löst: ja [CHG] Enhet 60: D8: 19: C0: 2E: 41 RSSI: -59

Därefter litar vi på enheten så att vi kan ansluta till den utan bekräftelse.

förtroende 60: D8: 19: C0: 2E: 41

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

[CHG] Enhet 60: D8: 19: C0: 2E: 41 Tillförlitlig: ja Ändra 60: D8: 19: C0: 2E: 41 förtroende lyckades

Vid denna tidpunkt bör du vara ansluten men du kommer att märka att om du spelar musik, spelas den inte via högtalaren som är ansluten till Raspberry Pi. Det är vad vi kommer att göra i nästa steg.

Steg 4: Spela musik

Nu ska du vara ansluten till din Raspberry Pi, men ingen musik spelas upp genom högtalaren.

Du kan fixa detta med kommandot

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

Nu ska du höra ljud komma genom högtalaren när du spelar media, men du vill inte behöva utföra det här kommandot varje gång du vill spela en låt, så vi får det att köras vid start.

Stiga på

sudo nano /etc/rc.local

Det borde komma med detta.

#!/bin/sh -e

# # rc.local # # Detta skript körs i slutet av varje fleranvändarkörnivå. # Se till att skriptet "avslutar 0" vid framgång eller något annat # värde vid fel. # # För att aktivera eller inaktivera detta skript ändrar du bara körningen # bitar. # # Som standard gör detta skript ingenting. # Skriv ut IP -adressen _IP = $ (värdnamn -I) || true if ["$ _IP"]; skriv sedan ut "Min IP -adress är %s / n" "$ _IP" fi avsluta 0 Ente

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

precis innan

avsluta 0

så det ser ut så här.

#!/bin/sh -e

# # rc.local # # Detta skript körs i slutet av varje fleranvändarkörnivå. # Se till att skriptet "avslutar 0" vid framgång eller något annat # värde vid fel. # # För att aktivera eller inaktivera detta skript ändrar du bara körningen # bitar. # # Som standard gör detta skript ingenting. # Skriv ut IP -adressen _IP = $ (värdnamn -I) || sant om ["$ _IP"]; skriv sedan ut "Min IP-adress är %s / n" "$ _IP" fi bluealsa-aplay 00: 00: 00: 00: 00: 00 exit 0 Spara och avsluta (ctrl-x, y, enter)

Sedan

sudo starta om

När den startar upp, anslut och spela en låt!

Nu ska du ha en fullt fungerande Bluetooth -högtalare!

Om du har några frågor lämna en kommentar nedan så återkommer jag till dem så snart jag kan.

Tack för att du tittade.

Rekommenderad: