2016-07-23 42 views
0

Ich sende Daten von Sense HAT (Gerät) über ein Raspberry Pi (Gateway) an meine Bluemix-Anwendung. Mein Pi sendet auch CPU-Temperatur von Raspberry Pi zu Bluemix. Ich habe einen IBM IoT-Knoten, der beide Daten empfängt. Ich bin nicht in der Lage, die Sense-HAT-Daten von Raspberry Pi-Daten zu unterscheiden. Hier ist die Funktion Knoten Code:Wie bekomme ich die Geräte-ID von Raspberry Pi beim Senden von Daten an IBM Bluemix als Gateway

var v; 
if(msg.deviceId==="raspberryID") 
{ 
    v= "From Raspberry Pi"; 
} 
    else if (msg.deviceId=="senseHatid") 
{ 
    v= "From Sense Hat"; 
} 
return {payload:v} 

Rückgabewert ist immer „Von Sense Hut,“ aber ich bin in der Lage, sowohl die Daten im Debug zu empfangen. Ich bekomme das gleiche Ergebnis, wenn ich in der if else-Anweisung msg.deviceType verwende.

+0

Ich habe Ihren Code getestet und es funktioniert gut. Ich bin in der Lage, den Sense Hat von Raspberry Pi zu unterscheiden. Überprüfen Sie die Geräte-IDs und sehen Sie. –

Antwort

0

Es sieht so aus, als ob Sie alle Daten von Raspberry Pi und SenseHAT mit dem SenseHatid veröffentlichen.

Verwenden Sie Node-RED, um die Messwerte vom Raspberry Pi zu veröffentlichen? Wenn dies der Fall ist, stellen Sie sicher, dass Sie die Werte msg.deviceType und msg.deviceId für den ausgehenden Watson-IoT-Knoten auf das Raspberry Pi-Gateway für die CPU-Temperatur und das SenseHit-Gerät für die senseHat-Daten festlegen.

+0

Danke Brian. Das hat das Problem gelöst. – Meadow