検証中にゃ!
間違いだらけのVRゴーグル選び
これは何?
こんにちは!
最近VRゴーグル(HMD)の選択肢が増えてうれしいな~と思います。
しかし、選択肢が増えて逆に何を選べばいいかわからない(>_<)という人も居るのではないでしょうか?
今回はVRゴーグルのスペックの見方や選ぶときに知っておいてほしいことをいくつか解説したいと思います!
※いつも通り信憑性は怪しいです。
重要度の低いトピックはHMDオタクの自己満足だよ!
視野角
FOVスペックの見方 重要度★★★★★
FOV(field of view、視野角)とは、90°、110°、200°など、VRゴーグルの視野の広さを表す数値です。一般的に数値が大きいほうがいいHMDですよね!
しかし……FOVでHMDを比較するには注意しなければいけないことがあるんです……
そもそもVRゴーグルのFOVはHorizontal FOV(HFOV、水平視野)、Vertical FOV(VFOV、垂直視野)、Diagonal FOV(DFOV、対角視野)の三つに大別されます。
実は、メーカーの公表しているFOVは場所がまちまちなんです……
メーカーによってFOVの最大値を取ったりHFOVやDFOVなど、どこのFOVなのか明示されていないこともあります。当然、同じ場所でないと比べることはできません。
広視野角化の経緯、視野角の定義など、光学関係はかなり複雑だから一概にメーカーを責められないね!(≧▽≦)
Rendered FOVとVisible FOV 重要度★★★☆☆
じゃあどうやってFOVを比較すればいいんだ~(>_<)という話ですが、HMD用の動画をレンダリングするのはあなたのPCですから、実際にレンダリングされているRendered FOVを調べることはできます。
Rendered FOVやHMDの幾何学的なスペックの一覧が見れるサイトはこちら!
しかし、レンダリングされた視野が必ずしも全て見れるわけではありません。人の顔や目の位置は人によってまちまちですから、レンズと眼球の相対的な位置や角度が変わることで、VRゴーグルを被って実際に見ることのできるVisible FOVも変動します。
Visible FOVのデータベースも存在します!(平均値)
そもそもVRゴーグルの視野は単純な形じゃないから、数値で比べるのは難しい……
解像度
パネル解像度とPPD 重要度★★★★★
VRゴーグルの解像度!と言うと、パネル解像度を指すことが多いと思います。しかし、パネル解像度は一概に画質のよさ(映像の綺麗さ)と相関関係にあるとは言えません。相関関係にあるのはPPDです。
PPD(pixels per degree、角画素密度)とは、視野1°あたりの画素数を示すものです。画素数が多くても視野角が広ければ、PPDが小さくなってしまうため、片目あたり3840×2160のHMDより、片目あたり2160×2160のHMDの方が画質がよい、ということもあります。
HMDで一番大事なのはPPDです!(個人差あり)
サブピクセル 重要度★★★★☆
PPDと同様に画質を決める要素として、サブピクセルがあります。サブピクセルとは、一つの画素を構成する、赤、緑、青のピクセルのことで、パネルによって配列が異なります。VR用のパネルでは主にRGB StripeとRGB PenTileの二種類が使われています。
RGB Stripeでは一つの画素に対して赤、緑、青の三つのサブピクセルがあるのに対し、RGB PenTileでは赤、青のサブピクセルが半分しかなく、実解像度はRGB Stripeの2/3(0.7)倍になっています。これは、人間の目が緑に敏感で、赤、青に鈍感なことを利用して作られた配列ですが、VRの様にパネルをレンズで拡大するような用途には向きません。
OLEDではRGB PenTile、LCDではRGB Stripeがよく使われるよ!(例外あり)
RGB PenTileはRGB Stripeに比べてエッジ部分の色収差が強かったり、スクリーンドアエフェクト(視野に網目模様が見えてしまう問題)も強くなるよ!
ディストーションとPPD 重要度★☆☆☆☆
実は、一般的な片目に一つのパネルを使うHMDであっても、場所によってPPDは異なります。
そもそも、VRゴーグル用の映像のレンダリングには、通常の平面ディスプレイにはないディストーションプロセスが含まれます。これは、レンダリングされた通常の映像を、HMDの光学設計に固有な形に歪める工程です。歪んだ映像はHMDのレンズなどの光学機器の歪みに相殺され、使用者は歪みのない映像を見ることになります。
通常のレンダリング結果が左側で、実際にパネルに映っている映像が右側です。この歪んだ画像がレンズを通すと均等な視野になるわけですから、中心部分はPPDが高く、端に行くにつれてPPDが低くなります。
PPDを比較するときは、最大値なのか平均値なのか、縦なのか横なのか、どこの値か注意しよう!
Tips 視野角と解像度はどっちが重要なのか
視野角と解像度はどちらが重要かという問題ですが、経験則的には「一定以上の視野角(HFOV100°~)があれば、PPDと没入感は比例関係にある」と言えます。
ただし、没入感よりも現実の視野に近いことが求められるFPSやシミュレーター用途など、視野角を優先すべき場合も勿論あります。
早く人間レベルの視覚ディスプレイができるといいですね!
最後に
一通りVRゴーグル選びに重要なことを書き殴ってみました。幸い日本語話者VR界隈には怖い人がいっぱい居るので、分からないことは誰かに聞きましょう!
最後まで見てくれてありがとう! 良いVRライフを!
steamvr.vrsettingsのメモ書き
※使ったのとかまとめるだけ
場所
steamvr.vrsettings
"C:\Program Files (x86)\Steam\config\steamvr.vrsettings"
SteamVRの設定ファイル
default.vrsettings
"C:\Program Files (x86)\Steam\steamapps\common\SteamVR\resources\settings\default.vrsettings"
デフォルト設定
"steamvr"
"requireHmd"
値:true,false デフォルト:true
SteamVRの起動にHMDの接続を必須とするか
"ipdOffset"
値:数値(m) デフォルト:0.0
IPDオフセット
"activateMultipleDrivers"
値:true,false デフォルト:false
複数ドライバーの有効化(OculusとLightHouseなど)
"renderCameraMode"
値:raw,parallel デフォルト:parallel
Valve Indexの平行投影(パラレルプロジェクション)の有効化
"showInternalSettings"
値:true,false デフォルト:false
Valve社内向けの設定の表示
アプリ毎リフレッシュレートの設定など
"trackingLossColor"
値:カラーコード デフォルト:"#4D6680"
SteamVR Trackingシステム採用HMDのトラッキングロスト時に表示される単色背景の色設定
"TrackingOverrides"
その他
JSONの整形と構文チェックができるサービスを利用して事故を未然に防ぎましょう。
ViveトラッカーでインサイドアウトのHMDをベースステーションに対応させる"OpenVR Tracking Overrides"
これは何?
HMDやコントローラーをViveトラッカーでトラッキングしたり、HMDを被らないでVRができるTracking Overridesのやり方を説明します。
トラッキングオーバーライド
Tracking OverridesはSteamVR上のデバイスのトラッキングデータを別のデバイスのトラッキングデータで上書きすることができる機能です。トリガーやタッチパッドなどのインプット、バイブレーションなどは上書きされません。
この機能を用いるとこんなことができます。
・インサイドアウトのHMDにトラッカーを取り付けてベースステーションでトラッキングする。
・VMTと併用してオリジナルのトラッキングシステムで既存のVR機器をトラッキングする
・頭にトラッカーをつけて、HMDを外した状態でVRゲームをプレイする。
公式のWikiはこちら
やり方
Tracking OverridesはSteamVRのconfigファイルにTracking Overridesセクションを追加して行います。
また上書きには上書き元のデバイスパスが必要なため、デバイスパスの調べ方を解説します。ViveトラッカーでQuestをトラッキングしようと思ったらViveトラッカーのパスを調べる必要があります。(>_<)
デバイスパス
SteamVR上のデバイス全てにあるデバイス固有のパスです。
確認はシステムレポートを作成から行います。
/devices/から始まる文字列がデバイスパスです。
configファイルの編集
configファイルは"C:\Program Files (x86)\Steam\config\steamvr.vrsettings"にあります。
※ファイルの編集はSteamVRを壊す可能性があります。configファイルのバックアップをおすすめします。また編集するときはSteamのタスクを落としましょう。
まずはsteamvrセクションにactivateMultipleDriversを追加します。
"steamvr" : {
"activateMultipleDrivers" : true
}
すでにある場合は値を変更してください。trueにすると複数ドライバーを認識できるようになります。(例、OculusとHTCなど)
次にTracking Overridesセクションを追加します。※例を参考にして、カンマの位置など正しいJSONの形式で記述してください。
"TrackingOverrides" : {
"【デバイスパス(データ参照元)】" : "【デバイスorセマンティックパス(データ上書き先)】"
}
セマンティックパスとはデバイス固有ではなく、その時々によってパスに最適なデバイスが参照されます。
例 HMD“/user/head" 右手コントローラー“/user/hand/right” 左手コントローラー“/user/hand/left”
両方ともデバイスパスで指定することも可能です。
指定したデバイスがSteamVRに認識されると(トラッカーの電源が入ると)トラッキングデータの上書きが適用されます。
例
{
"TrackingOverrides" : {
"/devices/htc/vive_trackerLHR-01234567" : "/user/head"
},
"steamvr" : {
"activateMultipleDrivers" : true,
"installID" : "00000000000000000000",
"lastVersionNotice" : "1.20.4",
"lastVersionNoticeDate" : "0000000000",
"showAdvancedSettings" : true
}
}
セクション、セクションの中身が複数ある場合は","でつなぎます。
オフセット?
ViveトラッカーでHMDをトラッキングをする場合、写真のように前方にトラッカーを付けることである程度正しくトラッキングするようになります。さらに正確にトラッキングしたい場合はViveトラッカーの位置をオフセットすることをおすすめします。
ファームウェアを編集してオフセットする方法
個人的にはVMTとSteamVR Pluginを用いてオフセットするためのUnityアプリを作るのがおすすめです。
最後に
Tracking Overridesをわかりやすく(そのつもり)説明しました。configファイルを変にいじるとSteamVRが壊れちゃうのでほどほどにしようね!
Vive Flow + SteamVR セットアップガイド(実験的RiftCat、VRidge、Moonlight、SteamVR Tracking)
これは何?
ViveFlowでSteamVRを使うためのセットアップを紹介します。
実験的ですがRiftCat+Moonlightのやり方も紹介します。
VRidgeのセットアップ
ストリーミングにはVRidge(RiftCat)というソフトを用います。
Vridgeのインストール
PCにRiftCatクライアントをインストールします。
RiftCatは10分までは無料、それ以降は15ユーロ(買い切り)なので、購入する前に一度試してみることをお勧めします。
次はViveFlowにVRidgeを導入します。VIVEPORTにFocus用のVRidgeがあるのでそれをインストールします。
FlowとPCを同一ネットワークに接続します。PCはアクセスポイントに有線接続するのがおすすめです。
FlowでVRidgeを起動するとPCのクライアントに端末名が表示されるので、「はい」を押して接続します。接続後、再生マークを押すことでSteamVRを開始できます。
他のHMDが接続されているとそちらが優先されてしまうため、事前にUSBを抜いておきましょう。
RiftCatの設定
VRidgeの設定ボタンからストリーミングの設定を変更することが可能です。これは私の設定ですが、PCスペックやWiFiの環境など、自分に合った設定を探してみてください。
高ビットレートにすれば画質は向上しますが、遅延が増えたりストリーミングが不安定になります。
解像度は"C:\Program Files (x86)\Riftcat 2\Config\vridge.cfg"からカスタム数値を設定できます。430行目のVR.ResolutionをHeight:1600、Width:3200に設定します。このコンフィグファイルでビットレートなども範囲外に設定できます。
コントローラー
コントローラーのソリューションをいくつか紹介します。
VRidgeの機能を使う
統合設定の3自由度コントローラーをONにすると、スマホコントローラーをViveコンにエミュレートすることができます。(標準でON)
OpenVR Space Calibrator
Space Calibratorを用いてFlow(VRidge)のプレイスペースと他のトラッキングシステム(LightHouseなど)をキャリブレーションし、併用することが可能です。
Oculus Touch Steam Linkを用いればOculus Touchを用いることも可能です。
HMDをLightHouseに対応させる
— Ρ (@ugokutennp) 2021年12月23日
ViveFlow+Vridge+Moonlight+SteamVR Trackingで何とか動くようになった! pic.twitter.com/wp0mfbgiKa
— Ρ (@ugokutennp) 2021年12月23日
HMDをLightHouseでトラッキングすれば、キャリブレーション不要でLightHouse互換コントローラーを使えます。
Moonlight
Moonlightとは?
MoonlightとはNVIDIA GameStreamをSHIELD以外のデバイスで使用するためのソフトです。コア技術はNVIDIA謹製のため非常に安定したストリーミングが可能です。
現在ViveFlowでVRidge+Moonlightを使おうとするとVridge側が機能停止してしまい、Flowのモーションセンサーを使うことができない状態です。またFlowの適正なディストーション設定も不明なため、こういう方法もあるんだ~程度の認識で大丈夫です。
FlowでMoonlightを使う
VRidgeのストリーミングでMoonlightを使用する基本的な方法は公式のセットアップガイドをご覧ください。
https://support.riftcat.com/hc/en-us/articles/115005811705-Moonlight-Basic-Guide
ここではViveFlowでの特別なセットアップを紹介します。
Moonlightのインストール
ViveFlowでは一般的なアプリストアからアプリをインストールすることはできないため、ADB経由でAPKをインストールします。
Flowの場合は
設定>詳細設定>不明なアプリのインストール
設定>詳細設定>開発者向けオプション>USBデバック
をONにしましょう。
USBモードは何もしないを選択します。
ADB環境の構築
APKのインストール
MoonlightのAPKはこちらから
AndroidGUIの操作
Moonlightを使う都合上、AndroidのGUIを操作する必要があります。Flowにはタッチパネルがなく、マウスを接続しても認識しないため、GUI操作はVysorを使うのがお勧めです。
最後に
ViveFlowでSteamVRをプレイするセットアップを紹介しました。NVENC、HEVCを使えばある程度ストリーミングも安定するので、Moonlightを使う必要はないと思います。今のところFlowのマイクは使えないですが、VRCHATやその他VRゲームをカジュアルに遊ぶためのHMDとしていいのではないでしょうか。(>_<)
「猫でもできる」Watchman dongleをいい感じに錬成する方法
これは何?
Watchman dongleをいい感じに錬成する方法を思いついたので紹介します。Watchman dongleに関する詳しい情報は前回のブログで。
概要
今回やることをざっくりと説明します。
①nRF24LU1を搭載したUSBドングルとnRF24LU1P(32kb)を購入する。
②USBドングルのチップをnRF24LU1Pに交換する。
③ファームウェアの準備をする。
④ファームウェアを書き込む。
ごめんなさい。猫にはちょっと厳しいかも…
部品選び
USBドングル
とりあえずnRF24LU1用のUSBドングルが流用できることは確認しました。他のnRF24シリーズ用の基板でも一部互換性のあるものがあるかも(詳しくない)。今回はAliexpressで購入した怪しいドングルを使います。
同じ回路なのにここまで小型化できるのか…
— Ρ (@ugokutennp) 2021年12月14日
すごい( > <。) pic.twitter.com/PRUjrmYoU3
極論を言えばLogitech Unifying receiverでもできるのかな?
nRF24LU1P
nRF24LU1P-F32Q32-Rを購入しました。32kbのメモリ容量とNordicのブートローダーが書き込まれていることが条件です。新品のチップなら問題ないですが、Aliexpressなどで買うと別のブートローダーが書き込まれていることがあるらしいので、レビューを要チェックです。
チップのリプレース
熱風式リワークステーションを用いてチップ換装を行います。QFNパッケージのハンダ付けは初めてでしたが、本当に大変でした。もう一生やりたくない…(>_<)
nRF24LU1からnRF24LU1Pに交換 pic.twitter.com/gcmcbVdIgD
— Ρ (@ugokutennp) 2021年12月28日
参考にした動画
ファームウェアの準備
今回はHDK付属のファームウェアを使いましたが、Viveドングルのファームウェアでも行けると思います(試してない)。
ファームウェアの書き込み
書き込みはnRFgo Studioを使います。チップ交換が成功したかつチップにNordicのブートローダーが書き込まれていれば、USBポート接続時にDevice ManagerのnRF24LU1+Bootloaderにタブが出てきます。
あとはhexファイルを指定してProgram flash memoryボタンをぽちぽちしましょう。書き込み終了後にUSBポートに刺しなおすとWatchman dongleとして認識するはずです。
お疲れさまでした。
最後に
ドングルの選択肢を増やそうと調べはじめましたが、なんとか動くようになってよかったです。技適問題は完全に#000000なので製作は自己責任でお願いします。
Watchman dongleの道標
これは何?
自作Watchman dongleで試行錯誤する過程で得た情報をまとめます。
※メモ書き程度の信憑性です
- これは何?
- そもそもWatchman dongleって何?
- ドングルのハードウェアを紐解く
- 自作ドングルのすゝめ
- nRF24LU1P(nRF52840)搭載ドングルをWatchman dongleにする
- 自作ドングル(ハードウェア)
- 自作ドングル(ファームウェア)
- 技適(あいまい)
- 最後に
そもそもWatchman dongleって何?
Watchman dongleって何
SteamVR Trackingを採用している無線機器をPCに接続するためのトランシーバーです。
なんで必要なの
ドングルは基本的に1つの機器に1つ必要です。例えば、ValveIndexにknuckles controllerを使おうと思ったらドングルは必要ありません。これは、SteamVR Trackingを採用しているHMDには、コントローラー用にあらかじめドングルが二つ搭載されているためです。しかし、MetaやWindowsMRなどのHMDには当然Watchman dongleは搭載されていません。ここで初めて外部にドングルが必要になります。その他にもコントローラー単体で利用したりする際に必要になります。
なんか増えた…(∩´﹏`∩) pic.twitter.com/OWWd7EcMbE
— Ρ (@ugokutennp) 2021年12月12日
ドングルのハードウェアを紐解く
最も普及しているドングルはHTCが製造しているViveTracker用のドングルです。中身を見てみましょう。
https://fccid.io/NM82PYV300/Internal-Photos/Internal-photos-3265244
Internal Photos見ると、ViveドングルにはnRF24LU1Pというチップが使われているようです。
ViveProやViveCEにも同様のチップが使われています。
Indexに関してはnRF52840という最新のチップが使われています。(ここでは省略)
Tundra LabsのSuper Wireless Dongleもindexと同様にnRF52840を使用しているようです。Raytac製のMDBT50Q-P1MV2というモジュールが使われています。
Super Wireless DongleのDVT-2(試作第2弾)もテスト中で、今の所順調に動作しています。 pic.twitter.com/xIIlx76JR1
— Tundra Labs Japan 🇯🇵 (@Tundra_Labs_JP) 2021年7月7日
nRF24LU1P
nRF24シリーズはNordic Semiconductorが製造している2.4GHz用のRF SoCです。nRF24LU1PはUSBコントローラー、フラッシュメモリを備えており、これ1つでドングルが作れる!そんなチップです。
自作ドングルのすゝめ
ここで考えられる道は二つあります。それは「nRF24LU1P(nRF52840)が搭載されているドングルにWatchman dongleのファームウェアをフラッシュする」か「0から作る」です。
nRF24LU1P(nRF52840)搭載ドングルをWatchman dongleにする
Steam Controller Wireless Receiver
Steam Controller Wireless ReceiverはSteam Controller用のドングルです。Viveドングルと同様にnRF24LU1Pを使用しています。
https://fccid.io/2AES41002/Internal-Photos/Internal-Photos-2647947
このドングルは簡単にWatchman dongleに書き換えられることで有名です。
やり方の一例を紹介します。また、Natural locomotionというソフトでもっと簡単に書き換えられるようです。
ファームウェア書き換えて、SteamコントローラレシーバーをSteamVRドングル(トラッカーのお馴染みのアレ)に変換する手術が成功しましたー!VIVE HMDに電源入れなくてもコントローラーとトラッカー5つ認識できるようになったから、MRのHMD使っててもベースステーション系のフルトラできますね pic.twitter.com/htvdwWYpeP
— Wing (@wing_ap) 2019年6月4日
この方法はチップにValve Nordic bootloaderが書き込まれているデバイスでのみ使える様です。
Crazyradio PA
20dBmのパワーアンプを搭載している長距離用のドングルです。
書き込み方法はこちら。
Flashing Watchman firmware to Crazyradio PA · GitHub
Logitech Unifying receiver
Logitech Unifying receiverはLogitech製のマウスやキーボード用のドングルです。一部のモデル(型番:C-U0007)はnRF24LU1Pが使われているようです。
Logitech CU0007 closeups. High contrast. pic.twitter.com/xIdb1kX5mw
— jermainlaforce 🇨🇦 (@jermainlaforce) 2019年8月28日
安価で入手性もよく、このドングルにWatchman dongleのファームウェアをフラッシュできたらいいなと思ったのですが、いくつか問題があるようです。どうやらWatchman dongleのファームウェアとLogitechのブートローダーは一部領域が被っており、Logitechのブートローダー領域は書き込み保護されているため使用できないそうです。SPI経由で書き込むか、Watchman dongleのファームウェアを修正すれば行けるかもしれませんが、簡単ではありません。
MDBT50Q-RX
Super Wireless Dongleと同じnRF52840を搭載した無線モジュールの開発用ドングルです。
MDBT50Q-P1MV2ドングル pic.twitter.com/aX2DwrN6wX
— Ρ (@ugokutennp) 2021年12月25日
nRF52シリーズの書き込みにはnRF Connect for DesktopのProgrammerソフトを用います。実際に購入して接続したところ、ソフト側で認識しなかったためいろいろ調べたのですが、Nordic製のブートローダーが書き込まれていないことがわかりました。(>_<)
J-Linkを介してブートローダーを書き込むことで使えるそうですが、そもそもnRF52用のファームウェアが手に入らないので詳細不明です。
ブートローダーの書き込み
ファームウェアの書き込み
その他のドングル
Aliexpressやebayを見ているとnRF24LU1やnRF24LU1Pを搭載したUSBドングルを比較的安価に見つけることができます。ここで注意してほしいのはチップのメモリ容量です。nRF24LU1Pには16kbモデルと32kbモデルがありますが、Wachman dongleのファームウェアは21kb近くあるので、32kbモデルでないと書き込めません。(>_<)
また、USB経由でファームウェアを書き込むにはNordicのブートローダーが書き込まれている必要があります。
ファームウェアの書き込みについては次章で触れます。
自作ドングル(ハードウェア)
手に入るデータ
SteamVR Tracking ライセンシーになることで、Valveが公開しているドキュメントにアクセスすることができます。その中にはドングルの回路図やbrdデータも含まれるため、基板作成の経験があれば比較的簡単に作ることができると思います。
その他の方法
基板を手に入れる方法は他にもあります。それはnRF24LU1ドングルの基板を流用することです。QFNパッケージをリフローできる環境が整っていれば、0から作るよりずっと簡単にドングルを作成できます。
自作ドングル(ファームウェア)
手に入るデータ
手に入るファームウェアはいくつかあります。一つはViveドングルのファームウェアで、残りは基板のレイアウトデータと同様にライセンシーになることで手に入ります。
・Viveドングル用(要SteamVRインストール)
"C:\Program Files (x86)\Steam\steamapps\common\SteamVR\tools\lighthouse\firmware\vr_controller\archive\htc_vrc_dongle_1461100729_2016_04_19.bin"
・ライセンシー向けドキュメント(要SteamVR Tracking HDKインストール)
"C:\Program Files (x86)\Steam\steamapps\common\SteamVR Tracking HDK\firmware\dongle\watchman_dongle_combined.bin"
・Triad Semiconductor製SteamVR Tracking HDK付属ドングル用(要SteamVR Tracking HDKインストール)
"C:\Program Files (x86)\Steam\steamapps\common\SteamVR Tracking HDK\firmware\2018.06.05\watchman_v3_dongle_v1525468496.bin"
nRF52840用のファームウェアは今のところ入手できるか不明です。以下のものがIndex用のnRF52関係のファームウェアであることはわかっていますが、Watchman dongleと同等の物なのかは不明です。
"C:\Program Files (x86)\Steam\steamapps\common\SteamVR\drivers\indexhmd\resources\firmware\radio\gd_1558748372_dfu\s140_nrf52_6.1.1_softdevice.bin"
今後ローカルファイルにSuper Wireless Dongle向けのファームウェアが降ってくるかもしれません。
nRF24LU1Pへの書き込み
nRF24LU1Pへの書き込みはUSBを使ったやり方とSPIポートを使ったやり方があるようです。USBを介したやり方はチップにNordicのブートローダーが書き込まれていないと出来ないため、書き込まれていない場合はSPIポートからブートローダーを書き込む必要があります(今回は省略)。nRF24LU1Pには工場出荷時にNordicのブートローダーが書き込まれているらしく、USBポートに接続するとnRFgo StudioにてnRF24LU1+Bootloaderとして認識されます。
ファームウェアの変換
USBを介した書き込みにはnRFgo Studioを用います。また、書き込むにはファームウェアの2進数のデータ(bin)を16進数のデータ(hex)に変換する必要があります。変換にはsrec_catを用います。
ファームウェアのデータとダウンロードしたsrec_cat.exeをデスクトップに配置します。コマンドプロンプトを開いて「cd Desktop」でディレクトリを変更します。次に「srec_cat.exe watchman_dongle_combined.bin -Binary -o watchman_dongle_combined.hex -Intel」を実行します。これでファームウェアのhexファイルを手に入れることができます。あとはnRFgo Studioを開き、Device manager\nRF24LU1+Bootloaderにてhexファイルを指定して書き込むことができます。
技適(あいまい)
Watchman dongleと技適
国内でドングルなどの無線局を使用する場合、原則として免許が必要になります。ただし、いくつか例外があります。まずは微弱無線です。名前の通り微弱な電波しか用いない無線機器で2.4GHz帯の場合、3mで35uV/m以下なら免許の申請や届け出が必要ありません。もう一つは特定小電力無線です。市場の多くの無線モジュールが該当し、技術基準適合試験に合格した製品のみ使用することができます。
もしnRF24LU1Pでドングルを作ったらこれら例外のどちらかに当てはまりますか?
→当てはまりません。
回避?
技適未取得機器を用いた実験等の特例制度を利用することで、技適マークのない無線機器を使用することができます。また電波暗室での使用は問題ないと思われます。
最後に
ここ数か月Watchman dongleについていろいろ調べて分かった情報をまとめてみました。今は自作しなくてもTundra LabsやTG0など新しい既製品のドングルも出始めています。数年前には想像もできなかった、まさかのWatchmanドングル大戦時代の到来です。楽しみですね(何が?)。
Special thanks to VRコミュニティの皆さん、いろいろ教えてくれたXRハードメーカーの中の人、サメチャン…
このブログはあんふぃとらいと Advent Calendar 2021に参加しています。
次はNajikoさんの記事です。楽しみで夜も眠れません。(>_<)