問題タブ [esp8266wifi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mqtt - arduinoでESP8266を使用している間の.connect()関数の遅延
プロジェクトで唯一のマイクロコントローラーとして ESP8266-7 を使用していますが、小さな問題があります。インターネット回線が壊れて、ESP がブローカーに再接続しようとすることがあります。これが発生している間、プログラムはインターネットがオンラインに戻り、ESP がブローカーに再接続するまでフリーズします。(より具体的には、私のプログラムは.connect(device_ID.c_str(), mqtt_user.c_str(), mqtt_pass.c_str())
毎回 15 秒待機します。)
私はPubSubClient.h
ライブラリを使用しています。私がテストしたように、この問題は を呼び出すと発生しますmqtt_client.connect(device_ID.c_str(), mqtt_user.c_str(), mqtt_pass.c_str())
。このようにして、プログラムはこの関数を実行し、プロセスが終了するまで待機します。これには最大 15 秒かかる場合があります。
このコードを使用せずにブローカーに接続するにはどうすればよいですか、またはプログラムがフリーズしない他の解決策はありますか?
ESP は、プログラムの実行中にバックグラウンドでブローカーに接続できますか?