如何在将数据作为网关发送到IBM Bluemix时获取Raspberry Pi的设备ID

时间:2016-07-23 18:05:32

标签: ibm-cloud node-red raspberry-pi3 watson-iot

我将Sense HAT(设备)的数据通过Raspberry Pi(网关)发送到我的Bluemix应用程序。我的Pi也将Raspberry Pi的CPU温度发送到Bluemix。我有一个IBM IoT节点接收这两个数据。我无法将Sense HAT数据与Raspberry Pi数据区分开来。这是函数节点代码:

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

返回值始终是“From Sense Hat”,但我能够在调试中接收这两个数据。如果我在if else语句中使用msg.deviceType,我会得到相同的结果。

1 个答案:

答案 0 :(得分:0)

看起来您正在使用senseHatid从Raspberry Pi和SenseHAT发布所有数据。

您是否使用Node-RED发布Raspberry Pi的读数?如果是这样,请确保将出站Watson IoT节点的msg.deviceType和msg.deviceId值设置为Raspberry Pi网关以获取CPU温度,将SenseHit设备设置为senseHat数据。