PF-50WGの内蔵メモリに、定期的にダウンロードして内容を自動更新するようにする。
httpでアクセスできるWWWサーバスペースを用意し、そこに画像を置けば、自動でのPF-50WGの画像を、そのページに同期させる。
ダウンロードにはwget を使用。
クロスコンパイルしたwgetを、httpでアクセスできる所に置いておく。
$ mkdir public_html/PF-50WG $ cp -p wget-1.12/src/wget public_html/
以下の作業はPF-50WGにtelnetした状態で行っている。
# cd /mnt/LStorage/skannd # wget <ホストのIPアドレス>/~pf50wg/wget Connecting to <ホストのIPアドレス> (<ホストのIPアドレス>:80) wget 100% |*******************************| 1841k 00:00:00 ETA # ls -l wget -rwxr-xr-x 1 root root 1885812 Sep 19 12:12 wget # vi hourly # vi wget-update
hourly の内容
#! /bin/sh if [ -x /mnt/LStorage/sknand/radiko-abc ]; then /mnt/LStorage/sknand/radiko-abc fi if [ -x /mnt/LStorage/sknand/wget-update ]; then /mnt/LStorage/sknand/wget-update fi
wget-update の内容
#! /bin/sh if [ -x /mnt/LStorage/sknand/wget ]; then if [ ! -d /mnt/LStorage/sknand/downdir ] ; then mkdir /mnt/LStorage/sknand/downdir fi cd /mnt/LStorage/sknand/downdir ../wget -nd -np -nc -r http://…(ダウンロードする画像を置いているURL) rm robots.txt if [ -f index.html ]; then rm index.html if grep -q 'Downloaded: 2 files' wget.log; then echo not changed else echo changed killall ui fi else echo get failed fi rm wget.log fi
FATでマウントされていて実行属性は付きっぱなしなので、chmod +x の必要はない。
改造ファームウェアでは、
1時間おきに/mnt/LStorage/sknand/hourly が起動されるようにしている。
このバックグランド処理でファイルを更新しても、そのままではスライドショーの内容は更新されない。
PF-50WGの画像表示は プログラム /sbin/ui が行っている。killすると自動で再起動されるので、画像の更新があった時はkillするように。