M5Stack grayの libraries を眺める
きっかけ
m5stack 無線通信関係のモジュールの使い方が公式サイトのdocumentから探しても中々見つからない。
そこで、ArduinoData/packages/esp32/hardware/esp32/1.0.2/libraries
の中身を読み漁って、雑にまとめることにする。
m5stackが出来ることの整理に役立ちそう。
知識:m5stackのプロセッサについて
ESP32 というものが使われているらしい
libraries
ArduinoOTA
OTAはOver-The-Air
の略。無線通信を介して、ソフトウェアのアップデートをする機能。
ソフトウェアアップデートのロジックは、Updateライブラリを用いて実装されている。
ところで、サンプルの OTAWebUpdater
は、ArduinoOTAを使っていない。
AsyncUDP
UDP通信をする機能がある。
todo: WiFiUDPとの違い
AzureIoT
MicrosoftのAzureを使ったIoTの開発基盤サービスらしい
BLE
BluetoothLowEnergy。Bluetooth端末「に」接続することもできるし、Bluetooth端末「から」接続されることも出来る。
BLE2904.h
の 2904
って何?と思って調べたら次が出てきた。Bluetoothの通信相手に自分自身を知ってもらうために記述する情報の規格かな。
BluetoothSerial
BLEをSerial通信風のインターフェースで置き換えたもの。
試していないので正確なことは書けませんが、Serial Port Profile(SPP)と呼ばれるもののようです。
DNSServer
m5stackはアクセスポイントにも出来るらしい。DNSServerの機能を持たせるために使う。
EEPROM
EEPROMとは、電源を切っても情報を保持できるメモリの事。Arduinoにもある。
FFat
File Allocation Table、FAT形式のこと。FAT形式で読み書きするために使う。
FS
FileSystem。C標準のfopen
などが使われている
HTTPClient
HTTPサーバからGETしたりPOSTしたり出来る。
HTTPS通信も出来る。
HTTPUpdate
ArduinoOTAに似た感じ?
HTTPサーバからバイナリを取得して、自身をアップデート出来る。
HTTPSにも対応。
NetBIOS
古の通信規格?単純な通信機能を持つ。
Preferences
key-value
形式の設定を扱う。再起動しても値は保持される。
SD
SDカードへの読み書きをするためのもの。正確にはTFカードですが。
SDMMC
SPIの経路を使うか、SDカード専用の配線を使うかの違いらしい。次のサイトが参考になりそう。
SimpleBLE
Simpleどころか、begin
と end
しか無いように見えますが…
SPI
Arduinoにもありますね
SPIFFS
ESP32のフラッシュメモリの一部をストレージとして使う
Ticker
時間割込みかな
Update
自身のソフトウェアを更新できる。
サンプルでは、SDカードからバイナリを読み込んだ後、そのバイナリを使ってソフトウェアを起動している。
WebServer
HTTPサーバを建てることができる。Basic認証等はあるが、HTTPSは無い。
WiFi
アクセスポイントに接続してインターネットと通信できる。
todo: 暗号化方法を確認
WiFiClientSecure
PSKとかその辺りを扱う
todo:
Wire
i2c通信。