Node-REDでは,ラズベリー・パイのI2Cをサポートするノードがありませんが,contrib-gpioノードをインストールすればI2Cを利用できます.
ラズベリー・パイにnode-red-contrib-gpioをインストールする場合,そのままインストールしようとしても,既存のGPIOライブラリとバッティングするためか,うまくいきません.
RaspberryPiへnode-red-contrib-gpioをインストールする場合は,以下のように行ってください.
1)既存のNode-REDやnode.jsを削除
sudo apt-get remove nodered
sudo apt-get remove nodejs nodejs-legacy
sudo apt-get remove npm # if you installed npm
2)新しいnode.jsをインストール
curl -sL https://deb.nodesource.com/setup_4.x | sudo bash -
sudo apt-get install -y build-essential python-rpi.gpio nodejs
3)Node-REDをインストール
sudo npm cache clean
sudo npm install -g --unsafe-perm node-red
4)nrgpioをインストール
sudo apt-get update && sudo apt-get install python-rpi.gpio
ここで,
sudo visudo
とコマンドを入力して設定ファイルを開き,一番下の行に以下の行を追加します.
NodeREDusername ALL=(ALL) NOPASSWD: /usr/bin/python
5)node-red-contrib-gpioとRaspberryPi用のI/Oプラグインをインストール
sudo npm install -g --unsafe-perm node-red-contrib-gpio
sudo npm install -g --unsafe-perm raspi-io
-gオプションをつけて、グローバル・インストールするようにしてください.
▲Node-REDの起動
以後,Node-REDを起動するときは以下のコマンドを入力してください.
sudo node-red
sudoするのは,GPIOノードでWiringPiにアクセスするときに権限が必要だからです.GPIOノードを使わないなら,sudoは不要です.
以上で,Windowsパソコンに繋いだArduinoのGPIOピンを使うとき,Raspberry PiのGPIOピンを使うとき,RaspberryPiに繋いだArduinoのGPIOピンを使うとき,どれも同じGPIOノードが利用できるようになります.