shonen.hateblo.jp

やったこと,しらべたことを書く.

M5Stack grayの libraries を眺める

きっかけ

m5stack 無線通信関係のモジュールの使い方が公式サイトのdocumentから探しても中々見つからない。

そこで、ArduinoData/packages/esp32/hardware/esp32/1.0.2/libraries の中身を読み漁って、雑にまとめることにする。

m5stackが出来ることの整理に役立ちそう。

知識:m5stackのプロセッサについて

ESP32 というものが使われているらしい

ja.wikipedia.org

libraries

ArduinoOTA

OTAはOver-The-Airの略。無線通信を介して、ソフトウェアのアップデートをする機能。

ソフトウェアアップデートのロジックは、Updateライブラリを用いて実装されている。

ところで、サンプルの OTAWebUpdater は、ArduinoOTAを使っていない。

AsyncUDP

UDP通信をする機能がある。

todo: WiFiUDPとの違い

AzureIoT

MicrosoftのAzureを使ったIoTの開発基盤サービスらしい

azure.microsoft.com

BLE

BluetoothLowEnergy。Bluetooth端末「に」接続することもできるし、Bluetooth端末「から」接続されることも出来る。

BLE2904.h2904 って何?と思って調べたら次が出てきた。Bluetoothの通信相手に自分自身を知ってもらうために記述する情報の規格かな。

www.bluetooth.com

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

古の通信規格?単純な通信機能を持つ。

www.atmarkit.co.jp

Preferences

key-value形式の設定を扱う。再起動しても値は保持される。

SD

SDカードへの読み書きをするためのもの。正確にはTFカードですが。

SDMMC

SPIの経路を使うか、SDカード専用の配線を使うかの違いらしい。次のサイトが参考になりそう。

qiita.com

SimpleBLE

Simpleどころか、beginend しか無いように見えますが…

SPI

Arduinoにもありますね

SPIFFS

ESP32のフラッシュメモリの一部をストレージとして使う

qiita.com

Ticker

時間割込みかな

Update

自身のソフトウェアを更新できる。

サンプルでは、SDカードからバイナリを読み込んだ後、そのバイナリを使ってソフトウェアを起動している。

WebServer

HTTPサーバを建てることができる。Basic認証等はあるが、HTTPSは無い。

WiFi

アクセスポイントに接続してインターネットと通信できる。

todo: 暗号化方法を確認

WiFiClientSecure

PSKとかその辺りを扱う

todo:

Wire

i2c通信。