2016-07-23 3 views
0

Sense HAT(デバイス)からRaspberry Pi(ゲートウェイ)を介してBluemixアプリケーションにデータを送信しています。 My PiはRaspberry PiのCPU温度をBluemixに送信しています。私は、両方のデータを受け取る1つのIBM IoTノードを持っています。 Sense HATデータとRaspberry Piデータを区別することはできません。ここに関数ノードコードがあります:IBM Bluemixにデータを送信する際に、Raspberry PiのデバイスIDを取得する方法

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

戻り値は常に "Sense Hatから"ですが、デバッグで両方のデータを受け取ることができます。 if else文でmsg.deviceTypeを使用しても同じ結果が得られます。

+0

私はあなたのコードをテストし、正常に動作します。私はSense HatとRaspberry Piを区別することができます。デバイスのIDをダブルチェックして参照してください。 –

答えて

0

あなたはsenseHatidを使ってRaspberry PiとSenseHATからすべてのデータを公開しているようです。

ノードREDを使用して、Raspberry Piからの読み取り値を公開していますか?もしそうなら、送信Watson IoTノードのmsg.deviceTypeとmsg.deviceId値をCPU温度のRaspberry Piゲートウェイに、senseHatデータのSenseHitデバイスに設定していることを確認してください。

+0

ブライアンに感謝します。それが問題を解決しました。 – Meadow

関連する問題