Node-RED から HiveMQ MQTT ブローカーに ID/Pass + TLS オンでつなぐメモ
Node-RED から HiveMQ MQTT ブローカーに ID/Pass + TLS オンでつなぐメモです。
背景
2025/5 時点の情報で進めます。
以前 CloudMQTT が無料枠でとても使いやすくて MQTT をサッと使うときは常用していたのですが、

このようにサービスが終わってしまって困っていました。
ですが、HiveMQ というサービスで無料枠ですぐ使えそうなことが、しばらく使っていてつかめたのでつないでみます。

HiveMQ Pricing – Self-Service MQTT Platform こちらの価格表にある Free で使えるのは Serverless の Free サービスです。No credit card required なのもありがたいところ。
Cluster を作る
アカウントを作ってログインしたら、

Cluster Overview の横の+ボタンをクリックして Cluster を作成します。 Serverless の FREE のほうをクリックします。

このように Cluster ができます。Manage Cluster をクリックします。

詳細画面が表示されました。
アカウントを作る
この Cluster でのアカウントを作ります。

上のタブで Access Management をクリックします。Credentials のところで Edit をクリックします。

Add Credential をクリックします。

設定の詳細が出てきます。

Username Password Confirm Password を設定しつつ、Permission は Publish and Sunscribe にします。設定できたら Save をクリックします。

無事設定できました。
Node-RED のフローをつくる
HiveMQ のこの設定の場合、Node-RED から MQTT ID/Pass + TLS オンでつなぎます。

このように inject ノードに MQTT in ノードをつなぎ、MQTT out ノードに debug ノードをつなぎます。

MQTT in ノードをダブルクリックして設定します。

トピックは test にして、サーバは新規に mqtt-broker を追加を選択して+ボタンをクリックします。

MQTT Broker 設定です。

HiveMQ の Cluster の Overview にある URL をサーバに入力して、ポートは 8883 にします。

- サーバ
- Hive MQ の Cluster の Overview にある URL
- ポート
- 8883
- TLS を使用
- オン
- TLS 設定
- 新規に tls-config を追加 のままで設定はしない
サーバ・ポートはそのまま反映しますが、TLS 部分が TLS(証明書なし)の設定として、TLS を使用はオンにしますが、横の TLS 設定は 新規に tls-config を追加 のままで設定はしません。

セキュリティタブでは、先ほど Access Management で設定したアカウントの ID とパスワードを入力します。
設定できたら追加をクリックします。

MQTT in ノードを編集の画面に戻ったら完了をクリックします。

つづいて MQTT out ノードもダブルクリックして設定します。

MQTT out ノードの編集画面です。

- サーバー
- さきほどの HiveMQ の MQTT ブローカーを選択
- トピック
- test
で設定できたら完了をクリックします。

デプロイボタンをクリックしてデプロイします。

MQTT ノードがそれぞれ接続済になり、接続が成功します!
動かしてみる

inject ノードをクリックしてタイムスタンプを MQTT in ノードにデータを送ります。

MQTT out ノードが test トピックでデータを受け取ります。

debug ノードにデータが届き、さきほど送ったタイムスタンプデータが表示されます。