Warning: The magic method InvisibleReCaptcha\MchLib\Plugin\MchBasePublicPlugin::__wakeup() must have public visibility in /home/prototype09/prototype09.com/public_html/wp/wp-content/plugins/invisible-recaptcha/includes/plugin/MchBasePublicPlugin.php on line 37
ESP32のマルチコアでSDカードを読んで「assert failed」エラーが出て解決した話 | Prototype 0.9

ESP32のマルチコアでSDカードを読んで「assert failed」エラーが出て解決した話

ESP32

以前の記事でESP32のCore1でメインの処理(LEDを光らせる)をしながらCore0でSDカード内の画像データを読み込むということをしたのだが、久しぶりに同じプログラムを書き込んだら「assert failed」というエラーが起きてしまった。

エラーの原因は不明なのだが、結論から言うとSD.begin()をSetup内ではなくCore0内で実行しないとエラーが出ることが判明。
もう一点、Core0をWhile(1)で無限ループさせるときは”vTaskDelay(1)”を挟まないとWatchDogエラーが起きるので注意。

もう一つの解決法:ESP32ライブラリのバージョンを下げる

こっちを先に行えばよかった。。。
Boardマネージャのesp32を1.0.6に戻して書き込みを行うとエラーが起こらなくなります。

コメント

タイトルとURLをコピーしました