CAT-M/NB-IoT+GNSSユニットの技適が通って国内でも販売されるようになりました。IoT対応でGNSSまで付いてる。IoTをやるためのモジュール。MQTTやGNSSをATコマンドで操れるのでMCU側の負担も軽くて最高なやつです。Core2とユニットを接続してSORACOMでネットにつないでユニットのGNSSセンサで取得した位置情報をMQTTでパブリックなMQTTブローカーに送信してみました。SORACOMへのつなぎ方やユニットの安定動作のさせかたは以下の記事を参考にさせていただきました。3AのDCアダプタで給電しました。Core2とユニットは付属のGroveコネクタでPORT.Cにつなげています。上記記事では外部給電の場合は5vのポートが出力に変わるので5vポートを繋げないほうが良いと書かれていますが、当方では問題なく動作しています。心配な方は対策してください。やってみたソースコードは以下。試しながら書いたので無駄な処理も入っていますが動きます。M5_SIM7080GのサンプルコードのMQTTのやつとGNSSのやつを混ぜてSORACOM接続を追加した感じです。Successfully!が画面に表示されたあとにAボタンをタップするとbroker.emqx.ioに位置情報が送信されます。送信された情報はmosquittoなどでサブスクライブして確認してみてください。以下にmosquittoの例を示します。"lng":0.000000}動作している様子まとめ処理の手順はざっくり以下。GNSSセンサのパワーをONするGNSS位置情報を取得するGNSSセンサのパワーをOFFするSORACOMの接続を確立するMQTTブローカーに接続するGNSSセンサをONしてからGNSS情報を取得にいくまで20秒待ってます。最初はsetup時にGNSSセンサをONしてからSORACOM接続->MQTT接続とやってみたけどMQTT接続が必ずERRORになってしまいました。SIM7080Gの中ではMQTTとGNSSはコンカレントに使えないようなのでGNSSセンサで位置情報をとったあとセンサを切ってからMQTT接続を行っています。リアルタイムに位置情報とりながらMQTTで送るという処理はちょっといろいろ考えないといけないかも。このあたりうまい方法があったらぜひ教えてください。M5Stack系でLTEがとても簡単に使えるようになっただけでもありがたい。Proよくある質問LinksX(Twitter)GitHubメディアキットLegal利用規約プライバシーポリシ。