debugWIRE is designed as a simpler alternative to JTAG, aimed at microcontrollers (MCUs) with limited resources.
A breakpoint (run-to-cursor) will be set by reprogramming the BREAK[1] opcode into the flash memory of the MCU.
Care must be taken due to the limited number of guaranteed write cycles (10000) of the device.
[4] It is also possible to build a cheap debugWIRE hardware debugger[5] based on an open-source Arduino sketch,[6] using a general USB-Serial adaptor or ATtiny85 board,[7] or a CH552 microcontroller.
The MCU will return a BREAK when a breakpoint is hit or a collision is detected on the debugWIRE connection.