← index #7871PR #4811
Related · high · value 2.100
QUERY · ISSUE

ESP32C3 timer issue

openby bdambrosioopened 2021-10-02updated 2026-03-24
port-esp32

When using the micropython ble repl example (works on regular esp32), I receive the following error:
dupterm: Exception in write() method, deactivating: Traceback (most recent call last):
File "bluetooth_repl.py", line 74, in write
File "bluetooth_repl.py", line 29, in schedule_in
OSError: (-258, 'ESP_ERR_INVALID_ARG')

this traces back to:
_timer.init(mode=machine.Timer.ONE_SHOT, period=delay_ms, callback=_wrap)

I have tried creating timers from repl for the ESP32C3, and always get the error above on calling init, regardless of the subset of arguments provided or the values used. For reference:

from machine import Timer
t1=Timer(-1)
t1
Timer(3fccd9c0; alarm_en=1073741823, auto_reload=1070351008, counter_en=1070350504)
t1.init(mode=Timer.ONE_SHOT, period=10, callback=p)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
OSError: (-258, 'ESP_ERR_INVALID_ARG')

I realize C3 support is a work in progress, and am delighted overall, tnx! Perhaps the timers aren't fully supported yet on this device?

tnx

CANDIDATE · PULL REQUEST

ports/esp32/machine_timer.c: Solves #4078, ESP32 timer reinitilization error

closedby dybberopened 2019-05-24updated 2019-05-31
port-esp32

Solves the problem where multiple calls to machine.Timer.init() causes an OSError 261 on ESP32 boards.

The fix is explained here: https://github.com/espressif/arduino-esp32/issues/1869#issuecomment-423016007

Solves issue #4078.

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