iPhone corebluetooth central Manager wysyłanie danych do peryferyjnych

Chcę wysłać dane z iPhone ' a do urządzenia bluetooth, które zostaną odkryte i połączone. Odsyłam Ten tutorial do połączenia.

Nie jestem w stanie wysłać danych do zewnętrznego urządzenia bluetooth, które jest podłączone tak, jak to robimy z zewnętrznych akcesoriów framework.

Używam iPhone5 ponieważ ma Bluetooth 4.0

Author: TechFanatic, 2013-09-26

3 answers

W Core Bluetooth musisz użyć właściwości do komunikacji. Nie ma standardowego stream based API jak w External Accessory Framework i nie znam żadnych bibliotek open source, które implementują coś takiego.

Podstawowa operacja

Peryferyjne - > Centralne:

  1. Central subscription to characteristic (albo z powiadomieniami lub wskazaniami)
  2. peryferyjne odbiera subskrybowany callback, więc wie, że centralny jest listening
  3. charakterystyka obwodowych aktualizacji
  4. Centrala otrzymuje charakterystyczne zaktualizowane powiadomienie

Centralny- > Peryferyjny:

  1. Central pisze charakterystyczne
  2. peryferyjne otrzymuje aktualizację żądania zapisu

Rzeczywista prędkość, którą można osiągnąć zależy od różnych czynników. Ze wskazaniami dane nigdy nie są tracone (jak TCP), ale powiadomienia nie mają takich gwarancji (jak UDP).

Więcej informacji

Proponuję zapoznaj się z oficjalnym przewodnikiem programowania Core Bluetooth i skoncentruj się na

Sekcje. Ale lepiej byłoby studiować cały przewodnik jak jest. Aby uzyskać działający przykład, sprawdź przykład transferu BTLE firmy Apple.

 22
Author: allprog,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-26 09:32:03

Jeśli dobrze cię rozumiem, chcesz, żeby centrala wysłała dane do Twojego urządzenia peryferyjnego.

Do tego używasz tej metody:

[peripheral writeValue:dataPacket forCharacteristic:writeChar type:CBCharacteristicWithResponse]
 5
Author: Gili Ariel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-10-26 10:39:35

To jest dość przekonujące wideo do obejrzenia i wiedzieć, co dokładnie idzie w ramach iOS bluetooth. Jasno wyjaśnia, jakie operacje mogą być wykonywane przez systemy centralne i peryferyjne.

Https://developer.apple.com/videos/play/wwdc2012-705/

 1
Author: thatzprem,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-10-29 12:14:08