mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-05-31 02:16:53 +08:00
NuttX cmake small debug helper improvements
This commit is contained in:
@@ -43,7 +43,7 @@ pipeline {
|
|||||||
sh 'find /dev/serial'
|
sh 'find /dev/serial'
|
||||||
unstash 'px4_fmu-v2_test'
|
unstash 'px4_fmu-v2_test'
|
||||||
// flash board and watch bootup
|
// flash board and watch bootup
|
||||||
sh './platforms/nuttx/Debug/jlink_gdb_upload.sh build/px4_fmu-v2_test/px4_fmu-v2_test.elf'
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v2_test/px4_fmu-v2_test.elf'
|
||||||
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -134,7 +134,7 @@ pipeline {
|
|||||||
sh 'find /dev/serial'
|
sh 'find /dev/serial'
|
||||||
unstash 'px4_fmu-v3_default'
|
unstash 'px4_fmu-v3_default'
|
||||||
// flash board and watch bootup
|
// flash board and watch bootup
|
||||||
sh './platforms/nuttx/Debug/jlink_gdb_upload.sh build/px4_fmu-v3_default/px4_fmu-v3_default.elf'
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v3_default/px4_fmu-v3_default.elf'
|
||||||
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -258,7 +258,7 @@ pipeline {
|
|||||||
sh 'find /dev/serial'
|
sh 'find /dev/serial'
|
||||||
unstash 'px4_fmu-v4_default'
|
unstash 'px4_fmu-v4_default'
|
||||||
// flash board and watch bootup
|
// flash board and watch bootup
|
||||||
sh './platforms/nuttx/Debug/jlink_gdb_upload.sh build/px4_fmu-v4_default/px4_fmu-v4_default.elf'
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v4_default/px4_fmu-v4_default.elf'
|
||||||
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -379,7 +379,7 @@ pipeline {
|
|||||||
sh 'find /dev/serial'
|
sh 'find /dev/serial'
|
||||||
unstash 'px4_fmu-v4pro_default'
|
unstash 'px4_fmu-v4pro_default'
|
||||||
// flash board and watch bootup
|
// flash board and watch bootup
|
||||||
sh './platforms/nuttx/Debug/jlink_gdb_upload.sh build/px4_fmu-v4pro_default/px4_fmu-v4pro_default.elf'
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v4pro_default/px4_fmu-v4pro_default.elf'
|
||||||
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -503,7 +503,7 @@ pipeline {
|
|||||||
sh 'find /dev/serial'
|
sh 'find /dev/serial'
|
||||||
unstash 'px4_fmu-v5_default'
|
unstash 'px4_fmu-v5_default'
|
||||||
// flash board and watch bootup
|
// flash board and watch bootup
|
||||||
sh './platforms/nuttx/Debug/jlink_gdb_upload.sh build/px4_fmu-v5_default/px4_fmu-v5_default.elf'
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v5_default/px4_fmu-v5_default.elf'
|
||||||
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -627,7 +627,7 @@ pipeline {
|
|||||||
sh 'find /dev/serial'
|
sh 'find /dev/serial'
|
||||||
unstash 'px4_fmu-v5x_default'
|
unstash 'px4_fmu-v5x_default'
|
||||||
// flash board and watch bootup
|
// flash board and watch bootup
|
||||||
sh './platforms/nuttx/Debug/jlink_gdb_upload.sh build/px4_fmu-v5x_default/px4_fmu-v5x_default.elf'
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/px4_fmu-v5x_default/px4_fmu-v5x_default.elf'
|
||||||
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-SEGGER_*` --baudrate 57600'
|
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-SEGGER_*` --baudrate 57600'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -751,7 +751,7 @@ pipeline {
|
|||||||
sh 'find /dev/serial'
|
sh 'find /dev/serial'
|
||||||
unstash 'holybro_durandal-v1_default'
|
unstash 'holybro_durandal-v1_default'
|
||||||
// flash board and watch bootup
|
// flash board and watch bootup
|
||||||
sh './platforms/nuttx/Debug/jlink_gdb_upload.sh build/holybro_durandal-v1_default/holybro_durandal-v1_default.elf'
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/holybro_durandal-v1_default/holybro_durandal-v1_default.elf'
|
||||||
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -876,7 +876,7 @@ pipeline {
|
|||||||
sh 'find /dev/serial'
|
sh 'find /dev/serial'
|
||||||
unstash 'holybro_durandal-v1_stackcheck'
|
unstash 'holybro_durandal-v1_stackcheck'
|
||||||
// flash board and watch bootup
|
// flash board and watch bootup
|
||||||
sh './platforms/nuttx/Debug/jlink_gdb_upload.sh build/holybro_durandal-v1_stackcheck/holybro_durandal-v1_stackcheck.elf'
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/holybro_durandal-v1_stackcheck/holybro_durandal-v1_stackcheck.elf'
|
||||||
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -999,7 +999,7 @@ pipeline {
|
|||||||
sh 'find /dev/serial'
|
sh 'find /dev/serial'
|
||||||
unstash 'nxp_fmuk66-v3_default'
|
unstash 'nxp_fmuk66-v3_default'
|
||||||
// flash board and watch bootup
|
// flash board and watch bootup
|
||||||
sh './platforms/nuttx/Debug/jlink_gdb_upload.sh build/nxp_fmuk66-v3_default/nxp_fmuk66-v3_default.elf'
|
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/nxp_fmuk66-v3_default/nxp_fmuk66-v3_default.elf'
|
||||||
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
sh './Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-FTDI_*` --baudrate 57600'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+1
-1
@@ -19,7 +19,7 @@
|
|||||||
"limitSymbolsToIncludedHeaders": true
|
"limitSymbolsToIncludedHeaders": true
|
||||||
},
|
},
|
||||||
"compileCommands": "${workspaceFolder}/.vscode/compile_commands.json",
|
"compileCommands": "${workspaceFolder}/.vscode/compile_commands.json",
|
||||||
"configurationProvider": "vector-of-bool.cmake-tools"
|
"configurationProvider": "ms-vscode.cmake-tools"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"version": 4
|
"version": 4
|
||||||
|
|||||||
@@ -14,6 +14,8 @@ set print pretty
|
|||||||
set pagination off
|
set pagination off
|
||||||
|
|
||||||
set history save on
|
set history save on
|
||||||
|
set history filename ~/.gdb_history
|
||||||
set history size unlimited
|
set history size unlimited
|
||||||
|
set history expansion on
|
||||||
|
|
||||||
set logging on
|
set logging on
|
||||||
|
|||||||
Executable
+14
@@ -0,0 +1,14 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
set -o xtrace
|
||||||
|
|
||||||
|
@JLinkGDBServerExe_PATH@ -device @DEBUG_DEVICE@ -select usb -endian little -if SWD -speed auto -ir -LocalhostOnly 1 -strict -vd -singlerun &
|
||||||
|
|
||||||
|
cd @PX4_BINARY_DIR@ && @CMAKE_GDB@ -silent -nh \
|
||||||
|
-iex "set auto-load safe-path @PX4_BINARY_DIR@" \
|
||||||
|
-ex "target remote localhost:2331" \
|
||||||
|
-ex "monitor reset 0" \
|
||||||
|
-ex "load" \
|
||||||
|
-ex "monitor reset 0" \
|
||||||
|
-ex "continue" \
|
||||||
|
@PX4_CONFIG@.elf
|
||||||
+5
@@ -0,0 +1,5 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
set -o xtrace
|
||||||
|
|
||||||
|
@Ozone_PATH@ -device @DEBUG_DEVICE@ -if SWD -speed auto -select usb -programfile @PX4_BINARY_DIR@/@PX4_CONFIG@.elf
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
|
|
||||||
killall JLinkGDBServerCLExe
|
|
||||||
|
|
||||||
# TODO: set device from nuttx config
|
|
||||||
# eg CONFIG_ARCH_CHIP_STM32F427V or CONFIG_STM32_STM32F427
|
|
||||||
JLinkGDBServerCLExe -device STM32F427II -select usb -silent -endian little -if SWD -speed auto -ir -LocalhostOnly 1 -strict -vd -singlerun &
|
|
||||||
Executable
+7
@@ -0,0 +1,7 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
set -o xtrace
|
||||||
|
|
||||||
|
killall JLinkGDBServerCLExe
|
||||||
|
|
||||||
|
JLinkGDBServerCLExe -silent -device @DEBUG_DEVICE@ -select usb -if SWD -speed auto -LocalhostOnly 1 -strict -vd -singlerun &
|
||||||
@@ -10,6 +10,7 @@
|
|||||||
"type": "cortex-debug",
|
"type": "cortex-debug",
|
||||||
"servertype": "jlink",
|
"servertype": "jlink",
|
||||||
"interface": "swd",
|
"interface": "swd",
|
||||||
|
//"ipAddress": "server:19020",
|
||||||
"cwd": "${workspaceRoot}",
|
"cwd": "${workspaceRoot}",
|
||||||
"internalConsoleOptions": "openOnSessionStart",
|
"internalConsoleOptions": "openOnSessionStart",
|
||||||
"preLaunchCommands": [
|
"preLaunchCommands": [
|
||||||
|
|||||||
+6
-4
@@ -1,12 +1,14 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
|
|
||||||
gdb-multiarch -nx -batch \
|
set -o xtrace
|
||||||
|
|
||||||
|
gdb-multiarch -silent -nx -batch \
|
||||||
-ex "target remote localhost:2331" \
|
-ex "target remote localhost:2331" \
|
||||||
-ex "monitor reset 0" \
|
-ex "monitor reset 0" \
|
||||||
-ex "load" \
|
-ex "load" \
|
||||||
-ex "compare-sections" \
|
|
||||||
-ex "monitor reset 0" \
|
-ex "monitor reset 0" \
|
||||||
-ex "monitor sleep 1000" \
|
|
||||||
-ex "monitor go" \
|
-ex "monitor go" \
|
||||||
-ex "kill" \
|
-ex "monitor sleep 3000" \
|
||||||
|
-ex "disconnect" \
|
||||||
|
-ex "quit" \
|
||||||
${1}
|
${1}
|
||||||
@@ -31,28 +31,47 @@
|
|||||||
#
|
#
|
||||||
############################################################################
|
############################################################################
|
||||||
|
|
||||||
add_custom_target(jlink_upload
|
# jlink_upload (flash binary)
|
||||||
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/Debug/jlink_gdb_start.sh
|
find_program(JLinkGDBServerCLExe_PATH JLinkGDBServerCLExe)
|
||||||
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/Debug/jlink_gdb_upload.sh $<TARGET_FILE:px4>
|
if(JLinkGDBServerCLExe_PATH)
|
||||||
DEPENDS px4
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/Debug/jlink_gdb_start.sh.in ${PX4_BINARY_DIR}/jlink_gdb_start.sh @ONLY)
|
||||||
WORKING_DIRECTORY ${PX4_BINARY_DIR}
|
add_custom_target(jlink_upload
|
||||||
USES_TERMINAL
|
COMMAND ${PX4_BINARY_DIR}/jlink_gdb_start.sh
|
||||||
|
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/Debug/upload_jlink_gdb.sh $<TARGET_FILE:px4>
|
||||||
|
DEPENDS
|
||||||
|
px4
|
||||||
|
${PX4_BINARY_DIR}/jlink_gdb_start.sh
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/Debug/upload_jlink_gdb.sh
|
||||||
|
WORKING_DIRECTORY ${PX4_BINARY_DIR}
|
||||||
|
USES_TERMINAL
|
||||||
)
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
add_custom_target(jlink_debug
|
# jlink_debug_gdb (flash binary and run with gdb attached)
|
||||||
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/Debug/jlink_gdb_start.sh
|
find_program(JLinkGDBServerExe_PATH JLinkGDBServerExe)
|
||||||
COMMAND ${CMAKE_GDB} -nh
|
if(JLinkGDBServerExe_PATH AND CMAKE_GDB)
|
||||||
-iex 'set auto-load safe-path ${PX4_BINARY_DIR}'
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/Debug/jlink_debug_gdb.sh.in ${PX4_BINARY_DIR}/jlink_debug_gdb.sh @ONLY)
|
||||||
-ex 'target remote localhost:2331'
|
add_custom_target(jlink_debug_gdb
|
||||||
-ex 'monitor reset 0'
|
COMMAND ${PX4_BINARY_DIR}/jlink_debug_gdb.sh
|
||||||
-ex 'load'
|
DEPENDS
|
||||||
-ex 'compare-sections'
|
px4
|
||||||
-ex 'monitor reset 0'
|
${PX4_BINARY_DIR}/.gdbinit
|
||||||
-ex 'monitor sleep 1000'
|
${PX4_BINARY_DIR}/jlink_debug_gdb.sh
|
||||||
-ex 'monitor go'
|
WORKING_DIRECTORY ${PX4_BINARY_DIR}
|
||||||
-ex 'continue'
|
USES_TERMINAL
|
||||||
$<TARGET_FILE:px4>
|
|
||||||
DEPENDS px4 ${PX4_BINARY_DIR}/.gdbinit
|
|
||||||
WORKING_DIRECTORY ${PX4_BINARY_DIR}
|
|
||||||
USES_TERMINAL
|
|
||||||
)
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# jlink_debug_ozone (run Segger Ozone debugger with current target configuration)
|
||||||
|
find_program(Ozone_PATH Ozone)
|
||||||
|
if(Ozone_PATH)
|
||||||
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/Debug/jlink_debug_ozone.sh.in ${PX4_BINARY_DIR}/jlink_debug_ozone.sh @ONLY)
|
||||||
|
add_custom_target(jlink_debug_ozone
|
||||||
|
COMMAND ${PX4_BINARY_DIR}/jlink_debug_ozone.sh
|
||||||
|
DEPENDS
|
||||||
|
px4
|
||||||
|
${PX4_BINARY_DIR}/jlink_debug_ozone.sh
|
||||||
|
WORKING_DIRECTORY ${PX4_BINARY_DIR}
|
||||||
|
USES_TERMINAL
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|||||||
Reference in New Issue
Block a user