昨年買ったRaspberry Pi用のディスプレイ付き保護ケースでkawaii デジタルフォトフレームを実現 (2) “feh” “fr24 rpi”
“昨年買ったRaspberry Pi用のディスプレイ付き保護ケースでkawaii デジタルフォトフレームを実現 (1) “samba””の続きです。
昨日に続き、Raspberry Pi用のディスプレイ付き保護ケース(“Raspberry Pi用のディスプレイ付き保護ケースを買ったので久しぶりにラズパイ再始動!”)でデジタルフォトフレームを実現する方法を解説します。昨日は、ラズパイ側に写真を保存するために利用する”Samba“のインストールと活用方法について説明しましたので、今回のTALKではデジタルフォトフレーム機能の実装について話を進めていきます。
< スライドショーの機能をfehで実現 >
デジタルフォトフレームでは、思い出の写真をランダムにスライドショー形式で表示する機能が不可欠です。ラズパイにスライドショー機能を実装する方法はいくつもあるようですが、今回は”feh“というX11 イメージビューアーを使うことにします。
ラズパイの”Terminal”を起動して、fehをインストールします。
sudo apt-get install feh
fehのインストールが終わったら、以下のコマンドを投入して、実際にスライドショーが動作することを確認して下さい。今回の作例では、デジタルフォトフレームに表示する写真は、”pi”直下の”slideshow”フォルダに保存しています。
DISPLAY=:0.0 XAUTHORITY=/home/pi/.Xauthority /usr/bin/feh --quiet --preload --randomize --full-screen --reload 60 -Y --slideshow-delay 20.0 /home/pi/slideshow
< ラズパイの画面を180°回転させる >
無事にスライドショーがスタートしました。
ただ、上の写真でお分かりの通り、ラズパイの電源ケーブル口が左下にあるため、このままでは、写真を表示した状態で、ディスプレイ付き保護ケースを机の上などに置くことができません。ということで、ラズパイの画面表示を180°回転する必要があります。
ネットで検索してみると、
sudo nano /boot/config.txt
で、
lcd_rotate=2
あるいは
display_rotate=2
と追記することで180°回転できるという説明を目にしますが、実際に試してみると、画面は180°回転できても、画面のタッチ操作が回転前の状態のままです。
今回購入した保護ケースに付属のディスプレイのマニュアル (“https://www.waveshare.com/w/upload/1/1e/RPi_LCD_User_Manual_EN.pdf”)を参照してみると、以下のコマンドで、タッチ操作を含めて画面を180°回転できることが判明したので、コマンド投入で問題なく画面を回転できました。
cd LCD-show/
sudo ./LCD35-show 180
< ラズパイ画面のスクリーンセーバーを無効化 >
デジタルフォトフレーム化するには、もうひとつ大きな課題があります。それは、標準のままでは、しばらく放置しておくと、ラズパイの画面がブラックアウト (スクリーンセーバー?)してしまいます。これでは、折角のスライドショーも短時間しか楽しめません。
そこで、以下の通り、ラズパイの各設定ファイルに追記することで、ラズパイをキオスク端末化することにしました。
sudo nano /etc/xdg/lxsession/LXDE/autostart
@xset s off
@xset s noblank
@xset -dpms
sudo nano /etc/lightdm/lightdm.conf
[SeatDefaults]
xserver-command=X -s 0 -dpms
< スライドショーを自動起動する >
毎回、”Terminal”でコマンド投入するのは面倒なので、ラズパイの起動後、20秒経過したら、自動的にスライドショーをスタートするようにします。
まずは、スクリプトを作成します。
sudo nano /home/pi/start-slideshow.sh
#!/bin/bash
DISPLAY=:0.0 XAUTHORITY=/home/pi/.Xauthority /usr/bin/feh --quiet --preload --randomize --full-screen --reload 60 -Y --slideshow-delay 20.0 /home/pi/slideshow
スクリプトを作成したら、念の為に、想定通りスライドショーが開始されることを確認しておきます。
bash /home/pi/start-slideshow.sh
それでは、OS起動時に実行したい処理を記述する”rc.local”ファイルに追記します。
sudo nano /etc/rc.local
sleep 20
bash /home/pi/start-slideshow.sh &
以上の作業が完了したら、ラズパイを再起動してみて下さい。
< Flightradar24のデータフィードと併用 >
ま、確かに小さい画面に映るスライドショーはとても綺麗なんですが、さすがに”Raspberry Pi 3 Model B+“をデジタルフォトフレームだけで活用するのは勿体ない限りです。
そこで、これまで”Raspberry Pi Zero W“で運用していた”Flightradar24“のデータフィード機能を移行させることで、付加価値を上げようと思います。
ラズパイにデータフィード機能をインストールする手順はとても簡単です。詳しいことは、”こちら“や”こちら“をご覧下さい。
sudo bash -c "$(wget -O - https://repo-feed.flightradar24.com/install_fr24_rpi.sh)"
< Siri Shortcutsとの連携>
“Flightradar24“のデータフィード機能との抱き合わせで運用することにしたので、結局、最後までトライしなかったのですが、いろいろ検討している過程で、”Siri Shortcuts“とスマートコンセントを組み合わせて、自宅に人がいない時とか夜間とかにラズパイを自動的にシャットダウンする方法を試していました。
下図のように、ショートカットを作成すれば、ラズパイをシャットダウンできるのですが、その後、スマートコンセントの電源をオフするという流れのスクリプトを組むことはできませんでした。”SSH経由でスクリプトを実行”というアクションは単独でしか動作しないみたいです。
|
|
|
ホームページ “THE POOH FILES”にも是非お立ち寄り下さい。
“Adobe Stock“でベストショットな写真素材を販売中です。是非ご覧下さい。