# Memory dump

Source: [https://docs.qualcomm.com/doc/80-Y8730-2/topic/ram_dump.html](https://docs.qualcomm.com/doc/80-Y8730-2/topic/ram_dump.html)

When the board crashes, memory dump information can help developers debug the crash. After the information is saved, the board automatically reboots to avoid becoming unusable.

There are two types of memory dumps: RAM dump and core dump. A RAM dump includes all the RAM information. A core dump includes ARM CPU general registers (such as PC, LR, and SP for normal execution status) and CPU control and status registers (such as EPC/ELR/ESP for exception execution status).

- PC: Program Counter
- LR: Link Register (stores the return location)
- SP: Stack Pointer

The following sections explain how to use core dumps and RAM dumps.

Note: This feature is available since the QCC730.FR.1.0 Post-CS 5 release.

## Enable core dump on QCC730

Follow these steps to enable the core dump function on QCC730:

1. Set the following configuration in the qccsdk\demo\qcli\_demo\prj.conf file:

        CONFIG_WIFI_FW_COREDUMP_SUPPORT =yCopy to clipboard
2. Build an image by using the following command:

        python qccsdk.py set -S=demo/qcli_demo -b=mqm730x python qccsdk.py build --rebuildCopy to clipboard
3. Flash the image to a QCC730 board by using the following command:

        python qccsdk.py flash --flash --resetCopy to clipboard

## Enable RAM dump on QCC730

Because dumping all the RAM information by UART takes a long time (usually several minutes), RAM dump is disabled by default.

Follow these steps to enable RAM dump on QCC730:

1. Set the following configuration in the qccsdk\demo\qcli\_demo\prj.conf file:

        CONFIG_WIFI_FW_RAMDUMP_PRINT_FLAG=1Copy to clipboard
2. Call `qapi_set_ramdump_print_flag()` to enable the `g_ramdump_print_flag` flag.

## Core dump sample

The following commands demonstrate how to trigger a crash and dump the core information from memory:

1. Trigger a crash by using the following command:

        >platform coredumptest 0Copy to clipboard
2. Dump the core information by using the following command:

        >platform coredumpinfo 1Copy to clipboard

## RAM dump sample

The following commands demonstrate how to dump the RAM information and use it for further debugging:

1. Trigger a crash by using the following command:

        >platform coredumptest 0Copy to clipboard
2. Run the following command if `CONFIG_WIFI_FW_RAMDUMP_PRINT_FLAG` is set to `0`:

        >platform coredumpflag 1Copy to clipboard
3. Save the log as ramdump.txt, and then extract the RAM info as fermion\_ram.bin.
4. Start OpenOCD as the GDB server by using the following command in Windows:

        openocd -f path_to\tools\jtag\openocd\ch347\qcc730.cfgCopy to clipboard
5. Start a GDB client for debugging by using the following command in a separate command window:

        arm-none-eabi-gdb -x <path_to>\tools\jtag\openocd\ch347\gdb.gdbinit -s <path_to>\output\qcc730v2_evb12_hostless\FERMION_QCLI_DEMO\DEBUG\bin\FERMION_QCLI_DEMO.elfCopy to clipboard
6. Restore ram.binin GDB:
    1. Run the following command to download RAM to board:

            restore fermion_ram.bin binary 0x00000Copy to clipboard
    2. Run the following command to recover ARM CPU registers:

            coreregsCopy to clipboard
    3. Run the following command to dump back-trace:

            btCopy to clipboard

You can then lookup variables and heap information in RAM.

Last Published: Jun 03, 2026

[Previous Topic
Certification tools](https://docs.qualcomm.com/bundle/publicresource/80-Y8730-2/topics/certification_tool.md) [Next Topic
P2P group client](https://docs.qualcomm.com/bundle/publicresource/80-Y8730-2/topics/p2p_group_client.md)