で注油すれば治るかな? と見てみたら,折れてる? なので交換することにした.
純正よりちょっと長いのでワイヤの取り回しがちょっとあまり気味だが,動作には問題なかった.
アクセルも軽くなって満足ヽ(´ー`)ノ
みんカラでやっているブログの裏ページ.車SNSには上げれないネタの吐きだめwww
任天堂 3DS は裸眼 3D ディスプレイという空前絶後の機能がついていたが,自分が知る限り周りは皆 3D 機能を OFF していた.自分は特にモンハンで,モンスターとの距離が把握しやすいので 3D ON にしていたので,3D にはそれなりに思い入れがある.
で,3DS エミュと VR ヘッドセットの PICO4 で立体視できんかな? といろいろ調べてみた結果,それなりに動いたので手順を紹介する.
という感じ.基本的に Citra / Steam VR の機能なので,おそらく Meta Quest でも出来ると思う.
実際にやってみたところ,3DS の裸眼立体視と全く変わらない感覚で,見た目的には全く違和感なく遊べた.しかも 3DS 画面がそのまま 20インチくらいに拡大されて眼の前にある感じで,むしろ実機よりも見やすい感じ.
ただし,PC の画面をキャプチャ→エンコード→PICO4 に送信,しているので多少ラグがあるため,フレーム回避は非常に厳しい.有料の Virtual Desktop だと遅延が少ないらしいので,そっちだとマシなんかな?
まぁ,現状では裸眼立体視を再び体験できて懐かしい,くらいの意味しかなかったw
ちょっと前に買った中華激安 GPS ロガーに載っている u-blox M10 という GNSS チップ,公称 10Hz で測位できるはずだが,測位してから数分経つと測位頻度が 6-8Hz 程度に低下することに気づいた.
不思議なことに室内での実験ではなかなか再現せず,車内 & 自作 Android アプリで頻発するので,自作 Android アプリの問題かと思ったが,PC <--> GPS ロガーでも測位頻度が低下していることを確認.
ということでこの GPS ロガーの実力であることが確定(;´д⊂)
改めて M10 のデータシートを眺めてみると,
らしい.
まずは High Performance Mode に設定してみたが,見た感じ変わってなさそう.
あんま変わらなかったのでやり方は詳しくは書かないが,ここの P13 に書いてある.
で次なる作戦.
そのための設定は割と簡単で,UBX protocol なるものが公開されていて,適切なバイナリデータを Bluetooth 経由で書き込めば良い.
詳しくはこれを見れば全部載っている.GGA, GSA, GSV センテンスを止めて,BeiDou を使用しない設定をする Kotlin コードはこんな感じ.
で実際にやってみた結果,10Hz 出たヽ(´ー`)ノ
あと BeiDou を無効化することによる測位精度がどうなるか調べた結果 (上図の青: BeiDou 有り,橙: 無し),全く問題なかった.
BeiDou 有りの方はやはり所々ポイントが抜けているのが気になる.この座標情報からラップタイムを計算するから,ポイントが抜けていないほうがいいので,BeiDou 無しで運用することにした.
だいぶん前に買った 3D プリンタの Ender-3 Pro,結構できが良くて今まで不満なく不満があるところは改造しつつ,今のところ満足して使っている.で最近,出力したパーツの直角が出てないんじゃね? ということに今更ながら気づいた.
調べてみたところ,原因は 2つあって,
(1) ボルト穴に遊びがあるので,遊びの分だけフレームの直角・水平がずれる.これはよく考えればわかることで,これに関しては気づかなかった自分のミス.一旦ボルトを緩め,定規で測りながらボルトを締めることで解決.
この手のアルミ角材で組まれている 3D プリンタは巷に溢れているけど,どこもこんな感じなのかなぁ.同社の最新機種でもフレームの傾きは問題になってるっぽい→参考
VR ヘッドセットの PICO4 は,ネガネをかけて使うこともできるけど,メガネの鼻パッドにヘッドセットの重さがかかって鼻が痛くなる.PICO4 専用度付きレンズもあるみたいだけど,使ってないメガネのレンズを貼り付ければいいのでは? と思ってやってみた.
で PICO4 のレンズ部分にピッタリハマるフレームを 3D プリンタで作る.既存の物にピッタリ合うパーツを作るときは,自分は対象物の写真を撮って,曲線等で対象物の形をトレースしたあと,代表長を実物に合わせ込む.
でぎだ (Thingiverse で公開してます).あとはレンズをホットボンドで固定して (急に雑になるwww) 完成.
…と思ったら,レンズが顔から離れすぎて,レンズを通して見える範囲が狭かったので,ホットボンド盛り盛りでレンズを浮かせることで,顔に近づけたら問題なくなった.
鼻が痛くならなくなって超快適ヽ(´ー`)ノ
●現象
スマフォの OS を crDroid (Android14) に書き換えたら,hosts 書き換えによる広告ブロックが効かなくなった.
不思議なのが,WiFi では効いているっぽいが,モバイルデータ通信では効いていない.
●Chrome の問題?
で調べてみると,chrome では独自に DNS の名前解決結果を独自にキャッシュしているようで,それをクリアしないといけないらしい.
chrome://net-internals/#dns を開くと,Clear host cache を押したが効果なし.
Lookup ボタンもあるので,hosts に記載のあるアドレスを入力してみたが,やっぱり hosts は効いていないようだった.
●Android の問題?
Chrome の問題なのか Android の問題なのか切り分けるために,Terminal emulator で名前引きしてみたところ,やっぱり hosts が効いていない.この時点で Chrome は関係なくなったが,ググってみても AI に聞いてみてもそれらしい解決策は無し.
●発見
仕方がないので,Android 設定で DNS と名のつくものを探したところ,プライベート DNS なる項目を発見.
デフォルトでは自動になっていたので,OFF にしてみたが,やっぱり hosts は効かない.
そこで,自動・OFF 以外の項目を選んでみたところ,ビンゴヽ(´ー`)ノ 無事 hosts が効いて広告がブロックされるようになった.
素性のよくわからない DNS を使うのはイヤなので,DNS 指定で dns.google を指定しておいた.
●ただし課題が...
このプライベート DNS の設定は,VPN 接続時にも有効らしく,VPN 接続アプリで指定している自宅 LAN の DNS が無視されてしまう (つまり自宅 LAN 配下の機器の名前解決ができない).この場合,プライベート DNS を OFF にすれば VPN の問題はなくなったが,VPN 接続時は手動で OFF にするしかなさそう.
このプライベート DNS,hosts,そしてネットワークから指定された DNS,の優先順位がさっぱりわからん.
前回ブラウザからスマートプラグを制御したとき,URL の情報が見えていたので,後は HTTP リクエストを送れさえすれば制御は余裕と思っていたらそうではなかった.
リクエスト送信前に署名鍵を Tuya から取得し,その鍵で送信するリクエストデータの署名を作成し送信しないとだめっぽい.
で探してみたら,すでに Unix shell から制御するコードはあったので,ありがたくこれを PowerShell に変換してみたのが一番下のコード.
ハマったポイントは,
でやった結果.Powershell で 10秒毎に消費電力を取得してみた.なかなか安価で消費電力のログ取れる環境は無いので,これはかなり満足度が高いヽ(´ー`)ノ
以下 PowerShell コード.
大昔にスマートプラグ (ネットワーク経由で On/Off できるコンセント) を買ったけど,独自の Android アプリでしか On/Off できなかったので,あまり使い道がなく放置していた.
で,最近これは Tuya という IoT プラットフォームに準拠した製品であることがわかったので,PC から制御してみた.
ところが Tuya のチュートリアル通りにやっても画面が説明と異なる等多々あり進まなかったので,自分でうまく行った手順を以下に記載しておく.
【開発者アカウント作成・デバイスのリンク】
●まずはスマートプラグと,Android の Smart Life アプリとの連携を済ませておく.
●Tuya developer でアカウント作成
●Cloud → Create Cloud Project をクリック

●Configuration Wizard はそのままで Authorize をクリック
●Devices → Link App Accout → Add App Account をクリックすると,QR コードが表示される
●Android の Smart Life アプリ右上の「+」 → QR コードをスキャン,をタップ後,PC の QR コードを読み込む
●Android アプリの「ログインを確認」をタップ
●以下のような画面が出てくるので,そのまま OK.これで Tuya developer アカウントとデバイスがリンクできた.
【デバイスを PC から制御する】
●どんな操作ができるか (コマンドがあるか) 調べてみる.
ここで表示されている Device ID が後々必要なので控えておき,Devices → All Devices → Debug Device をクリック
●Device Debugging をクリック.
Standard Instruction Set を見ると,使用できる設定系のコマンドがわかる.うちのだと,switch_1 / switch_2 で 2個あるコンセントの On/Off, countdown_n は秒数を設定するとその時間経過後に On/Off を反転する.
Standard Status Set を見ると,状態取得系のプロパティがわかる.うちのだとコンセントの On/Off 状態や,現在の電力が取得できる.
●Cloud → API Explorer をクリック
●Device Control の左の▶をクリック,Send Commands をクリック.
●Get the status of a single device を実行すると,上の Standard Status Set で調べたプロパティが取得できる.
【最後に】
このスマートプラグ,電力計が付いていたので買ったものだが,電力見るのも専用アプリだけでログも取れないので放置していたが,これからは PC でログ取りできるので,かなり使えるアイテムになったヽ(´ー`)ノ