Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DietPi-Config | Support USB Bluetooth on RPi #3611

Closed
TASSDevon opened this issue Jun 17, 2020 · 23 comments
Closed

DietPi-Config | Support USB Bluetooth on RPi #3611

TASSDevon opened this issue Jun 17, 2020 · 23 comments

Comments

@TASSDevon
Copy link

TASSDevon commented Jun 17, 2020

Required Information

  • DietPi version 6.28.0
  • Distro version buster
  • Kernel version Linux skyspeaker 4.19.97+ #1294 Thu Jan 30 13:10:54 GMT 2020 armv6l GNU/Linux
  • SBC model rpi1

Additional Information (if applicable)

Trying to get a BT dongle from AliExpress working on my rpi1 with Dietpi installed and have it connect to a Jabra speaker, to stream music rather than the 3,5mm jack (too much noise). I used dietpi-config to enable bluetooth. starting hciuart failed. I then tried a couple of suggestions from earlier issues but no luck, I do not get a /dev/ttyAMA0

Assure related kernel modules are loaded: lsmod | grep -E '(bnep|btbcm)' <== Yes
Assure the serial device is available: ls -Al /dev/ttyAMA0 <== No
Assure any serial console + boot messages on this serial device is disabled:
/DietPi/dietpi/func/dietpi-set_hardware serialconsole disable ttyAMA0 <== Executed this
Reinstall related packages: apt install --reinstall bluez bluez-firmware pi-bluetooth <== Executed this

This is what the hciuart service spews out:

● hciuart.service - Configure Bluetooth Modems connected by UART
   Loaded: loaded (/lib/systemd/system/hciuart.service; enabled; vendor preset: enabled)
   Active: inactive (dead)

Jun 17 17:53:27 skyspeaker systemd[1]: Dependency failed for Configure Bluetooth Modems connect
ed by UART.
Jun 17 17:53:27 skyspeaker systemd[1]: hciuart.service: Job hciuart.service/start failed with r
esult 'dependency'.
Jun 17 17:58:05 skyspeaker systemd[1]: Dependency failed for Configure Bluetooth Modems connect
ed by UART.
Jun 17 17:58:05 skyspeaker systemd[1]: hciuart.service: Job hciuart.service/start failed with r
esult 'dependency'.

Any ideas?

Edit: Updated to dietpi 6.30.0, same issue.

@MichaIng
Copy link
Owner

hciuart.service - Configure Bluetooth Modems connected by UART

Since you're on RPi1 without internal BT but with a BT dongle, it is connected via USB and not via UART, hence you don't need to enable the UART device or hciuart.service, nor install pi-bluetooth which is only for RPi3/4 internal Bluetooth.

Little research: https://rasspberrypi.wordpress.com/2012/09/03/install-bluetooth-dongle-on-raspberry-pi/

apt purge pi-bluetooth
apt install bluez
systemctl disable --now hciuart
systemctl enable --now bluetooth
hcitool scan # Probably it already works

Probably we need to change dietpi-config to differentiate between RPi devices with and without internal Bluetooth.

@MichaIng MichaIng changed the title Unable to get Bluetooth working on rpi1 with Dietpi 6.28.0 DietPi-Config | Support USB Bluetooth on RPi Jun 17, 2020
@MichaIng MichaIng added this to the v6.31 milestone Jun 17, 2020
@TASSDevon
Copy link
Author

Thanks @MichaIng, tried your suggestion and it works (did a scan and found my phone).

The hciuart service didn't need to be disabled as it was removed (I guess by purging pi-bluetooth package).

Tomorrow I'll see if I can get that BT link up and running with the Jabra speaker :-)

@MichaIng
Copy link
Owner

The hciuart service didn't need to be disabled as it was removed (I guess by purging pi-bluetooth package).

Ah yes that makes sense.

Tomorrow I'll see if I can get that BT link up and running with the Jabra speaker :-)

Would be great. I'll add generic Bluetooth support then for all devices where we don't know about an internal solution. Long-term also for the ones with internal BT it would be nice to allow usage of a USB adapter, a bid like you can disable internal WiFi but still enable general WiFi.

@TASSDevon
Copy link
Author

TASSDevon commented Jun 18, 2020

Using bluetoothctl I'm not able to connect to the speaker unfortunately:

[bluetooth]# connect 10:B7:F6:28:24:7E
Attempting to connect to 10:B7:F6:28:24:7E
Failed to connect: org.bluez.Error.Failed
[bluetooth]# info 10:B7:F6:28:24:7E
Device 10:B7:F6:28:24:7E (public)
	Name: Jabra Solemate Mini v8.0.0
	Alias: Jabra Solemate Mini v8.0.0
	Class: 0x00240404
	Icon: audio-card
	Paired: yes
	Trusted: yes
	Blocked: no
	Connected: no
	LegacyPairing: no
	UUID: Headset                   (00001108-0000-1000-8000-00805f9b34fb)
	UUID: Audio Sink                (0000110b-0000-1000-8000-00805f9b34fb)
	UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
	UUID: A/V Remote Control        (0000110e-0000-1000-8000-00805f9b34fb)
	UUID: Handsfree                 (0000111e-0000-1000-8000-00805f9b34fb)
[bluetooth]# paired-devices
Device 10:B7:F6:28:24:7E Jabra Solemate Mini v8.0.0
[bluetooth]# connect 10:B7:F6:28:24:7E
Attempting to connect to 10:B7:F6:28:24:7E
Failed to connect: org.bluez.Error.Failed

Any ideas? I managed to pair it, but it's not establishing a connection

Edit:

Tried to remove and re-pair, I get the jabra prompt briefly and then it seems to discconect:

[bluetooth]# remove 10:B7:F6:28:24:7E
[DEL] Device 10:B7:F6:28:24:7E Jabra Solemate Mini v8.0.0
Device has been removed
[bluetooth]# pair 10:B7:F6:28:24:7E
Device 10:B7:F6:28:24:7E not available
[bluetooth]# pair 10:B7:F6:28:24:7E
Device 10:B7:F6:28:24:7E not available
[bluetooth]# pair 10:B7:F6:28:24:7E
Device 10:B7:F6:28:24:7E not available
[bluetooth]# connect 10:B7:F6:28:24:7E
Device 10:B7:F6:28:24:7E not available
[NEW] Device 10:B7:F6:28:24:7E Jabra Solemate Mini v8.0.0
[bluetooth]# pair 10:B7:F6:28:24:7E
Attempting to pair with 10:B7:F6:28:24:7E
[CHG] Device 10:B7:F6:28:24:7E Connected: yes
[CHG] Device 10:B7:F6:28:24:7E UUIDs: 00001108-0000-1000-8000-00805f9b34fb
[CHG] Device 10:B7:F6:28:24:7E UUIDs: 0000110b-0000-1000-8000-00805f9b34fb
[CHG] Device 10:B7:F6:28:24:7E UUIDs: 0000110c-0000-1000-8000-00805f9b34fb
[CHG] Device 10:B7:F6:28:24:7E UUIDs: 0000110e-0000-1000-8000-00805f9b34fb
[CHG] Device 10:B7:F6:28:24:7E UUIDs: 0000111e-0000-1000-8000-00805f9b34fb
[CHG] Device 10:B7:F6:28:24:7E ServicesResolved: yes
[CHG] Device 10:B7:F6:28:24:7E Paired: yes
Pairing successful
[Jabra Solemate Mini v8.0.0]# help
Menu main:
Available commands:
-------------------
advertise                                         Advertise Options Submenu
scan                                              Scan Options Submenu
gatt                                              Generic Attribute Submenu
list                                              List available controllers
show [ctrl]                                       Controller information
select <ctrl>                                     Select default controller
devices                                           List available devices
paired-devices                                    List paired devices
system-alias <name>                               Set controller alias
reset-alias                                       Reset controller alias
power <on/off>                                    Set controller power
pairable <on/off>                                 Set controller pairable mode
discoverable <on/off>                             Set controller discoverable mode
agent <on/off/capability>                         Enable/disable agent with given capability
default-agent                                     Set agent as the default one
advertise <on/off/type>                           Enable/disable advertising with given type
set-alias <alias>                                 Set device alias
scan <on/off>                                     Scan for devices
info [dev]                                        Device information
pair [dev]                                        Pair with device
trust [dev]                                       Trust device
untrust [dev]                                     Untrust device
block [dev]                                       Block device
unblock [dev]                                     Unblock device
remove <dev>                                      Remove device
connect <dev>                                     Connect device
disconnect [dev]                                  Disconnect device
menu <name>                                       Select submenu
version                                           Display version
quit                                              Quit program
exit                                              Quit program
help                                              Display help about this program
export                                            Print evironment variables
[CHG] Device 10:B7:F6:28:24:7E ServicesResolved: no
[CHG] Device 10:B7:F6:28:24:7E Connected: no
[bluetooth]# devices
Device 58:2B:DB:02:47:2D Vent-Axia Svara
Device C3:FA:1B:8F:54:92 Charge 2
Device 10:B7:F6:28:24:7E Jabra Solemate Mini v8.0.0
[bluetooth]# show
Controller 00:1A:7D:DA:71:13 (public)
	Name: skyspeaker
	Alias: skyspeaker
	Class: 0x00000000
	Powered: yes
	Discoverable: no
	Pairable: yes
	UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
	UUID: A/V Remote Control        (0000110e-0000-1000-8000-00805f9b34fb)
	UUID: PnP Information           (00001200-0000-1000-8000-00805f9b34fb)
	UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
	UUID: Generic Access Profile    (00001800-0000-1000-8000-00805f9b34fb)
	Modalias: usb:v1D6Bp0246d0532
	Discovering: yes

This is the dongle I use: https://www.aliexpress.com/item/32686102148.html?spm=a2g0s.9042311.0.0.3df24c4dDNYkA9

I bought the rounded end, BT4.0 one

@MichaIng
Copy link
Owner

Probably bluez-tools can, although they seem to be just wrapper for what you can do within bluetoothctl already... https://packages.debian.org/buster/amd64/bluez-tools/filelist

Do dmesg or journalctl -u bluetooth give a hint?

@TASSDevon
Copy link
Author

TASSDevon commented Jun 19, 2020

Nothing BT related in dmesg, but lots of errors in journalctl for bt:

 for 10:B7:F6:28:24:7E: Protocol not available
Jun 18 18:08:55 skyspeaker bluetoothd[198]: Endpoint registered: sender=:1.22 path=/MediaEndpoint/A2
DPSource
Jun 18 18:08:55 skyspeaker bluetoothd[198]: Endpoint registered: sender=:1.22 path=/MediaEndpoint/A2
DPSink
Jun 18 18:08:55 skyspeaker bluetoothd[198]: RFCOMM server failed for Headset
 Voice gateway: socket(STREAM, RFCOMM): Protocol not supported (93)
Jun 18 18:08:55 skyspeaker bluetoothd[198]: RFCOMM server failed for :1.22/P
rofile/HSPHSProfile/00001108-0000-1000-8000-00805f9b34fb: socket(STREAM, RFCOMM): Protocol not suppo
rted (93)
Jun 18 18:12:31 skyspeaker bluetoothd[198]: Unable to get Headset Voice gate
way SDP record: Host is down
Jun 18 18:13:01 skyspeaker bluetoothd[198]: Endpoint unregistered: sender=:1.22 path=/MediaEndpoint/
A2DPSource
Jun 18 18:13:01 skyspeaker bluetoothd[198]: Endpoint unregistered: sender=:1.22 path=/MediaEndpoint/
A2DPSink
Jun 18 18:14:59 skyspeaker bluetoothd[198]: a2dp-sink profile connect failed
 for 10:B7:F6:28:24:7E: Protocol not available
Jun 18 18:15:07 skyspeaker bluetoothd[198]: a2dp-sink profile connect failed
 for 10:B7:F6:28:24:7E: Protocol not available
Jun 18 18:15:16 skyspeaker bluetoothd[198]: a2dp-sink profile connect failed
 for 10:B7:F6:28:24:7E: Protocol not available
Jun 18 18:15:21 skyspeaker bluetoothd[198]: a2dp-sink profile connect failed
 for 10:B7:F6:28:24:7E: Protocol not available
Jun 18 18:15:43 skyspeaker bluetoothd[198]: a2dp-sink profile connect failed
 for 10:B7:F6:28:24:7E: Protocol not available
Jun 18 18:16:07 skyspeaker bluetoothd[198]: a2dp-sink profile connect failed
 for 10:B7:F6:28:24:7E: Protocol not available
Jun 18 18:16:10 skyspeaker bluetoothd[198]: a2dp-sink profile connect failed
 for 10:B7:F6:28:24:7E: Protocol not available
Jun 18 18:16:11 skyspeaker bluetoothd[198]: a2dp-sink profile connect failed
 for 10:B7:F6:28:24:7E: Protocol not available
Jun 18 18:16:13 skyspeaker bluetoothd[198]: a2dp-sink profile connect failed
 for 10:B7:F6:28:24:7E: Protocol not available
Jun 18 18:19:00 skyspeaker bluetoothd[198]: a2dp-sink profile connect failed
 for 10:B7:F6:28:24:7E: Protocol not available

Rebooted and tried to connect:

[bluetooth]# paired-devices
Device 10:B7:F6:28:24:7E Jabra Solemate Mini v8.0.0
[bluetooth]# info
Missing device address argument
[bluetooth]# connect 10:B7:F6:28:24:7E
Attempting to connect to 10:B7:F6:28:24:7E
Failed to connect: org.bluez.Error.Failed
[bluetooth]# exit
root@skyspeaker:~# journalctl -u bluetooth
-- Logs begin at Fri 2020-06-19 19:07:21 BST, end at Fri 2020-06-19 19:09:20 BST. --
Jun 19 19:07:34 skyspeaker systemd[1]: Starting Bluetooth service...
Jun 19 19:07:37 skyspeaker bluetoothd[207]: Bluetooth daemon 5.50
Jun 19 19:07:37 skyspeaker bluetoothd[207]: Unknown key Enable for group Gen
eral in /etc/bluetooth/main.conf
Jun 19 19:07:37 skyspeaker systemd[1]: Started Bluetooth service.
Jun 19 19:07:37 skyspeaker bluetoothd[207]: Starting SDP server
Jun 19 19:07:37 skyspeaker bluetoothd[207]: Bluetooth management interface 1.14 initialized
Jun 19 19:07:37 skyspeaker bluetoothd[207]: Sap driver initialization failed
.
Jun 19 19:07:37 skyspeaker bluetoothd[207]: sap-server: Operation not permit
ted (1)
Jun 19 19:09:20 skyspeaker bluetoothd[207]: a2dp-sink profile connect failed
 for 10:B7:F6:28:24:7E: Protocol not available

And also:

root@skyspeaker:~# bt-device -c 10:B7:F6:28:24:7E
Connecting to: 10:B7:F6:28:24:7E
Error: GDBus.Error:org.bluez.Error.AlreadyExists: Already Exists

Also, when manually starting pulseaudio, it is complaining that it is running as root, should I make a new non-root user and run it through that user?

When I start pulseaudio and then try to connect with bluetoothctl it seems to work briefly. Then the connection drops and when I exit bluetoothctl I see pulseaudio also terminated.

Some more logging:


Jun 19 19:43:22 skyspeaker bluetoothd[207]: Unable to get io data for Headset Voice gateway
: getpeername: Transport endpoint is not connected (107)
Jun 19 19:43:22 skyspeaker bluetoothd[207]: Endpoint unregistered: sender=:1.15 path=/MediaEndpoint/A2DPSource
Jun 19 19:43:22 skyspeaker bluetoothd[207]: Endpoint unregistered: sender=:1.15 path=/MediaEndpoint/A2DPSink
Jun 19 19:43:42 skyspeaker bluetoothd[207]: a2dp-sink profile connect failed for 10:B7:F6:2
8:24:7E: Protocol not available
Jun 19 19:44:26 skyspeaker bluetoothd[207]: Endpoint registered: sender=:1.17 path=/MediaEndpoint/A2DPSource
Jun 19 19:44:26 skyspeaker bluetoothd[207]: Endpoint registered: sender=:1.17 path=/MediaEndpoint/A2DPSink
Jun 19 19:44:36 skyspeaker bluetoothd[207]: /org/bluez/hci0/dev_10_B7_F6_28_24_7E/fd2: fd(25) ready
Jun 19 19:47:05 skyspeaker bluetoothd[207]: Endpoint unregistered: sender=:1.17 path=/MediaEndpoint/A2DPSource
Jun 19 19:47:05 skyspeaker bluetoothd[207]: Endpoint unregistered: sender=:1.17 path=/MediaEndpoint/A2DPSink

Seems when I pause audio (i.e. Spotify with Spotify Connect through Spotty on LMS and squeezelite on the pi1) after a few seconds I get that disconnection.

When I start pulseaudio (always running without arguments), then connect to the speaker and then never start audio playback, it looks like pulseaudio and the BT connection is staying alive (at least for 5 minutes and counting). If I then start audio playback, it streams (haven't tested if it indefinitely stays alive), when I pause playback, pulseaudio stops.

Any arguments I should run pulseaudio with?

@MichaIng
Copy link
Owner

Ah, I am dumb, Bluez does not support ALSA natively since v5, but you can install it: https://github.com/Arkq/bluez-alsa
And see here for ALSA configuration: #3456

The alternative is indeed to go with PulseAudio and use the related Bluetooth module: https://packages.debian.org/buster/pulseaudio-module-bluetooth

@TASSDevon
Copy link
Author

TASSDevon commented Jun 20, 2020

Thanks for the hint, I'll give it a try today or tomorrow and report back.

EDIT:

Compiled and installed bluez-alsa, it seems stable now. One thing I did notice was that sqeezelite service was not running after a reboot, not sure if it is related but I've never seen it not running before. I rebooted a second time and again squeezelite was not running.

Any reason for the 10s delay in the settings? Seems quite long.

Now it seems I still need to add a service entry in systemd for bluealsa to run with root at boot time, do you perhaps have an example on what should go into the service file to get this running from boot?

Many thanks @MichaIng for the amazing support 👍

@MichaIng
Copy link
Owner

One thing I did notice was that sqeezelite service was not running after a reboot, not sure if it is related but I've never seen it not running before.

Please check: journalctl -u squeezelite

Any reason for the 10s delay in the settings? Seems quite long.

In which settings you mean?

do you perhaps have an example on what should go into the service file to get this running from boot?

The official docs about it look very complete, including ondemand activation via dbus 👍: https://github.com/Arkq/bluez-alsa/wiki/Systemd-integration

@TASSDevon
Copy link
Author

Nothing out of the ordinary

root@skyspeaker:~# journalctl -u squeezelite
-- Logs begin at Sat 2020-06-20 17:17:03 BST, end at Sun 2020-06-21 18:54:03 BST. --
Jun 20 17:44:18 skyspeaker systemd[1]: Started SqueezeLite (DietPi).
Jun 20 17:44:19 skyspeaker systemd[1]: squeezelite.service: Succeeded.
Jun 20 17:45:31 skyspeaker systemd[1]: Started SqueezeLite (DietPi).

I did a systemctl enable squeezelite and it created a symlink, for some reason the service was disabled at boot. I guess we can disregard this ;-)

The 10 second setting is from the issue you linked to, your comment: #3456 (comment)

Thanks for the link to the systemd integration, must've missed that one.

@MichaIng
Copy link
Owner

I did a systemctl enable squeezelite and it created a symlink, for some reason the service was disabled at boot. I guess we can disregard this ;-)

Ah actually dietpi-services should start all services including squeezelite bundled at the end of boot (dietpi-postboot.service). To check and test:

systemctl status dietpi-postboot
/boot/dietpi/postboot

If you see Active: active (exited) and [ OK ] DietPi-Services | start : squeezelite then it is not required (but not an issue as well) to have systemd starting it.

@TASSDevon
Copy link
Author

I'm not sure where to see the log line with the "DietPi-Services start" part. The service status is this which looks OK:

root@skyspeaker:~# systemctl status dietpi-postboot
● dietpi-postboot.service - DietPi-PostBoot
   Loaded: loaded (/etc/systemd/system/dietpi-postboot.service; enabled; vendor preset: enabled
)
   Active: active (exited) since Sun 2020-06-21 19:03:10 BST; 11h ago
  Process: 518 ExecStart=/boot/dietpi/postboot (code=exited, status=0/SUCCESS)
 Main PID: 518 (code=exited, status=0/SUCCESS)

Jun 21 19:03:10 skyspeaker systemd[1]: Started DietPi-PostBoot.

@MichaIng
Copy link
Owner

When you run /boot/dietpi/postboot, you should see the second output. This is what dietpi-postboot.service does. Since with Stretch we cannot log to journal + console yet, the service status does not show the output. Will be possible once we drop Stretch support around next summer 😉.

@TASSDevon
Copy link
Author

For reference, the output ;-)

root@skyspeaker:~# /boot/dietpi/postboot
mv: cannot stat '/tmp/dietpi-*.log': No such file or directory

 DietPi-Services
─────────────────────────────────────────────────────
 Mode: start

[  OK  ] DietPi-Services | start : avahi-daemon
[  OK  ] DietPi-Services | start : squeezelite
[  OK  ] DietPi-Services | start : cron

 ─────────────────────────────────────────────────────
 DietPi v6.30.0 : 19:19 - Mon 22/06/20
 ─────────────────────────────────────────────────────
 - LAN IP : 192.168.1.237 (wlan0)

 Please hit <return> to login

Strange that it say it's booting it. And maybe a different thing but I notice avahi is started, yet when I do anything with sudo I get the following:

root@skyspeaker:~# sudo
sudo: unable to resolve host skyspeaker: Name or service not known

@MichaIng
Copy link
Owner

sudo: unable to resolve host skyspeaker: Name or service not known

Very strange, how did you set this hostname? Is it added to loopback address (127.0.1.1) via /etc/hosts?

@MichaIng MichaIng modified the milestones: v6.31, v6.32 Jun 24, 2020
@MichaIng
Copy link
Owner

Ah there is actually a bluealsa package available on the RPi repo:

# apt show bluealsa
Package: bluealsa
Version: 0.13
Priority: optional
Section: sound
Maintainer: Simon Long <[email protected]>
Installed-Size: 244 kB
Depends: libasound2 (>= 1.0.16), libbluetooth3 (>= 4.91), libc6 (>= 2.28), libdbus-1-3 (>= 1.9.14), libglib2.0-0 (>= 2.30.0), libsbc1, bluez
Homepage: https://github.com/Arkq/bluez-alsa
Download-Size: 57.8 kB
APT-Sources: https://archive.raspberrypi.org/debian buster/main armhf Packages
Description: Bluetooth ALSA Audio backend
 Packaging of the bluez-alsa audio backend to add ALSA support to
 BlueZ version 5.

So no need to compile oneself and it ships with a default ALSA config, systemd unit and all this. Even available for all other archs, so we could use this and implement Bluetooth audio into dietpi-config natively for all SBC/PC models: http://archive.raspberrypi.org/debian/pool/main/b/bluealsa/
udev activation, systemd unit, all is there, very nice!

@TASSDevon
Copy link
Author

Whoops, didn't see your post there.
I'm not sure how I set the hostname, it's been too long. But no real issue.

For me this ticket can be closed, so far the BT connection and squeezelite for Spotify playback with LMS > Squeezelite > Jabra over BT dongle connection --> works great.

@MichaIng
Copy link
Owner

MichaIng commented Jun 27, 2020

I'll keep the issue open as a request/ToDo to add USB Bluetooth support natively to dietpi-config when I find time.

About the hostname, could you paste the output of: cat /etc/hosts (mask any public IP/domain info in case)
Since your PS1 prompt (console) shows "root@skyspeaker", at least the short (first) part of your hostname is "skyspeaker". Since sudo shows "unable to resolve host skyspeaker", I guess this hostname is missing in /etc/hosts. Usually there should be an entry like:

127.0.1.1 skyspeaker

or

127.0.1.1 skyspeaker.domain.some

@TASSDevon
Copy link
Author

TASSDevon commented Jun 27, 2020

root@skyspeaker:~# cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 DietPi
#::1 localhost ip6-localhost ip6-loopback
#ff02::1 ip6-allnodes
#ff02::2 ip6-allrouters

Appending local loopback with the mdns name fixes the message.

@MichaIng
Copy link
Owner

Jep, replacing DietPi with skyspeaker should do it.

@MichaIng MichaIng added the Solution available 🥂 Definite solution has been done label Jul 15, 2020
@MichaIng
Copy link
Owner

MichaIng commented Jul 15, 2020

This resolves the issue that UART-based Bluetooth is attempted to be enabled on non-onboard WiFi/BT RPi models: 702b976
Changelog: aa9da67
So the option now installs and enables generic BT packages/services now, which does not mean that specific drivers might be requires. The bluez-firmware adds them for a certain chip, others might be included in kernel, some others are part of the pre-installed firmware-misc-nonfree package. If its still not recognised, then check/follow manufacturer instructions, same for onboard BT and SBC manufacturer wikis/docs.

Bluetooth audio support is a dedicated question and requires bluealsa as shown above. This is handled now here where some more info has been accumulated: #3456

@Talk2Giuseppe
Copy link

Nearly 2025 and BT is still elusive on DietPi... Wow!

I've spent the last 4 days attempting to get DietPi to work on a Raspberry Pi 3B and a Pi 4. What an absolute waste of time. I feel like I've been in hell for the last 4 days. I hope you guys can fix it cause using a Pi as an audio player is a pretty simple project. But w/o BT, it's worthless.

Moving on to a different variant. Good luck getting this working!

@MichaIng
Copy link
Owner

MichaIng commented Dec 12, 2024

@Talk2Giuseppe
Bluetooth is working perfectly fine on RPi in general. So you have a specific issue with the adapter or application. But please open a new issue, as it is unrelated to this >4 years old one, and add some more details about the exact problem you face.

If you want to use a Bluetooth speaker/audio device, as it requires additional software, please check this issue: #3456

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants