LoginSignup
49
45

More than 1 year has passed since last update.

ラズパイにScreenlyとremote.itで遠隔デジタルサイネージ

Last updated at Posted at 2019-07-26

はじめに

~ Remote controlled Digital signage over the internet ~
表示したい一枚絵がくるくると変わるデジタルサイネージをラズパイを使って簡単に作ってみます。
今回はラズベリーパイ(Raspberry pi)をNOOBS立ち上げ時、インターネット接続していると選択できる「Screenly」をインストールして、そのあとremote.itを追加するとインターネット越しにコントロールできるリモートデジタルサイネージが作れちゃいます。

デジタルサイネージ「Screenly」

「Screenly Open Source Edition」は機能が制限されていますが無償で気軽に使えるデジタルサイネージです。インストールも簡単。専用イメージが用意されています。

動画、写真、Webページなどを再生できます。ちょっと崩れたりすることがある?のはご愛嬌。

インターネットに接続した状態でNOOBSからラズパイ立ち上げ

インターネットに接続した状態だと選択できるイメージのメニューが増えます。
Screenlyを選択してインストールを実行します。

NOOBS.jpg

インストールが無事完了したら、screenlyが立ち上がってきます。

Screenly.jpg

この後はPCからWeb Interfaceにアクセスできます。Screenlyの設定はそちらから、ですが今は一旦ここまで。

スクリーンショット 2019-07-26 22.53.42.png

Screenly起動後の設定

ほぼ唯一ではあるものの、1点悩むポイントがこちら。
どうやってコマンドラインにアクセスするのか?です。
(本家 ↓ にしっかり書いていますのでちゃんと読む人は悩まないでしょう)

最初にWebインターフェイスからビデオを無効にし、ビデオの再生が停止したら、Ctrl + Alt + F1キーを押します。その後ユーザー名/パスワードを入力してログインします。デフォルトは変更しちゃったほうが良さそうですね。(2019/7現在以下のU/Pでログイン、公式より)

コマンドラインへのアクセス

[ctrl] + [alt] + [F1]
 U: pi
 P: raspberry

パスワードの変更

xxx@pi01:~ $ sudo passwd root
Enter new UNIX password: [rootの新しいパスワード]
Retype new UNIX password: [もう一回rootの新しいパスワード]
passwd: password updated successfully

xxx@pi01:~ $ sudo passwd pi
Enter new UNIX password: [piの新しいパスワード]
Retype new UNIX password: [もう一回piの新しいパスワード]
passwd: password updated successfully

SSHの有効化

細かい操作は割愛、事例はたくさんあると思います。
Interface Option > SSH あたりから有効化します。

xxx@pi01:~ $ sudo raspi-config

他設定

本家(先述のリンク先より)では以下の設定をおすすめされているようです。最後にリブートですね。

- Expand the root file system (required)
- Disable overscan (depends on your display)
- Change keyboard mapping (optional)
- Change time zone (optional, but Screenly’s scheduling uses this)
- Enable SSH (optional)
- Change password for ‘pi’ user (recommended)
- Once you’ve made all these changes, you must restart your Raspberry Pi

2021.9.27 更新 これ以降の手順を従来のconnectd_installerを使う手順からDesktop/CLIを使う手順に更新しました。

remote.itでネットワーク設計が不要に

remote.itを使うとラズパイをDHCPで運用してもremote.it経由であれば気にせずデバイスに乗り込めちゃいます。ポートフォワードや自宅ネットワークをインターネット側にポート公開(穴あけ)する必要もありません。
remote.itの概要は、こちらの@u___skさんの記事でも紹介されています。

加えると、インターネット接続の種類は選びません。ラズパイが携帯電話ネットワーク(Pocket Wifiやテザリングなど)にぶら下がっていてもOK。乗り込めちゃいます。

remote.it導入からサービスに接続するまでの流れ

  • remote.itアカウントの作成
  • remote.itのインストール
  • Raspberry piをremote.itデバイスとして登録
  • 接続したいサービス(ScreenlyのWeb Interface, SSH)の設定

最初にremote.itアカウント作成が必要ですが「インターネット世界の「どこでもドア」 remote.it」の記事がわかりやすいです。

remote.itのインストール

  • まず最新パッケージ一覧の取得
xxx@pi01:~ $ sudo apt update
  • remote.itをインストール
xxx@pi01:~ $ sudo apt install remoteit

これでremote.itのインストールは完了です。

Raspberry piをremote.itデバイスとして登録

  • このRaspberry piをremote.itデバイス登録するためにGUIコンソールにアクセスします。

http://[ラズパイのIPアドレス]:29999

remote.itアカウント、パスワードを入力し、SIGN INをクリックします。

PanelSignIn.png

Set up remote accessをクリックします。

DeviceRegistrationPi02.png

デバイス登録画面が表示されます。
任意のデバイス名を入力します。
"Services"にはラズパイ上で稼働中のサービスが表示されます。
リモートアクセスしたいサービスにチェックを入れ、REGISTERをクリックします。
remoteit adminサービスは、このWeb管理画面自体のサービスです。
このサービスを登録しておけば、遠隔からサービスの追加・削除を行うことができます。

ScreenlyのWeb InterfaceはHTTPS-443のhttpsサービスに割り当てられています。

デバイス名の入力、登録サービスの選択が完了したら、REGISTERをクリックします。

ServiceRegistrationPi02.png

少し待つと、、、、

ServiceRegistrationProgress.png

登録が完了します。

スクリーンショット 2021-10-13 20.08.04.png

これでRaspberry Piへリモート接続する準備が整いました。

Screenlyにremote.itでリモートログインしてみる

remote.itにサインインして先程登録したデバイス名を探す

スクリーンショット 2021-10-13 20.10.48.png

無事、remote.itにデバイス(Screenly入りのRaspbery Pi)が登録されていますね。デバイスの名前Screenly_pi_01をクリックします。
すると、このデバイスに登録されているサービスがいくつか表示されました。先程登録したWeb InterfaceやSSHですね。
httpsをクリックすると…

スクリーンショット 2021-10-13 20.13.04.png

新しいタブが開いてつながりました!URLの部分がremote.itで払い出された一時アクセス用のリンクになっていますね。これで接続するネットワークを変更してもインターネットに繋がっていればremote.itがその所在を特定してくれます。インターネット越しでもケータイのテザリングでも大丈夫です。

スクリーンショット 2019-07-26 23.34.43.png

安定した運用のために

念の為にcronで一日一回ぐらいリブートしておけばまあ安心かな。
設定例

xxx@pi01:~ $ sudo crontab -e

エディタ画面で以下の1行を追加

0 2 * * * /sbin/shutdown -r now

上記例は、1日1回深夜2時にリブートするのが私の人生経験上無難だったというだけです、お好みに合わせて変更してください。cronでなくとも、また編集方法なども各宗派お好みで。

ついでにこれは、つまりリモートでコントロールできるデジタルフォトフレーム

じいちゃんばあちゃんの住む実家に安いHDMIディスプレイとラズパイを置いてくる訳です。
リモートからたまに写真を入れ替えたりして近況を伝えたりします。
実家のネットワークの設計は不要、DHCPでインターネットにさえ出られればOK。
設置する場所を変更されてもたいして問題になりません。

スクリーンショット 2019-07-27 1.43.28.png

まとめ

ラズパイは面白いですね、いろんなトライをしたくなる環境が用意されているように感じます。
ラズパイで実現できる機能をインターネットに「安全に」「簡単に」「便利に」双方向接続する方法としてremote.itはとても良い組み合わせだと思います。他の利用例も紹介したいです。

ご参考
AWSのサーバーのSSHを超!安全に使うっていう@tkhmhirocさんの例がこちら

これは魔法か?! インバウンドポートを全閉したAWSのサーバに接続する方法

リモートコントロールできるWebカメラの例

ラズパイにRPi-Cam-Web-Interfaceとremote.itで遠隔Web IPカメラ

またこんな使い方はどう?ってのがあれば教えてほしいです!

49
45
0

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
49
45