このデモをここで正確にフォローしてください。唯一の違いは、arduino の代わりにエジソンを使用していることです。
これは私のサーバー コードapp.jsです。
var Cylon = require('cylon');
Cylon.robot({
name: 'chappie',
connections: {
edison: { adaptor: 'intel-iot' }//,
//led: { driver: 'led', pin: 13 }
},
devices: {
maxbotix: { driver: 'maxbotix', pin: '0' },
led: { driver: 'led', pin: 13 }
},
work: function (my) {
/*
STUFF TO DO!
*/
}
})
Cylon.api(
'socketio',
{
host: '0.0.0.0',//Is this correct??
port: '3000'
});
Cylon.start();
「blink-client」は、デバイスを定義する edison に実際の IP をハードコーディングしていることを除いて、デモとまったく同じです。すなわち
device = io(' http://ip of edison:3000/api/robots/chappie/devices/led');
app.js を実行すると、socketIO サーバーが正しく起動し、
[2015-02-17T20:04:12.813Z] INFO -- : Initializing connections.
[2015-02-17T20:04:13.116Z] INFO -- : Initializing devices.
[2015-02-17T20:04:14.646Z] INFO -- : Starting connections.
[2015-02-17T20:04:14.650Z] INFO -- : Starting devices.
[2015-02-17T20:04:14.667Z] INFO -- : Working.
[2015-02-17T20:04:14.703Z] INFO -- : Cylon API Server is now online.
[2015-02-17T20:04:14.704Z] INFO -- : Listening at https://127.0.0.1:3000
しかし、同じネットワーク上のPCのブラウザでblink-client.htmlを実行しようとすると、ERR_CONNECTION_REFUSEDが発生します
私は cylon-api-socketioバージョン "0.2.2"と nodejsバージョン 0.10.28を使用しています。
クライアント PC のブラウザで、単に
http://actual ip of edison
正しい IP があり、app.js が実行されていることを示す edison のデフォルト ページが正しく表示されます。
次のデバッグ手順がどうあるべきか本当にわかりません。どんな助けでも大歓迎です!