はじめに
M5Stackでアプリを作る際は、シリアルにログを出力する場合がほとんどだと思いますが、たまにしか起こらないエラーなど、シリアルでのログ出力だけでは不便なので、PlatformIOで開発する時の、M5Stackでのログ出力について調べてみました。
そもそも、M5Stack、Arduinoなどのログもほとんど出力されません。ESP32ということであれば、ネットにはplatformio.iniで次のように記載すれば出力されると書いてある記事がありますが、M5Stackの場合これでは出力されないようです。
build_flags = -DCORE_DEBUG_LEVEL=5
そこで、直接sdkconfig.hを編集する方法、
~/.platformio/packages/framework-arduinoespressif32/tools/sdk/include/config/sdkconfig.h
# define CONFIG_LOG_DEFAULT_LEVEL 5
これでWi-Fi周りなどは出力されました(十分とは言えませんが)
その他のログ出力について
他にはこんな方法も使えそうです
- Wi-FiでSyslogサーバーに送信する
- SPIFFSに保存する
- ログをUARTに出力させて、外部のESP8266からWiFiで送信する