Skip to main content
pai-dump-memory connects to the alarm panel using your PAI configuration and dumps the contents of either RAM or EEPROM to a file or stdout. It is a debugging tool for capturing raw panel state and configuration data.

Usage

pai-dump-memory (-r | -e) [-f FILE] [-c CONFIG]
One of -r or -e is required.

Options

-r, --ram
flag
Dump the panel’s RAM. Mutually exclusive with --eeprom.
-e, --eeprom
flag
Dump the panel’s EEPROM. Mutually exclusive with --ram.
-f, --file
file
default:"stdout"
Output file path to write the binary dump to. Defaults to stdout when not specified. The file is opened in binary write mode.
-c, --config
string
default:"None"
Path to an alternative PAI configuration file. When not specified, PAI searches the default locations (pai.conf, pai.json, pai.yaml in the current directory, ~/.local/etc, /etc/pai, /usr/local/etc/pai).

Examples

pai-dump-memory --ram

When to use this tool

When reporting a bug in PAI’s state parsing or event handling, attach a RAM dump so maintainers can reproduce the exact panel state you observed.
EEPROM contains panel programming (zone names, partition configuration, user codes, etc.). Dump the EEPROM to verify what is actually stored on the panel.
If zone or partition names appear garbled, a RAM dump combined with LOGGING_DUMP_PACKETS = True helps identify the raw bytes and the encoding in use.
When adding support for a new Paradox panel model, EEPROM and RAM dumps provide the raw data needed to write and validate new parsers.
This tool connects to your live panel. Ensure pai-service is not running at the same time, as simultaneous connections to the panel may cause communication errors.

Output format

The output is raw binary data. Use standard tools to inspect it:
# Hex view
pai-dump-memory -r | hexdump -C

# Save and view with xxd
pai-dump-memory -e -f /tmp/eeprom.bin
xxd /tmp/eeprom.bin | less

Build docs developers (and LLMs) love