
Tengo una pequeña caja ARM integrada, sin ningún KVM, solo una consola serie, Net y un dongle USB Bluetooth.
El sistema se compila automáticamente utilizando el marco Buildroot y funciona razonablemente.
Puedo acceder a la caja mediante línea serie o mediante ssh.
Tengo la pila de bluetooth ejecutándose y puedo ver hci0:
hci0: Type: BR/EDR Bus: USB
BD Address: 00:15:83:3D:0A:57 ACL MTU: 310:10 SCO MTU: 64:8
UP RUNNING PSCAN ISCAN AUTH
RX bytes:7576 acl:27 sco:0 events:267 errors:0
TX bytes:1396 acl:27 sco:0 commands:130 errors:0
Puedo escanear y también "ser visible" desde fuera.
Necesito emparejarme con mi teléfono Android y descubrí su dirección, pero no encontré ninguna forma de procesar la autenticación.
# hcitool scan
Scanning ...
A0:F8:95:54:C8:00 Wiko MCondarelli
# rfcomm connect hci0 A0:F8:95:54:C8:00 1
Can't connect RFCOMM socket: Operation now in progress
da como resultado el siguiente rastro:
< HCI Command: Inquiry (0x01|0x0001) plen 5
lap 0x9e8b33 len 8 num 0
> HCI Event: Command Status (0x0f) plen 4
Inquiry (0x01|0x0001) status 0x00 ncmd 1
> HCI Event: Inquiry Result with RSSI (0x22) plen 15
bdaddr A0:F8:95:54:C8:00 mode 1 clkoffset 0x6d1c class 0x5a020c rssi -77
> HCI Event: Inquiry Result with RSSI (0x22) plen 15
bdaddr A0:F8:95:54:C8:00 mode 1 clkoffset 0x6d1c class 0x5a020c rssi -77
> HCI Event: Inquiry Result with RSSI (0x22) plen 15
bdaddr A0:F8:95:54:C8:00 mode 1 clkoffset 0x6d1c class 0x5a020c rssi -76
> HCI Event: Inquiry Complete (0x01) plen 1
status 0x00
< HCI Command: Remote Name Request (0x01|0x0019) plen 10
bdaddr A0:F8:95:54:C8:00 mode 1 clkoffset 0x6d1c (valid)
> HCI Event: Command Status (0x0f) plen 4
Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
> HCI Event: Remote Name Req Complete (0x07) plen 255
status 0x00 bdaddr A0:F8:95:54:C8:00 name 'Wiko MCondarelli '
< HCI Command: Create Connection (0x01|0x0005) plen 13
bdaddr A0:F8:95:54:C8:00 ptype 0xcc18 rswitch 0x01 clkoffset 0x6d1c (valid)
Packet type: DM1 DM3 DM5 DH1 DH3 DH5
> HCI Event: Command Status (0x0f) plen 4
Create Connection (0x01|0x0005) status 0x00 ncmd 1
> HCI Event: Link Key Request (0x17) plen 6
bdaddr A0:F8:95:54:C8:00
> HCI Event: Connect Complete (0x03) plen 11
status 0x10 handle 42 bdaddr A0:F8:95:54:C8:00 type ACL encrypt 0x00
Error: Connection Accept Timeout Exceeded
Estoy obligado al emparejamiento "heredado" porque:
# hciconfig hci0 sspmode 1
Can't set Simple Pairing mode on hci0: Input/output error (5)
El seguimiento del comando anterior es:
< HCI Command: Write Simple Pairing Mode (0x03|0x0056) plen 1
mode 0x01
> HCI Event: Command Status (0x0f) plen 4
Write Simple Pairing Mode (0x03|0x0056) status 0x01 ncmd 1
Error: Unknown HCI Command
lo cual entiendo significa que mi hardware no admite el "Emparejamiento simple y seguro". En mi sistema tengo BlueZ v3.57, pero no tengo hcid, bluetooth-agent, passkey-agent o bluez-simple-agent.
¿Cómo puedo emparejar usando solo las herramientas básicas? Si eso no es posible: ¿cuál es el mínimo que necesito instalar en mi caja?