2016-07-23 64 views
0

我通過Raspberry Pi(網關)將數據從Sense HAT(設備)發送到我的Bluemix應用程序。我的Pi也將Raspberry Pi的CPU溫度發送到Bluemix。我有一個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} 

返回值總是「From Sense Hat」,但我能夠在調試中接收到兩個數據。如果我在if語句中使用msg.deviceType,我會得到相同的結果。

+0

我測試了你的代碼,它工作正常。我能夠將Sense Hat與Raspberry Pi區分開來。仔細檢查設備ID並查看。 –

回答

0

看起來您正在使用senseHatid發佈來自Raspberry Pi和SenseHAT的所有數據。

您是否在使用Node-RED來發布樹莓派的讀數?如果確實如此,那麼您要將出站Watson IoT節點的msg.deviceType和msg.deviceId值設置爲針對CPU溫度的Raspberry Pi網關,並針對senseHat數據設置SenseHit設備。

+0

謝謝Brian。這解決了問題。 – Meadow

相關問題