Bluetooth Modul HM-10 (BLE, Bluetooth 4.0)

kilipet

Member
Hallo Leute,
hat jemand von euch eins dieser Module am Ardumower im Einsatz? Neuere Smartphones und Tablets sind ja bekanntermaßen eher mit dem neuen BLE-Standard (Bluetooth-Low-Energy) ausgestattet. Die BLE-Spezifikation sieht generell nur eine Übertragung von maximal 20 Bytes als Block vor. Das HM-10 zerstückelt daher die Daten in einzelne Chunks von je 20 Bytes. Das Funktioniert bei mir mit größeren Datenmengen leider nur meistens :S aber nicht immer. Ab und zu gehen Daten mitten im Stream verloren und ich habe keine Erklärung dafür. Hat von euch schon mal jemand ein solches Modul mit dem Pfod-App oder Ardu-Remote zum laufen bekommen? Ich habe leider kein Android-Device mit BLE um das zu probieren.

Zum Hintergrund: Ich Programmiere derzeit eine App in Xcode für iOS-Geräte (iPhone/iPad etc.) welches die PFOD-Strings empfangen und entsprechend darstellen kann. Quasi eine Portierung von PfodApp bzw. ArduRemote in das Apple-Universum. Das Funktioniert soweit schon ganz gut bei kleineren Menüs aber sobald das Menü und damit der Datenstrom länger wird kommt es zur besagten Fragmentierung.

Ich bin gespannt welche Erfahrungen ihr gemacht habt.

Grüße
Kilian
 
Hallo Kilian,

Fragmentierung ist völlig normal und tritt auch bei Bluetooth 3.0 auf. Wichtig ist vermutlich dass man nicht zu viel auf einmal zum Modul schickt, damit der FIFO im Modul nicht überläuft. Auf beiden Seiten (Arduino und App) sollte man also die Daten vorfragmentieren und jeweils mit kurzer Verzögerung verschicken. Und dann auf beiden seiten die empfangenen fragmentierten Daten im Speicher ablegen und erst verarbeiten wenn eine vollständige Zeile übertagen wurde.

Im Ardumower-Code ist dies leider noch nicht umgesetzt worden (es schickt immer alle Daten sofort zum Modul).

Gruss,
Alexander
 
Hallo Alexander,
die Fragmentierung ist auch kein Problem. War nicht so ganz das richtige Wort. Auf iPhone-Seite habe ich eine Streamverarbeitung drin die die einzelnen stücke zusammensetzt und als ganzes dann verarbeitet. Blöd ist wenn mitten drin was fehlt. Der Fifo im Modul sollte eigentlich nicht volllaufen da die Bandbreite der BLE-Verbindung höher ist als die serielle Verbindung zum Modul. Beim HC-05 passiert das ja auch nicht.

Ich habe heute ein neues Modul bekommen was ich bestellt hatte und damit geht es offenbar einwandfrei. Ich denke mein anderes HM-10 ist möglicherweise nicht I.O.

Jetzt kann ich weiter an der App arbeiten...
Attachment: https://forum.ardumower.de/data/media/kunena/attachments/2978/IMG_2567.jpg/
 
Zuletzt bearbeitet von einem Moderator:
Zuletzt bearbeitet von einem Moderator:
Hallo Kilian,

daß es an der IOS-Front auch weitergeht, ist echt super!

Toll wäre, wenn wir dabei die Verbindung über TCP-Socket mit integrieren könnten (wie in der Pfodapp), damit die Verbindung mit dem ESP8266 machbar ist. Über die App "TCP Console" habe ich eine stabile Verbindung zum Mower und kann über manuelle Eingabe der Pfod-Befehle bereits steuern und die Plot-Ausgaben verfolgen.

An Tests dazu würde ich mich gern beteiligen...

Viele Grüße
Aiko
 
Oben