LoginSignup
1
3

More than 3 years have passed since last update.

ラズパイでデジタルフォトフレーム

Posted at

ラズパイでデジタルフォトフレーム

概要

ちょっと電子工作して遊んだラズパイB+が数ヶ月放置されていたので、
デジタルフォトフレームにした時の手順備忘録

1. USBディスプレイをつなぐ

10年前に買ったSAMSUNGの7インチUSBディスプレイが押入れに眠っていたのを思い出したので、ラズパイにつないでみた。
・・・が、ドライバの有効化が結構面倒。
HDMIディスプレイを使う場合この手順は不要なので、これから買う人はHDMIが絶対お勧め。

DisplayLinkのUSBドライバの有効化が必要らしいので、下記のサイトを参考に有効化した。

参考サイト:
http://netbuffalo.doorblog.jp/archives/4580388.html

1-1. クロスコンパイル用のUbuntuを用意

VirtualBoxでUbuntuの仮想マシンを作成。下記サイトから「Ubuntu 14.04 LTS」のイメージをダウンロードして利用
https://www.ubuntulinux.jp/download/ja-remix-vhd

仮想マシンが立ち上がったら、Terminalでaptパッケージのupgradeとビルド系パッケージを一通りインストール

# 古いイメージなのでまずはアップデート
$ sudo apt update && sudo apt -y upgrade
# ビルド系パッケージをとりあえずいろいろ入れとく
$ sudo apt install -y git-core gcc-arm-linux-gnueabi build-essential chrpath gawk wget diffstat unzip texinfo gcc-multilib socat libncurses5-dev libsd1.2-dev xterm whiptail diffstat cpio libssl-dev flex bison kmod

1-2. クロスコンパイルとX Window Systemの起動

あとは、ほぼ参考サイトの手順通り
(途中で気づいたけど、初めから緑の画面は映っていた=ドライバは有効だった?)

最後のstartxが一般ユーザだとエラーになったので権限を変更

$ sudo chmod +s /usr/bin/xinit

無事、ディスプレイにデスクトップが表示された

2. 自動スリープの無効化

デフォルトだと一定時間無操作でスリープしてしまうので、自動スリープを無効にする

lightdmの設定ファイルを開いて

$ sudo vi /etc/lightdm/lightdm.conf

下記設定を追加

[SeatDefaults]
xserver-command=X -s 0 -dpms

再起動

$ sudo reboot -h now

3. スライドショーの準備と実行

画像用のディレクトリを作成(適当な画像を置いておく)

$ mkdir pic
$ chmod 777 pic/

Feh(画像ビューワ)をインストール
※fbi1はUSBディスプレイだと使えなそうだった

$ sudo apt install feh

実行(他のPCからSSHで実行すると、PCのディスプレイで表示しようとしてエラーになるので注意)

$ feh -Y -x -q -D 10 -R 43200 -F -Z -r -z ~/pic/

4. スクリプト化

いつでも起動できるよう、スクリプトにしておく

$ vi ~/slide.sh
~/slide.sh
#!/bin/bash
startx
feh -Y -x -q -D 10 -R 43200 -F -Z -r -z ~/pic/
$ sudo chmod +x ~/slide.sh

完了

自動起動とファイルの同期の仕組みはとりあえず置いといて、今回はこれで完成ということで
USBディスプレイだと画面の回転方法がわからなかったので、縦表示に切り替えは次の課題

1
3
1

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
1
3