cancel
Showing results for 
Search instead for 
Did you mean: 

BSP_TS_Init and BSP_TS_GetState are not recognized by IDE

ValterMatos
Associate III

Question moved from this thread.

+ Post edited by ST moderator to be inline with the community rules for the code sharing. In next time please use </> button to paste your code and a linker script content. Please read this post: How to insert source code.

One more question, if you can help.

BSP_TS_GetState(& osc->touchScreen);

BSP_TS_Init(ILI9488_TFTHEIGHT, ILI9488_TFTWIDTH);


BSP_TS_Init and BSP_TS_GetState are not recognized by IDE versions 1.19 and 1.20.

I have to disable them to compile, so the TOUCH doesn't work.

C:/Users/Valter/STM32CubeIDE/workspace_1.19.0/Oscillo_STM32G431CBU/Debug/../Core/Src/oscilloscope.c:48:(.text.oscilloscopeInit+0x138): undefined reference to `BSP_TS_Init'


C:/Users/Valter/STM32CubeIDE/workspace_1.19.0/Oscillo_STM32G431CBU/Debug/../Core/Src/oscilloscope.c:231:(.text.serveTouchScreen+0x10): undefined reference to `BSP_TS_GetState'

I have never used this command before.

Thanks

2 REPLIES 2
Ozone
Principal III

> (.text.oscilloscopeInit+0x138): undefined reference to `BSP_TS_Init'

This basically means this function - and the source file implementing it - are not part of the project. Either as source or as link library.

> BSP_TS_Init(ILI9488_TFTHEIGHT, ILI9488_TFTWIDTH);
> BSP_TS_Init and BSP_TS_GetState are not recognized by IDE versions 1.19 and 1.20.

> I have to disable them to compile, so the TOUCH doesn't work.

As I understand it, you cannot get touch functionality to work, or do no want to.
However, functions like BSP_TS_GetState() (and probably others) call those functions.

You can functionally disable them by providing an empty dummy implementation that satisfies the linker, and the API of said functions.


I would suppose there are configuration options in TouchGfx for this.
But this is a package I'm not familiar with.

Good morning.
The "ILI9488.c" file was modified to avoid the display flickering effect by storing the image in a buffer and using this image in the CLEAR DISPLAY function, greatly increasing RAM usage.
It was an interesting alternative, but with high RAM consumption.
"BSP_TS_Init" and "BSP_TS_GetState" were also used, which require the "stm32_adafruit_ts.c" file.
I managed to modify "ILI9488.c" and the "stm32_adafruit_ts.c" file.
Now the code is working with only a slight flickering without altering the necessary basic functions.
Thank you all for your help.