MQTT Explorer で AWS IoT Core につなぐときの設定メモ

MQTT Explorer で AWS IoT Core につなぐときの設定メモです。

ちょっと自分的にハマりポイントがあったのでメモしておきます。

MQTT Explorer

image

MQTTExplorer

MQTT Explorer はオープンソースの MQTT プロトコル検証ツールです。私も色々なシーンで使っています。

基本接続設定

AWS IoT リソースの作成 – AWS IoT Core このあたりの記事を参考に、AWS IoT Core につながるモノのオブジェクトやポリシーを作成します。

MQTT Explorer で右上の+ボタンをクリックして新しい接続を作成します。

image

  • Name
    • AWS IoT Core
  • Validate certificate
    • ON
  • Encryption(tsl)
    • ON
  • Protocol
    • mqtt://
  • Host
    • 今回つなぐ AWS IoT Core のエンドポイント
  • Port
    • 8883
  • Username
    • なし
  • Password
    • なし

設定できたら ADVANCED ボタンをクリックします。

ADVANCED 設定

初期自動時の Subscription トピックを調整します。

image

自動で作られるものは #$SYS/#があります。MQTT Client ID はそのままです。

image

$SYS/#の横のゴミ箱ボタンをクリックします。

image

このように # だけ残ります。ここがポイントです。$SYS/#があると、永遠に AWS IoT Core に弾かれて切断し続ける挙動になります。おそらく制約があると思われます。

設定できたら CERTIFICATES ボタンをクリックします。

CERTIFICATES 設定

image

証明書ファイルを設定します。

  • SERVER CERTIFICATE(CA)
    • AWS IoT Core のデバイス証明書作成時にダウンロードした末尾が AmazonRootCA1.pem ファイルを指定
  • CLIENT CERTIFICATE
    • AWS IoT Core のデバイス証明書作成時にダウンロードした末尾が -certificate.pem.crt ファイルを指定
  • CLIENT KEY
    • AWS IoT Core のデバイス証明書作成時にダウンロードした末尾が -private.pem.key ファイルを指定

設定できたら BACK ボタンをクリックします。

image

ADVANCED 設定に戻るので BACK ボタンをクリックします。

image

最初の設定画面に戻ったら CONNECT ボタンをクリックします。

image

設定が合っていれば無事接続がされます。

image

ためしに Publish してみます。

image

無事今回の Publish データが表示されます。

大事なのは Subscription のところで自動設定されるものを適切に直すところですね。証明書など他の設定は、設定名を照らし合わせながらやればうまく行きました。