Release Notes
Release v0.16.4
- On an ATmega328P XPlained Mini, I sometimes got errors when activating the physical interface: "AVR8_FAILURE_CLOCK_ERROR: Failure when increasing communication clock rate". If this error occurs, we now simply retry. This appears to work smoothly.
-
Captured "Cannot open HID" exception when trying to connect to a busy debug probe.
-
Instead of ignoring SLEEP instructions when single-stepping, we now do "sleep walking", i.e., use the hardware breakpoint to wait for a wake-up after the SLEEP instruction.
-
Integration tests now also work for non-Arduino MCUs.
Release v0.16.3
- Refreshed svd and device files.
- Svd files are now distributed as part of
pyavrocd-utilfolder.
Release v0.16.2
- The assets files names now also contain the PyAvrOCD version number.
- For the ATmega128, the breakpoint mode is now hardware-only and cannot be changed.
Release v0.16.0
- The tool files are now only distributed as assets in the GitHub release. This means for the Arduino board packages that the tools files needs to be sourced from a new place.
Release v0.15.0
This is considered a pre-release in order to give people a chance to play around with PyAvrOCD. The following things have changed since the last release of dw-gdbserver:
- Support for JTAG debugging has been added.
- A number of command-line options have been added, and one option has been removed:
--debug-clockfor setting the JTAG clock frequency for debugging--prog-clockfor setting the JTAG clock frequency for programming--managein order to specify which fuses and lock bits should be managed by the GDB server- and all
monitorsettings can now be done at the command-line, e.g.,--timers freeze. - In addition, you can set options in the file
pyavrocd.optionsthat will override the options on the command line. - Using the notation
@file.ext, any arguments in the filefile.extwill be spliced into the command line. - The option
-g/--gedehas been removed since the effect of this option can be achieved with the-soption.
- A few monitor commands have been added or modified:
atexit: With this option, one can control whether the debugWIRE mode will be left when the debugging session is terminated.erasebeforeload: With this option, one can control whether flash memory is completely erased before a file is loaded.- Some defaults have been adapted, e.g.,
readbeforewriteis only enabled for debugWIRE targets, because for other targets it is counter-productive.
- The breakpoint management has been redesigned and can now deal with multiple hardware breakpoints (as offered by the JTAG targets).
- Single-stepping has been reworked so that no hardware breakpoint is needed any longer.
- The problematic ATmega48 and 88 are now recognized before an attempt is made to switch them into debugWIRE mode. This helps to avoid "bricking" chips.
- The CI/CD has been enhanced so that we can now see a number of indicators in real-time.
- Executables are now generated on the GitHub hosts, which makes my life much easier.
- The documentation now uses mkdocs and the readthedocs theme, which looks much better and is more readable, I believe.