2016-07-01 6 views
0

に複数nodemcuを接続することはできません。私は自分のコンピュータにインストールされている蚊帳ブローカーを使用しています。は、私は現在、私はMQTTとESP8266の無線LANモジュールを使用するプロジェクトに取り組んでいます同じブローカー

私は、複数のesp8266モジュールは、ブローカー上の特定のトピックにサブスクライブにしようとしています。私はデモとして2つのモジュールを使用しています。

問題は、私はモジュールのいずれかを接続するたびに、他の一つはブローカーから切断することです。再接続すると、最初に接続されたモジュールがオフラインになります。

助けが必要ですか?

+0

このような問題については、接続コードとログにブローカーからのログが含まれているため、クライアントがその質問で切断されていることを示すので、推測する必要はありません。 – hardillb

答えて

4

あなたはモジュールごとに固有のクライアントIDを使用する必要があります。ブローカが同じクライアントIDで2番目のクライアントを接続するときに最初のクライアントを無効にします

+1

私はあなたのようなクリスタルボール1つ持っている:)彼は私たちにコードを表示さえしませんでした...しかしあなたの野生の推測が最も可能性の高い原因です。 –

+0

問題に関する彼の説明は、クライアントIDの衝突の症状に正確に合致します。そして、esp8266の環境では、両方のデバイスに正確に同じイメージをフラッシュしている可能性がかなり高いので、オッズをプレイするだけです(そして、それは私を神のように見せます)。 – hardillb

+0

それはそれでした!私はまだルアの精神を理解していないようですが、私はまだ「コピー&ペースト」の人です:D 100万のおかげで、それは人生の節約になります!! –

0

2つのNodeMCUを異なるトピックに接続しようとしているのに、2つ目のNodeMCU MQTTへの接続に失敗してしまいます。

この記事を読んだ後、私は、「ID」を変更し、

if (client.connect("leftBlind", mqtt_user, mqtt_password)) {

は私のプログラムの両方で同じであったことをなかったことに気づきました。私は "leftBlind"を何かに変更し、それがうまくいった。

関連する問題