LoginSignup
5
6

More than 1 year has passed since last update.

2分でPCにWebリモコンを実装できるライブラリ「rcjs」でラズパイ操作してみた

Posted at

Raspberry PIでIoT製品のプロトタイプをしてると、ディスプレイに繋げずにラズパイを操作したい状況が出てきます。

そんな時のために使えるお手軽Webリモコンを実装できるnpm形式のpackage「rcjs」を開発して、webリモコンを作ってみました。

※npmには既にrcjsというパッケージが存在していますが、今回作ったものは僕のGithubからでのみnpm installできます。

使い方

Install

npm install --save TakutoYoshikai/rcjs
index.js
const Remocon = require("rcjs");

const remocon = new Remocon();

remocon.addButton("button title", function() {
  //do something
});

remocon.start(3000);

do somethingのところに好きな処理を実装します。shellコマンドをexecしても良いし、JavaScriptで実装しても良いです。

ラズベリーパイだと、電源コードを抜いてシャットダウンする方法をあまり使いたくないと思うので、shutdownコマンドを遠隔で実行できるようにしてみたいと思います。

index.js
const Remocon = require("rcjs");

const remocon = new Remocon();

const execSync = require("child_process").execSync;

remocon.addButton("シャットダウン", function() {
  execSync("shutdown -h now");
});

remocon.start(3000);

実行

# shutdownコマンドはroot権限が必要なのでsudoをつける
sudo node index.js 

ローカルIPアドレスを調べて、http://<local ip address>:3000/ にアクセス

S__13402140.jpg

このボタンを押したらシャットダウンされる。
同じLAN内だったらローカルネットワーク通信で遠隔操作可能。

リポジトリ: https://github.com/TakutoYoshikai/rcjs

5
6
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6