KSYで単品が売ってたので、こうにう。
2,915円+送料550円=3,465円。
カメラのソケットが壊れてるので、ソケットを直そうとすると、2,000円位掛かるので、それなら新品の方が手っ取り早い。
SDカード運用なので、カードの差し替えでOKだから楽でいい 🙂

I know who Iam.
KSYで単品が売ってたので、こうにう。
2,915円+送料550円=3,465円。
カメラのソケットが壊れてるので、ソケットを直そうとすると、2,000円位掛かるので、それなら新品の方が手っ取り早い。
SDカード運用なので、カードの差し替えでOKだから楽でいい 🙂
Raspberry Pi Zero 2 Wで以前、bluetooth ヘッドフォンを接続していたが、10→11にアップデートしてからは、接続が安定しない。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
noizumi@rx7pi:~ $ sudo systemctl status bluetooth.service ● bluetooth.service - Bluetooth service Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2023-08-20 13:43:22 JST; 6min ago Docs: man:bluetoothd(8) Main PID: 1271 (bluetoothd) Status: "Running" Tasks: 1 (limit: 407) CPU: 647ms CGroup: /system.slice/bluetooth.service └─1271 /usr/libexec/bluetooth/bluetoothd 8月 20 13:43:22 rx7pi bluetoothd[1271]: profiles/sap/server.c:sap_server_register() Sap driver initialization failed. 8月 20 13:43:22 rx7pi bluetoothd[1271]: sap-server: Operation not permitted (1) 8月 20 13:43:22 rx7pi bluetoothd[1271]: Failed to set privacy: Rejected (0x0b) 8月 20 13:43:22 rx7pi bluetoothd[1271]: Endpoint registered: sender=:1.71 path=/MediaEndpoint/A2DPSink/sbc 8月 20 13:43:22 rx7pi bluetoothd[1271]: Endpoint registered: sender=:1.71 path=/MediaEndpoint/A2DPSource/sbc 8月 20 13:43:22 rx7pi bluetoothd[1271]: Set device flags return status: Invalid Parameters 8月 20 13:43:30 rx7pi bluetoothd[1271]: Endpoint registered: sender=:1.99 path=/MediaEndpoint/A2DPSink/sbc 8月 20 13:43:30 rx7pi bluetoothd[1271]: Endpoint registered: sender=:1.99 path=/MediaEndpoint/A2DPSource/sbc 8月 20 13:43:30 rx7pi bluetoothd[1271]: src/profile.c:ext_start_servers() RFCOMM server failed for Headset Voice gateway: rfcomm_bind: Address already in use (98) 8月 20 13:43:30 rx7pi bluetoothd[1271]: src/profile.c:ext_start_servers() RFCOMM server failed for Headset unit: rfcomm_bind: Address already in use (98) |
そういや、10の時に、sap server がどーたらで何か設定を変更した憶えがある。
次のページに解決法が書いてあったので実施。
情報源: Raspberry Pi 4のBluetoothから音を鳴らす呪い | hixの日記 | スラド
|
1 |
noizumi@rx7pi:~ $ sudo systemctl edit --full bluetooth.service |
|
1 2 |
#ExecStart=/usr/libexec/bluetooth/bluetoothd ExecStart=/usr/libexec/bluetooth/bluetoothd --noplugin=sap |
確か前にこういう設定をした憶えがあったけど、このブログに記録がねーんだよなあ。
|
1 2 |
noizumi@rx7pi:~ $ sudo systemctl daemon-reload noizumi@rx7pi:~ $ sudo systemctl restart bluetooth.service |
bluetoothd を再起動して、接続テストしたら、切断されず、接続が維持できた。
bluetooth ヘッドフォンの接続をトリガーに、rx7pi の動体検知や、GPSの位置チェックを止めるという処理をしていたが、これで万事OK 🙂
|
1 2 3 4 5 6 7 |
noizumi@rx7pi:~ $ nmcli con NAME UUID TYPE DEVICE aterm-f88921-g aac44e15-61ab-4a17-a712-0f813fc7eb2f wifi wlan0 iijmio 2fb23a81-e2a9-4a00-a318-1bea37a2be3d gsm cdc-wdm0 wg0 c556b10e-b638-42b6-a23c-0108f617b6dc wireguard wg0 donedone c59a1718-9cb4-406b-b043-9106eca59d3e gsm -- povo2.0 e11025e3-e746-44e3-9ebb-82868840c9fa gsm -- |
raspberry pi zero2 Wにて、NetworkManager のモバイルブロードバンド設定で iijmio 設定したら、無事、起動して即LTE回線接続するようにできた。
EM7430の通信カードで、povo2.0 のSIMだとダメだけど、iijmio の eSIMを eSIM.me の物理SIMカードに焼いた奴を挿したらいけた。
eSIMだから、月額440円で2GBまでの契約なんだが、もう一枚か……うーん。
eSIM.meのブランクカード余ってるから、もう一枚 eSIM契約でいけるし、今使ってる携帯電話の OPPO Reno7 Aは eSIM対応してるから、eSIM.me に焼かなくてもそれに使えばいいという話もある。
正直、通信速度が128kbpsでも事足りるから、iijmioのスペックは過剰で、povo2.0が使えていれば、丸く収まってたのに、色々と悩むなあ。
ノートPCのOneMix3 用にEM7430 M.2(技適あり)をaliexpress で調達していたのだが、結局、OneMix3 は本体にSIMスロットが付いて無いので、SIMスロットを別途調達して半田付けするとか凄く面倒だったので、放置していた。
OneMix3はキーボードがイカれていて、起動すると、押して無いキーの文字が連打されるという感じで、実質、ジャンクと化している。
EM7430は一回も使ってなくて、車載のRaspberry Pi Zero 2W に接続したら、今やってる携帯電話接続よりは電気喰わないんじゃ無かろうか? と思った。
※商品画像紹介にアフィリエイト使ってます。
で、Amazon で、「M.2-USB 3.0アダプター M2ネジ付きプッシュコネクター デュアルSIMカードスロットコンピューター用ドライバー3G / 4G / 5Gモジュール」なんてのが売っていて、デュアルSIMのスロット付きだったので、買ってPCへ接続してみた。
ちなみに、EM7430の通信カードと、それに接続するLTEアンテナを事前に調達しておいた。
最初、アンテナを繋がずに、「繋がらねえ!」とか言ってたのは秘密だ 😀
先に、Windows11 の仮想マシンに繋ぐと、あっさりとピクトのモバイル接続設定が出てきて、簡単に繋がった。
そして、Ubuntu 20.04 へ繋いでみると、
donedone のAPN設定のページに書かれている APN: biglobe.jp と設定したら、あっさり繋がった。
|
1 2 3 4 5 6 7 8 9 |
noizumi@greyhound:~$ netstat -nr カーネルIP経路テーブル 受信先サイト ゲートウェイ ネットマスク フラグ MSS Window irtt インタフェース 0.0.0.0 192.168.11.1 0.0.0.0 UG 0 0 0 eth0 0.0.0.0 10.179.114.9 0.0.0.0 UG 0 0 0 wwan0 10.179.114.8 0.0.0.0 255.255.255.252 U 0 0 0 wwan0 169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0 192.168.11.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.168.123.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 |
wwan0 つーデバイスになるのね。
ちょっと失敗したなと思ったのが、この手の製品って Windows のドライバでハードウェアの初期化する事を前提にしている場合があって、Windowsを持ってない人は Linux でいくらやっても使えないという可能性があるという事。
まあ、人柱になれんですまんけど、とりあえず、わしの環境だと、Windows があるので、EM7430のカードは Linux で使えるので、問題なし。 🙂
しかし、 GUIで設定できるらしいというのは分かっていたが、Raspberry Pi Zero 2Wは、CUI環境なので、どうやって設定すんのかよく分からんというのが問題だな。
|
1 2 |
Car Security alarm was GPS Warning! 18599.26m moved. at 2023/01/20 19:50:58 https://maps.google.com/maps?q=35.052185000,136.240325000 |
車載Raspberry Pi Zero 2Wからひっきりなしにメールが届いたが、「車が 18.6km移動してるよ」との事。
もちろん、移動してないので、GPSの測位誤差なんだろうけど、凄いズレ方。
平和堂の屋内立体駐車場に停めると、こういう事が起ったのはこれで2回めで、何か、GPSを狂わせる毒電波でも出てるのだろうか……
前の投稿でGALILEOが補足されないと書いていたが、Windows 10環境で、u-centerで見た時に、GALILEOがenableになってなかったってのがある。
確認の為に、再び u-center で見てみると……
やっぱりGALILEOが有効じゃない。
このモジュールは、GLONASS か Beidou の排他選択が可能なので、GALILEO、Beidouを有効にして、GLONASS を無効にした。
あと、QZSS の L1S 信号にチェックが入ってなかったので、入れた。
これで、精度上がるのかな?
Receiver > Action > Save config で保存して、車載のRaspberri Pi Zero 2 Wに接続してみた。
GPがGPS、QZがQZSS,GAがGALILEO、BDがBeidouね。
衛星捕捉数が増えて、28個の衛星を使ってるな。よしよし。
しかし、初期状態で、GALILEO無効の場合もあるのか。油断ならないな。
GPS補足状況を確認しようと思ったので、取り敢えず、2ウインドウ表示して比較。
右がRaspberry Pi Zero 2 W(以下rx7pi)のGPSで、左が、ホームサーバーのRaspberry Pi 4のGPS。
GPSは、TOPGNSS GN803Gという製品で、2つ共同じなのだが、車載のrx7pi の方は、PRN194〜196のQZSSと、PRN300番台のGALILEOが表示されてない。
Ubuntu 20.04の gpsd-3.21 だと、QZSSが表示されているのは確認できているので、rasbian の gpsd-3.17だと対応していない疑惑。
Raspberry Pi 4の方は野良ビルドで、gpsd-3.24 を入れてあるので、rx7pi の方にも入れてやろう。
「Building GPSD from source」を参考にして、
|
1 2 |
noizumi@rx7pi:~/src $ wget http://download.savannah.gnu.org/releases/gpsd/gpsd-3.24.tar.gz noizumi@rx7pi:~/src $ tar xvzf gpsd-3.24.tar.gz |
If ‘scons’ fails, it is possible that your target system has moved to Python 3 and removed the program ‘python’. Python.org says that if you have an installed Python, there should be a program in your path called ‘python’. This is specified in PEP 394. This rule is not always followed. You can work around this by linking python3 to python like this
1 ln -s /usr/bin/python3 /usr/bin/python
python3 のシンボリックリンクを作成しろとの事だが、要はPATHが通ってる所なら良いので次のようにする。
|
1 2 3 4 5 6 7 |
noizumi@rx7pi:~/src $ echo $PATH /home/noizumi/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games noizumi@rx7pi:~/src $ cd ~/bin noizumi@rx7pi:~/bin $ ln -s /usr/bin/python3 python noizumi@rx7pi:~/bin $ which python /home/noizumi/bin/python |
なぜか、 ln -s /usr/bin/python3 /home/noizumi/bin/python で作成できなかったので、ちょっとまだるっこしい事をやっている。
必要な開発用パッケージを入れるけど、gtk3 とか入れるとアホみたいにパッケージが入っちゃうし、gpsd と gpsmon、 cgps のテキストベースで使えれば良いので、次のものを入れた。
|
1 |
noizumi@rx7pi:~/bin $ apt-get install scons libncurses5-dev libdbus-1-dev libusb-1.0.0-dev |
|
1 2 |
noizumi@rx7pi:~/bin $ cd ../src/gpsd-3.24/ noizumi@rx7pi:~/src/gpsd-3.24 $ scons gpsd_user=gpsd gpsd_group=dialout |
|
1 2 3 4 5 6 |
WARNING: xgps and xgpsspeed are missing runtime dependencies Ensure your PYTHONPATH includes /usr/local/lib/python3/dist-packages/ WARNING: AsciiDoctor not found. WARNING: Some documentation and html will not be built. noizumi@rx7pi:~/src/gpsd-3.24 $ sudo ln -s /usr/local/lib/python3.7 /usr/local/lib/python3 |
python のライブラリのPATHは存在しないので、シンボリックリンクを張っておく。
そしてインストール
|
1 |
noizumi@rx7pi:~/src/gpsd-3.24 $ sudo scons install |
gpsd のビルドのページには、sudo scons udev-install とやれって書いてあるけど、既に gpsd-3.17のパッケージ入ってるし、そのままにしたいので、 install にしている。
一応、念の為、ちゃんと入ってるか確認。
|
1 2 |
noizumi@rx7pi:~/src/gpsd-3.24 $ which gpsd /usr/local/sbin/gpsd |
既定は prefix=/usr/local なので、全てそこにインストールされている。
|
1 |
noizumi@rx7pi:~/src/gpsd-3.24 $ sudo systemctl edit --full gpsd.service |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
[Unit] Description=GPS (Global Positioning System) Daemon Requires=gpsd.socket # Needed with chrony SOCK refclock After=chronyd.service [Service] Type=forking EnvironmentFile=-/etc/default/gpsd ExecStartPre=stty -F $DEVICES 115200 ExecStart=/usr/local/sbin/gpsd $GPSD_OPTIONS $DEVICES [Install] WantedBy=multi-user.target Also=gpsd.socket |
ExecStartのPATHを変更。
|
1 2 |
noizumi@rx7pi:~/src/gpsd-3.24 $ sudo systemctl daemon-reload noizumi@rx7pi:~/src/gpsd-3.24 $ sudo systemctl restart gpsd.service |
GALILEOは補足できてないけど、QZSSが補足できるようになった。
やっぱ、gpsd-3.17はQZSSに対応してなかったんだな。
これの続き。
ちょいとピンぼけだが(笑)、普通にZero用カメラケーブルで接続したら、「使えますし、動作する事を確認しました」(笑)。
このHDMIケーブルは、多分、Raspberry Pi 3のセット買った時に付いてきたヤツだけど、やたら太いな(笑)
という事で、
また接続端子のピン数が少ないRaspberry Pi Zero系統のモデルでは使えません。実際にRaspberry Pi Zero WHでは動作しないことを確認しました。
情報源: Raspberry PiのカメラモジュールをHDMIケーブルで接続する | ガジェライブ!
ここに書かれてるのは、製品付属のケーブルだと、Zero系本体のピン数が少なくて物理的に接続できないから、「使えません」だし、「動作しないことを確認しました。」なんだろうな。
しかし、Zero系用カメラケーブルを使うという、物理的接続する方法を思い付けなかったんだから、接続できない事を確認したのみで、動作しない事は確認できてないよなあ。
フラットケーブルをHDMIケーブルの電線に置き換えてるだけだから、ピン数の合う部分で物理的に接続さえできれば、Raspberry Piの本体要因で、動かないなんて事は有り得ねえだろうに。
Zero系のケーブル延長しようと思ってる奴が、これ、見て買うのやめたら、店にとって、えらい風評被害だわ。事実、わしも諦めかけたけど、書いてる事がおかしいから、実際に買って、自分の仮説を確かめようと思ったんだな。
これで、車載した時のカメラ映像を上に上げられるので、motion で監視状態の時に、空ばっかり写ってるのが、フロントガラスからの景色にできるな。 🙂