ESP32 Bit Pirate home
  • I2C
  • Intermediate
  • 3 min
  • Serial CLI

Recipe · Intermediate · I2C

How to monitor I2C register changes

Use I2C monitor or trace to watch changing registers on a target device over time.

I2C bus with SDA and SCL signal lines.
Start with read-only checks, then move to write, replay or automation only when the setup is understood.
Step 1

Commands

Use the shortest command path that matches the documented firmware workflow. When a mode needs setup, follow the prompts shown on first entry.

Result

What it means

The command path is working when the target responds and the firmware prints the expected menu, status or captured data.

Troubleshooting

  • Re-enter the mode setup when pins or peripherals are not already initialized.
  • Check common ground and target voltage before blaming software.
  • Prefer Serial CLI for long captures or high-volume output.
  • Repeat the read or capture to confirm stability.

Next steps

  • Save the output in your project notes.
  • Compare the result with the full wiki page for mode-specific details.
  • Create a shorter alias if you repeat this workflow often.

I2C monitor FAQ

When should I use monitor instead of a single I2C read?

Use monitor when a register changes over time and a single read misses the transition. It is useful for sensors, status flags and state machines where the interesting value appears after an event.

Why does monitor show too much changing data?

The interval may be too fast, the register window may be too broad, or the device may expose counters and live sensor values. Narrow the address/register range before interpreting the output.

Can monitoring change the state of an I2C device?

Usually reads are low risk, but some status registers clear on read or trigger side effects. Check the datasheet before monitoring interrupt, FIFO or event registers for a long session.

Go deeper