TI LaunchPad Sensor Tag Kit mit SimpleLink, Wireless CC1352R MCU, Unpacking und Ersteindruck


Bisher habe ich mich ja mehr um die populären Mikrocontroller wie den Raspberry Pi (Broadcom SOC (USA), ja eigentlich ein Micro-PC, Raspberry Pi Foundation, Großbritannien), von Atmel (u. a. MCU ATmega 328P, mittlerweile Microchip Technology, USA, Plattform Arduino), STMicroelectronics (Europa, STM32 MCU auf Bluepill, China), von Espressif Systems (ESP8266 und ESP32 MCUs, China) und deren günstigen Nachbauten aus China beschäftigt.

Aber natürlich hat auch die altehrwürdige Chipschmiede Texas Instruments aus den USA mehrere MCUs (Micro Controller Units) im Angebot. Die CC1352R habe ich mir näher angeschaut. Für rund 35 Euro bekommt man ein komplettes Entwicklungskit in einem kompakten Gehäuse, in dem eine Platine mit CC1352R sitzt und außerdem noch ein paar Sensoren.

Doch zuerst einmal zum Herzstück, dem MCU-Chip.

Die CC1352R MCU


Die Specs des CC1352R lesen sich wie folgt:


Das ist eine beeindruckende Anzahl von Funktionen. Besonders die Funkstandards heben den CC1352R von der Konkurrenz ab. Mit ihm kann man auf 433 MHz (Funksteckdosen), 868 MHz (LoRa-WAN) und 2.4 GHz (Bluetooth, WPAN (Wireless Personal Area Networks, IEEE 802.15.4, etwa für ZigBee® (Funksteckdosen))) funken, wo andere Platformen externe Module benötigen.

Allerdings schlägt der CC1352R aber auch mit derzeit ungefähr 8 bis 9 Euro pro Chip zu Buche, während z. B. ein nackter ESP32-Chip nur ca. 1.50 € kommt.

Das LPSTK-CC1352R LaunchPad SensorTag Development Kit


Um den CC1352R einmal auszupobieren, ist das LPSTK-CC1352R LaunchPad SensorTag Development Kit (ca. 35 €) ideal. Hier bekommt man den CC1352R bereits auf eine Platine aufgelötet in einem ansprechendenden, kompakten Gehäuse.

Die Außenhaut aus rotem Gummi lässt sich abziehen. Durch eine kleine Gummilippe rastet sie auch wieder ein beim Aufstecken. Die Gummihaut hat ein Loch für einen Schlüsselanhängerring, allerdings werde ich den nicht benutzen, ist die Gefahr doch viel so groß, ihn dort zu verlieren. Zum daran an die Wand hängen wird er aber taugen.

Die Außenhaut hat an den richtigen Stellen Aussparungen, damit Licht und Feuchtigkeit noch ins Innere dringen können, um diese zu messen und damit man die LEDs noch sehen kann..


Ist die Außenhaut abgestreift, kommt die Platine zum Vorschein, geschützt durch eine kleine Acrylglas-Platte. Auch diese lässt sich entfernen und so kommt man an den Batteriedeckel, der nicht - wie man meinen könnte - an der Front aufgeht, sondern den man von hinten mit dem Fingernagel aufhebeln muss.

Nun zeigt sich die Spannungsversorgung: Zwei AAA-Batterien reichen zum befeuern des stromsparenden Kits aus, dem ich übrigens nach der Abkürzung LPSTK liebevoll Lipstick nennen werde, weil die Farbe des Gummis so schln dazu passt und weil man lauter Lippenstift-Schmink-Apps findet, such man "LPSTK" im Google Playstore.

Auch die rote Platine kann man herausnehmen. Diese ist nur ins Gehäuse eingeklippt und mit ein bisschen Biegen der oberen Kante zu lösen. Auf der Rückseite wird dann die alternative Stromversorgung sichtbar: hier kann man einen Knopfzellenhalter für eine 3V-Knopfzelle einlöten.

Oder man löst das Batteriekabel und schließt z. B. ein Netzteil an die Platine an und benutzt diese solo oder integriert sie ohne Gehäuse in eine größere Schaltung.


Der modulare Aufbau, bei dem noch nicht einmal ein Schraubendreher zum Auseinandernehmen nötig ist, hat mir sehr gefallen. So bleibt man sehr flexibel, wie man das Kit verwenden will, ohne etwas zerstören zu müssen.

Auf der Platine finden sich außerdem noch eine ganze Reihe von Sensoren für: Außerdem gibt es eine RGB-LED und zwei Taster an den Seiten, die auch gut von außen bedienbar sind, sowie einen Ein/Ausschalter und natürlich ein Schraubanschluss für die mitgelieferte Antenne. Diese benötigt man allerdings nur für Frequenzen unter 1 GHz. Die Antenne für 2.4 GHz ist als Leiterbahn direkt auf die Platine (oben rechts) realisiert.


Außerdem habe ich noch eine winzig kleine Antennenbuchse links neben dem Beschleunigungssensor entdeckt. Wenn ich den Leiterbahnen folge, gelange ich zu der integrierten 2.4 GHz-Antenne. Dazwischen sitzt noch ein winziges Bauteil, vielleicht ein 0 Ohm-Widerstand. Das würde zumindest Sinn machen. Dann wäre das ein Anschluss für eine externe 2.4 GHz Antenne und man schaltet auf diese von der internen Antenne um, indem man den 0 Ohm-Widerstand entfernt.

Insgesamt macht die Platine, das Gehäuse und das gesamte Kit einen hochwertigen und durchdachten Eindruck. Sozusagen das Gegenteil von "kaputt gespart", wie man es manchmal bei Billig-China-Komponenten hat, etwa der Blue Pill, bei dem man sogar das Lötzinn gespart hat, um die USB-Buchse gescheit festzulöten. Dafür kostet die Billig-China-Plue-Pill auch nur 2 Euro, das Kit hier aber 35 €.

Pinout des LPSTK-CC1352R

Was wäre eine Entwicklungsplatine ohne GPIO-Header, um seine eigenen Sensoren daran anschließen zu können? Das Kit hat gleich zwei 20-polige, zweireihige Pfostenstecker. Diese scheinen genormt zu sein, denn es gibt wohl passende Shields, sogenannte BoosterPacks zu kaufen, die man dort wohl einfach aufstecken kann.

Ich beabsichtige die Header aber mit gewöhnlichen Jumperkabeln zu nutzen, denn der allgemeine Standard von einem Zehntelzoll ist hier gegeben. Werfen wir also eien Blick auf das Pinout:



Die Abbildung entspricht der mitgelieferten Pinout-Karte (etwa Postkartengröße), die man so als praktische Referenz immer parat hat und nicht erst ausdrucken muss.

Auf der Platine selbst steht neben jedem Pin noch einmal die GPIO-Nr. (oben in grau angegeben, nicht die in weiß angegebenen laufende Nr.), in die auch gleich schon die auf dem Board angeschlossenen und damit vergebenen Pins angegeben sind:

Alles im Allem sind aber noch genügend Anschlüsse für eigene Projekte offen.

Anwendung und App SimpleLink Starter

Beim ersten Betrachten der Platine und des Pinouts kam mir gleich die Idee, an die Header über I2C ein OLED-Display anzuschließen und dort die Daten für Temperatur, Luftfeuchte etc. anzuzeigen.

Die Lochrasterplatine mit OLED, die auf dem Acrylglas aufliegen würde, hatte ich schon vor meinem geistigen Auge, doch dann fiel mir beim Lesen des ersten Videos der Dokumentation auf, dass ein Display gar nicht nötig sein sollte, bzw. das Display das meines Smartphones sein würde.


Ich suchte gleich nach einer Anwendung "LPSTK" im Android Playstore, doch da gab es nur lauter Lippenstift und Schmink-Apps. Weshalb mein Kit für mich auch nur noch "Lipstick" heißt.

Eine Suche nach "Texas Instruments" fand dann zwei passende Apps: SimpleLink Starter und SimpleLink Sensor Tag, die allerdings bis auf den Namen absolut identisch scheinen.


Nachdem SimpleLink Starter auf dem Smartphone installiert war, habe ich es gestartet und meinen Lipstick eingeschaltet. Über Bluetooth findet mein Smartphone dann den Lipstick als "Multi Sensor". Ein Klick darauf verbindet den Lipstick mit meinem Handy. Das dauet einen kurzen Augenblick.


Und kurze Zeit später finde ich die Sensordaten auf meinem Smartphone wieder. Jeder Sensor - bis auf den Hall-Sensor, der fehlt aus unerklärlichen Gründe - wird in der Übersicht aufgeführt und kann angeklickt werden, um eine größere, detailliertere Kurve anzuzeigen.

Mit Klick auf den kleinen Pfeil rechts kommt man in die Einstellungen für den Sensor, indem man ihn wohl aktivieren und deaktivieren und den Abfrageintervall einstellen können soll. Aber egal, was ich einstelle und sooft ich auch Save klicke, es ändert sich nichts. Hier scheint mir die Firmware noch nicht ganz fertig.

Später habe ich mir übrigens eine neue Version der Firmware besorgt und damit konnte man dann auch die Werte ändern und speichern.

Die angezeigt Temperatur lag allerdings gleich rund 4 Grad Celsius zu hoch und das auch in der neuen Firmware Version. Das Ganze bei geöffnetem Gehäuse. Auf die Temperatur kann man sich also leider nicht verlassen und muss ein paar Grad abziehen.

Durch Anhauchen steigen gemessene Temperatur und Luftfeuchte. Der Luftfeuchtewert reagiert recht schnell auf Veränderungen und stimmt mit meinen sonstigen Hydrometern gut überein. Ich würde sagen, der Luftfeuchtewert ist verlässlich.


Der Lichtsensor scheint die einstrahlende Menge an Licht gleich in die Angabe Lux umzurechnen und anzuzeigen. Momentan habe ich kein anderes Luxmeter zur Überprüfung, aber ich habe erst einmal keinen Zweifel an der Richtigkeit des Wertes. Er verändert sich auch plausibel, wenn mehr oder weniger Licht einfällt. In wie weit der kleine Schlitz im Gehäuse den Messwert beeinfluss und ob er durch die Firmware entsprechend kompensiert wird, darüber kann ich nur spekulieren.

Desweiteren kann man die RGB-LED auf grün oder rot oder grün und rot gleichzeitig, was dann geld ergibt, schalten. Warum man hier nicht das blau der RGB-LED schalten kann, ist mir allerdings wieder schleierhaft.

Da fällt mir auf, dass nur DIO3 mit PWM (Pulsweitenmodulation) bezeichnet ist. Ich kann fast nicht glauben, dass beim CC1352R nur ein Pin PWM beherrscht (nunja, beim ATmega sind es ja auch nicht gerade viele). Das Datenblatt ist diesbezüglich nicht sehr aufschlussreich. Ansonsten könnte man mit der RGB-LED eigentlich fast jede beliebige Farbe darstellen.

Die Schaltzustände der beiden Taster links und rechts werden außerdem angezeigt. Das ist so jetzt natürlich nciht besonders sinnvoll, aber man stelle sich vor, hier hätte man zwei Geräte hinterlegt, die man via ZigBee ein und ausschalten kann. Oder man hat eben doch ein Projekt mit eigenem Display und verwendet die beiden Buttons zum Navigieren durch ein minimalistischen Menü (Optionen durchschalten durch kurzes Drücken der Buttons und bestätigen durch langes Drücken).

Außerdem wird die restliche Batteriekapazität angezeigt, wobei ich schon gespannt ist, wie lange die zwei kleinen AAA Batterien durchhalten.

Der letzte Eintrag gehört dem Beschleunigungsmesser, dem Acceloerometer. Der verhält sich allerdings ganz anders als die Exemplare, mit denen ich Erfahrung gemacht habe, dem LSM303C und dem MPU-6050.

Den hier ist der Wert der Z-Achse auf den Wert 5 wie festgenagelt. Und das kann nicht sein. Denn mit einem Beschleunigungssensor wird auch immer die Beschleunigung Richtung Erdmittelpunkt, verursacht durch die Gravitation, gemessen. Wenn ich das Gerät um alle drei Achsen X, Y und Z drehe, dann müssen sich auch alle drei Werte ändern.

Nachtrag: mit der nachinstallierten Firmware neueren Datum funktionieren jetzt alle drei Achsen. Dies schien ein Bug in der alten, auf dem Gerät vorinstallierten Firmware gewesen zu sein.




Eine Besonderheit des Lipsticks ist die innovative Art der Programmierung. Normalerweise schließt man ja einen Mikrocontroller zur Programmierung an den USB-Port des PCs an und programmiert ihn dann über die UART-Schnittstelle. Dies kann man bei dem LPSTK-CC1352R über die 10 polige Mini-JTAG-Buchse (Kabel in Lieferumfang enthalten) immer noch tun, man kann seine eigene Firmware aber auch auf sein Handy kopieren (etwa über WLAN) und dann von dort aus auf sein Lipstick installieren. Das tut man mit dem Button "Select Custom Fw").

Mit dem Button "Select Factory Fw" kann man nicht nur, wie ich erst annahm, die bereits installiere Sensor-Firmware wieder herstellen, sondern auch auf andere Firmwares vom Hersteller, also Texas Instruments, zugreifen.


Die Firmware "BLE Multi-Sensor for LPSTK" ist die Software, die bereits auf dem Gerät läuft. Allerdings in einer fehlerbereinigten Version, die die bereits erwähnten Bug korrigiert, aber auch nicht mehr so oft abstürtzt und auch weniger Probleme beim Verbindungsaufbau / Abbau hat. Man sollte sie also in jedem Fall installieren.

Bevor man das macht, kann man - so man denn ein ZigBee Gerät hat, das man schalten könnte, die "DMM - ZigBee End Device Switch & BLE ..." Firmware installieren.

Oder eine der anderen Firmwares ausprobieren, wenn man denn Verwendung dafür hat und weiß, was die genau tun. Ich selbst hatte für die andere Firmwares keine Verwendung.




Hat man eine Firmware ausgesucht, wird diese über das Internet von TI heruntergeladen und dann auf den Lipstick hinaufgeladen. Ist der Upöoad fertig, startet das Gerät neu, zu erkennen an der blauen LED und man den neuen Funktionsumfang nutzen.

Die neu installierte Firmware sollte natürlich auch wieder enen OAD (Over the Air Download) Service integrieren, damit man wieder zurück kann, ansonsten muss man wohl doch die JTAG-Schnittstelle zum Neuprogrammieren bemühen. Dazu braucht man wiederum einen JTAG-Debugger, mit diesem winzigen Anschluss.

Ganz oben auf dem Smartphone findet sich übrigens eine Option, um die Werte - neudeutsch - in die Cloud zu bringen. Oder zu gut deutsch: über einen Web-Service werden die Daten zu einem Server (etwa von IMB) übertragen und gespeichert. Und die IBM-Weboberfläche zeigt uns dann die Daten an.

Schade finde ich hier, dass man keine LoRaWan-Funktionalität bereitstellt. Die Frequenz von 868 MHz (in Europa) kann der Lipstick doch. Das Protokoll ist stromsparend, hat eine große Reichweite und ist schnell genug, um die paar Sensordaten zu übertragen. Mit TheThingsNetwork.org hat man einen kostenfreie der kostengünstige Möglichkeit, seine Daten zu übertragen.

LoRaWan und der Lipstick würde sich super ergänzen. Damit könnte man die Temperatur und Luftfeuchtigkeit im abgelegeneren Gewächshaus messen und nach Hause zur Überwachung übertragen. Oder die Sonnenscheindauer auf dem Feld des Landwirtes registrieren. Oder melden, wenn sein Auto widerrechtilch bewegt wird.

Das ist für mich eine verpasste Chance. So wie das jetzt ist, braucht man unbedingt ein Smartphone als Handlanger / Weiterleiter, dass stromfressend über 3G/4G/5G übertragen muss anstatt nur den Lipstickk, der stromsparend seine Daten über LoRaWAN loswerden könnte.

Eine Beispiel-Applikation würde gleich beweisen, dass es möglich ist. So muss ich erst recherchieren, ob es die entsprechenden Biliotheken gibt bzw. ob man die selbst programmieren kann. Wobei die Frage ist, ob sich das alles lohnen würde oder ob man nicht lieber auf andere, bereits erprobte Plattformen zurückgreift. Wobei das sehr stromsparende Design des Lipsticks einfach dafür prädestiniert wäre.

Fazit

Der Lipstick ist ein durchdachtes Stück Hardware, das in hoher Qualität und mit viel Verstand zusammengebaut wurde. Die vorinstallierte Firmware allerdings ist ziemlich verbuggt und sollte so schnell wie möglich mit der OAD Funktion geupdated werden - aber das ist ja kinderleicht.

Aber auch die neueste Firmware (Stand Artikelschreibung) lässt immer noch den Hall Sensor vermissen. Ein LoRaWAN-Anbindung über 868 MHz (Europa) bzw. 915 MHz (USA) mit Beispielapplikation vermisse ich schmerzlich, scheint das Gerät doch wie gemacht dafür. Aber vielleicht bin ich da auch nur noch nicht drüber gestolpert. Denn bisher habe ich nur einen ersten Blick gewagt und mich noch nicht sehr in die LPSTK-Umgebung eingearbeitet.

Der LPSTK-CC1352R ist ein Stück Top Hardware, ohne Zweifel, allerdings auch zu einem Top-Preis. Ich glaube, er wird es schwer haben, sich bei Hobbyisten durchzusetzen. Wenn man bedenkt, wie groß unzwischen die Arduino oder Raspberry-Gemeinde ist, wieviele Webseiten, Blogs und Videos man dazu findet. Wieviele Leute Libraries geschrieben haben und einem in Foren helfen können... und beim Lipstick gibt es außen den Infos vom Hersteller nicht mehr viel im Internet zu finden... ja, dann stehen die Chancen, dass sich der LPSTK im Markt breit macht, schlecht. Es kommt halt doch, wie sie oft, nicht auf die beste Qualität, sondern auch ganz entscheidend auf den Preis an.

Naja, und eine verbuggte, vorinstallierte Firmware ist natürlich auch kein gutes Aushängeschild. Damit lässt sich eine Message wie "Schaut her, wie einfach ihr eure MCU mit dem Smartphone bedienen und updaten könnt" nicht transportieren.

Nichtsdestotrotz kann der CC1352R mit seinem breitem Funkspektrum punkten. Dies müsste allerdings noch mehr mit Beispiel-Apps gezeigt werden.

Video

Meinen ersten Eindruck und die Bedienung mit dem Smartphone habe ich in folgendem Video noch einmal zusammengefasst. Bitte dran denken: Das Video habe ich mit der alten, auf dem Gerät vorinstallierten Firmware gedreht. Erst später habe ich die neue Firmware entdeckt, die wesentlich weniger Bugs hat.