Სარჩევი:

Raspberry Pi Bluetooth სპიკერი: 4 ნაბიჯი
Raspberry Pi Bluetooth სპიკერი: 4 ნაბიჯი

ვიდეო: Raspberry Pi Bluetooth სპიკერი: 4 ნაბიჯი

ვიდეო: Raspberry Pi Bluetooth სპიკერი: 4 ნაბიჯი
ვიდეო: How to use 4 channel Relay to control AC load with Arduino code 2024, ივლისი
Anonim
Raspberry Pi Bluetooth სპიკერი
Raspberry Pi Bluetooth სპიკერი

Სალამი ყველას.

აქ არის ინსტრუქცია, თუ როგორ უნდა გააკეთოთ Bluetooth სპიკერი Raspberry Pi– ს გამოყენებით. ეს გაკეთდა უახლესი Raspbian– ის ახალი ინსტალაციის შემდეგ (2020-10-31.) თუ თქვენ იყენებთ Raspberry Pi 1 ან 2 -ს, მაშინ მოგიწევთ გამოიყენოთ ცალკე Bluetooth ადაპტერი. ამ ინსტრუქციისთვის ჩვენ ვიყენებთ Raspberry Pi 3B- ს.

მარაგები

ჟოლო პი 1, 2, 3 ან 4.

სპიკერი 3.5 აუდიო ბუდის შეყვანით.

კვების ბლოკი ჟოლოს პიისთვის.

მაუსი და კლავიატურა ჟოლოს Pi (ან შეგიძლიათ SSH სხვა კომპიუტერთან ერთად).

Bluetooth dongle თუ იყენებთ Raspberry Pi 1 ან 2.

ნაბიჯი 1: შედით Raspberry Pi– ში

ეს ნაბიჯი საკმაოდ ინტუიციურია!

თქვენ დაგჭირდებათ Raspberry Pi– ში შესვლა SSH– ის საშუალებით, ან მონიტორის, მაუსის და კლავიატურის საშუალებით. თუ თქვენ ხართ Raspian GUI– ში, გახსენით ტერმინალი. თუ SSH'ing ხართ, მაშინ უკვე იქ იქნებით.

სანამ შემდეგ ნაბიჯებს გადადგამთ, მიზანშეწონილია დარწმუნდეთ, რომ განაახლოთ თქვენი სისტემა.

sudo apt-get განახლება

sudo apt-get განახლება

ამას შეიძლება რამდენიმე წუთი დასჭირდეს.

ნაბიჯი 2: დაალაგეთ Bluetooth

თუ შეხვალ

sudo systemctl სტატუსი ლურჯი*

მაშინ ის ალბათ დაუბრუნებს რაღაცას ქვემოთ.

pi@raspberrypi: su $ sudo systemctl სტატუსი ლურჯი*

● bluetooth.service-Bluetooth სერვისი დატვირთულია: დატვირთულია (/lib/systemd/system/bluetooth.service; ჩართულია; გამყიდველის წინასწარ განსაზღვრული აქტიური: აქტიური (გაშვებული) შაბათიდან 2020-10-31 12:36:04 GMT; 40 წუთის წინ დოკუმენტები: man: bluetoothd (8) მთავარი PID: 523 (bluetoothd) სტატუსი: "გაშვებული" ამოცანები: 1 (ლიმიტი: 2065) CGroup: /system.slice/bluetooth.service 523/usr/lib/bluetooth/bluetoothd 31 ოქტომბერი 12: 36: 04 raspberrypi systemd [1]: იწყება Bluetooth სერვისი … 31 ოქტომბერი 12:36:04 raspberrypi bluetoothd [523]: Bluetooth daemon 5.50 31 ოქტომბერი 12:36:04 raspberrypi systemd [1]: დაიწყო Bluetooth სერვისი. 31 ოქტომბერი 12 12: 36: 04 raspberrypi bluetoothd [523]: SDP სერვერის დაწყება 31 ოქტომბერი 12:36:04 raspberrypi bluetoothd [523]: Bluetooth მართვის ინტერფეისი 1.14 ოქტომბერი 31 12:36:04 raspberrypi bluetoothd [523]: Sap დრაივერის ინიციალიზაცია ვერ მოხერხდა. 31 ოქტომბერი 12:36:04 ჟოლოსფერი bluetooth [523]: წვენის სერვერი: ოპერაცია დაუშვებელია 31 ოქტომბერი 12:36:04 ჟოლოსფერი bluetoothd [523]: საბოლოო წერტილი დარეგისტრირებულია: გამგზავნი =: 1.10 გვ 31 ოქტომბერი 12:36:04 ჟოლოსფერი bluetoothd [523]: ბოლო წერტილი რ egistered: გამგზავნი =: 1.10 გვ 31 ოქტომბერი 12:36:04 raspberrypi bluetoothd [523]: კონფიდენციალურობის დაყენება ვერ მოხერხდა: უარყოფილია (0x ● bluealsa.service - BluezALSA მარიონეტული დატვირთული: დატვირთული (/lib/systemd/system/bluealsa.service; სტატიკური; გამყიდველის წინასწარ განსაზღვრული:

თქვენ შეამჩნევთ, რომ არსებობს მრავალი შეცდომა. ჩვენ პირველ რიგში დავალაგებთ მათ.

პირველი პირობა, რომელსაც ჩვენ დავალაგებთ არის "წვენის დრაივერის ინიციალიზაცია ვერ მოხერხდა". და "sap-server: ოპერაცია დაუშვებელია". შეიყვანეთ

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

ტერმინალში. გამოვა ამით.

[ერთეული]

აღწერა = Bluetooth სერვისის დოკუმენტაცია = კაცი: bluetoothd (8) ConditionPathIsDirectory =/sys/class/bluetooth [სერვისი] ტიპი = dbus BusName = org.bluez ExecStart =/usr/lib/bluetooth/bluetoothd NotifyAccess = main #WatchdogSec = 10 #გადატვირთვა = 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

დამატება

--noplugin = წვენი

შემდეგ

ExecStart =/usr/lib/bluetooth/bluetoothd

რათა ის ქვემოთ იყოს.

[ერთეული]

აღწერა = Bluetooth სერვისის დოკუმენტაცია = კაცი: bluetoothd (8) ConditionPathIsDirectory =/sys/class/bluetooth [სერვისი] ტიპი = dbus BusName = org.bluez ExecStart =/usr/lib/bluetooth/bluetoothd -noplugin = sap NotifyAccess = main # WatchdogSec = 10 #გადატვირთვა = წარუმატებლობის შემთხვევაში CapabilityBoundingSet = CAP_NET_ADMIN CAP_NET_BIND_SERVICE LimitNPROC = 1 ProtectHome = true ProtectSystem = full [Install] WantedBy = bluetooth.target Alias = dbus-org.bluez.service

Შენახვა და გამოსვლა. (ctrl-x, y, enter). მაშინ

sudo გადატვირთვა

როდესაც დაბრუნდებით ტერმინალზე, შეიყვანეთ

sudo systemctl სტატუსი ლურჯი*

შეცდომები უნდა მოგვარდეს, გარდა ერთისა.

კონფიდენციალურობის დაყენება ვერ მოხერხდა: უარყოფილია (0x0b)

შეიყვანეთ

sudo systemctl გადატვირთეთ ლურჯი*

შეკეთება.

ჩვენ ჯერ ბოლომდე არ დავასრულეთ. ჩვენ ასევე უნდა დავამატოთ მომხმარებელი "pi" bluetooth გამოყენებით

sudo adduser pi bluetooth

pi@raspberrypi: su $ sudo adduser pi bluetooth მომხმარებლის "pi" დამატება ჯგუფში "bluetooth" … მომხმარებლის pi ჯგუფის დამატება bluetooth შესრულებულია.

ჩვენ შემდეგ უნდა მივცეთ bluealsa- ს შესაძლებლობა, აუდიო ნაკადები დაუკრათ Raspberry Pi აუდიო ინტერფეისებით (კერძოდ, 3.5 აუდიო ბუდე).

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

ეს უნდა გამოვიდეს

[ერთეული]

აღწერა = BluezALSA მარიონეტული მოთხოვნა = bluetooth.service After = bluetooth.service [სერვისი] ტიპი = მარტივი მომხმარებელი = root ExecStart =/usr/bin/bluealsa

დამატება

-p a2dp-source -p a2dp-ჩაძირვა

შემდეგ

ExecStart =/usr/bin/bluealsa

გაკეთება

[ერთეული]

აღწერა = BluezALSA მარიონეტული მოითხოვს = bluetooth.service შემდეგ = bluetooth.service [სერვისი] ტიპი = მარტივი მომხმარებელი = root ExecStart =/usr/bin/bluealsa -p a2dp -source -p a2dp -sink

შენახვა და გასვლა (ctrl-x, y, enter).

მაშინ

sudo გადატვირთვა

ეს გახდის ჩვენი Bluetooth მეტ -ნაკლებად მზად. ახლა ჩვენ დავაწყვილებთ და დავუკავშირდებით ჩვენს Raspberry Pi- ს.

ნაბიჯი 3: დაწყვილება, დაკავშირება და ნდობა

ჩვენ ახლა ჩამოვთვალეთ საფუძვლები Bluetooth სპიკერის შესაქმნელად. მაგრამ ჩვენ მაინც უნდა შეგვეძლოს დაკავშირება მუსიკის დაკვრის საშუალებით.

პირველი, შეიყვანეთ

sudo bluetoothctl

მაშინ

ჩართვა

მაშინ

სკანირება ჩართული

რაღაც მსგავსი უნდა გამოვიდეს

pi@raspberrypi: su $ sudo bluetoothctl

აგენტი დარეგისტრირებულია [bluetooth]# ჩართვა ჩართვის ძალა წარმატებულია [bluetooth]# სკანირება აღმოჩენა დაიწყო [CHG] კონტროლერი B8: 27: EB: A2: FD: 3C აღმოჩენა: დიახ [ახალი] მოწყობილობა 60: D8: 19: C0: 2E: 41 FARTHINGSLAPTOP [ახალი] მოწყობილობა A4: E4: B8: 59: BE: 8D A4-E4-B8-59-BE-8D [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D სახელი: APR-BLACKBERRY [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D ფსევდონიმი: APR-BLACKBERRY [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D TxPower: 0 [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 00001800-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 00001801-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 00001200-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 0000113b-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 00001124-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 0000110e-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 0000110f-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 0000110c-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 0000110a-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 0000111f-0000-1000-8000 -00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 00001203-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 00001116-0000-1000 -8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 0000112f-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 00001105-0000 -1000-8000-00805f9b34fb [CHG] მოწყობილობა A4: E4: B8: 59: BE: 8D UUIDs: 00001132-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 RSSI:- 66 [bluetooth]#

ამ მაგალითში ჩვენ დავაწყვილებთ და ვუკავშირდებით მოწყობილობას სახელწოდებით FarthingsLaptop.

ასე რომ (შეცვალეთ mac მისამართი იმ მოწყობილობით, რომელთანაც დაუკავშირდებით).

წყვილი 60: D8: 19: C0: 2E: 41

[bluetooth]# წყვილი 60: D8: 19: C0: 2E: 41

მცდელობა დაწყვილდეს 60: D8: 19: C0: 2E: 41 [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 დაკავშირებულია: დიახ მოითხოვეთ დადასტურება [აგენტი] დაადასტურეთ გასაღები 478737 (დიახ/არა): დიახ [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 00000002-0000-1000-8000-0002ee000002 [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 00001000-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 00001104-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 00001105-0000-1000-8000 -00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 00001106-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 00001107-0000-1000 -8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 0000110a-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 0000110b-0000 -1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 0000110c-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 0000110e -0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 00001112-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 00001115-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 0000111b-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 0000111e-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 0000111f-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 0000112f-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 UUIDs: 00001304-0000-1000-8000-00805f9b34fb [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 მომსახურება მოგვარებულია: დიახ [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 დაწყვილებული: დიახ დაწყვილება წარმატებულია

შემდეგ ჩვენ შეგვიძლია დავუკავშირდეთ მოწყობილობას.

დააკავშირეთ 60: D8: 19: C0: 2E: 41

წარმატებული კავშირი

[bluetooth]# დაკავშირება 60: D8: 19: C0: 2E: 41

60: D8: 19: C0: 2E: 41 [CHG] მოწყობილობის 60: D8: 19: C0: 2E: 41 დაკავშირების მცდელობა: დიახ კავშირი წარმატებული [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 მომსახურება მოგვარებულია: დიახ [CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 RSSI: -59

შემდეგ ჩვენ ვენდობით მოწყობილობას, ასე რომ ჩვენ შეგვიძლია დავუკავშირდეთ მას დადასტურების გარეშე.

ნდობა 60: D8: 19: C0: 2E: 41

[bluetooth]# ნდობა 60: D8: 19: C0: 2E: 41

[CHG] მოწყობილობა 60: D8: 19: C0: 2E: 41 სანდო: დიახ შეცვლა 60: D8: 19: C0: 2E: 41 ნდობა წარმატებულია

ამ დროს თქვენ უნდა იყოთ დაკავშირებული, მაგრამ შეამჩნევთ, რომ თუ მუსიკას უკრავთ, ის არ უკრავს Raspberry Pi- სთან დაკავშირებულ დინამიკზე. ეს არის ის, რასაც ჩვენ გავაკეთებთ შემდეგ ეტაპზე.

ნაბიჯი 4: მუსიკის დაკვრა

ამ დროისთვის თქვენ უნდა იყოთ დაკავშირებული თქვენს Raspberry Pi– თან, მაგრამ დინამიკის საშუალებით მუსიკა არ უკრავს.

ამის გამოსწორება შეგიძლიათ ბრძანებით

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

ახლა თქვენ უნდა მოისმინოთ ხმა, რომელიც მოდის თქვენი დინამიკის დროს მედიის დაკვრისას, მაგრამ თქვენ არ გინდათ ეს ბრძანება შეასრულოთ ყოველ ჯერზე, როცა გსურთ სიმღერის დაკვრა, ამიტომ ჩვენ მას ჩავტვირთავთ ჩატვირთვისას.

შეიყვანეთ

sudo nano /etc/rc.local

ეს უნდა მოიფიქროს.

#!/bin/sh -e

# # rc.local # # ეს სკრიპტი შესრულებულია თითოეული მრავალჯერადი გამოყენების დონის ბოლოს. # დარწმუნდით, რომ სკრიპტი იქნება "გასვლა 0" წარმატებაზე ან სხვა # მნიშვნელობა შეცდომებზე. # # იმისათვის, რომ ჩართოთ ან გამორთოთ ეს სკრიპტი უბრალოდ შეცვალეთ შესრულების # ბიტი. # # სტანდარტულად ეს სკრიპტი არაფერს აკეთებს. # დაბეჭდეთ IP მისამართი _IP = $ (hostname -I) || მართალია, თუ ["$ _IP"]; შემდეგ printf "ჩემი IP მისამართი არის %s / n" "$ _IP" fi გასასვლელი 0 ენტე

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

უბრალოდ ადრე

გასვლა 0

ასე გამოიყურება ასე

#!/bin/sh -e

# # rc.local # # ეს სკრიპტი შესრულებულია თითოეული მრავალჯერადი გამოყენების დონის ბოლოს. # დარწმუნდით, რომ სკრიპტი იქნება "გასვლა 0" წარმატებაზე ან სხვა # მნიშვნელობა შეცდომებზე. # # იმისათვის, რომ ჩართოთ ან გამორთოთ ეს სკრიპტი უბრალოდ შეცვალეთ შესრულების # ბიტი. # # სტანდარტულად ეს სკრიპტი არაფერს აკეთებს. # დაბეჭდეთ IP მისამართი _IP = $ (hostname -I) || მართალია, თუ ["$ _IP"]; შემდეგ printf "ჩემი IP მისამართი არის %s / n" "$ _IP" fi bluealsa-aplay 00: 00: 00: 00: 00: 00: 00 გასასვლელი 0 შენახვა და გასვლა (ctrl-x, y, enter)

მაშინ

sudo გადატვირთვა

როდესაც ის ჩატვირთავს, დაუკავშირდით და დაუკარით სიმღერა!

ახლა თქვენ უნდა გქონდეთ სრულად ფუნქციონალური Bluetooth სპიკერი!

თუ თქვენ გაქვთ რაიმე შეკითხვა, დატოვეთ კომენტარი ქვემოთ და მე შეძლებისდაგვარად დავუკავშირდები მათ.

მადლობა ყურებისთვის.

გირჩევთ: