Es posible conectar un altavoz (o auriculares) bluetooth a un router OpenWRT gracias al proyecto
BlueZ-ALSA, que permite enviar audio hacia dispositivos bluetooth externos, sin necesidad de instalar PulseAudio. Voy a explicar como hacerlo sin entrar en demasiados detalles.
Como punto de partida necesitamos:
- Un router OpenWRT conectado a Internet que tenga un puerto USB libre
- Un pincho bluetooth compatible con Linux (cuidado con esto, que los hay que sólo valen para Windows)
- Conocimientos para manejar Openwrt desde un cliente remoto (SSH o PuTTY)
NOTA: El paquete que he compilado soporta únicamente routers mips32, que son estos:
https://openwrt.org/docs/techref/instructionset/mips_mips32#devices_with_this_instructionset.
Estos son los pasos a seguir:1. En el PC, abrir una sesión SSH
ssh root@192.168.1.1
2. Descargar el paquete BlueZ-ALSA
cd /tmp
wget https://raw.githubusercontent.com/raphikWasHere/bluealsa4openwrt/main/bluez-alsa/packages/bluez-alsa_4.1.1-1_mips_mips32.ipk
3. Instalarlo (las dependencias se instalarán automáticamente)
opkg update
opkg install bluez-alsa_4.1.1-1_mips_mips32.ipk
rm bluez-alsa_4.1.1-1_mips_mips32.ipk
4. Descargar aplicaciones con las que reproducir y controlar el audio
opkg install mpg123 alsa-utils
5. Conectar (inalámbricamente) el altavoz o los auriculares bluetooth desde una sesión bluetoothctl interactiva.
bluetoothctl
power on
scan on
pair AA:BB:CC:DD:EE:FF
connect AA:BB:CC:DD:EE:FF
scan off
exit
6. Hacer que suene una emisora de radio
mpg123 -a bluealsa http://quincy.torontocast.com:2720/stream
7. Ajustar el volumen
alsamixer -D bluealsa
Nota importante: Actualmente BlueZ-ALSA no soporta amixer ni alsamixer, por lo que recomiendo no instalar alsa-utils.Para saber cómo compilar BlueZ-ALSA: https://github.com/raphikWasHere/bluealsa4openwrt/tree/main/bluez-alsa#readme
Para saber más de mpg123: https://foro.seguridadwireless.net/openwrt/(tutorial)-receptor-de-radio-wi-fi-con-openwrt/msg366210/#msg366210
Para saber desde cuándo me estoy peleando con bluetooth en OpenWRT: https://foro.seguridadwireless.net/openwrt/bluetooth-en-openwrt/msg341159/#msg341159