Google Sheets にログ出力その後1
先の記事「Google Sheets にログ出力」で始め、「ESP32 デバッグにTera Term 活用」でデバッグを進めている件について続報します。
残念ながら、まだうまく出来ていません。
エラー停止はなくなったようだ
エラー停止しているようだったが、以下のような修正を加えてエラー停止は無くなったようです。WDTを使わずに、少なくとも48時間観察してエラー停止は見られませんでした。ただし、30分もの間動作を停止する現象を1回確認しています。
同じ時刻に2回POSTする重複は見られなくなりました。
途中でWiFiのWAN側環境を変更し、以下の観察結果はWAN側変更後の環境で収録したものです。
修正内容
1.Webhook POST 時に割り込み処理を行わないことにした。
(割込み処理の先頭でフラグが立っていれば何もしない)
2.温度センサ等I2C処理にtry を入れた。
3.割り込み処理はフラグ(ブール値)処理以外をメインレベルに移した。
4.POST処理にtryを入れて失敗時にprint出力した。
観察結果
開始時刻 03 09:46:28 (日にちと時刻です)
終了時刻 03 17:15:58
POST周期 15秒
欠落率 1.41 %
不具合分類と発生数
POSTしたのに反映されない未達 5 突然の未達(ネットワーク起因?)
POST失敗による未送 9
リトライ成功直後の未送 9
未達直後の未送 2
error 3
error 発生時:リトライ1回目成功が2回、リトライ2回目成功が1回
各分類のログ(各1例)
POSTしたのに反映されない未達
Google Sheets TeraTerm
03 10:04:13 03 10:04:13
03 10:04:28 03 10:04:28
03 10:04:43
03 10:04:58 03 10:04:58
POST失敗による未送 (POST 失敗 5は2回のリトライ共に失敗)
Google Sheets TeraTerm
03 10:44:13 03 10:44:13
03 10:44:28 03 10:44:28
POST 失敗 5 03 10:44:43
03 10:44:58 03 10:44:58
リトライ成功直後の未送 (POST 失敗 2は1回のリトライで成功)
Google Sheets TeraTerm
03 12:20:58 03 12:20:58
03 12:21:13 POST 失敗 2 03 12:21:13
(注記:03 12:21:28 が欠落している)
03 12:21:43 03 12:21:43
後述 error と同様だが、mbedtls_ssl_handshake error: -7280 の記録がないので別分類とした。
未達直後の未送
Google Sheets TeraTerm
03 15:02:43 03 15:02:43
03 15:02:58 03 15:02:58
03 15:03:13
(注記:03 15:03:28 が欠落している)
03 15:03:43 03 15:03:43
error (POST 失敗 2は1回のリトライで成功)
Google Sheets TeraTerm
03 12:06:58 03 12:06:58
mbedtls_ssl_handshake error: -7280
03 12:07:13 POST 失敗 2 03 12:07:13
(注記:03 12:07:28 が欠落している)
03 12:07:43 03 12:07:43
TeraTermのログに記録された mbedtls_ssl_handshake error: -7280 について調べると、ファームウェアの問題ともとれる記述がありました。
今後の予定
ここまでの実験に使ったファームウェアは esp32-20190529-v1.11.bin でした。調べると最新の安定板があるようなので、ファームウェアを入れ替えて実験してみます。
また、Raspberry Pi でどうなるのかも気になりますので試します。
何か分かったら続報します。
お気づきの点などありましたらコメント等でお知らせいただけると嬉しいです。
追記:
note は簡便で使いやすいのですが、欲を言えばReadmine のtextile記法のように、本文に簡単な表を書けると助かりますね。
いいなと思ったら応援しよう!
出来ればサポート頂けると、嬉しいです。
新しい基板や造形品を作る資金等に使いたいと思います。