Page 1 of 1

Arduino ESP32 Framework V2.0.5 Changes TWAI Errata Config Options?

Posted: Mon Dec 05, 2022 12:11 pm
by CraftyMyner
Hello, I have had issues with a few devices failing to recover from bus off state. I located the cause to be the absence of CONFIG_TWAI_ERRATA_FIX_BUS_OFF_REC set in the Arduino framework. I spent quite a bit of time converting over to ESP-IDF to allow the extra flexibility of setting various sdkconfig (tools/sdk/esp32/sdkconfig) options. I copied the latest arduino sdkconfig to get started but when I went to change the TWAI errata options I found they were already set. I thought I was losing my mind as I had checked before and they were not set. I went back through the commits and found "ESP-IDF v4.4.2 and build time elf2bin for the bootloaders (#7259)".

I see that 4 errata fixes were enabled in that commit without any mention of them in release notes or issues. I am happy they are changed, I think it's the right thing, however, I have some questions.

1. Was there a particular reason these were just set now in this commit?

2. Are these options going to stay set, can I rely on them or is they going to change in the future.

3. Is there a way that I can verify these options are set at compile time to warn me incase I miss checking the source of each update.

Thanks!

The sdkconfig commit in question: https://github.com/espressif/arduino-es ... d333cd4bb7

Code: Select all

#
# TWAI configuration
#
# CONFIG_TWAI_ISR_IN_IRAM is not set
CONFIG_TWAI_ERRATA_FIX_BUS_OFF_REC=y
CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST=y
CONFIG_TWAI_ERRATA_FIX_RX_FRAME_INVALID=y
CONFIG_TWAI_ERRATA_FIX_RX_FIFO_CORRUPT=y
# end of TWAI configuration