FPVドローン ラップ計測システム【RotorHazard】を作っちゃおう ～その１～

# 1. はじめに
今回、FPVドローン向けのラップ計測システム 【RotorHazard】をもっと世間に浸透させて、気軽におうちや仲間内でのドローン飛行練習ができると良いな？と思って、RotorHazardの作り方のノウハウや、ワイが調べた事に関して書き連ねる事としました。

一番最初に、YanazooさんのX(旧Twitter)投稿を見たのをキッカケに、日本語化が簡単にできるのかしら？とソースコードを覗きだした…というところがスタートになります。(やっぱドローン関係でローカライズ？と言ったら求められているのかしら？と自意識過剰だったり？)

https://twitter.com/yanazoo/status/1760922905708556733
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/500291/9d6d954e-507f-0229-ffa2-f05b2f3f6368.png)

中身を覗いていくと既に多言語化はされていて、つい最近(2024年1月)には中国語への多言語化の試みがされているのも確認しました。(最終的にはフォント問題や、対応した人が中国人ネイティブの方ではなかった？のか、途中で継続を諦め戻されてしまいました。)

私は、その一度中国簡体字にて作成された辞書ファイル(language.json)をマネっこし、基本的な部分の日本語置き換えをしてみたところ、上手に変換が出来たため調子に乗って一気に仕上げました。(多分1日半ぐらい？)
ですが、システム内のクラスIDの持たせ方、返し方によって多言語への変換ができない部分も少し確認されました。(ここいらへんの未整備部分は、既に本家さんに連絡しております。)

また頻繁に辞書ファイルをプルリクエスト(以下PR)してしまうと、本家チームも大変でしょうから、一度この辞書ファイルをマージ出来たら、ローカル更新&個人展開はするものの、プルリクは月1回ペースぐらいでの更新かな？なんて思っています。(本来は気遣い無用と思いますがｗ ※だからこそのGitHubでしょうし)


# 2. 【RotorHazard】って何？を調べたよ
ざっくり言えば、5.8GHzで映像をゴーグル受信してFPV飛行を楽しんでいますが、その電波帯の強弱判定で、通過した時にピコって反応させれば周回や順位などをロギングできる、計測できるというコンセプトで作られたオープンソースプロジェクトのラップ計測システムです。
似たような製品もたくさんあります。有名なのはImmersionRC社【LapRF】という製品があります。アンテナとアプリを使って同様な事ができます。
まあでも…ここは作ってこそなんぼ！そこは漢の夢がある世界ｗｗｗ

![Qiita-RotorHazard_Logo.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/500291/270105a6-627e-6115-4dee-02b427698f90.png)

RotorHazard公式サイトはこちら:

https://www.rotorhazard.com/

GitHub RotorHazard 本家リポジトリはこちら:

https://github.com/RotorHazard/RotorHazard

是非こちらを最初にご覧ください。当然？今まで日本の方が翻訳作業等をされた方はいらっしゃいませんでしたので、あまり情報もなかったりもします。でもJDLさん関係では計測補助機器として採用されていたり、他のDIY IoTデバイスが得意とする方々がブログでも記載していますので、そのような情報もググってみてください。実際に専用の箱と専用基板、モジュールを組み合わせるとこんな感じに仕上がります。

![Qiita-RH01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/500291/23d32de8-22fe-89d6-0e3f-207942ed4d9b.png)

### 用意するもの (ワイの場合)
今回は難しい仕掛けは抜きにして、如何に簡単にRotorHazardを作成できるか？に特化して準備できればと思います。

 * **Windows PC** (macOSやLinuxでも稼働可能ですが、ワイはWin機しか持っていない為)
 * **Arduino Nano互換機** (ATmega328P V3.0 16M 5V module)
 * **RX5808 受信モジュール** (5.8GHz帯)
 * **RX5808 ⇔ Arduino Nano互換機を接続する配線** (太さはお好み、AWG24あたり？)
 * **USB OTGケーブル** (PCとArduino互換機をUSBで接続しますので適切なクチで)

詳しい内容はこちらもご覧ください。

https://github.com/RotorHazard/RotorHazard/blob/v4.1.0-beta.1/doc/USB%20Nodes.md

ワイの場合はArduino Nano互換機のUSBクチのタイプは **USB Type-C** を選びました。今後スマホ充電とかでも使いやすいですしｗ ですがAliexpressとかも見てみると規格としては古いMiniUSB等を選ぶと、機器が圧倒的に安い場合もあり、また接続部も丈夫です。その為にご自身の状況にあわせてそちらはご購入いただければと思います。

参考ではありますが、ワイはこちらを選択しました。

https://ja.aliexpress.com/item/1005006246685214.html?spm=a2g0o.order_list.order_list_main.4.21ef585aN34nh2&gatewayAdapt=glo2jpn

USB Type-Cで、ハンダは苦手なので最初から全部ピンをハンダしてくれている **Welding** タイプにしました。またアリエクさんはいっぱいショップありますが、Bootloaderに関しては **オールドタイプ or アンティークタイプ** と記載があるものもあります。こちらを購入しても良いですが、後ほどArduino IDEの設定で明示的に古いブートローダを指定する必要がありますのでお気をつけください。(そもそもブートローダなし版もあります。これはちょっと面倒かと思いますので、是非 **書き込み済** のものを選びましょう。)

またUSB仮想COMポートで使われるチップが **CH430C CH430G** 等ありますが、ワイとしてはここはあまり気にせずでも大丈夫かな？と思っています。
(上記リンクで販売している基板は、チップはCH430C搭載で届きました。)

また、USBケーブルは仮想COMポートとして認識できるよう、OTGケーブルと呼ばれるちゃんとすべてのラインが結線されたものをご用意ください。当然充電しかできないUSBケーブルで **『認識しない、つながらない』** なんていう事も結構 **『あるある』** ですので、今一度ご確認ください。ワイも手持ちケーブルは長いものを持っていないので、後付けで3mぐらいのものをちょっと購入しようかと考えています。(USBケーブルは5mという規格がありますのでご注意ください。)

つづきはこちら

https://qiita.com/tmac116/items/5fdf855bc78837b11c1c