Es ist ein paar Wochen her, dass ich hier über meine Spielereien mit dem handlichen Ruuvitag berichtet habe, einem kleinen kreisrunden Gerät mit Sensoren für Temperatur, Luftfeuchtigkeit, Luftdruck und Bewegung. Die Daten werden über Bluetooth LE an eine Smartphone-App übermittelt und so z.B. auf dem iPhone angezeigt.
Bei der Nutzung eines zweiten Weges zur Anzeige der Daten über einen Raspberry Pi mit Node Red, hatte ich bisher Probleme und habe jetzt eines davon gelöst: Einzelne Ruuvitags werden mit dem Knoten Switch in Node Red herausgefiltert und so die Daten mehrerer Ruuvitag getrennt zur Anzeige gebracht.
PeripheralUuid
Zum Filtern der Ruuvitags benötigt man ein gerätetypisches Kriterium. Das ist bei elektronischen Geräten häufig die sogenannte MAC-Adresse. Diese wird auch von jedem Ruuvitag mit seinen Nutzdaten, dem Payload, übermittelt. Außer diesen Nutzdaten werden aber noch weitere Daten übermittelt, u.a. der PeripheralUuid, in dem sich die Mac-Adresse verbirgt.

Diese Daten kann man sich in Node Red in der rechten Spalte anzeigen lassen. Sie spielen die entscheidende Rolle, beim Herausfiltern eines speziellen Ruuvitags. Das ist nämlich immer dann erforderlich, wenn mehr als ein Gerät eingesetzt wird. Im obigen Screenshot zeige ich meinen ursprünglichen Flow (=die Kästchen in der mittleren Spalte, die aus der Auswahl in der linken Spalte zusammengestellt werden).
Knoten Ruuvitag
Ein Blick auf den Flow in obigem Screenshot zeigt den Knoten Ruuvitag, bei dem alle mit den davor eingefügten Knoten gesammelten Daten ankommen. Von dort besteht eine direkte Verbindung zum Knoten Pick Data, einem Funktionsknoten, mit dem die Daten auf die folgenden Knoten verteilt werden, die zur Anzeige im Dashboard erforderlich sind.
Im Prinzip sollte über den Knoten Ruuvitag jetzt ein Herausfiltern über den UUID möglich sein. Mir ist das trotzt vieler Versuche leider nicht gelungen, so dass ich erfolgreich zu einer Lösung mit dem Knoten Switch gegriffen habe.
Knoten Switch
Diesen Knoten Switch habe ich zwischen die Knoten Ruuvitag und Pick Data eingefügt und ihm den Namen Auswahl Ruuvitag gegeben.

Er hat zwei Ausgänge, den ersten für den bisherigen und den zweiten für einen weiteren Ruuvitag. Hinter dem zweiten Ausgang wurde dann ein Knoten Pick Data 2 eingefügt, dem wieder alle zur Anzeige des zweiten Ruuvitag im Dashboard erforderlichen Knoten folgen.

Zur Vollständigkeit gehört noch obiger Screenshot, in den der UUID der beiden Ruuvitags eingetragen werden muss. Als Ergebnis habe ich dann die folgende Datenanzeige für 2 Ruuvitags erreicht.

Fazit
Mit diesem Beitrag wollte ich besonders Einsteigern zeigen, dass technische Basteleien oft etwas Geduld erfordern. Damit sage ich dem Erfahrenen natürlich nichts neues. Beiden werden sicher die undefinierbaren Aussetzer (=Spratzer) in einigen Diagrammen auffallen.
Mit etwas Hilfe von Profibastlern, wird sich sicher auch dieses letzte Problem lösen, wenn diese denn mal diesen Beitrag im Netz finden – denkt HoSi.