Open source Python library for programming and debugging Arm Cortex-M microcontrollers
cortex_m
target warning message (@BenjaminSoelberg)❤️ Special thanks to new contributors!
Full Changelog: https://github.com/pyocd/pyOCD/compare/v0.35.1...v0.36.0
show accessible-pins
: fix function call, print GPIO pinsshow locked
: fix misspelled "target"Full Changelog: https://github.com/pyocd/pyOCD/compare/v0.35.0...v0.35.1
With this release, Python 3.6 is no longer supported. The minimum Python version is now 3.7.0.
rtt
command (thanks @samueldewan)debug.traceback
option is disabled by default).node_name
attribute
show cores
or show graph
, and can be used in commands such as core
(to select the core that commands apply to)sw_system
and sw_core
reset types (aliased as system
and core
, with Target.ResetType.SW_SYSTEM
and Target.ResetType.SW_CORE
enums in the API), corresponding to the existing sysresetreq
and vectreset
reset types.supported_reset_types
property returns a list of allowed reset type enums--no-reset
option to prevent resetting of device after programming (thanks @nordicjm)cache.enable_memory
and cache.enable_register
session options to control the memory and register cache used by the gdb servershow sequences
commandreset-type
value to show and set current reset type and view available reset typessleep
commandpins
and accessible-pins
valuesnrf9160_xxaa
target from the NordicSemiconductor.nRF_DeviceFamilyPack DFP (not a builtin target) (thanks @maxd-nordic)show map
: print memory map subregionsshow cores
: print cores in a table with the core nameshow graph
: print node namescore
: print core names, allow selecting core by nameFull Changelog: https://github.com/pyocd/pyOCD/compare/v0.34.3...v0.35.0
Full Changelog: https://github.com/pyocd/pyOCD/compare/v0.34.2...v0.34.3
reset_and_halt()
. (Thanks @Hoohaha)enable_multicore_debug
in option definitions. (Thanks @YixingShen)rmwatch
. (Thanks @kkitayam)Full Changelog: https://github.com/pyocd/pyOCD/compare/v0.34.1...v0.34.2
load
subcommand: Correctly handle valid paths containing '@' characters. (Issue #1424.)qXfer
commands..gitarchival.txt
template to support the built-in git archive support in setuptools_scm.Full Changelog: https://github.com/pyocd/pyOCD/compare/v0.34.0...v0.34.1
rmwatch
optionally accepts type and size.max32670
target. (Thanks @ozersa)m467hjhae
target. (Thanks @ychsu-tf)hc32m120x6
target. (Thanks @lennvn)GenericMemAPTarget
issues.list
subcommand: set default log level to errorreset
subcommand: Fix hardware reset, halt option, and session option integration.rtt
subcommand: improve performance for finding control block. (Thanks @te-johan)set option
command.-n
arg for find
command.MemoryLoader
to Python namespace.pemicro
extra, e.g. pip install pyocd[pemicro]
. This resolves crashes in PowerShell on exit of pyocd.Full Changelog: https://github.com/pyocd/pyOCD/compare/v0.33.1...v0.34.0
JTAG_GET_BOARD_IDENTIFIERS
command.Full Changelog: https://github.com/pyocd/pyOCD/compare/v0.33.0...v0.33.1
rtt
subcommand. This subcommand streams stdio from/to the target. It works with all debug probe types, not only J-Link. (Thanks @mikisama, @ccattuto)--color
command line argument controls this feature. Also simplified the log output formatting so it is easier to read.-x
/--execute
argument to run commands from a file. Multiple command files can be run and mixed with -c
commands.-i
/--interactive
to stay in REPL after running commands from either a file or command line.@command
decorator that can be used in user scripts to create user-defined commands, accessible from Commander and as gdbserver monitor commands. See the documentation for details.continue
command in gdb), retry reading target status within a timeout after the first fault on such a check. This is intended to primarily help with firmware putting the core to sleep. The debug.status_fault_retry_timeout
session option controls the timeout; set it to 0 to disable this experimental feature.flushprobe
command that ensures all outstanding transfers on the probe have been completed.reg
output so it is properly redirected when called as a gdbserver monitor command.reg
and wreg' improvements.
-poption to force lookup as peripheral register.
regwill print any number of registers. Add
rrand
wr` aliases.print()
calls from user scripts get routed through any output direction, for example, such that the output will appear in the gdb console when a user-defined command is called as a gdbserver monitor command.keep_unwritten
session option to false.cmsis_dap.prefer_v1
session option that forces pyocd to use the CMSIS-DAP v1 interface on a debug probe that provides both v1 and v2. (Naturally, the default is to choose v2, since it is faster.) This is intended primarily for testing.JTAG_GET_BOARD_IDENTIFIERS
command to read board ID faster than extracting it from the "mbed.htm" file on the MSD volume. Requires V2J36 or V3J6 firmware versions.stlink.v3_prescaler
session option to control the internal HCLK prescaler on the probe, which affects the set of available SWD/JTAG and other I/O frequencies.disconnect
command is used so that the persist
option is honoured (disconnect
previously would never cause the gdbserver to stop). (Thanks @claymation)exit
monitor command that will shut down all gdbservers and quit pyocd.CSW.DBGSWEN
for CSSoC-400 APB-AP to resolve an issue that caused DBGMCU
(and other) peripherals to be inaccessible on certain STM32 devices, and likely similar issues on other devices.CoreTarget
class, a superclass of Target
instances for CPU cores.set_clock()
works with float parameters for all probe drivers.is_reset_asserted()
method.automated_test.py
supports remote probes in its -b
argument.scripts/generate_flash_algo.py
: Removed the useless part of the standard flash algo blob header, leaving only the required breakpoint.Many thanks to all the contributors who helped make this release possible! ❤️
Full Changelog: https://github.com/pyocd/pyOCD/compare/v0.32.3...v0.33.0
collections.Iterable
.Full Changelog: https://github.com/pyocd/pyOCD/compare/v0.32.2...v0.32.3