東港研究所給湯室

エントリー

タグ「ESP8266」の検索結果は以下のとおりです。

【wifi】EPS8266を使ってスマホのテザリングの14ch問題を解決してみた【繋がらない】

前回の記事はこちら↓
【テザリング】umidigiPower3でテザリングができないんだけど。【中華スマホ】

14chに割当されないようにする

方法としては、ルーターなどでアクセスポイントを13chで構築してしてしまえばいいんだけど、ルーターを持ち歩くわけにもいかない。
最小限のコスト、電力、サイズを求めてみたらESP01にたどり着いた。

esp01 ESP8266

ESP01(ESP8266)についてはこちら

esp01は1個数百円程度で購入可能。

20200906234852.png

コードを書いてみる

ESP01をアクセスポイントモードで起動して、Wifi/softAPでアクセスポイント名とチャンネルを指定してみる。

#include <ESP8266WiFi.h>    
void setup() {
WiFi.mode(WIFI_AP);
 WiFi.softAP("hogegoge13ch", "password", 13);
}

void loop() { }

 動作確認してみる

 ESP01を起動すると、アクセスポイントとして動作OK。
Wifiが13chで起動確認

20201016112150.png

ESP01が起動したら、umidigi Power3 のテザリングをオンにする。
Power3が7chでテザリング待機中を確認。

20201016112151.png

何度かテザリングのオン、オフを試してみるが、14chに割り振られることはなかった。

まとめ

 Wifiの電波が飛び交う場所だったら、スマホのテザリングのオン、オフを何度か繰り返すと14chから脱出できることもあるが、電波が少ないところでは、確実に14chに割り振られる。
 一度umidigi側のテザリングで14ch以外に振られれば、ESP01はオフにしても問題ない。

つーか。umidigiさんによるアプデで対応できるんじゃないのかな。早く対応してほしいのが本音。

参考にしたサイト

Github ESP8266l

【テザリング】umidigiPower3でテザリングができないんだけど。【中華スマホ】

esp32が繋がらない

ESP32 DEVKIT V4をスマホのテザリングに接続しようとしたが、ESP32からスマホが見えない現象が発生した。

いろいろ調べてみると、スマホ側に問題があることが判明した。
原因は、umidigiPower3。他の中華スマホでも同じ現象が起こることがあるらしい。特にFreetel、umidigiに多いみたい。

日本特有の14ch問題

Wifi14ch問題と呼ばれているらしく、日本独自のwifiの規格が世界標準と合わないのだそうだ。
Google 14ch問題

一般的にはWifi2.4Ghz帯を5Mhzで区切って13chで運用しているそうなんだが、日本だけ14chが存在するとのこと。14ch
まあ、最初に日本だけ14chで始まったが、海外は他を使ったことで1から13chを追加したという事情があるようです。
ほんと日本の総務省って・・・・

 要するに、日本だけ14chがあるもんだから、スマホのテザリングで自動的に14chに割り振られちゃうと、14chに対応していないデバイスでは、繋がらなくなっちゃうってことなんだな。
wifiアナライザーで調べてみてら、確かに、14chに割り振られてた。

20201006090124.png

14chを回避する仮説を立ててみる

 普通は起動時に1chから順に空きを探すのらしいのだが、umidegiPower3で試しているが、14chから下のチャンネルへスキャンしているような気もする。
ただし、混信を避けるために、他の機器で使っているチャンネル付近にはなるべく割り振られないようになっているみたい。

試しにルーターを13chに固定したあとに、umidedigi Power3をテザリングしてみると、7chや5chに割り振られていたので間違いないようだ。

20201005162132.png

対策

対策を考えたが、ソフト的にどうにもならないので、強制的にch13を発生させてumidigi Power3を14chを振られないようにしてみる。

つづく。

【ESP01S】ESP01で室温、湿度をリアルタイムで測定してみる【ESP8266】

遠隔で温度測定

道具箱からこんな物が発掘されたので、遊んでみた。

20200517133259.jpg

DH11というモジュールで、温度センサー、湿度センサーを備えてます。
ESP8266にそのまま接続できるため、非常にコンパクトなwifi仕様のセンサーになります。
軽量かつ消費電力もわずかのため、電池で長時間にわたって稼働できます。

書き込みの準備をする

書き込み用に、シリアルコンバータを改造してみた。コンパクトで使い勝手が良くなった。GPIO0、ResetをそれぞれGNDに接続し、スライドスイッチ、タクトスイッチを付けただけ。

20200517133257.jpg

コードを書き込んでみる

#define BLYNK_PRINT Serial
#include
#include
#include

char auth[] = "2456789911111111";
char ssid[] = "987654321";
char pass[] = "123456789";

#define DHTTYPE DHT11     // DHT 11

DHT dht(DHTPIN, DHTTYPE);

BlynkTimer timer;

void sendSensor(){

  float h = dht.readHumidity();
  float t = dht.readTemperature();
// or dht.readTemperature(true) for Fahrenheit

  if (isnan(h) || isnan(t)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  Blynk.virtualWrite(V5, h);
  Blynk.virtualWrite(V6, t);
}

void setup(){

  Serial.begin(9600);
  Blynk.begin(auth, ssid, pass);

  dht.begin();
  timer.setInterval(1000L, sendSensor);
}

void loop(){

  Blynk.run();
  timer.run();
}

書き込みが終了したら、シリアルモニターで確認してみるといいです。

20200517133258.jpg

いつものBlynkに接続。

20200517133300.png

DH11モジュールと合体

センサーの上にESP01が重なると、ESPモジュールの熱を拾ってしまうので、足を曲げて使用しています。非常にコンパクト。

20200517134020.jpg

農業分野などの温度管理に活用できそうですね。

ページ移動

  • 前のページ
  • 次のページ
  • ページ
  • 1

ユーティリティ

サイト内検索

twitter

ありがとうございます

新着画像

過去ログ

Feed