Error generating code using TouchGFX and Riverdi RVT70HSSFWCA0 display board
Hello, I am attempting to follow the tutorial listed here in order to generate a simple screen with some widgets for a Riverdi RVT70HSSFWCA0 display board. The board is correctly powered and i can access it with an external ST-LINK.
However, when attempting to generate code with TouchGFX Designer (4.23.0) i am getting the following error in class DoubleBufferedVideoController during project compilation:
C:/TouchGFXProjects/riverdi7-0001/CM7/TouchGFX/target/generated/TouchGFXGeneratedHAL.cpp:36:70: error: cannot declare variable '{anonymous}::videoController' to be of abstract type 'DoubleBufferedVideoController<1, 800, 480, 2400, touchgfx::Bitmap::RGB888>'
36 | DoubleBufferedVideoController<1, 800, 480, 800 * 3U, Bitmap::RGB888> videoController;
| ^~~~~~~~~~~~~~~
In file included from C:/TouchGFXProjects/riverdi7-0001/CM7/TouchGFX/target/generated/TouchGFXGeneratedHAL.cpp:27:
../../../CM7/TouchGFX/target/generated/DoubleBufferedVideoController.hpp:49:7: note: because the following virtual functions are pure within 'DoubleBufferedVideoController<1, 800, 480, 2400, touchgfx::Bitmap::RGB888>':
49 | class DoubleBufferedVideoController : public touchgfx::VideoController
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../../../CM7/TouchGFX/target/generated/MJPEGDecoder.hpp:22,
from ../../../CM7/TouchGFX/target/generated/HardwareMJPEGDecoder.hpp:21,
from C:/TouchGFXProjects/riverdi7-0001/CM7/TouchGFX/target/generated/TouchGFXGeneratedHAL.cpp:26:
../../CM7/../../CM7/Middlewares/ST/touchgfx/framework/include/touchgfx/hal/VideoController.hpp:219:18: note: 'virtual void touchgfx::VideoController::setVideoFrameRateCompensation(bool)'
219 | virtual void setVideoFrameRateCompensation(bool allow) = 0;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arm-none-eabi-gcc "C:/TouchGFXProjects/riverdi7-0001/CM7/FATFS/Target/fatfs_platform.c" -mcpu=cortex-m7 -std=gnu11 -g3 -DDEBUG -DCORE_CM7 -DUSE_HAL_DRIVER -DSTM32H747xx -c -I../../../CM7/Core/Inc -I../../../CM7/FATFS/Target -I../../../CM7/FATFS/App -I../../../CM7/TouchGFX/App -I../../../CM7/TouchGFX/target/generated -I../../../CM7/TouchGFX/target -I../../../Drivers/STM32H7xx_HAL_Driver/Inc -I../../../Drivers/STM32H7xx_HAL_Driver/Inc/Legacy -I../../../Utilities/JPEG -I../../../Middlewares/Third_Party/FatFs/src -I../../../Middlewares/Third_Party/FreeRTOS/Source/include -I../../../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I../../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -I../../../Drivers/CMSIS/Device/ST/STM32H7xx/Include -I../../../Drivers/CMSIS/Include -I../../CM7/../../CM7/Middlewares/ST/touchgfx/framework/include -I../../CM7/../../CM7/TouchGFX/generated/fonts/include -I../../CM7/../../CM7/TouchGFX/generated/gui_generated/include -I../../CM7/../../CM7/TouchGFX/generated/images/include -I../../CM7/../../CM7/TouchGFX/generated/texts/include -I../../CM7/../../CM7/TouchGFX/generated/videos/include -I../../CM7/../../CM7/TouchGFX/gui/include -I../../../CM7/USB_HOST/App -I../../../CM7/USB_HOST/Target -I../../../Middlewares/ST/STM32_USB_Host_Library/Core/Inc -I../../../Middlewares/ST/STM32_USB_Host_Library/Class/MSC/Inc -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Application/User/FATFS/Target/fatfs_platform.d" -MT"Application/User/FATFS/Target/fatfs_platform.o" --specs=nano.specs -mfpu=fpv5-d16 -mfloat-abi=hard -mthumb -o "Application/User/FATFS/Target/fatfs_platform.o"
make[1]: *** [Application/User/TouchGFX/target/generated/subdir.mk:39: Application/User/TouchGFX/target/generated/TouchGFXGeneratedHAL.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [makefile:102: all] Error 2
"make -j8 all" terminated with exit code 2. Build might be incomplete.
17:47:50 Build Failed. 4 errors, 0 warnings. (took 21s.660ms)
Which seems to be from this snippet in file TouchGFXGeneratedHAL.cpp:
namespace
{
LOCATION_PRAGMA_NOLOAD("Video_RGB_Buffer")
uint32_t videoRGBBuffer[576000] LOCATION_ATTRIBUTE_NOLOAD("Video_RGB_Buffer");
DoubleBufferedVideoController<1, 800, 480, 800 * 3U, Bitmap::RGB888> videoController;
}
- This also happens after importing it to STM32CubeIDE (1.14.0) and attempting to build from the IDE directly.
- For further context, this also occurs even when attempting to generate am empty project with no images & widgets.
- I have ensured Visual Studio Redistributable 2015-2022 is already installed.
Any tips on what could be causing this issue?

