Expand description

Target specific configuration

For debugging and flashing different chips, called target in probe-rs, some target specific configuration is required. This includes the architecture of the chip, e.g. RISCV or ARM, and information about the memory map of the target, which can be used together with a flash algorithm to program the flash memory of a target.

Built-in targets

The built-in targets are added at build-time, from the build.rs script. They are generated from the target files in the targets/ subfolder of this crate.

The built-in targets can be disabled by not including the builtin-targets feature.

Adding targets at runtime

To add a target at runtime, the add_target_from_yaml file can be used to read targets from a YAML file.


A single chip variant.

This describes a chip family with all its variants.

An individual core inside a chip

Properties of flash memory, which are used when programming Flash memory.

Represents a region in non-volatile memory (e.g. flash or EEPROM).

Holds information about a page in flash.

Represents a region in RAM.

The raw flash algorithm is the description of a flash algorithm, and is usually read from a target description file.

Information about a group of flash sectors, which is used as part of the FlashProperties struct.

Holds information about a specific, individual flash sector.

This describes a complete target with a fixed chip model and variant.


Type of a supported core.

This is the type to denote a general debug sequence.
It can differentiate between ARM and RISC-V for now.
Currently, only the ARM variant does something sensible;
RISC-V will be ignored when encountered.

Instruction set used by a core

Declares the type of a memory region.

Error type for all errors which occur when working with the internal registry of targets.

Source of a target description.

Selector for the debug target.


Enables the user to do range intersection testing.


Parse a target description file and add the contained targets to the internal target registry.

Get a list of all families which are contained in the internal registry.

Get a target from the internal registry based on its name.

Get a target from the internal registry based on its name.

Type Definitions

An error occurred while parsing the target description.