VSC Debug with stlink fails but upload is successful

When you use example projects like platform-ststm32/examples/arduino-blink at develop · platformio/platform-ststm32 · GitHub, with

[env:disco_f407vg]
platform = ststm32
board = disco_f407vg
framework = arduino

and adapting the LED pin, does that firmware work? Is it also debuggable?

It works and debuggable !

Output of debug console:

undefinedC:\Users\Phillip\.platformio\packages\toolchain-gccarmnoneeabi\bin\arm-none-eabi-gdb.exe: warning: Couldn't determine a path for the index cache directory.
Reading symbols from c:\Users\Phillip\Documents\PlatformIO\Projects\220321-143056-disco_f407vg\.pio\build\disco_f407vg\firmware.elf...
PlatformIO Unified Debugger -> https://bit.ly/pio-debug
PlatformIO: debug_tool = stlink
PlatformIO: Initializing remote target...
xPack OpenOCD, x86_64 Open On-Chip Debugger 0.10.0+dev-00378-ge5be992df (2020-06-26-09:29)
Licensed under GNU GPL v2
For bug reports, read
	http://openocd.org/doc/doxygen/bugs.html
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
srst_only separate srst_nogate srst_open_drain connect_deassert_srst

Info : tcl server disabled
Info : telnet server disabled
Info : clock speed 2000 kHz
Info : STLINK V2J39M27 (API v2) VID:PID 0483:374B
Info : Target voltage: 2.917033
Info : stm32f4x.cpu: hardware has 6 breakpoints, 4 watchpoints
Info : starting gdb server for stm32f4x.cpu on pipe
Info : accepting 'gdb' connection from pipe
target halted due to debug-request, current mode: Handler HardFault
xPSR: 0x00000003 pc: 00000000 msp: 0x464c4550
Info : device id = 0x10076413
Info : flash size = 1024 kbytes
Info : flash size = 512 bytes
0x00000000 in ?? ()
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x00010100 msp: 0x464c457c
Info : Unable to match requested speed 8000 kHz, using 4000 kHz
Info : Unable to match requested speed 8000 kHz, using 4000 kHz
Warn : keep_alive() was not invoked in the 1000 ms timelimit. GDB alive packet not sent! (1024 ms). Workaround: increase "set remotetimeout" in GDB
Loading section .isr_vector, size 0x188 lma 0x8000000
Loading section .text, size 0x2f54 lma 0x8000188
Loading section .rodata, size 0x518 lma 0x80030dc
Loading section .ARM, size 0x8 lma 0x80035f4
Loading section .init_array, size 0x14 lma 0x80035fc
Loading section .fini_array, size 0x8 lma 0x8003610
Loading section .data, size 0x98 lma 0x8003618
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x08000b3c msp: 0x20020000
Start address 0x8000b3c, load size 14000
Transfer rate: 7 KB/sec, 2000 bytes/write.
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Unable to match requested speed 2000 kHz, using 1800 kHz
Unable to match requested speed 2000 kHz, using 1800 kHz
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x08000b3c msp: 0x20020000
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x08000b3c msp: 0x20020000
Temporary breakpoint 1 at 0x8000b1a: file C:\Users\Phillip\.platformio\packages\framework-arduinoststm32\cores\arduino\main.cpp, line 50.
PlatformIO: Initialization completed
PlatformIO: Resume the execution to `debug_init_break = tbreak main`
PlatformIO: More configuration options -> https://bit.ly/pio-debug
Note: automatically using hardware breakpoints for read-only addresses.

Temporary breakpoint 1, main () at C:\Users\Phillip\.platformio\packages\framework-arduinoststm32\cores\arduino\main.cpp:50
50	  initVariant();

Breakpoint 2, loop () at C:/Users/Phillip/Documents/PlatformIO/Projects/220321-143056-disco_f407vg/src/stm32f4_blink.ino:45
45	  digitalWrite(REDLED, LOW);    // turn the LED off by making the voltage LOW
Info : halted: PC: 0x08002b5c
halted: PC: 0x08002b5c

Breakpoint 2, loop () at C:/Users/Phillip/Documents/PlatformIO/Projects/220321-143056-disco_f407vg/src/stm32f4_blink.ino:45
45	  digitalWrite(REDLED, LOW);    // turn the LED off by making the voltage LOW

Then it has to be something specific to what is doing Marlin or the version of platform-ststm32 it’s using.

I’m noticing the blinky log above has the reset method

Aka pulsing NRST which is connnected to the system reset (SRST) connection (“hardware reset”). On the other hand, Marlin is using

which is a software reset via the SWD protocol.

Find this file in your local Marlin download

and change the last entry to

"reset_config srst_only separate srst_nogate srst_open_drain connect_deassert_srst"

then retry debugging.

Don’t forget to use the project environment switcher in the bottom taskbar to switch back to the correct Marlin environment.

It makes no difference

Does this now appear in the log?

yes it does.
This is the log:

Processing BIGTREE_E3_RRF (board: marlin_STM32F407VGT6_CCM; platform: ststm32@~12.1; framework: arduino)
--------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/ststm32/marlin_STM32F407VGT6_CCM.html
PLATFORM: ST STM32 (12.1.1) > STM32F407VG (128k RAM, 64k CCM RAM, 1024k Flash
HARDWARE: STM32F407VGT6 168MHz, 128KB RAM, 1MB Flash
DEBUG: Current (stlink) External (jlink, stlink)
PACKAGES:
 - framework-arduinoststm32 4.10900.200819 (1.9.0)
 - framework-cmsis 2.50501.200527 (5.5.1)
 - toolchain-gccarmnoneeabi 1.90201.191206 (9.2.1)
Converting Marlin.ino
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 10 compatible libraries
Scanning dependencies...
Dependency Graph
|-- <SPI> 1.0
|-- <Servo> 1.1.2
|-- <EEPROM> 2.0.1
|-- <SoftwareSerial> 1.0
|-- <IWatchdog> 1.0.0
|-- <Wire> 1.0
Building in debug mode
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduinoVariant\PeripheralPins.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduinoVariant\variant.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\HardwareSerial.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\HardwareTimer.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\IPAddress.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\Print.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\RingBuffer.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\Stream.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\Tone.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\USBSerial.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\VirtIOSerial.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\WInterrupts.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\WMath.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\WSerial.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\WString.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\abi.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\avr\dtostrf.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\board.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\hooks.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\itoa.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\main.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\new.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\pins_arduino.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\libmetal\device.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\libmetal\generic\condition.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\libmetal\generic\cortexm\sys.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\libmetal\generic\generic_device.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\libmetal\generic\generic_init.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\libmetal\generic\generic_io.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\libmetal\generic\generic_shmem.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\libmetal\generic\time.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\libmetal\init.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\libmetal\io.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\libmetal\log.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\libmetal\shmem.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\mbox_ipcc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\open-amp\remoteproc\remoteproc_virtio.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\open-amp\rpmsg\rpmsg.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\open-amp\rpmsg\rpmsg_virtio.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\openamp.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\rsc_table.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\virt_uart.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\virtio\virtio.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\virtio\virtqueue.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\virtio_buffer.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\OpenAMP\virtio_log.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\startup_stm32yyxx.S.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\usb\cdc\cdc_queue.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\usb\cdc\usbd_cdc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\usb\cdc\usbd_cdc_if.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\usb\hid\usbd_hid_composite.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\usb\hid\usbd_hid_composite_if.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\usb\usb_device_core.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\usb\usb_device_ctlreq.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\usb\usb_device_ioreq.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\usb\usbd_conf.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\usb\usbd_desc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\usb\usbd_ep_conf.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\stm32\usb\usbd_if.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\wiring_analog.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\wiring_digital.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\wiring_pulse.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\wiring_shift.c.o
Compiling .pio\build\BIGTREE_E3_RRF\FrameworkArduino\wiring_time.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_adc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_adc_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_can.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_cec.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_comp.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_comp_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_cordic.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_cortex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_crc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_crc_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_cryp.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_cryp_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_dac.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_dac_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_dcmi.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_dcmi_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_dfsdm.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_dfsdm_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_dma.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_dma2d.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_dma_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_dsi.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_dts.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_eth.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_eth_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_exti.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_fdcan.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_firewall.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_flash.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_flash_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_flash_ramfunc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_fmac.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_fmpi2c.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_fmpi2c_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_gfxmmu.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_gpio.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_gpio_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_hash.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_hash_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_hcd.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_hrtim.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_hsem.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_i2c.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_i2c_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_i2s.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_i2s_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_ipcc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_irda.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_iwdg.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_jpeg.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_lcd.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_lptim.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_ltdc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_ltdc_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_mdios.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_mdma.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_mmc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_mmc_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_nand.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_nor.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_opamp.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_opamp_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_ospi.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_otfdec.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_pccard.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_pcd.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_pcd_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_pka.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_pssi.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_pwr.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_pwr_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_qspi.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_ramecc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_rcc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_rcc_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_rng.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_rng_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_rtc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_rtc_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_sai.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_sai_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_sd.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_sd_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_sdadc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_sdram.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_smartcard.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_smartcard_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_smbus.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_spdifrx.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_spi.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_spi_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_sram.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_swpmi.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_tim.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_tim_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_tsc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_uart.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_uart_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_usart.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_usart_ex.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\HAL\stm32yyxx_hal_wwdg.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_adc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_bdma.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_comp.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_cordic.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_crc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_crs.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_dac.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_delayblock.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_dma.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_dma2d.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_exti.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_fmac.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_fmc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_fsmc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_gpio.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_hrtim.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_i2c.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_lptim.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_lpuart.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_mdma.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_opamp.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_pka.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_pwr.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_rcc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_rng.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_rtc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_sdmmc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_spi.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_swpmi.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_tim.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_ucpd.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_usart.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_usb.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\LL\stm32yyxx_ll_utils.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\PortNames.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\analog.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\bootloader.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\clock.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\core_callback.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\dwt.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\hw_config.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\interrupt.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\lock_resource.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\low_power.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\pinmap.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\rtc.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\stm32_def.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\stm32_eeprom.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\system_stm32yyxx.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\timer.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\stm32\uart.c.o
Compiling .pio\build\BIGTREE_E3_RRF\SrcWrapper\src\syscalls.c.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\HAL.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\HAL_MinSerial.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\HAL_SPI.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\MarlinSPI.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\MarlinSerial.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\Servo.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\eeprom_bl24cxx.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\eeprom_flash.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\eeprom_if_iic.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\eeprom_sdcard.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\eeprom_sram.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\eeprom_wired.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\fast_pwm.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\fastio.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\msc_sd.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\sdio.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\tft\gt911.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\tft\tft_fsmc.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\tft\tft_ltdc.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\tft\tft_spi.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\tft\xpt2046.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\timers.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\usb_host.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\usb_serial.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\STM32\watchdog.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\Delay.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\HAL.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\HAL_MinSerial.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\backtrace\backtrace.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\backtrace\unwarm.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\backtrace\unwarm_arm.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\backtrace\unwarm_thumb.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\backtrace\unwarmbytab.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\backtrace\unwarmmem.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\backtrace\unwinder.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\backtrace\unwmemaccess.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\eeprom_api.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\esp_wifi.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\HAL\shared\servo.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\MarlinCore.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\core\serial.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\core\utility.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\feature\ammeter.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\calibrate\G28.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\config\M200-M205.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\config\M220.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\config\M221.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\config\M301.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\config\M302.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\config\M309.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\config\M43.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\config\M92.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M108_M112_M410.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M111.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M120_M121.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M17_M18_M84.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M211.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M226.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M400.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M42.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M80_M81.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M85.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M993_M994.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M997.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\M999.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\control\T.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\eeprom\M500-M504.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\feature\digipot\M907-M910.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\gcode.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\gcode_d.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\geometry\G92.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\geometry\M206_M428.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\host\M110.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\host\M113.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\host\M114.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\host\M115.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\host\M118.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\host\M119.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\lcd\M145.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\motion\G0_G1.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\motion\G2_G3.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\motion\G4.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\parser.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\queue.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\stats\M31.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\stats\M75-M78.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\temp\M104_M109.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\temp\M105.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\temp\M106_M107.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\temp\M140_M190.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\temp\M141_M191.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\temp\M155.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\temp\M303.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\gcode\units\M82_M83.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\inc\Warnings.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\lcd\extui\ui_api.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\lcd\fontutils.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\lcd\marlinui.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\libs\buzzer.cpp.o
Marlin\src\inc\Warnings.cpp:35:4: warning: #warning "WARNING! Disable MARLIN_DEV_MODE for the final build!" [-Wcpp]
   35 |   #warning "WARNING! Disable MARLIN_DEV_MODE for the final build!"
      |    ^~~~~~~
Marlin\src\inc\Warnings.cpp:59:4: warning: #warning "Your Configuration provides no method to acquire user feedback!" [-Wcpp]
   59 |   #warning "Your Configuration provides no method to acquire user feedback!"
      |    ^~~~~~~
Marlin\src\inc\Warnings.cpp:563:6: warning: #warning "Motherboard DIAG jumpers must be removed when SENSORLESS_HOMING is disabled. (Define DIAG_JUMPERS_REMOVED to suppress this warning.)" [-Wcpp]
  563 |     #warning "Motherboard DIAG jumpers must be removed when SENSORLESS_HOMING is disabled. (Define DIAG_JUMPERS_REMOVED to suppress this warning.)"
      |      ^~~~~~~
Compiling .pio\build\BIGTREE_E3_RRF\src\src\libs\crc16.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\libs\hex_print.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\libs\numtostr.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\libs\stopwatch.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\libs\vector_3.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\module\endstops.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\module\motion.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\module\planner.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\module\settings.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\module\stepper.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\module\stepper\indirection.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\module\temperature.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\src\src\module\tool_change.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\libe5d\SPI\SPI.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\libe5d\SPI\utility\spi_com.c.o
Compiling .pio\build\BIGTREE_E3_RRF\lib136\Servo\stm32\Servo.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\libf93\SoftwareSerial\SoftwareSerial.cpp.o
Compiling .pio\build\BIGTREE_E3_RRF\lib2c9\IWatchdog\IWatchdog.cpp.o
Archiving .pio\build\BIGTREE_E3_RRF\libe5d\libSPI.a
Compiling .pio\build\BIGTREE_E3_RRF\lib142\Wire\Wire.cpp.o
Archiving .pio\build\BIGTREE_E3_RRF\lib136\libServo.a
Archiving .pio\build\BIGTREE_E3_RRF\libf93\libSoftwareSerial.a
Compiling .pio\build\BIGTREE_E3_RRF\lib142\Wire\utility\twi.c.o
Archiving .pio\build\BIGTREE_E3_RRF\lib2c9\libIWatchdog.a
Archiving .pio\build\BIGTREE_E3_RRF\lib142\libWire.a
Linking .pio\build\BIGTREE_E3_RRF\firmware.elf
Environment     Status    Duration
--------------  --------  ------------
BIGTREE_E3_RRF  SUCCESS   00:02:28.654
========================= 1 succeeded in 00:02:28.654 =========================
undefinedC:\Users\Phillip\.platformio\packages\toolchain-gccarmnoneeabi\bin\arm-none-eabi-gdb.exe: warning:
Reading symbols from d:\Projects\ROBODOS_FEB22\Giebler\Downloads\Marlin-tmc26x_cs_STM32F4\Marlin-tmc26x_cs\.pio\build\BIGTREE_E3_RRF\firmware.elf...
 Couldn't determine a path for the index cache directory.
PlatformIO Unified Debugger -> https://bit.ly/pio-debug
PlatformIO: debug_tool = stlink
PlatformIO: Initializing remote target...
xPack OpenOCD, x86_64 Open On-Chip Debugger 0.10.0+dev-00378-ge5be992df (2020-06-26-09:29)
Licensed under GNU GPL v2
For bug reports, read
	http://openocd.org/doc/doxygen/bugs.html
hla_swd
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
srst_only separate srst_nogate srst_open_drain connect_deassert_srst

Info : tcl server disabled
Info : telnet server disabled
Info : clock speed 2000 kHz
Info : STLINK V2J39M27 (API v2) VID:PID 0483:374B
Info : Target voltage: 2.921306
Info : stm32f4x.cpu: hardware has 6 breakpoints, 4 watchpoints
Info : starting gdb server for stm32f4x.cpu on pipe
Info : accepting 'gdb' connection from pipe
target halted due to debug-request, current mode: Thread
xPSR: 0x81000000 pc: 0x08001de2 msp: 0x2001ffd8
Info : device id = 0x10076413
Info : flash size = 1024 kbytes
Info : flash size = 512 bytes
0x08001de2 in ?? ()
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x08000b3c msp: 0x20020000
Info : Unable to match requested speed 8000 kHz, using 4000 kHz
Info : Unable to match requested speed 8000 kHz, using 4000 kHz
Warn : keep_alive() was not invoked in the 1000 ms timelimit. GDB alive packet not sent! (1019 ms). Workaround: increase "set remotetimeout" in GDB
Loading section .isr_vector, size 0x188 lma 0x8008000
Loading section .text, size 0x1913c lma 0x8008188
Loading section .rodata, size 0x2864 lma 0x80212c4
Loading section .ARM, size 0x8 lma 0x8023b28
Loading section .init_array, size 0x28 lma 0x8023b30
Loading section .fini_array, size 0x8 lma 0x8023b58
Loading section .data, size 0x408 lma 0x8023b60
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x08000b3c msp: 0x20020000
Start address 0x8009fc8, load size 114536
Transfer rate: 17 KB/sec, 6737 bytes/write.
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Info : Unable to match requested speed 2000 kHz, using 1800 kHz
Unable to match requested speed 2000 kHz, using 1800 kHz
Unable to match requested speed 2000 kHz, using 1800 kHz
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x08000b3c msp: 0x20020000
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x08000b3c msp: 0x20020000
Temporary breakpoint 1 at 0x8009f46: file C:\Users\Phillip\.platformio\packages\framework-arduinoststm32\cores\arduino\main.cpp, line 50.
PlatformIO: Initialization completed
PlatformIO: Resume the execution to `debug_init_break = tbreak main`
PlatformIO: More configuration options -> https://bit.ly/pio-debug
Note: automatically using hardware breakpoints for read-only addresses.

But can you press the pause button now? This looks better in the sense that the PC (program counter) is at a 0x08…` address.

And previously it was

Somewhere way lower.

Is that

still in there? Delete it if yes. No bootloader needed if flashing via SWD.

I removed the board_build.offset.

After pressing pause:
Program
received signal SIGINT, Interrupt.
0x08000d92 in ?? ()

Yeah well we’re getting closer. At least it’s somewhere in flash firmware and not at 0x0 + a bit, PlatformIO just doesn’t know where it is. This 0x8000 offset may also still be somewhere else, causing a shift in the firmware.

Can you execute the project task Advanced → Verbose Build, and at the end there’s a list of the sections of the ELF file with their start address (including .text, .isr_vector etc.). What output does it give you there?

sorry, how can I
do that ?

In the project tasks list (PlatformIO IDE for VSCode — PlatformIO latest documentation) scroll down to your

environment, then Advanced, then Verbose Build.

Alternatively in the CLI (PlatformIO IDE for VSCode — PlatformIO latest documentation)

pio run -t BIGTREE_E3_RRF -v
MethodWrapper(["checkprogsize"], [".pio\build\BIGTREE_E3_RRF\firmware.elf"])
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [=         ]   5.6% (used 7316 bytes from 131072 bytes)
Flash: [=         ]  10.9% (used 114088 bytes from 1048576 bytes)
.pio\build\BIGTREE_E3_RRF\firmware.elf  :

section                size        addr

.isr_vector             392   134250496

.text                102716   134250888

.rodata               10340   134353604

.ARM                      8   134363944

.init_array              40   134363952

.fini_array               8   134363992

.data                  1032   536870912

.ccmram                   0   268435456

.bss                   6284   536871944

.noinit                   0   536878228

._user_heap_stack      1536   536878228

.ARM.attributes          48           0

.debug_info         6909568           0

.debug_abbrev        286587           0

.debug_aranges        14008           0

.debug_line          468530           0

.debug_str           170616           0

.comment                102           0

.debug_ranges         45440           0

.debug_frame          42084           0

.debug_loc           269064           0

Total               8328403
arm-none-eabi-objcopy -O binary .pio\build\BIGTREE_E3_RRF\firmware.elf .pio\build\BIGTREE_E3_RRF\firmware.bin
=============================================================== [SUCCESS] Took 364.47 seconds ===============================================================
Environment                            Status    Duration
-------------------------------------  --------  ------------
BIGTREE_E3_RRF                         SUCCESS   00:06:04.469

Yeah that’s the problem right there. In hex that is 0x8008000, but it should be just 0x8000000 (decimal 134217728), meaning somewhere and somehow, there still is that sneaky 0x8000 offset which causes the firmware to not boot correctly since there is no bootloader on it that jumps to 0x8008000. Execution starts at 0x8000000.

A shot in the dark: Try setting it explicitly to 0.

board_build.offset = 0x0

Is the ISR vector address then correct after a rebuild?

No, it is still there.

Advanced Memory Usage is available via “PlatformIO Home > Project Inspect”
RAM: [= ] 5.6% (used 7316 bytes from 131072 bytes)
Flash: [= ] 10.9% (used 114088 bytes from 1048576 bytes)
.pio\build\BIGTREE_E3_RRF\firmware.elf :

section size addr

.isr_vector 392 134250496

.text 102716 134250888

.rodata 10340 134353604

.ARM 8 134363944

.init_array 40 134363952

.fini_array 8 134363992

.data 1032 536870912

.ccmram 0 268435456

.bss 6284 536871944

.noinit 0 536878228

._user_heap_stack 1536 536878228

.ARM.attributes 48 0

.debug_info 6909568 0

.debug_abbrev 286587 0

.debug_aranges 14008 0

.debug_line 468530 0

.debug_str 170616 0

.comment 102 0

.debug_ranges 45440 0

.debug_frame 42084 0

.debug_loc 269064 0

Total 8328403
arm-none-eabi-objcopy -O binary .pio\build\BIGTREE_E3_RRF\firmware.elf .pio\build\BIGTREE_E3_RRF\firmware.bin
=============================================================== [SUCCESS] Took 375.59 seconds ===============================================================

The 0x8000 has to come from somewhere. Please upload the current state of your Marlin project somewhere, e.g. Google Drive, and post the link here. (Execute the the project task “Clean” beforehand to reduce the size)

how do i get the current state ?

I mean, just copy / ZIP your Marlin project folder in which you’re working the entire time and upload it somewhere.

https://www.dropbox.com/s/d6mk1b8qlradkpm/Marlin-tmc26x_cs.zip?dl=0

Your project still has

[env:BIGTREE_E3_RRF]
extends             = stm32_variant
board               = marlin_STM32F407VGT6_CCM
board_build.variant = MARLIN_BIGTREE_E3_RRF
board_build.offset  = 0x8000
build_flags         = ${stm32_variant.build_flags}
                      -DSTM32F407_5VX
                      -DMF_RX_BUFFER_SIZE=255
                      -DMF_TX_BUFFER_SIZE=255

in the ini/stm32f4.ini file, it seems you have just duplicated the environment with the same name in the main platformio.ini. Please remove the env:BIGTREE_E3_RRFenvironment from the ini/stm32f4.ini file so that the one in the platformio.ini is definitely used.