raspberry-pi2 に差し込まれた 3 つの LED を制御しようとしていますが、そのために johnny-five をインストールしました。
問題とは関係ないと思いますが、投稿の最後に記載されているように、johnny-five のインストール中にわずかなエラーが発生しました。
angular-fullstack によって生成された単純なコードがあります。これは、johnny-five を有効にする前に機能します (ボタンを押してサーバー側を呼び出すことができ、クライアント側で応答が得られ、すべて問題ありません)。
次に、次のように johnny-five を追加します ():
'use strict'
var Raspi = require("raspi-io");
var five = require("johnny-five");
var raspi_io = new Raspi();
var board = new five.Board({
io: raspi_io // if I comment this line, server won't stop, but then I can't access my led, which is the goal of raspi-io...
});
board.on("ready", () => {
console.log("Board ready !");
});
そして、実行するとこれらのログを取得しますsudo grunt serve
:
ボード準備完了!
開発モード
KO で 9000 をリッスンする Express サーバー: (デバッグ ログ) repl.js で検出された終了信号 (johnny-five)
1469358904063ボード クローズ.
Express サーバーを停止してい
ます
次に、ボードの「ready」イベントがトリガーされていることがわかります。問題ないように見えます。しかし、その後、ボードが閉じ、サーバーも閉じます。その理由はわかりません。できるだけ多くのログを追加しましたが、「終了」イベントがトリガーされた場所を確認できませんでした。ここで立ち往生しています(johnny-fiveのrepl.jsで):
this.cmd = cmd;
this.context = cmd.context;
cmd.on("exit", function() {
// this is the triggered event, can't find where the cmd.exit is triggered...
state.board.emit("exit");
state.board.warn("Board", "Closing.");
process.nextTick(process.reallyExit);
});
また、設定したパラメーターに関係なく、「点滅」がLEDで機能しないことに気付きました(ready関数で使用した場合)...
バージョンとインストール:
npm -v
3.8.6
nodejs -v
5.11.1
johnny-five を次のようにインストールしました。
sudo npm install johnny-five raspi-io --save
npm WARN オプション スキップに失敗しました オプションの依存関係 /chokidar/fsevents:
npm WARN notsup お使いのオペレーティング システムまたはアーキテクチャと互換性がありません: fsevents@1.0.14 npm WARN karma-phantomjs-launcher@1.0 .0 には phantomjs-prebuilt@>=1.9 のピアが必要ですが、何もインストールされていません。
fsevents (または phantomjs-prebuilt) をインストールしようとすると:
sudo npm install fsevents --save
npm ERR! notsup お使いのオペレーティング システムまたはアーキテクチャと互換性がありません: fsevents@1.0.14
npm ERR! notsup 有効な OS: darwin
npm ERR! notsup 有効なアーチ: 任意の
npm ERR! notsup 実際の OS: linux
npm ERR! notsup 実際のアーチ: 腕
質問:
サーバーが停止する理由を知っている人はいますか?