RasPi 3+でfcitx5-mozcがOKに

Raspberry Pi 3 Model B (RPi3)で日本語入力できるのにRaspberry Pi 3 Model B+(RPi3+)でできないのはおかしいので,なんとか入力できるようにしたいと思いました.

正攻法はなんだかわからないので,動いているRPi3のディスクの内容をRPi3+にクローニングしてみました.

コピーした後,sshdのキーを変えたり,メインユーザーのsshキーを作り変えたりしました.これはいつもの手順です.

今のところfcitx5+mozcを使ってFirefoxから日本語が書き込めています(この記事).

RasPi 3+でfcitx5-mozcがNG

そんなわけで,手持ちのRapsberry Pi 3 Model B (RPi3), 同 Model B+ (RPi3+), Raspberry Pi 4 Model B (RPi4)それぞれのmicroSDカードを手持ちの中で速いものにして,Firefoxを動かしてSNSを読み書きしたり,BLOGのエントリーを書いたりしてテストしてます.

最初にRPi4で始めたのですが,日本語入力システムがインストールされてないことに気が付き,fcitx5-mozcをインストールしました.現在このエントリーをRPi4(microSDカードがルート) + fcitx5-mozcで書いてますが,快適に書けています.

余勢を駆ってRPi3+にもfcitx5-mozcをインストールしてみましたが,Firefoxもターミナルもなかなか開いてくれません.他のマシンからsshでつないでtopで確認すると,fcitx5とxorgがそれぞれ100%CPUを使ってます.

そういえば以前にもRPi3とRPi3+にfcitx5-mozcをインストールしたら同じことが起きて使い物にならないことがわかって削除したのでした.

手持ちのRPi3(+)とRPi4の大きな違いはメモリーです.前者はそれぞれ1GB,後者は8GBです.

もっと軽い日本語入力システムを使えばよいのかもしれませんが,そうするとユーザー辞書のimport/exportができないし,そもそも日本語入力のユーザーエクスペリエンスが悪すぎなので,RPi3(+)は「日本語のWSには使えない」という結論が妥当かもしれません.

Raspberry Pi 3 Model BではOK

RPi3とRPi3+はもともと同じmicroSDカードの内容をコピーして,ホスト名やOpenssh-serverのキーなどを別々にして動かしています.クローンです.

不思議なことに,RPi3+の方は上記のようにfcitx5が暴走しているような感じで,xorgとともにCPUを100%専有してアプリの起動ができなくなってしまいましたが,RPi3の方では正常にMozcで日本語入力ができています.

よくわからないけど,使える方ではしばらくWSとして使って様子を見ます.

SDカードでパフォーマンスがかなり違う

Raspberry Pi (RPi)の話です.表記は当たり前の話ですが,最近実感しています.

Rpi 3 Model B (RPi3), 同+ (RPi3+), RPi4 (4GB, 8GB)が手持ちのRPiの中で生きているものです

これらはどれもUSB接続でSSDを接続すればある程度のスピードで動いてくれますが,SDカードのみで動いたほうが例えばテレビの裏側に置くようなアプリケーションでは都合がいいです.

とはいえ,これまでもさんざんSDカードをルートドライブとして動かすテストをしてきましたが,「使えないな」というのが体感的な総合評価です.

ところが,近年SDカードの弱点を補うかなり決め手的な技術が普及してきました.ZRAMです.SDカードは読み出し速度はまあまあだけど,書き込み速度はコンピューターのマスストレージとして使用するには致命的に遅いです.その遅い書き込み速度でメインメモリーの内容を退避するSWAPに使用するのは実用的ではありませんが,Raspberry Pi OSのデフォルトではそうなっています.

昨年はZRAMの素晴らしさを実感して,手持ちのRPiはすべてZRAMで稼働するようにしました.またLinux x86 64bitの実機や仮想マシンも全てZRAMにしました.したがってLinux x86 64bitのディスクはパーティション1つでよくなりました.

ごく最近なんですが,自分で動かしているRaspberry Pi OSを含むLinux環境で,/tmpがtmpfsでなく,ルートディスクのサブディレクトリーそのものを使っているものがいくつかあるのに気が付きました.これらをtmpfsにすることで,体感速度が上がりました

Linux Foundationが定めるFilesystem Hierarchy Standard (FHS)では,/tmpは「再起動時に内容は保持されない」としているのでtmpfsで終了時にデータの退避などする必要も全くなしです.たまに,この定義を知らないプログラムがあって,再起動ごとに初期動作をするものもありますが,気になるほどはありません.

再起動しても内容を保持したい一時ファイルは/var/tmpを使えばよいです.

ここまでやってもどうもRPi4のworkstation (WS)はSDカードをルートにすると遅いです.体感的にRPi3+よりも遅いので,SDカードを入れ替えてみたところ,体感速度が大幅に向上したので,これはSDカードの遅さに引きずられているようです.

写真のToshibaの64GBが遅いmicroSDカードで,かなり古いものだと思います.SanDiskの32GBは去年買ったもので速いと実感するRPi3で使用しています.そこでこの際古いSDカードを新しいのに置き替えることにします.

このToshibaのmicroSDカードはまだ使えるのですが,また忘れてRPiのルートドライブに使ってはいけないのでなにか印をつけようと考えました.字は書けないのでブランド名の上を赤のマッキーで塗りつぶしました.

たぶん何か月したら塗りつぶした意味を忘れると思うので,このBLOGに記した次第です.遅いながらもまだ書き込みでエラーは出ないので使い道はあると思います.

初代RPiや,RPi 2とたぶんRPi3も1台死亡しましたが,捨てましたので😅 手持ちはみんな生きています.
microSDカードです.もはや標準のSDカードは使っていません.以下も “SDカード” と書いてあっても “microSDカード” の話です.
Raspberry Piの場合.

LIRCまたやります

心の中でやろうやろうと思ってもなかなか腰が上がらないので,一応公に宣言してやる気を掻き立てることにします.

LIRCは随分前にRacpberry Piで試しましたが,今回扇風機を回すために再び挑戦します.リビングで石油ファヒーターを運転中,サーキュレーター代わりに扇風機を回すと,部屋の一部に淀んでいた熱気がうまく部屋全体に拡散して具合がいいことを最近発見しました.ただ家人には,冬に扇風機を動かすというのに固定観念からくる抵抗があるようで,それならRaspberry Piから自動で赤外線リモコン信号を発信して扇風機を起動してやろうという目論見です.

以前LIRCについては,受信する方は結構それなりに取り組んだことがあります.そのときにLEDや受光器を買い揃えていたはずだと思って探してみたら,な,なんと,Raspberry PiのDIOに繋げば動くようなところまで準備したものが出てきました.それも2セット😥

テスト用にリード線を長くしてあって,完成というか実装する場合はなんかもうひと工夫しなければならなそうですが,とりあえず,送受信のテストをするには十分です.

2018年6月なので5年半前.

RTSPの再生が安定しない (vlc)

その後も利用価値のあまりなくなった,Raspberry Pi 3 Model B (RPi3)と同B+(RPi3+)を防犯カメラの映像をRTSPで見るモニターとして利用する試みを続けています.

Raspberry Pi OS (RPiOS)の配布するvlcで一時期RTSPを見ることができませんでしたが,それも使えるように戻してくれたようで,RP3(+)に電源を入れて起動すると,メインユーザーで自動ログインした上でvlcも自動的に起動してカメラからのRTSP映像をHDMIでつないだディスプレーに表示するようにしていますが,どうも不安定で,数時間〜半日前後でvlcがブランク画面を表示するか,ある時刻の静止画のままになります.

OSは生きていて他のマシンからsshでログインできます.

これまで確認しているところ,カメラがトラブってRTSPを吐き出さなくなる場合と,カメラは生きているけれど,vlcがトラブる場合があるようで,他のマシンからカメラにつなぐことでどちらか確認できます.

前者のトラブルの場合,カメラの電源を切って再起動しますが,その場合RTSPにログインするためのUser IDとパスワードが変わるので,クライアントのスクリプトを修正する必要がありちょっと厄介です.しかし,幸いというか,このトラブルよりも後者のvlcのトラブルのほうが多いです.

しばらくvlcの使用はやめて,またffplay (FFMPEG)に戻して様子を見ることにします.明らかにCPU loadはvlcよりもffplayのほうが大きいです.