ESP-100を使ってみる


ESP-100という聞いたことが無いマイコンを入手しました。
形状はESP-07とそっくりですが、AI-THINKERのロゴではなく、DOITのロゴが有ります。
ESP-07にはあるCeramic Antennaは無く、U-FL connectorだけがついています。

左がESP-100 右がESP-07

ロゴマークからしてDOIT.AMの 製品の様ですが、裏面にはしっかりAIのマークが入っています。


さらに謎なのは実装されているFlashチップです。
こちらのスケッチで確認したところ、以下のように表示されま す。


何と8Mです。
チップIDの最初の2文字(0x17)がチップサイズを示していて、2の23乗(0x17=23)なので確かに8Mとなります。
WinbondのW25Q64BVと いうFlashチップが使われています。
ただ現時点のArduino-IDEでは4MまでしかFlashサイズを指定できないので、あまり意味はないですが....
久しぶりにArduino-IDEをバージョンアップしました。
16MのFlashサイズを指定できるようになっていました。このモジュールを使うとSPIFFSは7Mも取れます。

試しに以下のスケッチを4M(1M SPIFFS) 4M(3M SPIFFS) 8M(7M SPIFFS)でコンパイルしてみました。
#include "FS.h"

void setup() {
  Serial.begin(9600);
  if (SPIFFS.begin() ) {
  // Next lines have to be done ONLY ONCE!!!!!When SPIFFS is formatted ONCE you can comment these lines out!!
  //  Serial.println("Please wait 30 secs for SPIFFS to be formatted");
  //  SPIFFS.format();
  //  Serial.println("Spiffs formatted");
    FSInfo fs_info;
    SPIFFS.info(fs_info);
    Serial.println("totalBytes:" + String(fs_info.totalBytes));
    Serial.println("usedBytes:" + String(fs_info.usedBytes));
    Serial.println("blockSize:" + String(fs_info.blockSize));
    Serial.println("pageSize:" + String(fs_info.pageSize));
    Serial.println("maxOpenFiles:" + String(fs_info.maxOpenFiles));
    Serial.println("maxPathLength:" + String(fs_info.maxPathLength));
  }
}

void loop() {
 
}

以下のようになりました。
4M(1M SPIFFS)
totalBytes:957314
usedBytes:0
blockSize:8192
pageSize:256
maxOpenFiles:5
maxPathLength:32

4M(3M SPIFFS)
totalBytes:2949250
usedBytes:0
blockSize:8192
pageSize:256
maxOpenFiles:5
maxPathLength:32

8M(7M SPIFFS)
totalBytes:6933122
usedBytes:0
blockSize:8192
pageSize:256
maxOpenFiles:5
maxPathLength:32

totalBytes以外のパラメータに変化はありませんでした。
なお、試した限りではSPIFFS.format()は不要です。
今までSPIFFSを使ったことがないモジュールに対して、SPIFFS.begin()を実行すると、自動的にフォーマットされます。

アンテナが無いのでWifi接続できるか心配していましたが、APが近いからなのか
こちらのスケッチで問題なく時刻を取れました。

それにしても謎なマイコンです。