Esp32_exception_decoder in serial terminal

Am I missing something I thought the esp32_exception_decoder support was added 4.3 . I have 4.3.4 but get an error when running ? When I try to run the serial terminal from VSCode I get :slight_smile:
— Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
— More details at Redirecting...
Error: ‘esp32_exception_decoder’
The terminal process terminated with exit code: 1

What am I doing wrong ?

my ini file is :

[env:espdev]
platform = espressif32
board = esp32dev
framework = arduino
monitor_speed = 115200
upload_speed = 2000000
debug_init_break = tbreak setup
debug_tool = esp-prog
upload_protocol = esp-prog
board_build.f_cpu = 240000000L
monitor_filters = esp32_exception_decoder
build_flags =
    -DBOARD_HAS_PSRAM
    -mfix-esp32-psram-cache-issue
1 Like

This depends on the used ESP32 Platform version, which must be at least 1.12.0. Have you made sure to do a pio platform update in the CLI or GUI?

Thank you this was the issue, I updated the platform and its now working. Thank you very much

I have latest one platform and also I don’t have esp32_exception_decoder… Any idea ?

What’s the full platformio.ini and error message?

$ pio device monitor -p /dev/tty.SLAB_USBtoUART -b 921600 -f time -f colorize -f log2file -f esp32_exception_decoder
— Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
— More details at Redirecting...
Error: ‘esp32_exception_decoder’

I have clean PlatformIO installation, installed with “pip install platformio”.

This is the same on OSX (El Capitan) and Rasbian 11 (Debian 11) on Raspberry Pi 0 W.

.platformio/platforms/espressif32/platform.json

{
  "name": "espressif32",
  "title": "Espressif 32",
  "description": "Espressif Systems is a privately held fabless semiconductor company. They provide wireless communications and Wi-Fi chips which are widely used in mobile devices and the Internet of Things applications.",
  "homepage": "https://espressif.com/",
  "license": "Apache-2.0",
  "keywords": [
    "dev-platform",
    "Wi-Fi",
    "Bluetooth",
    "Xtensa",
    "LX6"
  ],
  "engines": {
    "platformio": "^5"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/platformio/platform-espressif32.git"
  },
  **"version": "3.4.0",**
  "frameworks": {
    "arduino": {
      "package": "framework-arduinoespressif32",
      "script": "builder/frameworks/arduino.py"
    },
    "espidf": {
      "package": "framework-espidf",
      "script": "builder/frameworks/espidf.py",
      "description": "ESP-IDF is the official development framework for the ESP32 and ESP32-S Series SoCs.",
      "homepage": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32/",
      "title": "Espressif IoT Development Framework"
    },
    "simba": {
      "package": "framework-simba",
      "script": "builder/frameworks/simba.py",
      "description": "Simba is an RTOS and build framework with aims to make embedded programming easy and portable",
      "homepage": "http://simba-os.readthedocs.org",
      "title": "Simba"
    },
    "pumbaa": {
      "package": "framework-pumbaa",
      "script": "builder/frameworks/pumbaa.py",
      "description": "Pumbaa is Python on top of Simba. The implementation is a port of MicroPython, designed for embedded devices with limited amount of RAM and code memory",
      "homepage": "http://pumbaa.readthedocs.org/",
      "title": "Pumbaa"
    }
  },
  "packages": {
    "toolchain-xtensa32": {
      "type": "toolchain",
      "owner": "platformio",
      "version": "~2.50200.0",
      "optionalVersions": ["~2.80400.0"]
    },
    "toolchain-xtensa32s2": {
      "type": "toolchain",
      "optional": true,
      "owner": "platformio",
      "version": "~1.80400.0"
    },
    "toolchain-esp32ulp": {
      "type": "toolchain",
      "optional": true,
      "owner": "platformio",
      "version": "~1.22851.0"
    },
    "toolchain-esp32s2ulp": {
      "type": "toolchain",
      "optional": true,
      "owner": "platformio",
      "version": "~1.22851.0"
    },
    "toolchain-riscv-esp": {
      "type": "toolchain",
      "optional": true,
      "owner": "platformio",
      "version": "~1.80400.0"
    },
    "toolchain-xtensa-esp32": {
      "type": "toolchain",
      "optional": true,
      "owner": "espressif",
      "version": "8.4.0+2021r1"
    },
    "toolchain-xtensa-esp32s2": {
      "type": "toolchain",
      "optional": true,
      "owner": "espressif",
      "version": "8.4.0+2021r1"
    },
    "toolchain-riscv32-esp": {
      "type": "toolchain",
      "optional": true,
      "owner": "espressif",
      "version": "8.4.0+2021r1"
    },
    "framework-arduinoespressif32": {
      "type": "framework",
      "optional": true,
      "owner": "platformio",
      "version": "~3.10006.0"
    },
    "framework-arduino-mbcwb": {
      "type": "framework",
      "optional": true,
      "owner": "meteca",
      "version": ">=2.1.1"
    },
    "framework-espidf": {
      "type": "framework",
      "optional": true,
      "owner": "platformio",
      "version": "~3.40301.0",
      "optionalVersions": ["~3.40001.0"]
    },
    "framework-simba": {
      "type": "framework",
      "optional": true,
      "owner": "platformio",
      "version": ">=12.2.0"
    },
    "framework-pumbaa": {
      "type": "framework",
      "optional": true,
      "owner": "platformio",
      "version": ">=2.3.0"
    },
    "tool-esptoolpy": {
      "type": "uploader",
      "owner": "platformio",
      "version": "~1.30100.0"
    },
    "tool-mbctool": {
      "optional": true,
      "owner": "meteca",
      "version": ">=2.0.0"
    },
    "tool-openocd-esp32": {
      "type": "debugger",
      "optional": true,
      "owner": "platformio",
      "version": "~2.1000.0"
    },
    "tool-mkspiffs": {
      "type": "uploader",
      "optional": true,
      "owner": "platformio",
      "version": "~2.230.0"
    },
    "tool-cmake": {
      "optional": true,
      "owner": "platformio",
      "version": "~3.16.0"
    },
    "tool-ninja": {
      "optional": true,
      "owner": "platformio",
      "version": "^1.7.0"
    },
    "tool-mconf": {
      "optional": true,
      "owner": "platformio",
      "version": "~1.4060000.0"
    },
    "tool-idf": {
      "optional": true,
      "owner": "platformio",
      "version": "~1.0.1"
    }
  }
}

I don’t think that’s callable like that since it’s added at runtime in the context of a ESP32 project… When you have

monitor_filters = time, colorize, log2file, esp32_exception_decoder

in the platformio.ini and run pio run -t monitor, does it throw any errros?

1 Like

Hmm… I’ve just working on it…

In fact when I work with platformio.ini it works…

To build:
pio run -e fujinet_v1

To upload and monitor:
pio run -t upload -t monitor -e fujinet_v1

and now it works…

I try to understand how it works… Maybe during compilation is also important to have such flag to debug in future.