← index #14491Issue #14488
Off-topic · high · value 0.441
QUERY · ISSUE

changes from menuconfig are only applied after cleaning

openby wohltatopened 2024-05-15updated 2026-03-24
bugport-esp32

Checks

  • I agree to follow the MicroPython Code of Conduct to ensure a safe and respectful space for everyone.

  • I've searched for existing issues matching this bug, and didn't find any.

Port, board and/or hardware

esp32

MicroPython version

MicroPython v1.23.0-preview.375.ga0d4fdcce.dirty on 2024-05-15; Generic ESP32 module with ESP32

Reproduction

want to test some settings of the ESP32 IDF. For this i use the idf.py menuconfig but the changes have no effect when i recompile with make BOARD=ESP32_MYBOARD. Only after a make BOARD=ESP32_MYBOARD clean and a recompile the changes are applied.

Before i created folder for my custom board in micropython/ports/esp32/boards/ESP32_MYBOARD according to the documentation (micropython/ports/esp32/README.md: Defining a custom ESP32 board), i.e. i made i copy of ESP32_GENERIC.

I adapted the file mpconfigboard.cmake in that folder to:

set(SDKCONFIG_DEFAULTS
    boards/sdkconfig.base
    ${SDKCONFIG_IDF_VERSION_SPECIFIC}
    boards/sdkconfig.ble
)

set(SDKCONFIG_DEFAULTS
    ${SDKCONFIG_DEFAULTS}
    boards/ESP32_RFID/sdkconfig
)

then and after every idf.py menuconfig i do
make BOARD=ESP32_MYBOARD submodules
make BOARD=ESP32_MYBOARD
make BOARD=ESP32_MYBOARD deploy

Expected behaviour

  • make detects changes to the source (including configuration).
  • the whole project does not have to be recompiled for every little changy in configuration and to wait several minutes just try one setting.
  • sdkconfig file save location in menuconfig is the location from where the file is used. Not needing to manually copy config files.
  • It should be enough to just specify the board/folder once with make BOARD=... ...

Observed behaviour

  • Only after a make BOARD=ESP32_MYBOARD clean and a recompile the changes are applied.
  • approx 4min to get a change in the settings to the board
  • The menuconfig always tries to read and save the file 'micropython/ports/esp32/build/sdkconfig' and i cannot change the sdkconfig in my custom folder without changing the CMakeLists.txt. Seems strange that the default location is in a build folder and not a configuration folder. Ofcourse i can manually set the config file location for saving every time, but that is neither comfortable nor seems intended.
  • although the config is saved to 'micropython/ports/esp32/build/sdkconfig' by default, only the one from 'micropython/ports/esp32/boards/ESP32_RFID/sdkconfig' is used.
  • two different build directories automatically generated 'micropython/ports/esp32/build/' and 'micropython/ports/esp32/build-ESP32_MYBOARD'

Additional Information

No, I've provided everything above.

CANDIDATE · ISSUE

ESP32 NVS OverflowError

closedby kdschlosseropened 2024-05-15updated 2025-03-03
bugport-esp32

Checks

  • I agree to follow the MicroPython Code of Conduct to ensure a safe and respectful space for everyone.

  • I've searched for existing issues matching this bug, and didn't find any.

Port, board and/or hardware

ESP32

MicroPython version

1.22.2

Reproduction

import esp32


config = esp32.NVS('test')
config.set_i32('testkey', -2147483648)
config.commit()

Expected behaviour

for the value to get set properly. The minimum allowed value for a 32 bit integer is -2147483648 and I should be able to set that value without an issue.

Observed behaviour

OverflowError: overflow converting long int to machine word

Additional Information

No, I've provided everything above.

Keyboard

j / / n
next pair
k / / p
previous pair
1 / / h
show query pane
2 / / l
show candidate pane
c
copy suggested comment
r
toggle reasoning
g i
go to index
?
show this help
esc
close overlays

press ? or esc to close

copied