Spisu treści:

Głośnik Bluetooth Raspberry Pi: 4 kroki
Głośnik Bluetooth Raspberry Pi: 4 kroki

Wideo: Głośnik Bluetooth Raspberry Pi: 4 kroki

Wideo: Głośnik Bluetooth Raspberry Pi: 4 kroki
Wideo: How to use a Raspberry Pi as a Bluetooth Receiver - Make Any Speaker Bluetooth 2024, Listopad
Anonim
Głośnik Bluetooth Raspberry Pi
Głośnik Bluetooth Raspberry Pi

Cześć wszystkim.

Oto instrukcja, jak zrobić głośnik Bluetooth za pomocą Raspberry Pi. Zostało to wykonane po zupełnie nowej instalacji najnowszego Raspbian (na dzień 31.10.2020). W tej instrukcji będziemy konwertować Raspberry Pi, aby odbierać dźwięk przez Bluetooth i wysyłać go przez wbudowane gniazdo audio 3.5. Jeśli używasz Raspberry Pi 1 lub 2, będziesz musiał użyć osobnego adaptera Bluetooth. Do tego Instructable będziemy używać Raspberry Pi 3B.

Kieszonkowe dzieci

Raspberry Pi 1, 2, 3 lub 4.

Głośnik z wejściem audio jack 3,5.

Zasilacz do Raspberry Pi.

Mysz i klawiatura dla Raspberry Pi (lub możesz połączyć się przez SSH z innym komputerem).

Klucz sprzętowy Bluetooth w przypadku korzystania z Raspberry Pi 1 lub 2.

Krok 1: Zaloguj się do Raspberry Pi

Ten krok jest dość intuicyjny!

Musisz być zalogowany do Raspberry Pi przez SSH lub za pomocą monitora, myszy i klawiatury. Jeśli jesteś w Raspian GUI, otwórz Terminal. Jeśli korzystasz z SSH, już tam będziesz.

Zanim przejdziesz do kolejnych kroków, dobrze jest upewnić się, że zaktualizowałeś swój system.

aktualizacja sudo apt-get

sudo apt-get upgrade

To może zająć parę minut.

Krok 2: Sortuj Bluetooth

Jeśli wejdziesz

sudo systemctl status niebieski*

wtedy prawdopodobnie zwróci coś takiego jak poniżej.

pi@raspberrypi:~ $ sudo systemctl status niebieski*

● bluetooth.service - usługa Bluetooth Załadowana: załadowana (/lib/systemd/system/bluetooth.service; włączona; ustawienia dostawcy Aktywna: aktywna (działa) od soboty 2020-10-31 12:36:04 GMT; 40 minut temu Dokumenty: man:bluetoothd(8) Główny PID: 523 (bluetoothd) Status: „Uruchomiony” Zadania: 1 (limit: 2065) CGroup: /system.slice/bluetooth.service └─523 /usr/lib/bluetooth/bluetoothd 31 października 12:36:04 raspberrypi systemd[1]: Uruchamianie usługi Bluetooth… 31 października 12:36:04 raspberrypi bluetoothd[523]: Demon Bluetooth 5.50 31 października 12:36:04 raspberrypi systemd[1]: Uruchomiono usługę Bluetooth 31 października 12:36:04 raspberrypi bluetoothd[523]: Uruchamianie serwera SDP 31 października 12:36:04 raspberrypi bluetoothd[523]: Interfejs zarządzania Bluetooth 1.14 31 października 12:36:04 raspberrypi bluetoothd[523]: Inicjalizacja sterownika Sap nie powiodła się 31 października 12:36:04 raspberrypi bluetoothd[523]: sap-server: operacja niedozwolona 31 października 12:36:04 raspberrypi bluetoothd[523]: zarejestrowany punkt końcowy: sender=:1.10 p 31 października 12:36:04 raspberrypi bluetoothd[523]: Punkt końcowy r zarejestrowany: sender=:1.10 p 31 października 12:36:04 raspberrypi bluetoothd[523]: Nie udało się ustawić prywatności: Odrzucono (0x ● bluealsa.service - BluezALSA proxy Załadowano: załadowano (/lib/systemd/system/bluealsa.service; statyczny; ustawienie dostawcy:

Zauważysz, że jest wiele błędów. Najpierw to rozwiążemy.

Pierwsze, które posortujemy, to „nieudana inicjalizacja sterownika SAP”. oraz „Sap-server: Operacja niedozwolona”. Wejść

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

do terminala. Wymyśli to.

[Jednostka]

Description=Usługa Bluetooth Documentation=man:bluetoothd(8) ConditionPathIsDirectory=/sys/class/bluetooth [Service] Type=dbus BusName=org.bluez ExecStart=/usr/lib/bluetooth/bluetoothd NotifyAccess=main #WatchdogSec=10 #Restart =w przypadku awarii CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE LimitNPROC=1 ProtectHome=true ProtectSystem=full [Install] WantedBy=bluetooth.target Alias=dbus-org.bluez.service

Dodać

--noplugin=sap

po

ExecStart=/usr/lib/bluetooth/bluetoothd

żeby było jak poniżej.

[Jednostka]

Description=Usługa Bluetooth Documentation=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

Zapisz i wyjdź. (ctrl-x, y, enter). Następnie

ponowne uruchomienie sudo

Kiedy wrócisz na terminal, wejdź

sudo systemctl status niebieski*

Błędy należy naprawić, z wyjątkiem jednego.

Nie udało się ustawić prywatności: odrzucono (0x0b)

Wejść

sudo systemctl restart niebieski*

naprawić.

Jeszcze nie skończyliśmy. Będziemy również musieli dodać użytkownika "pi" do bluetooth za pomocą

sudo adduser pi bluetooth

pi@raspberrypi:~ $ sudo adduser pi bluetooth Dodawanie użytkownika `pi' do grupy `bluetooth' … Dodawanie użytkownika pi do grupy bluetooth Gotowe.

Następnie musimy dać bluealsa możliwość odtwarzania strumieni audio przez interfejsy audio Raspberry Pi (mianowicie gniazdo audio 3.5).

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

Powinno wymyślić

[Jednostka]

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

Dodać

-p a2dp-source -p a2dp-sink

po

ExecStart=/usr/bin/bluealsa

robić

[Jednostka]

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

Zapisz i wyjdź (ctrl-x, y, enter).

Następnie

ponowne uruchomienie sudo

To sprawia, że nasz Bluetooth jest mniej lub bardziej gotowy. Teraz sparujemy i połączymy się z naszym Raspberry Pi.

Krok 3: Parowanie, łączenie i zaufanie

Omówiliśmy teraz podstawy tworzenia głośnika Bluetooth. Ale nadal musimy być w stanie się połączyć, aby odtwarzać przez niego muzykę.

Najpierw wpisz

sudo bluetoothctl

następnie

zasilanie włączone

następnie

skanowanie włączone

coś takiego powinno się pojawić

pi@raspberrypi:~ $ sudo bluetoothctl

Zarejestrowany agent [bluetooth]# włączanie zasilania powiodła się Zmiana zasilania powiodła się [bluetooth]# skanowanie podczas wykrywania rozpoczęte [CHG] Kontroler B8:27:EB:A2:FD:3C Wykrywanie: tak [NOWOŚĆ] Urządzenie 60:D8:19:C0: 2E:41 FARTHINGSLAPTOP [NOWOŚĆ] Urządzenie A4:E4:B8:59:BE:8D A4-E4-B8-59-BE-8D [CHG] Urządzenie A4:E4:B8:59:BE:8D Nazwa: APR-BLACKBERRY [CHG] Urządzenie A4:E4:B8:59:BE:8D Alias: APR-BLACKBERRY [CHG] Urządzenie A4:E4:B8:59:BE:8D TxPower: 0 [CHG] Urządzenie A4:E4:B8:59: BE:8D UUID: 00001800-0000-1000-8000-00805f9b34fb [CHG] Urządzenie A4:E4:B8:59:BE:8D UUID: 00001801-0000-1000-8000-00805f9b34fb [CHG] Urządzenie A4:E4:B8: 59:BE:8D UUID: 00001200-0000-1000-8000-00805f9b34fb [CHG] Urządzenie A4:E4:B8:59:BE:8D UUID: 0000113b-0000-1000-8000-00805f9b34fb [CHG] Urządzenie A4:E4: B8:59:BE:8D UUID: 00001124-0000-1000-8000-00805f9b34fb [CHG] Urządzenie A4:E4:B8:59:BE:8D UUID: 0000110e-0000-1000-8000-00805f9b34fb [CHG] Urządzenie A4: E4:B8:59:BE:8D UUID: 0000110f-0000-1000-8000-00805f9b34fb [CHG] Urządzenie A4:E4:B8:59:BE:8D UUID: 0000110c-0000-1000-8000-00805f9b34fb [CHG] Urządzenie A4:E4:B8:59:BE:8D UUID: 0000110a-0000-1000-8000-00805f9b34fb [CHG] Urządzenie A4:E4:B8:59:BE:8D UUID: 0000111f-0000-1000-8000 -00805f9b34fb [CHG] Urządzenie A4:E4:B8:59:BE:8D UUID: 00001203-0000-1000-8000-00805f9b34fb [CHG] Urządzenie A4:E4:B8:59:BE:8D UUID: 00001116-0000-1000 -8000-00805f9b34fb [CHG] Urządzenie A4:E4:B8:59:BE:8D UUID: 0000112f-0000-1000-8000-00805f9b34fb [CHG] Urządzenie A4:E4:B8:59:BE:8D UUID: 00001105-0000 -1000-8000-00805f9b34fb [CHG] Urządzenie A4:E4:B8:59:BE:8D UUID: 00001132-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 RSSI: - 66 [Bluetooth]#

w tym przykładzie będziemy parować i łączyć się z urządzeniem o nazwie FarthingsLaptop.

Tak więc (zastąp adres mac urządzeniem, z którym będziesz się łączyć).

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

[Bluetooth] # para 60: D8: 19: C0: 2E: 41

Próba parowania z 60:D8:19:C0:2E:41 [CHG] Urządzenie 60:D8:19:C0:2E:41 Połączono: tak Żądanie potwierdzenia [agent] Potwierdź hasło 478737 (tak/nie): tak [CHG] Urządzenie 60:D8:19:C0:2E:41 UUIDs: 00000002-0000-1000-8000-0002ee000002 [CHG] Urządzenie 60:D8:19:C0:2E:41 UUIDs: 00001000-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUID: 00001104-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUID: 00001105-0000-1000-8000 -00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUID: 00001106-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUID: 00001107-0000-1000 -8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUID: 0000110a-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUID: 0000110b-0000 -1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUID: 0000110c-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUID: 0000110e -0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUID: 00001112-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUID: 00001115-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUID: 0000111b-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUIDs: 0000111e-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUIDs: 0000111f-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUIDs: 0000112f-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 UUIDs: 00001304-0000-1000-8000-00805f9b34fb [CHG] Urządzenie 60:D8:19:C0:2E:41 Usługi rozwiązane: tak [CHG] Urządzenie 60:D8:19:C0:2E:41 Sparowane: tak Sparowanie powiodło się

Następnie możemy połączyć się z urządzeniem.

połącz 60:D8:19:C0:2E:41

Udane połączenie

[bluetooth] # połącz 60:D8:19:C0:2E:41

Próba połączenia z 60:D8:19:C0:2E:41 [CHG] Urządzenie 60:D8:19:C0:2E:41 Połączono: tak Połączenie udane [CHG] Urządzenie 60:D8:19:C0:2E:41 Usługi rozwiązane: tak [CHG] Urządzenie 60:D8:19:C0:2E:41 RSSI: -59

Następnie zaufamy urządzeniu, dzięki czemu będziemy mogli połączyć się z nim bez potwierdzenia.

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

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

[CHG] Urządzenie 60:D8:19:C0:2E:41 Zaufane: tak Zmiana zaufania 60:D8:19:C0:2E:41 powiodła się

W tym momencie powinieneś być podłączony, ale zauważysz, że jeśli odtwarzasz muzykę, nie jest ona odtwarzana przez głośnik podłączony do Raspberry Pi. To właśnie zrobimy w następnym kroku.

Krok 4: Odtwarzanie muzyki

Do tej pory powinieneś być podłączony do swojego Raspberry Pi, ale przez głośnik nie gra muzyka.

Możesz to naprawić za pomocą polecenia

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

Teraz powinieneś słyszeć dźwięk dochodzący z głośnika podczas odtwarzania multimediów, ale nie chcesz wykonywać tego polecenia za każdym razem, gdy chcesz odtworzyć utwór, więc uruchomimy go przy starcie.

Wejść

sudo nano /etc/rc.local

Powinno to wymyślić.

#!/bin/sh -e

# # rc.local # # Ten skrypt jest wykonywany na końcu każdego poziomu pracy z wieloma użytkownikami. # Upewnij się, że skrypt "wyjdzie z 0" w przypadku powodzenia lub dowolnej innej wartości w przypadku błędu. # # Aby włączyć lub wyłączyć ten skrypt po prostu zmień wykonanie # bitów. # # Domyślnie ten skrypt nic nie robi. # Wydrukuj adres IP _IP=$(nazwa hosta -I) || prawda, jeśli ["$_IP"]; then printf "Mój adres IP to %s\n" "$_IP" fi wyjście 0 Ente

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

przed chwilą

wyjście 0

tak to wygląda.

#!/bin/sh -e

# # rc.local # # Ten skrypt jest wykonywany na końcu każdego poziomu pracy z wieloma użytkownikami. # Upewnij się, że skrypt "wyjdzie z 0" w przypadku powodzenia lub dowolnej innej wartości w przypadku błędu. # # Aby włączyć lub wyłączyć ten skrypt po prostu zmień wykonanie # bitów. # # Domyślnie ten skrypt nic nie robi. # Wydrukuj adres IP _IP=$(nazwa hosta -I) || prawda, jeśli ["$_IP"]; then printf "Mój adres IP to %s\n" "$_IP" fi bluealsa-aplay 00:00:00:00:00:00 exit 0 Zapisz i wyjdź (ctrl-x, y, enter)

Następnie

ponowne uruchomienie sudo

Po uruchomieniu połącz się i odtwórz piosenkę!

Teraz powinieneś mieć w pełni funkcjonalny głośnik Bluetooth!

Jeśli masz jakieś pytania, zostaw komentarz poniżej, a ja odezwę się do nich tak szybko, jak będę mógł.

Dzięki za opiekę.

Zalecana: