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

Recipe · Intermediate · I2C

How to run I2C health diagnostics

Use the I2C health command to check timing and stability of a target device.

Diagnostics and troubleshooting checklist.
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 health diagnostics FAQ

What does I2C health check before deeper work?

It checks whether a known I2C address responds consistently enough for timing and stability tests before you rely on reads, monitor, dump or write operations.

Should I run health before scan?

Run scan first when the address is unknown. Use health after you know the target address and want to understand whether the bus is stable enough for longer operations.

What usually causes poor I2C health?

Common causes are missing or weak pull-ups, too much bus capacitance, long wires, wrong SDA/SCL pins, unstable target power or an address conflict with another device.

Go deeper