M5StickCでGoProリモコン

https://twitter.com/jesuslg123/status/1280909172264099842
UIFlowで作ってる人を見かけた。コードはコチラ。
https://github.com/jesuslg123/gopro-remote-stickC
M5StickC は EPS32 ベースで、ArduinoとかUIFlowとかいろいろ使える。
UIFlowは機能ブロックを並べるタイプの初心者向けっぽい言語。
今回使ってみたら、よかったので導入方法も含めて紹介。
リモコンですが、先に断っておくとGoPro純正のヤツとは比較にならない面倒さ。
ただ機能的には十分で、改造もアリアリですし、今後の機能追加も検討されているそうで、加えて楽しい!ということで試す価値アリです。

なんでGoProリモコンが欲しいのか。
BetaFPVの GoProLite BEC基板の問題。
あの BEC基板は設計的に問題があって、表面実装のコネクタ3個所を、別の基板で立体につなぐというのになってる。
基板の精度が違うので、歪んだりとか衝撃があると外れやすい。
特に電源ボタンと録画ボタンがBEC基板上にあり、強く押すとコネクタに負担がかかる構造で気持ち悪い。
そのあたりを理解してポチっとしないといけない。
まあでもスマートにまとまって便利なんで。なんとか他に対策できないかと考えた。
まずは電源ケーブルは標準のJSH3端子は細すぎるし、ポロっと抜けそうなので、2Sでもいけるぜって BT2.0 に変更した。

CineWhoopTokyoさんオマージュな構成。

電源は BEC基板上の MODE と GND をショートしてオートスタートに改造。
RECボタンは FC のポートから取るのが BetaFPV推奨だけど、複数機体に使い回すときに不便。
それでスマホからという運用になった。
でもスマホ持ってる人がそこにいないとできないので、なんか方法ないのか。
ついでに録画をしてるしてないが確認できないのか。
GoPro純正のリモコンとかもあるのだけど、そのためだけになー。
ということで今回のコチラで解決だ。さあやってみよう。

UIFlowの導入についてはココの説明がすばらしいです。
https://lang-ship.com/blog/work/m5stickc-uiflow-l01/
内容についてはよーく読んでもらうとして、オススメのやり方としては以下の流れです。

1.M5StickCに UIFlow のファームを焼く
https://m5stack.com/pages/download
M5Burnerというので焼きます。
後ほどコードを転送するIDEとバージョンがあってないとダメです。
とりあえず最新の1.6.0を焼いてみよう。
焼く際にはデバイスのCOMポートを指定。
ドライバとか必要ですが、ドローン野郎にはおなじみの CP2104 と VCP なので、そのままでもつながるかも。
あと自宅WiFiのSSIDとパスワードも忘れずに。
Obniz みたいにクラウドにつながってやるタイプなんですね。

2.ブラウザ版のUIFlowIDEからコード焼く
http://flow.m5stack.com/
今回は1.6.0なので、Betaの方を使います。
M5StickCの画面に出るAPIコードを使って接続しましょう。
githubからダウンロードした「ESPRemote.m5f」を読み込むわけですが、なんかバグなのかうまく読み込みません。
しゃーないのでデスクトップ版をダウンロード。
https://m5stack.com/pages/download
こっちは読み込めました。
でもデスクトップ版は1.4.5なんですよ。
さっき焼いたファームとバージョンあわない。
ファームを1.4.5.1にするのもありですが、今後もこういうのありそうなので乗り切る方法。
デスクトップ版の python メニューに移動し、そのコードをコピーして、ブラウザ版に貼り付け。

手間ですが、これでブラウザ版にコードを流し込めます。
pythonの場合、最後のあたりに SSID とパスワードを設定する所あると思います。

機能ブロックの場合はこのあたり。

これにつなぎたいGoProの SSIDとパスワードを入力しましょう。
GoPro側で「接続」→「新デバイスの接続」→「GoPro アプリ」です。
あとは右上にある再生ボタンを押せばコードが M5StickC に転送されて完了。

おお動くぞ。

M5StickCの基本的な使い方簡単に説明。
左横下(A)、上部M5ボタン(B)、右横上(C)の3つあります。
Aで電源オン。長押しで電源オフです。短く押すとリセットです。
Bボタンをおしながら電源オンすると、UIFlowメニューになります。
この状態でCボタンを押すとメニューが変わります。
APPListで今回のコードを指定しましょう。(temp.py)
これでリモコンが立ち上がる。

つづいてアプリの使い方です。
Cボタンを長押しでGoProのWiFiにつなぎます。今のは自動接続でないので注意。
つながったあとはCボタンのクリックとロングクリックで移動。
Bボタンでスタート/ストップ。
Bボタンをダブルクリックでモード変更です。
命令が通ると「200」が帰ってきます。

さてシカケを確認してみましょう。
GoPro内にhttpdがあって、そこにコマンド送ることで切り替えるようですね。
「http://10.5.5.9/gp/gpControl/command/mode?p=0」で、動画モード。
「http://10.5.5.9/gp/gpControl/command/mode?p=1」で、写真モード。
「http://10.5.5.9/gp/gpControl/command/shutter?p=0」で、ストップ。
「http://10.5.5.9/gp/gpControl/command/shutter?p=1」で、スタート。
おもったより簡単なシカケ。
https://android.benigumo.com/20180116/gopro-hero6-wifi/
なんかこういうことみたい。ffmpegでストリームデータも引っ張れる模様。
内容を理解すれば他に転用も可能だ。ブラウザとかな。
他のコマンドも調べると出てくるでしょう。

その他、そのスジのみなさまが気になるポイントはコチラにまとまっています。
https://qiita.com/nagase/items/96e87b3c91a0c820e002

そういえば、初代THETA出た時、ESP8266 で似たようなの作ったっけな。時代は繰り返す。
作者の方は ToDo にて機能追加を検討されているようなので今後に期待だ。
複数カメラを一個でやりたいとかの改造もしたいね。
機能を絞って ATOM Matrix に移植してもよいかもな。
マイコンいじりも楽しいのでこの機会にやってみるのもよいかと。
なお M5StickC は 2000円しないぐらいの値段で売られています。

ATOM Matrix よいかんじ

M5Stackシリーズに新しいのが出た。
むっちゃ小型の ATOM Matrix。
https://www.switch-science.com/catalog/6260/
今年の頭ぐらいに出ていたが、技適の関係で最近で回るようになった。
5x5LED はいつもの Neopixel ベースで、パネルがボタンになっている。
SoC は ESP32 のデュアルで 240MHz。よって WiFi も Bluetooth も使える。
ジャイロとして MPU6686 がついてて、地味に赤外線LED(発信)もついている。
で、千石電商で1500円だった。やっすい!
ジャイロ使った倒立振子とかの作例もおもしろい。
モータードライバあったら、もう構造としてはドローンもできるつうことか。
5x5LEDとジャイロを省いた ATOM Lite というのもあって、こちらは1000円。
https://www.switch-science.com/catalog/6262/
電池の類はついていないので、USB-C を挿して使う。

電源は USB はもちろん、GPIO とか Grove の 5v に Lipo の 3.7v 入れても動くらしい。
いっぽう省電力は苦手で、ディープスリープにしても 20mAh ぐらいは必要とのこと。
SPIFFSで内蔵フラッシュも利用可能。おもったよりいろいろできる。

いつものArduinoIDEとかで使う。ライブラリもボード情報も出ている。
サンプルスケッチは Typo とか、バグとかチラホラある雑さ加減。
こちらのCOCOAカウンターの作例がよかったので、こちらを試してみた。
https://qiita.com/coppercele/items/fef9eacee05b752ed982
「FastLED」と「BLEDevice」と「M5Atom」のライブラリを入れる。
追加ボードマネージャに「https://dl.espressif.com/dl/package_esp32_index.json」を追加。
ボードの設定は画像の通り。「ESP32 Pico Kit」にしてシリアル速度を「115200」にする。

すっかりおなじみの ArduinoIDE。

あとは記事のとおり焼き付ければできあがる。

電源が入っていると、Bluetoothを使って周囲にCOCOAが何個あるのかをカウントする。
アチコチで電源入れて、どれぐらいユーザがいるのか確認してみたい。体感したい。
COCOAの利用状況が芳しくないってニュースが連日流れてる。
こんなおもしろネタ、参加するしかなかろうと思うけど、世間はそうでもないらしい。
個人的には悪くないと思うんだけどなー。まあ人生こういうギャップはちょいちょい感じる。
ここから怒涛の大逆転でみんな使うようになるのか、それともこのまま収束なのか。

M5Stackファミリーもなんだかんだで集まってきた。
初代のヤツは一通りついて多機能だけど、ボタンとか華奢でポロっと壊れる。
それからいくと、最近の小型版は割り切りよくて逆にいい感じだ。
これから始めるのなら、ATOM Matrix がいいと思う。
画面使いたいなら M5StickC(オレンジ)のやつがよいかも。

ラズパイ4BにElastic Stackを組む

ものすごいボロな x86鯖で Elasticsearch + kibana + Fluentd + Mosquitto な IoTデータ収集をやってる。
いつ壊れるんだろうなーという状態になって4年ぐらい経過した気がする。
実験用でクリティカルでないし放置気味。
先日ちょっと刺さって、じゃ終わりにしますか!としたら「データをサルベージしてくれ!」とかになって。
つぶれから気づく、ごんぎつねの存在。
なんとか復帰して今回はことなきを得たのだが、懲りずに使い続ける。
これまで何度こういうことを繰り返しただろうか。

もうこの手のヤツをシングルノードでゴリゴリやるのとかもう流行らない。
さりとて x86 をいっぱい揃えるとお金もさることながら場所リソース確保が悩ましい。
ということで「貧者の味方ラズパイ」で動かんかなーとなるのだけど、3B+ ぐらいまではメモリ1GBしかなくてちと足りんかった。
ところがココに至って、ラズパイ4B登場。
2GB/4GBが販売されてて、さらに8GBが登場するという。
これはイケるやん!と調べたらガッチリやってる人がいた。

■Raspbian buster でElastic Stack 7.5.1 を動かす
https://qiita.com/Y-Shikase/items/7e6025855454c443f620
OpenJDKとNodejsのバージョンがキモとのこと。
Elastic 6.xの頃に 3B+ に組んだ頃も、同梱されている OpenJDK が x86バイナリで、入れ替えとかやったような記憶がある。
最近は ARM 運用も視野に入ったのか、そのあたりが整理されつつあるとのこと。
OpenJDKは11を使う。
Logstashが OpenJDKの8シバリで、かつてはインストール時には8を使いましょうとか言われていたが、今は同梱されて配布されるようになってるらしい。
Machine Learning のところに x86バイナリあるので、そこは false。
これだけでいいらしい。single-node 設定も入っているので単体で動く。
kibana の方は Nodejs のx86バイナリが同梱されてくるので、それを ARM と差し替えればよい、とのこと。

さっそく手元にあったラズパイ4B(2GB版)に、Raspbian 最新版(5/27版)に入れてみた。
32bit版だけど、そのうち64bit版も出るだろう。なんならubuntuって選択もある。
本番運用は64bitで構成したほうが先が長くていいかもな。
上記記事との違いは、Elasticは最新の 7.8.0 をインストールした。
あと Nodejs のバージョンにこだわりなかったので、ツルシで入った v10.21.0 を使った。
この違いでも問題なく動いた。やったー。

またUI変わったね。

1回目起動してほっとしたが、再起動で動かず。
kibanaのフォルダにヘンなコントロールコードのファイルができるってのは、コチラでも再現した。

なんだこれ?

リンク先の記事あるとおり、コントロールコードのファイルを消すスクリプトを追加する。
この情報ありがたい。これ気づかないと思う。
これなかったらおそらく「動かんなあ」とくじけていたこと間違いない。

Fluentdは手で組み上げすれば動く。
td-agentが更新とかも手軽だけどx86版しか配布してない。
先日どこかで 3.8.0 のARM版みたいのも見かけた気がするんだけどな。

まあ今のボロ鯖の代替ができるようにはなった。
バージョン依存とかあって、たくさんのラズパイに組み上げるなら、Docker イメージにした方がいいよね。
とおもったら、同じ人がやっていた。すごい!
■Raspberry Pi 4Bのdocker上でElastic Stack 7.6.0/7.7.x/7.8.0 を動かす
https://qiita.com/Y-Shikase/items/d162805aebb3a1a8447f
公式からも AArch64(ARM64bit)の Dockerイメージ配布はじまっとる。
https://www.elastic.co/jp/blog/elasticsearch-on-arm
64bitなので、今の Raspbian だとダメだし、kibana は配布されていないらしい。
だがこれは確実に ARM版配布の流れだな。

Dockerまで行ったならば、Kubernetes で組み上げたいよね。
とおもったら、そちらも実現したとのこと。
いやー在宅の暇つぶしにすごいいいネタのような気もする。
問題はx86に比べれば安いといえ、たくさんのラズパイ買ってくれるかなー。

8/20追記。
7.9 の Elastic Stack で、ARM64bit(AARCH64)に対応。
https://www.elastic.co/jp/downloads/elasticsearch
これで導入もラクチンになりましたね。
なおkibanaはARM版ないです。
コントロールコードのワケわからんファイルの処理があるんで、こっちも公式パッケージほしいですね。
Fluentd の ARM 向けパッケージはココにありました。
https://td-agent-package-browser.herokuapp.com/3/ubuntu/bionic/pool/contrib/t/td-agent
よーくみると、arm64 があります。(3.8.0)
ubuntu Bionic 向けのパッケージですが、試して見るとインストーラがちゃんと読み替えてくれて Buster にも入りました。(キケン)
ご参考まで。

11 bit studios のゲームが国の推薦図書に

先月末にthatgamecampany「風ノ旅ビト(英語名Journey)」が Steam に出て、ヒマを見つけては周回しているのですが、あらためてゲームスゲエなー。
体験を通して独特の感動を与えてくれる。今回年齢によって感じ方も変わることも気づいた。
こんな感じでハードな追体験をさせてくれる作品をつくるゲームメーカーに 11 bit studios がある。
この度、その作品が国の推薦図書になってしまったようだ。

戦時下生活サバイバル『This War of Mine』がポーランド教育省の学生向け推薦図書リスト入り。
https://automaton-media.com/articles/newsjp/20200619-128126/

ポーランドのゲーム会社 11 bit studios の「This War of Mine」。
戦争に巻き込まれる市民に視点をあてたゲームで、ゲームをすすめる上で厳しい選択を迫る。
このゲームは戦争を題材にしているのでやむなく18禁だが、それを含めての推薦図書。
DCL追加シナリオのどれも重い。うわーそこくるかーってお腹にくるヘヴィさ。
戦争ゲームってドンパチやるのが人気で主流ですが、逆側の視点は珍しいのではないか。
このゲームは5年ぐらい追加シナリオなどあったが、昨年末ファイナルカットへ至った。

この重厚なタッチ。

で、今の 11 bit studios は、なにをやっているかというと新タイトルの「Frostpunk」ってのをやっている。
これも期待を裏切らない重厚な作品。
スチームパンクな時代設定で、原因不明の氷河期がやってくる。
そんな環境で生き残りをかけて市長になってシムシティ。
容赦なく(ホント容赦ない)訪れる自然の脅威に、法律制定や宗教、技術開発でもって抗う。
相変わらず厳しい選択を要求する。
コロナ禍の現代いろいろ思い知らされる、まさに今やるべきテーマではないか。
常に寒い感じなのも季節にあってるぞ。

とても寒そう。

タイムリーなことに Steam のサマーセールになってるんですよね。
「This War of Mine」は495円。
https://store.steampowered.com/app/282070/This_War_of_Mine/
バンドル全部つけても932円。
https://store.steampowered.com/bundle/9717/This_War_of_Mine_Complete_Edition/
「Frostpunk」は1236円。
https://store.steampowered.com/app/323190/Frostpunk/
Steamのサマーセールは7/10まで。

Betaflight4.2のRPMフィルタをあらためて

知ってる人は知ってたんだろうけど。
STM32F411とSTM32F405って動作クロック違うのか。

Betaflight4.2になって、いよいよRPMフィルタもいよいよ普通に使える感じになった。
なにが普通になったかというと、搭載されているマイコンによって PID Loop が自動で設定されるようになったりした。
4.1までは STM32F4系は、演算性能が足りない(通常時負荷が50%超過)のもあり、Dshot300/Gyro4k/PIDloop4k で設定するべしとされていた。
STM32F7系は迷わず DShot600/8k/8k でイケと。
なお4.2では改善が行われ、Gyroは全種8k決め打ち。
PID Loop は搭載チップによって安全なところが選ばれるようになった。
よって新しいデフォルトは、STM32F4系だと、Dshot300/Gyro8k/PIDloop4k。
STM32F7系は同じく DShot600/8k/8k でよいということらしい。

ところで、この DShot300 はホントに適正なのだろうか。
という考えるだけでめんどくさい分析を D-Mania さんで行われている。ありがたい。

オシロスコープ持ち込んでの3回シリーズの最終が上記動画。
たいへん勉強になるので全部見ておいたほうがよい。
この長大なシリーズで、最終的には DShot600 にしておかないと PID Loop が入り切らないのではないか、ということだった。
でも我らがSTM32F4系は Dshot600 回しきらないじゃないか。
ということで、オーバークロックの検討することにしたのだが、そこで肝心なことを見落としていたことに気づいた。

ここでウダウダと STM32マイコンの簡単な説明。
ドローンのFCに使われるマイコンはSTマイクロエレクトロニクスってところの STM32 っていうシリーズ。
32bitで Arm Cortex-M4 ベース。8bitベースの STM8 は VTX の制御とかに使われている。
いくつかランクがあって、STM32F103とかは 3Dプリンタの制御基板とか、プロポとかマルチモジュールとかで使われている。
US65ぐらいまで使われていたのは STM32F3 ってヤツで、Betaflight4系に移行した時にサポート対象から外れた。
用途を絞り込んでメモリを空け、クロックアップし延命をする人もいる。
そういう経緯もあって、現在の主流は STM32F4系とSTM32F7系になる。

Tinyクラスでよくみるのが、STM32F411。おなじF4系にも STM32F405 もよく使われる。
よーくしらべると、このシリーズは動作クロックが違う。
STM32F411は100MHz。
https://www.st.com/ja/microcontrollers-microprocessors/stm32f411.html
STM32F405は168MHz。
https://www.st.com/ja/microcontrollers-microprocessors/stm32f405-415.html
なおSTM32F7系は216MHzだ。
STM32F405系だと Dshot300/Gyro8k/PIDloop8k でも負荷が低く十分使えることを確認した。
STM32F411をオーバークロック(set cpu_overclock = 108MHZ)できるが、標準状態ですでにオーバークロックされていることも多い。
ドローンのFCに限定しなければ、STM32F411を250MHzぐらいまで上げてる例もあるようだけど、まあそこは後日検証してみる。

ということでRPMフィルタを使う時の設定はこちら。
 STM32F411は、Dshot300/Gyro8k/PIDloop4k。
 STM32F405は、Dshot600/Gyro8k/PIDloop8k。
 STM32F7系は、Dshot600/Gyro8k/PIDloop8k。
F4系とひとくくりにせず、ちゃんと細かいところ見ろってことですね。
今後はパフォーマンスを得たい場合はSTM32F405以上を買うのがよいようだ。

おまけでESC側の対応もまとめたみた。
BLHELI_32 は基本的にRPMフィルタに対応しているので、そのままで利用可能。
安いのとか小さいのによく使われるおなじみの BLHeli_S は JESC の有料ファームを使うのが推奨とされている。
https://jflight.net/
都度カネ払うのもなー。そこまでやる気はないというか。
なお「L」のヤツは無償でもよいとのこと。どれが「L」?
という向きのために、無償版の開発が進められている。
それが jazzmaverik。
https://github.com/JazzMaverick/BLHeli/tree/JazzMaverick-patch-1/BLHeli_S%20SiLabs
どうやって使うかというと、BLHeli_S を立ち上げた時に、ESCのファーム番号を確認。

その型番(画像の場合は「O-H-5」)の Hex を上記 Git から Raw でファイルに保存。(名前をつけてリンク先を保存)

BLHeli_S から「FlASH FIRMWARE」各ESCに個別に焼き込む。
各バージョンに加え「48」とか「96」とか入っているのは、通信周波数を示すもので数字が高いほど性能がよくなったりするが安全性も減る。
とりあえず現状は 16.73 にしときなされ、とある。
https://github.com/betaflight/betaflight/wiki/Bidirectional-DSHOT-and-RPM-Filter
16.73 は「48」とか「96」とかはないので悩まないでよし。
あとはこのページあるとおり、Dynamic Notch Fiter とかを絞りこむ。
双方向通信をオンにし、磁石の数を適正化(5インチクラスだと14、小さいのは12が多い)し、モータータブで動いているか確認する。

Meteor65の場合はこんな感じ。

電源投入時の「ピポパプーペー」の「プーペー」の音が高くなる。
飛ばすとなにか芯が揃ったようなモーター音になり大変良い感じ。
レシプロエンジンでいうと、ピストン重量のバランス取りされた感じだ。
電池の持ちもよくなるので、これからはデフォルトだろう。(イマサラかよ)

送信機関係を一斉アップデート

X-Lite Pro は発売と同時に購入し、ちょうど1年経過したあたり。
当初は初期ファームのバグを苦労しながら修正し、半年ぐらいかかってまともになった。
「動いているものは触るな」の理論で、触らないようにしていた。
周囲の状況も変化あったので、このあたりで一斉アップデートしてみた。
あげるのは以下の3項目。

1.OpenTX
2.3.9にあげる。
メニュー変わったり、バインド情報をクローンできるようになったりした。
https://www.open-tx.org/2020/06/14/opentx-2.3.9
X-Lite Pro のファームあげるのに、十字キー+電源ボタンで Bootloader にするの忘れてた。
SDカードのコンテンツも更新されているようなので、そこらへんもサクっと上書き。
こちらは特に問題なく終了。

2.X-Lite Proの内部RFファーム(ISRM-P)
Access/ACCST のプロトコル v2.1.x 対応ファーム。
半年かけて届いた Accessプロトコル対応の Archer M+ を動かすのに必要。
ACCST D16 v2 以降は互換レシーバーで動かないってウワサも確認する。
https://www.frsky-rc.com/taranis-x-lite-pro/
2020-04-21 の ISRM v2.1.0。
これは解凍して P がついている方を X-Lite Pro の SDカードに書き込み。
メニューから長押しし、IntRF に向けてアップデートする。

なかなか時間がかかります。

さっそくMetor65の内蔵SPI受信機で実験してみた。
元々 X-Lite Pro にはバインド方法にクセがあって、CLI から打ち込む方法でないとバインドできない。
4.2は「bined_rx」(変わっていた)、4.0、4.1は「bind_rx_spi」、3.xは「frsky_bind」で、終わったら「save」。
今回も同様の方法でバインドしたがつながらず。
ファームを巻き戻したらつながった。
どうやら v2 以降のプロトコルが互換品でダメというのはホントらしい。
Frsky独自の Access ならともかく、ACCST D16 とかを使えなくするのはどうだろ。
もちろんマルチモジュールからはつながる。
なお Frsky から出てる僕らの XM+ も v2.1.0 ファームを入れる必要がある。
https://www.frsky-rc.com/xm-plus-mini-sbus-non-telemetry-full-range/
2020-03-31 ACCST D16 v2.1.0 があるのみ。
過去のファームはもう掲載されておらず、互換利用はやめさせる方向か。
新品買って使えない日も来るかもしれないので、古いファームは大切に取っておこう。
こちらは X-Lite Pro の SDカードにいれ、S.Port から Flash する。要接続ケーブル。

そういえばXM+のAccess運用もいつの間にかなかったことになってるな。

3.外部RF(マルチモジュール)
OpenTXのクローン用への対応としてファームアップが必要。
持ってるのが古いやつで Bootloader 対策がめんどうでほっといたヤツ。
別に困ってなかったが、この機会にやってみるかと重い腰をあげた。
DIY Multi Protocol TX Module というヤツ。
https://github.com/pascallanger/DIY-Multiprotocol-TX-Module
技適取れてるのとか、取れてないのとか、たくさんの製品が出ている。
日本で使うのにメジャーな存在。
オープンソースで作らており、出回っているのは STM32 ベースのもの。
これをおなじみ ArduinoIDE とかで焼き付ければよいのだが、昔のは bootloader が入ってないのでこれを入れ込むのに一工夫必要だった。
USBシリアルつないで boot0 を High にして焼付みたいな。めんどくさ。
bootloader 入ったらプロポとかからも焼き付けられる。
そしたらなんと、焼付ツールがあるようです。それは Flash-multi。
https://github.com/benlye/flash-multi/

解凍したら「drivers」ってフォルダがあるので、その中の「install_drivers.bat」でドライバを入れる。
DFU も USBシリアルも一緒に入れてくれて悩まない。

あとは Flush-multi.exe を叩いて、右上のリンクから該当のファームをダウンロード。
https://downloads.multi-module.org/
「STM32」で「OpenTX」で「AETR」で「Inv」。
ファームを指定して「Write Module」でさっくり焼き付けてくれる。

DFUドライバ関係も入れてくれるので、ArduinoIDE を使いたい向きにも一回はこれ使ったほうがラクです。
ArduinoIDE を使うときの注意は、追加ボードマネージャに以下を追加。

https://raw.githubusercontent.com/pascallanger/DIY-Multiprotocol-TX-Module-Boards/master/package_multi_4in1_board_index.json

ボードマネージャから「Multi 4-in-1 STM32 Board」を選びましょう。

あとはいつもどおり「git clone」して「Multiprotocol.ino」でビルド・焼き込みができます。

ウワサの 5in1 とかのボードデータもありましたね。
ああした内部にマルチモジュールは、プロポから焼き付けるか、bootloaderないなら USBシリアルを外からつなぐとかなのかな。
ちょっとそのあたりはわからない。

ということで、一斉アップデートを完了した。
トラブルは使ってるウチに出てくるだろう。
願わくばトラブルがないことを祈りつつ。

「風ノ旅ビト」がSteamに登場

最近はスマホの「Sky」が好調なインディースタジオ thatgamecampany のゲーム。
この度「風の旅ビト」(英語名:JOURNEY)の PC版が Steam で出た。
https://store.steampowered.com/app/638230/Journey/

この空気感がすばらしい。

「風ノ旅ビト」は独特なオンラインゲーム。
ネットで接続してる他の人がゲーム内にいるが、会話等はできない。
身振り手振りぐらい。協力してもいいし、しなくてもいい。
ゴールに行くと、プレイヤーの名前がわかるが、意図的に会うことができない。
ヒントもうっすらで、周回するうちにいろいろ発見するようになる。
そして音楽が秀逸。
浮遊感とか砂を滑るとかの操作感が秀逸。
視点変更とかあるので、ゲームパッドでの利用がベスト。
追記:キーボード+マウスで全然イケた。慣れてるとそっちがいい。
個人的に名作だと思う。
やってみたかんじ、想像より GPU の処理が重かった。
今なら25%オフの1,140円。

買ってから気づいたのだが、ローンチ2週間の間はなんと「Flower」もオマケでついてくる。
商標の関係で Playstation では「Flowery」という名前だった。
これは野原で花びらを FPV で飛ばしながら、他の花びらを仲間にしながら飛んでいく。

これも非常に空気感のよいゲーム。
あらためて見てみるとドローンシミュみたいなゲーム。
いっそ操作系をあわせたらすごくよい気もするぞ。
できないかもがいてみるか。

監理技術者講習が自宅学習になった

施工管理技士は監理技術者講習を受けないと監理技術者になれない。
これは試験で繰り返し出てくる。
5年更新の資格が2つ揃っていないと監理技術者として機能できない。
なんでも免許の類は定期的にお金が落ちるようになっとるんですよ。

監理技術者が、たまたま今年5年目の更新年度だった。
更新時期は年末(試験時期の関係からその頃の人が多いのではないか)だったのだけど、コロナの影響で、国交省から自宅学習に切り替えろという指示が出ているらしい。
https://www.nik-g.com/news/pdf/200414_kanri.pdf
更新半年前の5月に気づき、せっかくなんで自宅講習をやってみるかと申し込み。
受講日は6月某日となり、受講票も届いて、某講習場所に来いとのこと。
あれ?自宅講習終わっちゃったの?
なら早くやることもなかったのに。
と思ったら今日「自宅講習になります」の連絡あり。
6月末まで延長指示が出たらしい。

他の資格どうなってるのかなと思ったら、かなり厳しい実施状況の模様。
同じ国交省扱いの建築士の定期講習とかは完全に中止で在宅とかない模様。
いったん期間の延長とかになってるのかも。
同様に実技が絡む電気工事士は、経産省扱いなのでこちらは実施できる。
間をあけての実施らしい。ただし東京・福岡はダメとかいろいろ大変っぽい。
宅建やマンション管理士は国交省扱いでこちらは監理技術者と同じ感じっぽいが、実施場所による模様。
監理技術者講習の自宅学習でOKなのは、かなりマシっぽい。
なおFPVドローンに必要な無線従事者国家試験は総務省扱いで全面中止。

地域によっては中小向けに資格取得の補助金とか出てるみたいだけど、逆に受けられるのなんなのか。
こんな時期を利用して資格取得は有効なのかもしれないが、とりあえず勉強ぐらいしかできないつうのがね。

資格関係はどんなに受験者増えても合格者数って一定ってのが一部にある。
溢れないように人数をコントロールしている。
それゆえ先に進むほど狭き門となってくる。
今回はどうなんだろ。
受験者いっぱい増えるのかな。合格者数も増えるのかな。
受験者増えて合格者据え置きだといよいよしんどいですね。
それでも試験やってくれるだけマシというレベルになりつつある。

VoiceMeeter Banana あるいは Realtek Audio 問題

Windowsユーザにオススメの万能仮想ミキサー
「VoiceMeeter Banana」が凄い
https://av.watch.impress.co.jp/docs/series/dal/1255935.html

在宅ワークに引っ張られてウェビナーとかのニーズも高まってるそうで。
なんかスイッチャーとかもプレミア価格で取引されてるとかも聞いてる。
Web配信系はやったことなかったのだが、WTWONLINEの手伝いをしているうちに知識がついてきた。

問題は音声でこのあたりが最後に混乱した。
具体的には仮想ミキサーを組み込むことで解決する。
最終的に今回は採用にいたらなかったが、コレはスゲエと思ったのが「VoiceMeeter Banana」。
これ高機能ゆえのゴチャゴチャ感と、独自なインターフェースで、ぱっと見とっつきにくい。
でも音声についてまとめるのには最強のツール。これでタダすごいな。(ドネーションウェア)
興味のある人は使ってみるといい。

今回記しておきたいのは、これに伴う Realtek Audio の問題。
手順をまとめるのに、一旦アンインストールして、再インストール。
そこで音が出なくなった。
どうも Realtek Audio のドライバが刺さっているようだ。
あちこちのソフトから「使えません」といわれる。
BTヘッドセットからは音が出る。

これの修復が苦労した。
まずやったのはデバイスマネージャから Realtek Audio のドライバを入れ直し。
起動時にちょっとだけ動くが、その後刺さって止まる。
なんかドライバの組み合わせ順序みたいのがあって、どっかがよくない食い合わせになっているっぽい。
VoiceMeeter Banana はそこに割り込む形なので、出し入れした時に崩れたのだろうと予測。
ドライバの入れ直しでは改善できないので、メーカ配布のドライバを入れ直すことにした。
https://www.asus.com/jp/Laptops/ROG-Zephyrus-S15/HelpDesk_Download/
入れ直したがダメ。ホントにドライバファイルだけでないか。
インストーラーから欲しいのだが。

素の最新ドライバを探そうと思い、Realtek屋に行ってみるがロクに配布していない。
なんということか。
有志がアチコチから見つけてみた最新ドライバーをこちらで配布しており、こちらからダウンロード。
https://www.station-drivers.com/index.php?option=com_remository&Itemid=0&func=select&id=508&orderby=2&page=4&lang=en
けっこーマメに更新されている模様。
この中にあるインストーラー付き HP のヤツを使って入れ直したところ、ついに音が出るようになった。
あーやれやれ。

しかしヘッドホンを挿してもスピーカーと自動で切り替わらない。
常日頃はスピーカーオフで、ヘッドホン挿した時だけ音がでる、が望ましいっすね。
さらにウチのはヘッドホンのラインに ESS の DAC が噛ましてあり、出力・品質ともに非常に高性能なのだ。
音が出たからいいやん!というわけにいかない。
あれやこれやもがいた結果、HP のドライバ入れた後に、ASUS提供のドライバを上書きしたら完全復帰した。
もう一回、Voicemeeter Banana 入れて、外して、刺さって、復活するところまでやったのでカンペキだろう。

Realtek Audio は時折カスタム構成があり、そのあたりが面倒っぽい。
Windowsっぽいバッドノウハウに何年かぶりに遭遇した気がする。
ゲーミングはカスタム多いから、よく理解しないとトラブル遭遇時たいへん。
またハマった時にための覚書。

amazarashi「新言語秩序」が6/9無料配信

amazarashi 初の武道館ライブ「新言語秩序」が10周年で無料配信。
http://www.amazarashi.com/info/archive/?519209
「1984」のようなディストピアの世界で「テンプレート言語」から逸脱した「言葉狩り」の話。
秋田ひろむのコメントがグっと来る。

この作品を通して、心の中に自問自答や葛藤のようなものが芽生えてくれたら、それが巡り巡ってどこかの誰かの希望になりえるのではないかと、そうであってほしいと願っています。

これ武道館はいけなかったけど、ライブビューイングでみた。
amazarashi は顔を出さないミュージシャン。
大きな帽子で顔を隠してライブを行う。
特徴はその「言葉」。
言葉で持って表現をするので、ステージはスクリーンで周囲を囲って、プロジェクションマッピングで歌詞を表示するスタイルで行う。
今回はスマホのアプリで連動するシカケもある。
最新のエンターテイメントとして、間違いなくおもしろいので、是非見たほうがいい。
ちょっと過激な内容があるので、そのあたりがダメな人は注意。

獲得した賞はこんな感じ。なお一番下のはシンガポール。
・第23回文化庁メディア芸術祭:エンターテイメント部門・優秀賞
・ACC TOKYO CREATIVITY AWARDS:ブランデッド・コミュニケーション部門金賞
・Spikes Asia Festival of Creativity:デジタルクラフト部門金賞他2部門

公開ページはコチラ。
http://www.amazarashi.com/info/archive/?519325
連動するスマホアプリはコチラ。
http://www.amazarashi.com/newlogosorder/app/