問題タブ [esp8266]
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.
android - Web サーバー esp8266 arduino
esp8266 でサーバーをセットアップしようとしましたが、結果は常に否定的です。このページのすべての指示に従いましたhttp://allaboutee.com/2015/01/20/esp8266-android-application-for-arduino-pin-control/アプリも作成しました。プログラムを実行すると、サーバーの準備ができていると表示されますが、クロムでウェブページに到達できません。3.3vの電圧レギュレーターも持ってきましたが、結果も同じです。
私が気づいたことの1つは、レギュレーターが接続されている場合、esp8266がATコマンドに応答しないことですが、arduinoの3.3vに直接接続すると、ATコマンドに応答し、コマンドを送信した場合にのみサーバーをセットアップします一つ。
神のため、自然のため、人のため、助けてください、私に何をすべきか教えてください私は泣いています...
lua - ループが実行されている場合、wifi.sta モジュールは接続しますか?
.connect には次のような簡単なことを行うコールバックがないため、モジュールが実際に wifi AP に接続するタイミングを検出しようとしています。
しかし、ループ内では .sta.status() の出力は常に 1 です。終了時に、コマンド =wifi.sta.status() を IDE から手動で送信すると、5. なぜですか?
arduino - ESP8266 を使用してキャプティブ ポータル Wi-Fi に接続する
ESP8266 ベースのセンサーを、キャプティブ ポータルで保護された Wi-Fi ネットワークに接続したいと考えています (他に選択肢がなく、例外を求めることはできません)。接続するためのログイン/パスワードがあります。
基本的なコンピューターから、ネットワークに接続してインターネット リクエスト (たとえば、Google で「bl」を検索) を行うと、次のようなページが表示されました: https://url:1003/fgtauth?12291a0aff04200a
したがって、このページでは、実際にはセッションの ID である「魔法の値」を取得していることがわかります。同意ボタンをクリックすると、次のページが表示されます https://url:1003/ :
ここで、ユーザーとパスワードを入力すると、それらがサーバーに送信され、サーバーは空白のページを OK で返します。
したがって、ESP8266 からこの手順を実行したいと思います。私は2つのステップでそれを見ます:
- ページをリクエストする
- 結果を取得して魔法を保存する
- 「同意」リクエストページを偽造する
- 「user/id/magic」リクエストページを偽造する
ESP8266 のリクエスト ページの例は、こちらにあります: https://github.com/iobridge/ThingSpeak-Arduino-Examples/blob/master/Ethernet/Arduino_to_ThingSpeak.ino ここで、POST リクエストを次のように送信できることがわかります。
ここに、ページを解析する良い例があります: http://blog.nyl.io/esp8266-led-arduino/
それで、私はそれでそれをして答えを投稿するかもしれませんが、最初に上記の「偽の」リクエストを作成する方法についての手がかりが必要です.
何か案は ?
android - サーバーが応答した後の EOFException
私は非常に単純な問題を抱えていますが、まだ解決策を見つけることができませんでした。
私が達成したいこと:
Android を実行しているスマートフォンとESP8266 wifi モジュールの間に信頼できる接続を確立しようとしています。電話がクライアントの役割を果たし、ESP8266 がサーバーの役割を果たす短い HTTP 文字列メッセージを送信したいと思います。HTTP リクエストを管理するために、Volley ライブラリを使用しています。
すでに機能しているもの:
Android フォンで実行されているブラウザーから ESP8266 への HTTP GET 要求を正常に実行できました。また、Volley を使用して、Web 上で実行されているサーバーに GET リクエストを送信することもできました。
機能しないもの:
一方、Volley を使用して ESP8266 に GET 要求を正常に送信できません。より正確にはEOFException
、サーバー (ESP8266) が応答後に接続を閉じようとすると、エラーが発生します。ブラウザーを使用すると、接続が閉じられた後に応答の本文が表示されますが、ボレーの場合、接続の閉じに失敗し、サーバーがシャットダウンされます。
この問題/バグを解決する方法がわかりません。私がイライラするのは、ESP で HTTP 応答を送信するための同じコマンドが、Web ブラウザーを使用するとうまく機能するが、Volley を使用すると失敗することです。だから、問題はボレーに関する何かだと思います。
Volley がそのような例外をスローする理由はありますか? どんな助けでも大歓迎です。
mqtt - NodeMCU と ESP8266: mqtt パブリッシュが遅い
Marcel の NodeMCU カスタム ビルドhttp://frightanic.com/nodemcu-custom-build/で作成されたファームウェアで esp8266 を使用しています 。「dev」ブランチと「master」をテストしました。
ここにある「 Connect to MQTT Broker」コードを少し変更しましたhttps://github.com/nodemcu/nodemcu-firmware
私は mosquitto を mqtt ブローカーとして使用しており、すべてのトピック#でサブスクライバーを立ち上げました。
結果は次のとおりです。メッセージは正しく到着しますが、サブスクライバーに到着するのは本当に遅いです (それぞれ約 1 秒)...なぜですか?
また、UDP を優先して mqtt アーキテクチャを変更しようとしました。esp8266 は 100 メッセージを高速で送信します。
更新 1#:
私はさらにいくつかの実験を行いました:
- [android phone + a mqtt publisher] を使用してブローカーとサブスクライバーをテストすると、サブスクライバーはすぐにメッセージを受信します
- 「デバッグ」を有効にして nodemcu をロードしたところ、興味深い発見がありました: 続きを読む
デバッグログとソースコードを読んで理解したことについて..メッセージをメモリに保存する一種のキューがあり、タイマー(頻度/間隔はわかりません)がキューからメッセージを読み取り、それを介して送信しますmqtt。100通のメッセージを送ろうとするとキューが増えるのですが、同時にメッセージを届けることができません(もしかしたら競合状態?)。
ここで 2 つ目の問題があります。15 を超えるメッセージがエンキューされた後、ファームウェアがクラッシュし、デバイスが再起動します。これは、メモリが使用できなくなったという症状のようです。
c++ - Arduino IDE の ESP8266 (xtensa-lx106-elf-gcc) と std::map リンク エラー
ArduinoパッケージのESP8266でマップを使用することはまったく可能ですか?
これが私のコードです:
コンパイル/リンクのエラーは次のとおりです。
ここからそのパッケージを取得しました: https://github.com/esp8266/Arduino
ところで、ESP8266 の他のものは問題なくコンパイルできます。
前もって感謝します