Novedad: el cortafuegos de IA supervisa toda la plataforma y explica cada incidente con palabras sencillas. Vea cómo funciona

Gateway BLE con Pi 4: bluetoothctl dice que no hay ningún controlador predeterminado disponible

Gateway BLE con Pi 4: bluetoothctl dice que no hay ningún controlador predeterminado disponible

Resuelto 9 7

Traducido del English por IA ·

Para mi proyecto final de carrera estoy convirtiendo una Pi 4 en un gateway BLE: escucha seis RuuviTags por el laboratorio y reporta cada uno a Hermetry como dispositivo hijo a través de v1/gw/telemetry. La parte de Hermetry funciona cuando le envío datos falsos desde mi portátil.La parte de Bluetooth no funciona. En la Pi:

$ bluetoothctl
Agent registered
[bluetoothctl]# scan on
No default controller available
$ hciconfig -a
$
$ systemctl status bluetooth
  Active: active (running)

Así que el servicio está en marcha, pero no hay ningún controlador. Pi 4 Model B, Raspberry Pi OS Bookworm de 64 bits, instalación bastante reciente de hace un mes aproximadamente. La misma tarjeta SD estaba en la Pi que usé para lo de la impresora de tickets hace unas semanas, por si eso importa.

Timestamps in UTC or it didn't happen.
♥ 0

Traducido del English por IA ·

¿Instalaste bluez? Creo que en la versión lite no viene instalado por defecto

Measure twice, poll once.
♥ 0

Traducido del English por IA ·

Está instalado, si no, bluetoothctl no funcionaría.

Timestamps in UTC or it didn't happen.
♥ 2

Traducido del English por IA ·

¿Qué muestra rfkill list? Un bloqueo por software también se ve así.

QoS 1 and a lot of patience.
♥ 2

Traducido del English por IA ·

0: phy0: Wireless LAN
        Soft blocked: no
        Hard blocked: no

Solo Wi-Fi, ninguna entrada de Bluetooth en absoluto.

Timestamps in UTC or it didn't happen.
♥ 2

Traducido del English por IA ·

Hm, si rfkill ni siquiera lo lista, el kernel nunca activó el controlador.

♥ 0

Traducido del English por IA ·

Podría ser la radio. Una vez tuve una Pi 4 con el Bluetooth muerto pero el Wi-Fi funcionando, mismo chip, pero pasa.

♥ 0

Traducido del English por IA ·

«La misma tarjeta SD que la impresora de recibos» es la pista. Revisa /boot/firmware/config.txt (en Bookworm se movió desde /boot) buscando dtoverlay=disable-bt. Nuestro integrador lo puso para un hat RS-485 en una pasarela de línea y seis meses después alguien pasó un día intentando emparejar un escáner con la misma Pi.En la Pi 4, el chip Bluetooth está conectado a la UART buena. disable-bt cede esa UART a los pines GPIO y el Bluetooth desaparece por completo, lo que coincide con tu salida de rfkill. Comenta la línea y luego:

sudo systemctl enable --now hciuart
sudo reboot
# tras reiniciar
rfkill list      # debería mostrar hci0: Bluetooth
bluetoothctl show

Si necesitas a la vez una UART de hardware y Bluetooth en la Pi 4, dtoverlay=miniuart-bt mantiene el Bluetooth en la mini UART, o usa una de las UART adicionales (uart2 a uart5) que tiene la Pi 4.

Solución aceptada♥ 8

Traducido del English por IA ·

Era eso, la línea disable-bt del proyecto de la impresora. Qué vergüenza. La comenté, activé hciuart, hci0 volvió y los seis tags aparecen en el escaneo. Ahora aparecen como hijos en Hermetry.

Timestamps in UTC or it didn't happen.
♥ 0

Traducido del English por IA ·

Merece la pena dejar un comentario encima de cada línea que añadas a config.txt, con la fecha y el motivo. Así le ahorras trabajo a la siguiente persona.

♥ 2
Viendo 10 entradas – de la 1 a la 10 (de un total de 10)
  • Debes estar registrado para responder a este debate.

Únete a la conversación

Inicia sesión para preguntar y responder, dar me gusta a las publicaciones útiles y marcar la respuesta que resolvió tu problema. Cada aportación suma puntos y niveles.

Compartir