Skip to content

feat: add GPIO read/drive primitives for ESP32, ESP32-S2, ESP32-C3, ESP32-S3 - #52

Merged
deadprogram merged 1 commit into
tinygo-org:mainfrom
jgangemi:jae/gpio-probe
Jul 11, 2026
Merged

feat: add GPIO read/drive primitives for ESP32, ESP32-S2, ESP32-C3, ESP32-S3#52
deadprogram merged 1 commit into
tinygo-org:mainfrom
jgangemi:jae/gpio-probe

Conversation

@jgangemi

Copy link
Copy Markdown
Contributor
  • ReadGPIO/SetGPIO/ReleaseGPIO/GPIOReserved over the bootloader's raw
    register peek/poke, using W1TS/W1TC for atomic bit set/clear and RMW
    only for IO_MUX and GPIO-matrix OUT_SEL config to preserve unrelated
    fields
  • per-chip register maps reject nonexistent pins, refuse driving
    input-only pins, and classify flash/strap/UART0/USB-JTAG reservations
    for the caller to gate

…SP32-S3

- ReadGPIO/SetGPIO/ReleaseGPIO/GPIOReserved over the bootloader's raw
  register peek/poke, using W1TS/W1TC for atomic bit set/clear and RMW
  only for IO_MUX and GPIO-matrix OUT_SEL config to preserve unrelated
  fields
- per-chip register maps reject nonexistent pins, refuse driving
  input-only pins, and classify flash/strap/UART0/USB-JTAG reservations
  for the caller to gate
@deadprogram

Copy link
Copy Markdown
Member

🪡 thanks for the addition @jgangemi now merging.

@deadprogram
deadprogram merged commit f38a304 into tinygo-org:main Jul 11, 2026
3 checks passed
@jgangemi
jgangemi deleted the jae/gpio-probe branch July 20, 2026 04:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants