Last active 1 week ago

debugge.md Raw

I en terminal kjør

west debugserver -r openocd

Flash og se outputs med:

mbuild
# eller
mclean

add til config:

mdebug(){
  _activate_zephyr_venv

  local gdb=$HOME/zephyr-sdk-1.0.1/gnu/xtensa-espressif_esp32s3_zephyr-elf/bin/xtensa-espressif_esp32s3_zephyr-elf-gdb
  local elf=./build/zephyr/zephyr.elf

  west debugserver -r openocd &
  local openocd_pid=$!

  sleep 1

  "$gdb" "$elf" \
    -ex "target extended-remote 127.0.0.1:3333" \
    -ex "set pagination off" \
    -ex "set confirm off" \
    -ex "set remote hardware-watchpoint-limit 2" \
    -ex "monitor reset halt"

  kill "$openocd_pid" 2>/dev/null || true
  wait "$openocd_pid" 2>/dev/null || true
}

start gdb med:

mdebug

den bruker elf filen fra lokale build folder, så den burde restartes hvis du gjør endringer som endrer symboler

gdb tips (hvis du ikke kan allerede)

continue (continuer...)
break main #(breakpoint på main funksjon, kan også f,.eks break mv_arena_init)
break mv_arena.h:53 (breakpoint på et spesifikt punkt i en fil.
where #(hvor er du i source code)
list . #(source code rundt der du er)
info local #(list ut local vars)
info args #(list ut local args)
monitor reset halt # (reset programmet) gjøres av mdebug
target extended-remote 127.0.0.1:3333 #(koble til openocd server) gjøres av mdebug