RasPi 3でWayland

いやー,Gemini君のおかげで長年の問題が解決しました.

Raspberry Pi 3 Model B (RPi3)および同Model B+ (RPi3+)でATOM Cam 2の発するRTSPをモニターしてきました.ただこれがWaylandではうまくいかずXorgでやってきました.今回Geminiに聞きながらWaylandにしました.

これまでWaylandで問題になるのは,

  • 起動時に自動起動できない
  • 起動後に手動でVLCを起動しても,HDMIで接続しているデジタルテレビの電源をOFFにしてしばらくしてONにすると映像が来ない

の2点で,これは日常的に使うには致命傷に近いです.まずテレビをOFF/ONすると消えてしまう点について相談しました.

Geminiの回答を引用しますと,

  • GUIでの設定: メニュー > 設定 > Raspberry Piの設定 > ディスプレイ タブから「画面のブランク」を無効にします。
  • 設定ファイルでの対応: ~/.config/wayfire.ini を開き、以下の項目を確認(または追記)してください。
[idle]
dpms_timeout = 0
screensaver_timeout = 0

とのことで,この通りにして解決しました.

こうなると自動起動も解決したいです.RPi3(+)を起動し,まだPIXEL1のデスクトップが表示される前にsshでつないでtopコマンドで状況を見ると,vlcが一瞬見えますが,実際には起動してくれません.

起動の.timerファイルのOnBootSecなりOnStartupSecの時間を3minとか5minにしても,起動直後にvlcが見えて実際には動作してくれません.

これはひょっとして,RPi3(+)はReal Time Clock (RTC)がバッテリーでバックアップされていないから起動時は1970年1月1日0:00とかになるはずで,それからカウントしているのではないかと思い当たりました.

既に56年経っていれば3分も5分もとっくの昔で,XorgやWaylandが起動するのを待たずに即時起動されるわけです.

Geminiに聞くとまさにそのようで,systemd-time-wait-sync.serviceを起動して,vlcを起動するrun_vlc.serviceでは,

[Unit]
Description=My delayed service
# 時刻同期が完了するまで待つ
After=time-sync.target
Wants=time-sync.target

とするのが肝要とのことで,この既述をしてrun_vlc.timer内で,

[Timer]
OnBootSec=15sec

とすることでうまくいきました.

この辺については,Xorgでは動き,Waylandでは動かないというのは,それぞれの性質によるようです.

  1. Raspberry Pi OSの標準desktop manager. ↩︎

A案は没

屋外の監視カメラを強化するにあたり,どうしても避けて通れないのが屋外にWi-Fiのルーター1を設置することです.

わが家は屋根は鋼板で外壁にも薄い鋼板が貼ってあり,薄い鋼板の雨戸を閉めるとほとんど屋内外で電波2の往き来ができません.

それで没になってから案を紹介するというものなんですが,ずいぶん昔に出張・旅行用にPlanex MZK-MF300Nという小型のWi-Fiルーターを買いそれなりに活用してきましたが,これを再度活用しようという案です.

この十数年はホテルに無料Wi-Fiが備えられているのが普通なので利用することはめっきり減りました.たまに実験的に利用するくらいでした.

Planex MZK-MF300N

今回の屋外Wi-Fiルーター設置ではこのルーターを防水のケースに入れて家の軒下に取り付けようと考えました.それがA案です.

しかし,昨日届いたPoEアダプター3を試そうとしてこのルーターに電源を入れましたが動作してくれません.2回リセットして初期設定からしましたが,だめでした.残念ながら廃棄することにします.

今日では,ホテルには無料Wi-Fiが普通にあることからこの手のルーターはほとんどありません.一番小さいものを買って,という手はなきにしもあらずですが,新品で試すほどのいい案だとは思えません😓 そこでこのA案は没です.

  1. Access Pointまたはブリッジ. ↩︎
  2. 特にUHF帯とそれより高い周波数帯. ↩︎
  3. InjectorとEjectorのセット. ↩︎

今年の抱負 (2026)

早いもので,今年も残り10か月と27日となりました.そのうち今年の抱負を考えておこうと思っていましたが,何も考えないうちに2月になってしまいました.

実は今夜所属するアマチュア無線クラブの新年会がオンライン開催されます.参加メンバーが今年の抱負を発表するのが恒例になっていますので、少し考えてみようかと思いました,

とはいえ,何か新しいことを始めるにしても,時間は有り余っていますが,カネと体力がついていきません.知力も厳しいです.

ということで,一年間死なずに生きていくことくらいかな思います.生きるついでにPokémon GOも続けたいと思います.

そして,もしできれば門柱のサイバー化など,自宅のICTによるセキュリティー強化を図りたいと思います.

CR2032はピンキリ・偽物も横行

先日自転車の鍵をなくしてしまいました.自転車は家にあり鍵がかかっているので,なくしたのは家の中であることはほぼ確実です1唯一他の可能性として,誰かがいたずらで無施錠の自転車の鍵をかけて外して持ち去ったことが考えられますが,まあ,ないでしょう..心当たりをいろいろ探しましたが見つからず,そのうちどこからかポロッと出てくると期待しているのですが,2週間ほどしても出てきません.

そう言えば,現役時代に自転車の鍵を職場の自転車置き場近くの排水口に落として釣り上げたことがありますが,その時の次の代の自転車です.

出てくるまで自転車を使わないわけにはいかないので予備を使っています.これをなくしてはどうしようもないのでiPhoneで探せるタグを付けました.早い話,AppleのAirTagの廉価版です.

左のMVTAGと記されているのが,以前からもっていて今回自転車の鍵に付けたもので,右側は今回買い増ししたIDOSAという聞いたこともないブランドのタグです.一個1000円もしないで買えます.

実はもう半年くらいMVTagを自分のキーフォルダーと,大事なかばんに付けていました.位置の通知の頻度が期待したより少ないのと,近くにいて見つからないときに音を出せるのですが,その音が小さいのが不満でした.

そこで今回は音が大きいのを売りにしているIDOSAのものを買いました.白と黒の1個ずつで,写真にあるように付属のシリコンゴムのフォルダーに入れて使います.

まあ,IDOSAのタグについてはまだ購入して数日で,本質的な評価はできません.

タグが増えたこともあり,また,商品に付属してきたリチウム電池CR2032はそんなに長持ちしないだろうから大手通販サイトで,価格を調べてみました.

すると,たぶん一番安いのが100個で約2千5百円というもので,1個あたり25円ということになります.逆に高いのはPanasonicのもので,2個組で560円ですから1個あたり280円となり,10倍以上の開きがあります.

ネットで調べてみるとPanasonicと刻印されていても偽物もあるようです.安くても使えれば良いのですが,タグに入れて使用するような場合肝心なときに電池切れでは話になりません.そこで,次回は高いのと安いのを買って比較してみたいと思います.

ATOM Cam 2のRTSPをRasPi3で見る Trixie update (2025/10/18)

前回のupdateから3週間ですが,Raspberry Pi OSをTrixie (13.1)にupgradeしたので,現状をまとめます.

ATOM Tech社のATOM Cam2が出力するReal Time Streaming Protocol (RTSP)をRaspberry Pi 3 Model B (RPi3)および同+ (RPi3+)で視聴するシステムを少しずついじりながら運用しています.

概況

VLCによるRTSP視聴は,RPi3, RPi3+どちらにおいても非常に安定しています.特に,RPi3のほうは実用レベルの安定性です.

現在の状況 (RPi3, RPi3+共通)

システム構成

  • 1GB RAM, 32GB microSDカード (RPi3+は64GB)
  • Raspberry Pi OS 13.1 (Trixie)
  • rpi-swap (ZRAMとfile swapのハイブリッド.RPiOS Trixieのデフォルト設定)

Waylandでは安定しないので,raspi-configでX11を選択します.

VLCの起動

$HOME/bin/run_vlc.sh

#!/bin/bash
killall vlc
sleep 3
DISPLAY=:0 /usr/bin/vlc   \
	-f \
	rtsp://カメラのUserID:パスワード@カメラのIPアドレス/live	\
  	> /dev/null 2>&1 &

systemdの設定

$HOME/.config/systemd/run_vlc.service

# run_vlc.service
[Unit]
Description=Run vlc
DefaultDependencies=no
After=graphical.target

[Service]
Type=simple
ExecStart=/PATH/TO/THE/SCRIPT/run_vlc.sh
TimeoutStartSec=0
RemainAfterExit=yes

[Timer]
OnBootSec=15sec

[Install]
WantedBy=timers.target

設定

ユーザー権限にて

systemctl --user enable run_vlc

再起動の仕組み

$HOME/bin/rerun_vlc.sh

#!/bin/bash
systemctl --user restart run_vlc 

$HOME/.config/systemd/user/rerun_vlc.service

# rerun_vlc.service
[Unit]
Description=Re-run vlc
DefaultDependencies=no
After=run_vlc.target

[Service]
Type=simple
ExecStart=/PATH/TO/THE/SCRIPT/rerun_vlc.sh
TimeoutStartSec=0
RemainAfterExit=no

[Install]
WantedBy=default.target 

$HOME/.config/systemd/user/rerun_vlc.timer

# rerun_vlc.timer
[Unit]
Description=Rerun vlc every day at 11:32
After=graphical.target

[Timer]
OnCalendar=*-*-* 11:32:00
OnCalendar=*-*-* 04:30:00

[Install]
WantedBy=timers.target

設定

systemctl --user enable rerun_vlc.timer

解説

RPiOS 13.1 Trixieで採用されたrpi-swapの効果と,VLCのたゆまぬupdateのおかげと思いますが非常に安定です.RPi3ではほとんどVLCが落ちることはなく実用レベルと言えると思います.RPi3+ではまだ1日に1度くらいの頻度で落ちます.

VLCが落ちるケースでも従前は画面がフリーズすることが多かったですが,Trixieにupgradeして以降1OSのupgrade効果かVLCのupdateの効果かは不明.はフリーズはなく,VLCの表示窓がフルスクリーンを終了してエラーメッセージが表示されるようになりました.フリーズ状態でVLCやOSを再起動するには数分無駄時間がかかりましたが,フリーズしないので再起動も即できます.

また,その後確認はしていませんが,Raspberry Pi 4 Model BやRaspberry Pi 5では余裕で安定動作するはずです.

Rapsberry Pi Zero 2もTrixieにupgradeしましたが,VLCで当該のRTSPを視聴すること自体が不可能な状態です.