Notes: Mods made in VGDB project after importing from CubeIDE. 1. Add to top of stm32h7xx_it.c /* Private function prototypes -----------------------------------------------*/ /* USER CODE BEGIN PFP */ extern void USART1_IRQHandlerCPF(void); extern void DMA1_Stream0_IRQHandlerCPF(void); extern void DMA1_Stream1_IRQHandlerCPF(void); /* USER CODE END PFP */ 2. Add to DMA1_stream0_IRQHandler /** * @brief This function handles DMA1 stream0 global interrupt. */ void DMA1_Stream0_IRQHandler(void) { /* USER CODE BEGIN DMA1_Stream0_IRQn 0 */ DMA1_Stream0_IRQHandlerCPF(); /* USER CODE END DMA1_Stream0_IRQn 0 */ /* USER CODE BEGIN DMA1_Stream0_IRQn 1 */ /* USER CODE END DMA1_Stream0_IRQn 1 */ 3. Add to DMA1_Stream1_IRQHandler /** * @brief This function handles DMA1 stream1 global interrupt. */ void DMA1_Stream1_IRQHandler(void) { /* USER CODE BEGIN DMA1_Stream1_IRQn 0 */ DMA1_Stream1_IRQHandlerCPF(); /* USER CODE END DMA1_Stream1_IRQn 0 */ /* USER CODE BEGIN DMA1_Stream1_IRQn 1 */ /* USER CODE END DMA1_Stream1_IRQn 1 */ } 4. Add to USART1_IRQHandler /** * @brief This function handles USART1 global interrupt. */ void USART1_IRQHandler(void) { /* USER CODE BEGIN USART1_IRQn 0 */ USART1_IRQHandlerCPF(); /* USER CODE END USART1_IRQn 0 */ /* USER CODE BEGIN USART1_IRQn 1 */ /* USER CODE END USART1_IRQn 1 */ } 5. Comment out _isatty from syscalls.c in order to use VGDB fast semi-hosting //int _isatty(int file) //{ // return 1; //} 6. Change baud rate in void usart1::MX_USART1_UART_Init(void) USART_InitStruct.BaudRate = 10148;