GNU/Linux >> Linux Esercitazione >  >> Linux

Come eseguire una scansione Bluetooth a basso consumo tramite la libreria BlueZ C

L'esempio sull'altra risposta non funziona per me, si ferma in Scansione...

Il collegamento successivo funziona per il linguaggio c, ma presenta un errore durante il cast dei byte che contengono le informazioni sul segnale de rssi.https://github.com/glock45/intel-edison-playground/blob/master/scan.c

questa riga 121:

printf("%s - RSSI %d\n", addr, (**char**)info->data[info->length]);

dovrebbe essere:

printf("%s - RSSI %d\n", addr, (**int8_t**)info->data[info->length]);

Li ho trovati guardando dentro bluez-version/monitor/*.c , dove si trova il programma btmon. Puoi vedere i tipi di dati e le strutture, hcidump.c è molto utile e packets.c e main.c anche, ma ce ne sono molte da imparare sui socket hci


La programmazione BLE con BlueZ su Galileo o Edison è simile a qualsiasi altra piattaforma x86.

Edison (e Galileo) di solito viene fornito con le librerie BlueZ preinstallate. Devi solo collegarti con loro con il tuo codice C e programmare in modo simile ad altre piattaforme x86.

Per un esempio completo di scansione Bluetooth in codice C con BlueZ, vedere questo collegamento.

Consulta questo esempio per la scansione BLE

E l'API HCI qui.


Linux
  1. Come eseguire lo Scp tramite una macchina intermedia??

  2. Come creare un iPhone come mouse tramite Bluetooth?

  3. Come inizializzare una libreria condivisa su Linux

  4. Come includere la libreria statica nel makefile

  5. Come verificare se una libreria è installata?

Come configurare un criterio di scansione delle vulnerabilità di Nessus

Come eseguire una scansione delle porte in Linux

Come eseguire il backup del database di WordPress tramite MySQL

Come eseguire il backup del database di WordPress tramite phpMyAdmin

Come installare la libreria Python PyBrain in Linux

Come eseguire l'SSH sul server tramite Linux