circuitpython/ports/esp32/boards
Jonathan Hogg c3f3339c87 esp32/modesp32: Add esp32.PCNT class.
Add a new `esp32.PCNT` class that provides complete, low-level support to
the ESP32 PCNT pulse counting hardware units.

This can be used as a building block to implement the higher-level
`machine.Counter` and `machine.Encoder` classes.

This is enabled by default on all OG, S2, S3, C6 boards, but not on C3 (as
the PCNT peripheral is not supported).

Original implementation by: Jonathan Hogg <me@jonathanhogg.com>

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
Signed-off-by: Angus Gratton <angus@redyak.com.au>
2025-08-01 23:45:18 +10:00
..
ARDUINO_NANO_ESP32 ports: Update board.json files for vendor/product consistency. 2025-06-04 01:47:59 +10:00
ESP32_GENERIC esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
ESP32_GENERIC_C2 esp32: Fix first line ESP32-C2 serial output after reset or deepsleep. 2025-07-30 10:51:29 +10:00
ESP32_GENERIC_C3 esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
ESP32_GENERIC_C6 esp32/boards: Enable machine.SDCard on all boards. 2025-03-13 12:27:39 +11:00
ESP32_GENERIC_S2 esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
ESP32_GENERIC_S3 esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
GARATRONIC_PYBSTICK26_ESP32C3 esp32/boards/GARATRONIC_PYBSTICK26_ESP32C3: Add pybstick26-esp32c3 defn. 2025-06-26 10:44:48 +10:00
LILYGO_TTGO_LORA32 ports: Update board.json files for vendor/product consistency. 2025-06-04 01:47:59 +10:00
LOLIN_C3_MINI esp32/boards: Enable machine.SDCard on all boards. 2025-03-13 12:27:39 +11:00
LOLIN_S2_MINI esp32/boards: Enable machine.SDCard on all boards. 2025-03-13 12:27:39 +11:00
LOLIN_S2_PICO esp32/boards: Enable machine.SDCard on all boards. 2025-03-13 12:27:39 +11:00
M5STACK_ATOM ports: Update board.json files for vendor/product consistency. 2025-06-04 01:47:59 +10:00
M5STACK_ATOMS3_LITE ports: Update board.json files for vendor/product consistency. 2025-06-04 01:47:59 +10:00
M5STACK_NANOC6 ports: Update board.json files for vendor/product consistency. 2025-06-04 01:47:59 +10:00
OLIMEX_ESP32_EVB ports: Update board.json files for vendor/product consistency. 2025-06-04 01:47:59 +10:00
OLIMEX_ESP32_POE ports: Update board.json files for vendor/product consistency. 2025-06-04 01:47:59 +10:00
SIL_WESP32 esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
SPARKFUN_IOT_REDBOARD_ESP32 esp32/boards/SPARKFUN_IOT_REDBOARD_ESP32: Add SparkFun board. 2025-05-22 10:37:38 +10:00
UM_FEATHERS2 esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
UM_FEATHERS2NEO esp32/boards: Enable machine.SDCard on all boards. 2025-03-13 12:27:39 +11:00
UM_FEATHERS3 esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
UM_FEATHERS3NEO esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
UM_NANOS3 esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
UM_OMGS3 esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
UM_PROS3 esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
UM_RGBTOUCH_MINI esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
UM_TINYC6 esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
UM_TINYPICO tools/autobuild,esp32: Template the generation of esp32 port deploy.md. 2025-01-17 16:03:45 +11:00
UM_TINYS2 esp32/boards: Enable machine.SDCard on all boards. 2025-03-13 12:27:39 +11:00
UM_TINYS3 esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
UM_TINYWATCHS3 esp32/boards: Convert all boards to auto detect flash size. 2025-06-14 01:06:12 +10:00
deploy.md tools/autobuild,esp32: Template the generation of esp32 port deploy.md. 2025-01-17 16:03:45 +11:00
deploy_flashmode.md tools/autobuild,esp32: Template the generation of esp32 port deploy.md. 2025-01-17 16:03:45 +11:00
deploy_nativeusb.md tools/autobuild,esp32: Template the generation of esp32 port deploy.md. 2025-01-17 16:03:45 +11:00
make-pins.py tools/boardgen.py: Add initial implementation of a common make-pins.py. 2023-11-03 14:06:27 +11:00
manifest.py esp32/boards/manifest.py: Freeze aioespnow into firmware by default. 2023-10-05 20:50:49 +11:00
manifest_test.py esp32/boards: Add test manifest to test freezing during build. 2022-04-14 14:06:38 +10:00
pins_prefix.c extmod/modmachine: Clean up decls of machine types to use common ones. 2023-10-26 16:20:53 +11:00
sdkconfig.240mhz esp32: Update port to support IDF v5.0.2. 2023-06-23 15:34:22 +10:00
sdkconfig.base esp32/modesp32: Add esp32.PCNT class. 2025-08-01 23:45:18 +10:00
sdkconfig.ble esp32: Increase NimBLE task stack size and overflow detection headroom. 2024-02-16 10:19:26 +11:00
sdkconfig.c2 esp32: Fix first line ESP32-C2 serial output after reset or deepsleep. 2025-07-30 10:51:29 +10:00
sdkconfig.c6 esp32: Disable hardware stack protection on ESP32-C6. 2024-10-11 12:53:10 +11:00
sdkconfig.free_ram esp32: Add "Free RAM" optimisation config flags. 2025-07-30 10:51:29 +10:00
sdkconfig.spiram esp32: Remove the ESP32 ringbuffer linker workaround. 2025-03-13 11:33:10 +11:00
sdkconfig.spiram_oct esp32/boards/GENERIC_S3_SPIRAM_OCT: Add ESP32S3 board with Octal SPIRAM. 2022-12-19 13:29:33 +11:00
sdkconfig.spiram_sx esp32: Allow malloc() to allocate from SPIRAM. 2023-08-15 10:49:33 +10:00
sdkconfig.usb esp32: Update port to support IDF v5.0.2. 2023-06-23 15:34:22 +10:00