Forum: Mikrocontroller und Digitale Elektronik MSP430 BLE GATT Bluetooth low energy


von Max (Gast)


Lesenswert?

Hallo Leute,

ich bräuchte mal ein bisschen Hilfe bei meinem Projekt.

Ich habe
- ein MSP430G2553-Launchpad
- ein SunFounder Bluetooth 4.0 HM-10 Master Slave Module (BLE)
- USB PL2303 RS232 TTL zum Konverter-Adapter-Modul
- Android Handy mit App BleTerm
- PC mit Software sscom32e.exe (?)

Jetzt habe ich das BLE-Modul an die TX/RX-Pins des UART am MSP430 
angeschlossen und auf meinem Handy das Terminal geöffnet. Die Verbindung 
funktioniert auch gut und ich bekomme Daten übertragen, exakt wie beim 
noramlen Bluetooth-Modul auch.

Leider verbraucht das Modul aber einen konstanten Strom. Nach meinen 
Infos kann man das Modul aber mit sog. GATT-Befehlen konfigurieren, 
daher habe ich den USB-Adapter angeschlossen und ich bekomme im 
Terminalprogramm auf den Befehl "AT" auch ein "OK" zurück.

Wie kann ich das Modul jetzt dazu bringen, zu schlafen und nur bei einer 
Messung (Sensor am MSP) aufwacht und die Daten schickt?

Das Datenblatt 
http://www.sunfounder.com/wiki/index.php?title=Bluetooth_4.0_HM-10_Master_Slave_Module 
fand ich hier nicht so aufschlussreich.

Ich habe verstanden, dass es diese CBServices gibt, die jeweils 
CBCharacteristics haben, die man auslesen kann.

Hat jemand eine Anleitung oder sonstige Tipps? Das wäre schön.

Vielen Dank!

von Torsten R. (Firma: Torrox.de) (torstenrobitzki)


Lesenswert?

Max schrieb:

> Das Datenblatt
> 
http://www.sunfounder.com/wiki/index.php?title=Bluetooth_4.0_HM-10_Master_Slave_Module
> fand ich hier nicht so aufschlussreich.

How to let module into sleep mode?
In discoverable mode, send “AT+SLEEP” string through UART, if all is 
okay,
module will return “OK+SLEEP” string and into sleep mode.

Klingt so, als könnest Du den Stromverbrauch nur reduzieren, wenn das 
Modul nicht verbunden ist.

von Max (Gast)


Lesenswert?

Hallo und danke für die Antwort,

es muss schon irgendwie gehen, da dort auch irgendwo (als Option bei 
AT+UART) steht "When module into sleep mode, you can wake up module 
through UART."

Aber ich hatte erwartet, dass das irgendwie einfacher geht, und man 
nicht alles selber programmieren muss. Sonst wären diese GAP/GATT-Sachen 
ja sinnlos.

von Torsten R. (Firma: Torrox.de) (torstenrobitzki)


Lesenswert?

Max schrieb:
> Aber ich hatte erwartet, dass das irgendwie einfacher geht, und man
> nicht alles selber programmieren muss. Sonst wären diese GAP/GATT-Sachen
> ja sinnlos.

Ja, generell ist BLE ja deswegen "Low Energy", weil die beiden 
Kommunikationspartner nur zu ganz bestimmten, vorher abgesprochenen 
Zeitpunkten für einen sehr kurzen Zeitraum Ihre Funkgeräte einschalten. 
Es sollte also per default schon sehr wenig Strom verbrauchen.

Ersetz Dein MSP430G2553 doch einfach durch z.B: ein nrf514(8)22 
Eval-Board, dann hast Du low-Power MCU und BLE auf einem Board.

von Max (Gast)


Lesenswert?

Torsten R. schrieb:
> Ersetz Dein MSP430G2553 doch einfach durch z.B: ein nrf514(8)22
> Eval-Board, dann hast Du low-Power MCU und BLE auf einem Board.

Ich hatte jetzt erst mal den MSP430 genommen, weil ich den schon kenne 
und der ja angeblich auch so low-power-mäßig unterwegs ist.
Da ich das Board jetzt schon gekauft habe und das Projekt bald fertig 
werden soll, bleib ich jetzt erstmal dabei.
Dass das nicth alles auf einem Board ist, ist kein Problem.

von Jim M. (turboj)


Lesenswert?

Max schrieb:
> Ich hatte jetzt erst mal den MSP430 genommen, weil ich den schon kenne
> und der ja angeblich auch so low-power-mäßig unterwegs ist.

Tja, aber Dein BTLE Modul hat auch einen Prozessor drauf, und der 
verbraucht Strom.

Schau Dir mal das Datenblatt zum NRF51 an, und bedenke das der im 
Gegensatz zu Deinem MSP430 in echte Tiefschlafmodi schalten kann, weil 
er keinen UART zur Kommunikation mehr braucht. Ich komme hier auf so ca. 
3 µA in den Sendepausen.

Mit langem Connection-Intervall (oder Slave Latency) ergibt das 
zweistellige µA im Durchschnitt während einer Verbindung.

Dürfte unterhalb des MSP430 liegen, denn wie gesagt darf der wegen UART 
seinen Taktgenerator nicht abstellen...

von mAX (Gast)


Lesenswert?

alles klar, danke, ich schau nochmal rein :)

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
Noch kein Account? Hier anmelden.