Hallo, ich habe hier zwei HM-10 Module. Mit denen schaffe ich es Daten zu übertragen, entweder im RS232-Transparent-Modus, oder indem ich den einen HM-10 die periphere Rolle zuweise und am Master per AT+PIO21 beim Peripheren HM-10 einen Pin schalte. Nur ist es so dass der periphere HM-10 nach Aufbau einer Verbindung konstant 8mA Strom zieht. So habe ich mir Blutooth "low-energy" nicht vorgestellt. Ein AT+SLEEP hilft nur solang noch keine Verbindung aufgebaut ist. Ein AT+ADVI9 spart auch keinen Strom (+ die Signalübertragung ist trotzdem mehr oder weniger instantan, von einem 1,2 Sekunden Zeitslot ist nichts zu bemerken). Ein AT+PWRM0 hat auch keinen Unterschied bewirkt. Wie spart man nun Energie? Ich will ca. 1x pro Sekunde (oder alle 10s) einen Zustand vom Slave abfragen bzw. einen Ausgang schalten. Schneller als 10s muss der Slave nicht reagieren, aber er muss 1Jahr aus einer Batterie laufen. 8mA sind damit nicht akzeptabel. Was kann ich tun? Vielen Dank im voraus.
asd schrieb: > aber er muss 1Jahr aus einer > Batterie laufen. 8mA sind damit nicht akzeptabel. Mit einer Autobatterie - kein Problem..?
Es müssen beide in den Sleep Modus. Mit "AT" beendest Du die Verbindung. Danach beide in den Sleep Modus. Möchtest Du etwas senden dann weckst Du das Modul auf, baust die Verbindung auf und danach legst du beide wieder schlafen. Du kannst die Module auch so konfigurieren dass nach dem Beenden der Verbindung die Module automatisch in den Sleep Modus wechseln. Ich habe hier HM-11 Module. Die verbrauchen im Sleep Modus ca. 0,4 mA. Grüße
Vielen Dank für den Hinweis. Ich habe den HM-10 für den Peripheral Mode jetzt so weit dass er im Schlafmodus nur wenig Strom braucht, und vom zweiten HM10 im Central Mode trotzdem kontaktiert werden kann. Ich kann die Verbindung auch beenden indem ich bei einem der beiden "AT" sende, jedoch baut sich die Verbindung nach einer Sekunde automatisch wieder auf. Ein "AT+IMME1" hilft da nur nach Power-Up, vor der ersten Verbindung. 2.Frage: Was ist eigentlich mit dem Modus von BLE, dass das Periphere Gerät sehr stromsparend alle paar Sekunden kurze Datenpakete an eine dauerhaft Empfangende Zentrale schicken kann? Die Zentrale ist wegen der dauerhaften Empfangsbereitschaft natürlich nicht so stromsparend. Hat das HM-10 diesem Modus? So wie ich das bisher verstanden habe muss ich beim HM-10 immer wieder die Verbindung auf- und abbauen?
das mit dem automatischen Wiederverbinden hatte ich auch mal. Bin mir nicht sicher aber versuch mal: AT+ERASE AT+RESET Ist die Zentrale auch ein HM Modul? Mein Modul ist immer empfangsbereit und verbraucht nur 0,4 mA im Sleep Modus.
Hallo Fremder, asd schrieb: > 2.Frage: Was ist eigentlich mit dem Modus von BLE, dass das Periphere > Gerät sehr stromsparend alle paar Sekunden kurze Datenpakete an eine > dauerhaft Empfangende Zentrale schicken kann? Die Zentrale ist wegen der > dauerhaften Empfangsbereitschaft natürlich nicht so stromsparend. > Hat das HM-10 diesem Modus? So wie ich das bisher verstanden habe muss > ich beim HM-10 immer wieder die Verbindung auf- und abbauen? das ist mit BLE durchaus möglich, aber vielleicht mit Deinen Modulen nicht. Der Ansatz mit dem einen Verbindungsaufbau pro Sekunde und der Latenz von 10ms ist schwierig: Damit innerhalb von 10ms eine Verbindung aufgebaut werden kann, muss das peripheral schon mit maximal 10ms Interval advertisen, damit das Central sich auf so ein Advertisment hin verbinden kann. Real wirst Du eher noch viel weniger nehmen müssen. Wenn die Daten in das Advertisment Packet passen, dann würde ich die da mit rein tun. Dann bekäme Dein Central die Daten bereits beim Scannen und müsste erst keine Verbindung aufbauen. Ansonsten guck mal, ob Du die Slave-Latency erhöhen kannst und damit die Leistungsaufnahme während einer Verbindung reduzieren kannst. Hast Du mal den Hersteller dieser Module auf dieses Verhalten angesprochen? mfg Torsten
asd schrieb: > Ich habe den HM-10 für den Peripheral Mode jetzt so weit dass er im > Schlafmodus nur wenig Strom braucht ... Wie auch immer du das festgestellt hast - zeigt das Ding auch konkrete Zahlen an oder gibt es da nur eine rot/grün Anzeige für "viel"/"wenig"?
> Wenn die Daten in das Advertisment Packet passen, dann würde ich die da > mit rein tun. Dann bekäme Dein Central die Daten bereits beim Scannen > und müsste erst keine Verbindung aufbauen. Leider bekomme ich beim Scannen mit AT+DISC? nur die MAC Adresse, und sonst keine Informationen (nicht mal den Device-Namen, obwohl das im Datenblatt erklärt wurde. Krieg ich aber nicht aktiviert. Auf AT+FILT0 reagiert der HM-10 nicht, Firmware Version 545). > Ansonsten guck mal, ob Du die Slave-Latency erhöhen kannst und damit die > Leistungsaufnahme während einer Verbindung reduzieren kannst. Während einer Verbindung braucht das Modul konstant 8mA. Irgendwelche Parameter haben das nie verändert. > Wie auch immer du das festgestellt hast - zeigt das Ding auch konkrete > Zahlen an oder gibt es da nur eine rot/grün Anzeige für "viel"/"wenig"? Während einer Verbindung braucht das Modul konstant 8mA. Ohne Verbindung steht das Multimeter bei 0, mit gelegentlichen Ausschlägen bei ca. 0,3mA. Ich deute das als pulsförmige Stromaufnahme deren Mittelwert ich nicht genau bestimmen kann (auf jeden Fall: weniger als 8mA) > Ist die Zentrale auch ein HM Modul? Mein Modul ist immer empfangsbereit > und verbraucht nur 0,4 mA im Sleep Modus. Ja, ist es. Aber da hab ich die Stromaufnahme nicht gemessen weil mich das nicht interessiert hat.
asd schrieb: > Während einer Verbindung braucht das Modul konstant 8mA. > Ohne Verbindung steht das Multimeter Hui, ein BLE Modul mit Multimeter zu vermessen ist sehr optimistisch. Da nimmt man dann doch besser einen Oszi zur Hilfe. Wenn es unbedingt ein Multimeter sein muss, schalte einen dicken Elko (>=1000µF, je mehr desto besser) parallel zur Versorgungsspannung zwecks Glättung des Stroms. BT Module ziehen fiese Pulsströme die mit einem Multimeter i.d.R. nicht korrekt erfassbar sind.
Für die Akten: Auf diese Weise kann man stromsparend ein Statuswort übermitteln: Den HM-10 im Peripherie Modus kann man als iBeacon betreiben, dann in den Sleepmodus schalten. Das Sendeintervall ist dann auf 1284ms fest gelegt. Stromverbrauch irgendwas um die 0,5mA. AT+MINO0x0123 : stellt das 16 Bit Wort "minor" auf Hex 0123 AT+MARJ0x4567 : stellt das 16 Bit Wort "major" auf Hex 4567 AT+IBEA1 : startet den I-beacon Modus AT+SLEEP : schaltet in den Schlaf-Modus (aufwachen durch senden einer langen Zeichenkette mit >80 Zeichen) Die IBeacon-Daten kann man mit einem anderen HM-10 im "Central" Modus scannen, per: AT+DISI? Dieser Befehl stand nicht in der Anleitung die ich hatte. Quelle: https://stackoverflow.com/questions/40026094/using-hm-10-as-an-ibeacon-scanner-i-see-only-a-maximum-of-6-ibeacons
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.