2014-11-03 8 views

Odpowiedz

7

Programowanie BLE z BlueZ na Galileo lub Edison jest podobne do każdej innej platformy x86.

Edison (i Galileo) zwykle zawiera wstępnie zainstalowane biblioteki BlueZ. Wystarczy połączyć się z nimi za pomocą swojego kodu C i programować podobnie do innych platform x86.

Dla pełnej wersji C code example bluetooth scan with BlueZ, see this link.

Please see this example for BLE scan

I HCI API here.

+0

Widziałem ten przykład kodu. Działa, ale nie skanuje urządzeń BLE - tylko normalne. – Longes

+0

@ Longes For BLE musisz ustawić parametr 'hci_le_set_scan_parameter', [zobacz ten przykład dla skanowania BLE] (https://github.com/carsonmcdonald/bluez-experiments/blob/master/experiments/cantest.c) – ashoke

+0

Przykład BLE zależy od ncurses, dla testowania zmieniłem go na czystą aplikację konsolową. Musisz też uruchomić go za pomocą sudo. – prmottajr

8

Przykładem drugiej odpowiedzi nie działa dla mnie, to zatrzymuje się Skanowanie ...

Następny link działa dla języka C, ale wystąpił błąd podczas rzucania bajtów, które mają informacje na temat de rssi sygnał. https://github.com/glock45/intel-edison-playground/blob/master/scan.c

Ta linia 121:

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

powinno być:

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

znalazłem te patrząc wewnątrz bluez-version/monitor/*.c, gdzie program btmon jest. Widać typy danych i konstrukcjom, hcidump.c jest bardzo przydatne i packets.c i main.c też, ale istnieje wiele nauczyć o HCI gniazd

+0

Podczas gdy ten link może odpowiedzieć na pytanie, lepiej umieścić tutaj istotne części odpowiedzi i podać link do odsyłacza. Odpowiedzi dotyczące linków mogą stać się nieprawidłowe, jeśli strona z linkami się zmieni. – Kmeixner

0

Intel-Edison kod scan.c działa również na Raspberry Pi.

Umożliwia skanowanie modułu znajomego Adafruit BLE UART podłączonego do arduino Uno.

W Pi, należy pobrać bluez-5.33.tar.gz, libncurses-dev i libbluetooth-dev.

Aby skompilować scan.c użyć

gcc -o scan.c -lbluetooth skanowania

Powiązane problemy