GNU/Linux >> Tutoriales Linux >  >> Linux

Intensidad de la señal de Bluetooth LE Linux

No es necesario conectarse cuando se usa btmgmt

$ sudo btmgmt find

Discovery started
hci0 type 7 discovering on
hci0 dev_found: 50:8C:FD:99:0A:EC type LE Random rssi -80 flags 0x0000 
AD flags 0x06 
eir_len 23
…

El indicador de intensidad de señal relativa es rssi -80 , pero la lista es mucho más larga y contiene más información sobre este y otros dispositivos.

Para espiar su vecindario Bluetooth mostrando solo direcciones MAC únicas con su RSSI más fuerte, ejecute el siguiente comando:

$ sudo btmgmt find |grep rssi |sort -n |uniq -w 33

hci0 dev_found: 40:43:42:B3:71:11 type LE Random rssi -53 flags 0x0000 
hci0 dev_found: 44:DA:5F:EA:C6:CF type LE Random rssi -78 flags 0x0000 
hci0 dev_found: 7F:7D:08:6B:E0:37 type LE Random rssi -74 flags 0x0000 
hci0 dev_found: A4:58:0F:21:A1:8C type BR/EDR rssi -79 flags 0x0000

En Linux, la forma de hacerlo es con el comando hcitool. Sin embargo, debe estar conectado para obtener el rssi de un dispositivo. Si desea lograr esto desde la línea de comando, intente:

#hcitool rssi AA:BB:CC:DD:EE:FF

Si desea ver el código C real para lograr esto, eche un vistazo al archivo bluez tools/hcitool.c, en la función cmd_rssi.

static void cmd_rssi(int dev_id, int argc, char **argv)
{
    ...
}

Para Bluetooth de bajo consumo , solo conozco una forma de hacer esto, y es usando el comando #btmon. Ejecute btmon en segundo plano y busque dispositivos Bluetooth Low Energy:

#./btmon &
# hcitool lescan

Los resultados que se muestran en el monitor deben ser similares a esto:

> HCI Event: LE Meta Event (0x3e) plen 12                                                                                  
      LE Advertising Report (0x02)
        Num reports: 1
        Event type: Scan response - SCAN_RSP (0x04)
        Address type: Public (0x00)
        Address: AA:BB:CC:DD:EE:FF (<Vendor Name>)
        Data length: 0
        ***RSSI: -34 dBm (0xde)***
AA:BB:CC:DD:EE:FF <Device Name>

Tenga en cuenta que al usar btmon no tiene que conectarse para obtener el rssi de un dispositivo BLE.


Linux
  1. UNIX/Linux:3 Maneras de Enviar Señal a Procesos

  2. Fundamentos de señales de Linux - Parte I

  3. Servicio de sistema operativo Linux/UNIX:Bluetooth

  4. Manejo de señales UNIX/Linux:SIGEV_THREAD

  5. Manejo de señales con múltiples hilos en Linux

Cómo enviar sonido a través de Bluetooth en Linux

Cómo escribir el signo de la rupia india (₹) en Linux

Cómo determinar el tipo MIME de un archivo en Linux

Instale la señal alternativa de WhatsApp amigable con la privacidad en el escritorio de Linux

Obtener información sobre un comando con tipo de comando en Linux

¿Qué es un proceso detenido en Linux?