Benutzer-Werkzeuge

Webseiten-Werkzeuge


wiki:bluebox

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
wiki:bluebox [2020/02/18 20:43] – angelegt techguruwiki:bluebox [2021/04/08 09:42] (aktuell) techguru
Zeile 2: Zeile 2:
 ====== Bluetooth Box ====== ====== Bluetooth Box ======
  
 +==== noch nicht geprüft und getestet ====
 +https://www.voss.earth/2018/04/07/volumio-auf-dem-raspberry-pi-als-bluetooth-lautsprecher-verwenden/
 +http://www.knight-of-pi.org/finally-raspberry-pi-3b-buster-as-bluetooth-audio-sink/
  
-Nach dem Kompilieren von bluealsa wird die bestehende Binär-Datei unter /usr/bin/bluealsa mit der neuen Version überschrieben:+==== ähnlich wie getestet aber noch ungetestet: ==== 
 +https://gist.github.com/mill1000/74c7473ee3b4a5b13f6325e9994ff84c 
 +https://github.com/guillaumezin/bluez-alsa/tree/master 
 + 
 + 
 +==== vorherige Versuche ==== 
 + 
 +<code> 
 +cat /boot/cmdline.txt 
 +console=serial0,115200 console=tty1 root=PARTUUID=d9b3f436-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait bluetooth.disable_ertm=1 
 +</code> 
 + 
 +vorherige Ausgabe: 
 + 
 +  cat /sys/module/bluetooth/parameters/disable_ertm 
 +  N 
 + 
 + 
 +nun nach hinzufügen von ''bluetooth.disable_ertm=1'' 
 + 
 +  cat /sys/module/bluetooth/parameters/disable_ertm 
 +  Y 
 + 
 + 
 +  sudo vi /etc/bluetooth/network.conf 
 + 
 +auf true gesetzt, bzw. # davor entfernt: 
 + 
 +  DisableSecurity=true 
 + 
 + 
 +  Privacy = off 
 +  Cache = always 
 +  MinEncKeySize = 0 
 +  ReconnectAttempts=7 
 + 
 + 
 + 
 +==== getestet: ==== 
 + 
 +https://github.com/Arkq/bluez-alsa 
 +https://github.com/Arkq/bluez-alsa/wiki/Installation-from-source 
 +https://github.com/nicokaiser/rpi-audio-receiver 
 + 
 + 
 +Im Original Raspbian erscheinen zunächst die folgenden Meldungen wenn ''journalctl -u bluealsa.service'' aufgerufen wird wärend man ein älteres Smartphone mit der BlueBox verbunden hat. 
 + 
 +  bluealsa: Unsupported RTP payload type: 1 
 +  bluealsa: Unsupported RTP payload type: 1 
 +  bluealsa: Unsupported RTP payload type: 1 
 + 
 + 
 +Die Bluetooth Box oder kurz BlueBox, besteht aus einem Raspberry Pi 3 oder jeden anderen Linux Computer mit Bluetooths, welcher Musik-Dateien von entfernten Geräten wie z.B. Smartphones über seine angeschlossenen Musik-Boxen wiedergibt. 
 + 
 + 
 + 
 +==== Installation von libfdk-aac ==== 
 + 
 +<code> 
 +sudo apt-get install autoconf libtool -y 
 +mkdir ffmpeg 
 +cd ffmpeg 
 +wget -O fdk-aac.zip https://github.com/mstorsjo/fdk-aac/zipball/master 
 +unzip fdk-aac.zip 
 +cd mstorsjo-fdk-aac* 
 +autoreconf -fiv 
 +./configure --prefix="$HOME/ffmpeg_build" --disable-shared 
 +sudo make 
 +sudo make install 
 +export PKG_CONFIG_PATH=/home/pi/ffmpeg_build/lib/pkgconfig 
 +</code> 
 + 
 + 
 +==== Installation von blue-alsa ==== 
 + 
 + 
 +Eine neuere Version von blue-alsa wird unter Raspbian Buster kompiliert, damit auch von älteren Geräten mit pulseaudio < Version 13 Musik über der BlueBox abgespielt werden können. Wichtig ist hier beim kompilieren die Option ''--disable-payloadcheck''.  
 + 
 + 
 +https://github.com/Arkq/bluez-alsa 
 + 
 +Auf dieser Webseite steht noch mal ausdrücklich warum, in meinem Fall, beim Kompilieren die Option ''--disable-payloadcheck'' verwendet wird: 
 + 
 +:!: 
 +//disable RTP payload type check (workaround for a bug in PulseAudio versions before 13.0) Earlier releases of pulseaudio set a non-compliant value in the payload type field of RTP packets, meaning that bluetooth standard compliant devices and applications (such as bluealsa) would reject those packets. This option disables that check in bluealsa, permitting a computer running PulseAudio to use another computer running bluealsa as an audio sink. This bug in PulseAudio was fixed in release 13.0.// 
 + 
 + 
 +Benötigt? 
 +<code> 
 +sudo apt-get install libdbus-1-dev libglib2.0-dev libudev-dev libical-dev libreadline-dev -y 
 +wget http://www.kernel.org/pub/linux/bluetooth/bluez-5.52.tar.xz 
 +tar xvf bluez-5.52.tar.xz && cd bluez-5.52 
 +./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var --enable-experimental  
 +make -j4 
 +sudo make install 
 +sudo reboot 
 +</code> 
 + 
 +  ../configure --enable-aac --enable-ofono --enable-debug --disable-payloadcheck 
 +   
 +  export LIBASOUND_THREAD_SAFE=0 
 + 
 +  sudo make install 
 + 
 +Nach dem Kompilieren von bluealsa wird die bestehende Binär-Datei unter ''/usr/bin/bluealsa'' mit der neuen Version überschrieben:
  
   /usr/bin/bluealsa -V   /usr/bin/bluealsa -V
Zeile 9: Zeile 116:
   2.1.0   2.1.0
      
 +Nach einem reboot sollten die folgenden Dienste für die BlueBox laufen:
 +
 <code> <code>
 ~ $ ps aux|grep -i blue ~ $ ps aux|grep -i blue
Zeile 17: Zeile 126:
 </code> </code>
  
 +
 +
 +===== Übersicht aufgerufene Kommandos =====
 +<code>
 +sudo raspi-config
 +sudo nano /lib/systemd/system/bluealsa.service
 +sudo apt update
 +ip a
 +sudo ip link set wlan0 down
 +apt list "*bluealsa*"
 +sudo apt install bluealsa
 +sudo nano /lib/systemd/system/bluealsa.service
 +sudo systemctl restart bluealsa.service
 +bluetoothctl
 +sudo systemctl restart bluetooth.service
 +systemctl status bluetooth.service
 +sudo bluetoothctl
 +bluealsa-aplay 00:00:00:00:00:00
 +sudo halt
 +https://scribles.net/streaming-bluetooth-audio-from-phone-to-raspberry-pi-using-alsa/
 +systemctl status bluetooth.service
 +systemctl status bluealsa.service
 +bluetoothctl
 +sudo bluetoothctl
 +bluealsa-aplay --pcm-buffer-time=170000 --profile-a2dp 00:00:00:00:00:00
 +bluealsa-aplay 00:00:00:00:00:00
 +sudo nano /lib/systemd/system/bluealsa.service
 +sudo systemctl status bluealsa.service
 +sudo systemctl restart bluealsa.service
 +sudo systemctl stop bluealsa.service
 +sudo nano /lib/systemd/system/bluealsa.service
 +sudo systemctl restart bluealsa.service
 +/lib/systemd/system/bluealsa.service
 +systemctl daemon-reload
 +sudo systemctl daemon-reload
 +sudo systemctl restart bluealsa.service
 +sudo systemctl status bluealsa.service
 +bluealsa-aplay 00:00:00:00:00:00
 +sudo journalctl -u alsa-state.service
 +sudo journalctl -u bluealsa.service
 +sudo journalctl -u bluealsa.service
 +sudo nano /lib/systemd/system/bluealsa.service
 +sudo apt install bluealsa python-dbus
 +sudo apt list "*bluealsa*"
 +wget https://github.com/guillaumezin/bluez-alsa/releases/download/v1.2.0c/bluezalsa_20171106-1_armhf.deb
 +sudo apt list "*bluealsa*"
 +sudo apt list "*bluez*"
 +sudo apt show bluealsa
 +sudo apt purge bluealsa
 +apt list "*bluez*"
 +sudo dpkg -i bluezalsa_20171106-1_armhf.deb
 +apt list "*bluez*"
 +bluealsa-aplay 00:00:00:00:00:00
 +sudo systemctl status bluealsa.service
 +/usr/bin/bluealsa -p a2dp-sink
 +sudo apt install autoconf libtool -y
 +mkdir ffmpeg
 +cd ffmpeg/
 +wget -O fdk-aac.zip https://github.com/mstorsjo/fdk-aac/zipball/master
 +unzip fdk-aac.zip
 +cd mstorsjo-fdk-aac-e7d8591/
 +autoreconf -fiv
 +./configure --prefix="$HOME/ffmpeg_build" --disable-shared
 +sudo make
 +echo $?
 +sudo make install
 +echo $?
 +export PKG_CONFIG_PATH=/home/pi/ffmpeg_build/lib/pkgconfig
 +sudo apt list "*bluez*"
 +bluetoothctl -v
 +sudo nano /etc/bluetooth/main.conf
 +sudo bluetoothctl
 +sudo chmod +x /usr/local/bin/a2dp-agent
 +/usr/bin/bluealsa -p a2dp-sink
 +sudo apt purge bluezalsa
 +wget -O fdk-aac.zip https://github.com/mstorsjo/fdk-aac/zipball/master
 +wget -O bluez-alsa_arkq.zip https://github.com/Arkq/bluez-alsa/archive/master.zip
 +unzip bluez-alsa_arkq.zip
 +cd bluez-alsa-master/
 +autoreconf --install
 +echo $?
 +mkdir build
 +cd build/
 +../configure --enable-aac --enable-ofono --enable-debug --disable-payloadcheck
 +echo $?
 +apt list "*alsa*"
 +sudo apt install alsa
 +sudo apt install alsa-base
 +../configure --enable-aac --enable-ofono --enable-debug --disable-payloadcheck
 +rm -r bluez-alsa-master
 +apt list "*alsa*"
 +apt list "*libasound2*"
 +sudo apt install libasound2-dev
 +unzip bluez-alsa_arkq.zip
 +cd bluez-alsa-master/
 +autoreconf --install
 +mkdir build && cd build
 +sudo apt install libkf5bluezqt-dev
 +sudo apt install bluez-tools
 +../configure --enable-aac --enable-ofono --enable-debug --disable-payloadcheck
 +sudo apt install bluez-utils bluez-compat bluez-hcidump checkinstall libusb-dev  libbluetooth-dev
 +sudo apt install bluez-compat bluez-hcidump checkinstall libusb-dev  libbluetooth-dev
 +sudo apt install bluez-hcidump checkinstall libusb-dev  libbluetooth-dev
 +sudo apt install libdbus-1-dev
 +sudo apt install libglib2.0-dev
 +../configure --enable-aac --enable-ofono --enable-debug --disable-payloadcheck
 +apt list "*sbc*"
 +sudo apt install libsbc-dev
 +../configure --enable-aac --enable-ofono --enable-debug --disable-payloadcheck
 +echo $?
 +sudo bluetoothctl
 +wget http://www.kernel.org/pub/linux/bluetooth/bluez-5.52.tar.xz
 +tar xvf bluez-5.52.tar.xz && cd bluez-5.52
 +find . -type f -iname "*a2dp*"
 +./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var --enable -experimental
 +echo $?
 +apt list "*libudev*"
 +sudo apt install libudev-dev
 +./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var --enable -experimental
 +sudo apt install libical-dev
 +sudo apt install libreadline-dev
 +./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var --enable -experimental
 +echo $?
 +make -j4
 +echo $?
 +sudo make install
 +echo $?
 +bluetoothctl -v
 +sudo bluetoothctl
 +ls -la /usr/local/bin/
 +find . -type f -iname "*a2dp-agent*"
 +cd bluez-5.52
 +
 +# a2dp war auf der Git Projektseite Datei im Code aufgelistet und konnte per copy & paste geladen werden.
 +sudo find . -type f -iname "*a2dp*"
 +sudo find . -type f -iname "*a2dp.service*"
 +cd bluez-alsa-master/
 +sudo find . -type f -iname "*a2dp.service*"
 +find /usr/ -type f -iname "*.wav"
 +aplay /usr/share/sounds/alsa/Front_Center.wav
 +aplay /usr/share/sounds/alsa/Rear_Center.wav
 +alsamixer
 +aplay /usr/share/sounds/alsa/Rear_Center.wav
 +aplay -l
 +aplay /usr/share/sounds/alsa/Front_Center.wav
 +sudo nano /usr/local/bin/a2dp
 +sudo chmod +x /usr/local/bin/a2dp
 +ls -la /usr/local/bin/
 +sudo mv /usr/local/bin/a2dp /usr/local/bin/a2dp-agent
 +/usr/local/bin/a2dp-agent
 +sudo bluetoothctl
 +/usr/local/bin/a2dp-agent
 +sudo systemctl status bluetooth.service
 +sudo systemctl daemon-reload
 +sudo systemctl status bluetooth.service
 +/usr/local/bin/a2dp-agent
 +sudo systemctl restart bluetooth.service
 +sudo systemctl status bluetooth.service
 +sudo systemctl status bluealsa.service
 +sudo systemctl stop bluealsa.service
 +/usr/local/bin/a2dp-agent
 +nano /usr/local/bin/a2dp-agent
 +bluealsa-aplay -vv 00:00:00:00:00:00
 +sudo reboot
 +sudo systemctl status bluealsa.service
 +sudo systemctl status bluetooth.service
 +sudo journalctl -u bluetooth.service
 +bluealsa-aplay 00:00:00:00:00:00
 +apt list "blue*"
 +bluealsa-aplay 00:00:00:00:00:00
 +ls -la /usr/local/bin/
 +ls -la /usr/local/sbin/
 +sudo apt install bluealsa
 +nano ~/.asoundrc
 +bluealsa-aplay 00:00:00:00:00:00
 +sudo apt purge bluezalsa
 +sudo nano /etc/bluetooth/main.conf
 +rm bluezalsa_20171106-1_armhf.deb
 +ls -la bluez-5.52/client/
 +ls -la bluez-5.52/tools
 +</code>
 +
 +==== Hab hier Installation von NicoKaiser GitRepo ====
 +
 +<code>
 +mkdir nicokaiser
 +cd nicokaiser/
 +wget https://github.com/nicokaiser/rpi-audio-receiver/archive/master.zip
 +ls -la
 +unzip master.zip
 +cd rpi-audio-receiver-master/
 +cat ~/.asoundrc
 +rm ~/.asoundrc
 +./install.sh
 +sudo reboot
 +cd nicokaiser/
 +cd rpi-audio-receiver-master/
 +ps aux|grep -i blue
 +sudo journalctl -u bluetooth.service
 +sudo journalctl -u bluealsa-aplay.service
 +cat /boot/config.txt
 +aplay /usr/share/sounds/alsa/Rear_Center.wav
 +ps aux|grep -i blue
 +sudo journalctl -u bluealsa.service
 +apt list "*bluez*"
 +cd bluez-alsa-master/
 +ls -la
 +</code>
 +
 +==== Neukompelieren vom bluealsa ====
 +
 +Es wird eine neuere Version von Bluealsa benötigt, daher wird die bestehende mit dem payload Error durch diese ersetzt, überschrieben. Eine Deinstallation der bestehenden wurde nicht durchgeführt.
 +
 +Die alte Version zeigt zunächst noch eine niedrigere Versions-Nr. an:
 +
 +  /usr/bin/bluealsa -V
 +
 +<code>
 +autoreconf --install
 +cd build/
 +rm -r build/
 +mkdir build && cd build
 +../configure --enable-aac --enable-ofono --enable-debug --disable-payloadcheck
 +449  echo $?
 +apt list "*fdk*"
 +ls -la ../../ffmpeg_build/
 +history |grep PKG
 +export PKG_CONFIG_PATH=/home/pi/ffmpeg_build/lib/pkgconfig
 +../configure --enable-aac --enable-ofono --enable-debug --disable-payloadcheck
 +echo $?
 +export LIBASOUND_THREAD_SAFE=0
 +make
 +echo $?
 +/usr/bin/bluealsa -V
 +make install
 +echo $?
 +sudo make install
 +echo $?
 +/usr/bin/bluealsa -V
 +sudo reboot
 +/usr/bin/bluealsa -V
 +ps aux|grep -i blue
 +sudo journalctl -u bluealsa.service
 +</code>
 +
 +
 +===== Fehler Errors =====
 +
 +Ist es nicht möglich sich mit der BlueBox zu verbinden?
 +
 +Dann muss sichergestellt sein das der //bluealsa-aplay// Service läuft.
 +
 +  sudo systemctl status bluealsa-aplay.service
 +  
 +Dieser wird nicht automatisch mitgestartet wenn man den //bluetooth// Service startet. Es reicht aber aus nur //bluealsa-aplay// Service zu starten, denn dieser startet alle anderen benötigten //bluetooth// Services.
wiki/bluebox.1582055017.txt.gz · Zuletzt geändert: 2020/02/18 20:43 von techguru