C94-M8PでRTK

#C94-M8PでRTK
公式のマニュアル通りなんだけど、備忘録を兼ねてメモ。
LoRaの到達距離はまだよくわかってませんが、建物や林などにはかなり弱いです。
しかし見通しが効く場所であれば、脚立や三脚などでLoRaアンテナの高さを上げると、けっこう飛びます。
（規格上は1km程度だけど、せいぜい５００ｍくらいのような？）

#必要なもの
・C94-M8P-4
間違いなくJapanモデルを購入してください。マニュアル等の写真には載ってませんが、ちゃんと技適マークも付いてます。
https://www.u-blox.com/ja/product/c94-m8p
私が購入した時は438.00ＵＳドル*換算レート115.06円=50,392円+関税3180円。（合計53,572円）
DHLでしたが送料無料、約１週間程度で届きました。
・Android端末
・USBオス-USB Aメス（いわゆるOTGケーブル）
・あったほうがいいもの
スマホのモバイルバッテリー。BASEのC94-M8Pに電源供給するために使います。ただし給電開始のときにボタン操作が必要なモバイルバッテリーの場合、消費電力が少なすぎて勝手にOFFになるものがあります。自分が持っている中では、Amazonでポチったダンボーデザインの大容量モバイルバッテリは勝手に電源切れました。
手持ちのモバイルバッテリーの中で使えたのは、オーム電気のこの製品。
https://www.amazon.co.jp/dp/B074N2M4H2

追記：IoT機器対応というのもあります。
https://www.amazon.co.jp/gp/product/B018KD0D82/

#設定

1.u-centerをインストール

https://www.u-blox.com/en/product/u-center-windows
設定を変更する方法が２つあり、ViewのなかのMessages viewとConfigure viewがある。
どちらも左下にあるsendを押すことで、設定内容がチップに送られる。

2.USBで接続してBASEの設定

シールなり何なりで、BASEとroverそれぞれ設定を書き込むボードに目印を付けておく。
（両方を一度に接続すると、どっちがどっちかわからなくなるので厳禁）
UBX-CFG-TMODE3の設定
・Survery-inモード
300s,2.000で設定。
・Fixed Positionモード
測量済みのポイントであれば、ここに座標を入力。

起動時間がかかるけれど、あちこちで使いたい場合はSurveryがオススメ。
上空開けた場所に適当に置くだけで使えちゃうので、正直かなり便利です。
逆に建物等に固定して移動させない場合はFixedモードがいいでしょう。

3.UBX-CFG-PRT

UART1がC94Pを介してroverと接続されているので、roverに流すデータを設定。
Target:UART1
in:none
out:RTCM3
Baudrate:19200

4.UBX-CFG-MSG

RTCMメッセージの設定。
F5-05 RTCM3.2 1005
UART ON 1
F5-4D RTCM3.2 1077
UART ON 1
F5-7F RTCM3.2 1127
UART ON 1

5.Configure viewrで設定内容を保存

Configure ViewでDevicesを全部選択し、Save current configrationをチェックしSend
ポカミス防止のためPCからBaseの設定を書き込んだボードを取り外し、roverのボードを取り付ける

6.UBX-CFG-PRT

UART1がC94Pを介してBASEと接続されているので、BASEから受け取るデータを設定。
RTKの結果をUSBに出力する。
Target:UART1
in:RTCM3
out:none
Baudrate:19200

Target:USB
in:none
out:NMEA

7.Configure viewrで設定内容を保存

Configure ViewでDevicesを全部選択し、Save current configrationをチェックしSend


8.Configre-GNSSにて、使用する衛星を選べます。GPS,BeiDou,QZSSを使うようにすると、FIXしやすいようです。

![スクリーンショット 2018-02-06 18.04.30_01.png](https://qiita-image-store.s3.amazonaws.com/0/181687/03df5eac-3570-9d40-3649-84a53aa01c0d.png)

#Agribus NAVIで使う

1.BASEを設置

BASEを設置し電源を入れておく。roverをUSBオス-USB Aメス（いわゆるOTGケーブル）でAndroid端末に接続する。
Survery-inモードの場合、まだ数回しかテストしてませんが安定してFIXするまでに１０分程度かかるようです。

2.Serial USB Terminalで、正常にNMEAが受け取れているか確認する。

https://play.google.com/store/apps/details?id=de.kai_morich.serial_usb_terminal

3.AgribusNAVI

GNSS位置情報取得元：外付けGNSSをUSBに接続して使用


#その他
##Bluetoothで繋ぐ

・秋月電子のRN-42
http://akizukidenshi.com/catalog/g/gK-07378/
[RN-42モジュールのコマンド](https://qiita.com/TakeoChan/items/a1148546d2e56b8173b8)

C94-M8PはLoRa使用時19200bpsにしなければならないので、RN-42のbpsを変更する必要があります。
また、Bluetoothの検索で出てくる名前を変更可能なので、せっかくだからわかりやすい名前に変更します。

```command
$$$
D
SU,19
SN,C94-M8P
D
R,1
```

・車載するときに便利な12Vでも使用可能なレギュレータIC
http://akizukidenshi.com/catalog/g/gI-01177/
・電解コンデンサと積層コンデンサも必要なので、手持ちで無い場合はついでに買っておきましょう。容量はマニュアルを参照のこと。

・配線はC94-M8P Application Board User Guideのp34を参照
J8コネクタに電源,GND,TXDが出ています。

またRTK_STATもあるので、本体のLEDが見づらい場合は別途LEDを付けられます。
（回路図見るとNC7SZ125を使用している様子。でも適当な74HCとかでもいいような気もする。）

![IMG_3396.png](https://qiita-image-store.s3.amazonaws.com/0/181687/5f02735e-47a1-c9ab-2e98-085e4fd900b8.png)

##無線通信のチャンネル等の設定
・u-centerでUARTのin,out両方をnoneにする。Baudrateを確認しておく。

・PC等からC94-M8PのシリアルコネクタにUSB-シリアル等をつなぎ、u-centerのUARTで設定した速度でPuttyやTeratermで接続。

（蛇足ですが某B社のシリアルUSB変換を使用する場合、コネクタの両端に付いているネジをペンチ等で無理やり引っこ抜くと、直刺しできて便利です。）

```
+++
```
と素早く入力すると、ATコマンドを受け付けるようになります。

・コマンドは以下参照
 [C94-M8P Application Board User Guide.pdf](C94-M8P Application Board User Guide.pdf)(37-38p)

私は不注意で1台壊してしまったため、先日2セット目を購入しましたが、どれもNETID=74,NUM_CHANNELS=3でした。
たまたま一致したのか、全製品同じなのかは不明。

近所の人とBaseの混信を避けたい場合にはチャンネルやNETIDを変更するとか、逆に複数台のRoverでBaseを共有したい場合は設定が一致してるか確認する、等々。
色々と使い分ける事ができそうです。

##Baseをケースに入れてみた
手前味噌ですが裸基盤のまま実用するのも何なので、Baseはこんな感じに仕上げて使っています。

![01_01.jpg](https://qiita-image-store.s3.amazonaws.com/0/181687/0de610a6-b56c-2622-3dec-1d54a30b7064.jpeg)

![02_01.jpg](https://qiita-image-store.s3.amazonaws.com/0/181687/10868d35-bac7-8b08-49fb-5457002af334.jpeg)

写真はありませんが、UHFのアンテナは延長ケーブルを別途用意し、少しでも高さが出るようにしたほうがLoRaの電波が飛びやすいです。