2012-04-20 8 views
8

Pobiegłam od czasu do czasu z cichymi ostatnio lekcjami łączności BLE (Bluetooth Low Energy) i nie udało mi się przesłać danych szybciej niż 1KB/5 sekund. Wierzę, że w dokumentacji mówi, że maksymalna prędkość wynosi 60 bajtów na 20 milisekund. Po transferze danych i liczeniu transferu Ack po każdym zestawie pakietów, uważam, że powinniśmy być w stanie iść tak szybko, jak 1,5KB na sekundę. Więc mój kod jest około 7-8 razy wolniejszy niż powinien.iPhone 4S - prędkość przesyłu danych BLE

Zastanawiam się, czy ktoś był w stanie wykonać transfer danych w BLE tak szybko, jak dokumentacja mówi, że powinna być w stanie to zrobić. Jaką szybkość uzyskujesz, jeśli jesteś szybszy niż mój?

Thanks a lot

Odpowiedz

2

Jeśli jesteś w stanie wykorzystać większą wielkość MTU (wynegocjowaną przez iOS) wtedy byłbyś w stanie zwiększyć przepustowość jeszcze bardziej, ponieważ istnieje 4-bajtowy nagłówek L2CAP i 3-bajtowy nagłówek ATT, który nie byłby przesyłany więcej niż w jednym pakiecie.

Jeśli jesteś w stanie przesłać 6 pakietów po interwierze, to będziesz w stanie umieścić dodatkowe 35 bajtów na interwał połączenia (7 bajtowy nagłówek będzie nadal dostępny dla pierwszego pakietu) Rozmiar MTU może być również podzielone na kilka przedziałów połączeń, zwiększając przepustowość o 7 dodatkowych bajtów interwału połączenia. (Złożenie pakietu zajmuje więcej czasu.) Maksymalny rozmiar MTU dozwolony przez ATT to 515 bajtów (maksymalny rozmiar att to 512 bajtów + 3 bajty nagłówka dla opkodu + uchwytu)

Powiązane problemy