Jump to content


Recommended Posts

I am extremely new at setting up uGFX for display, touch and UX.  I am using trueStudio IDE and have a project using a HAl built from STMCube as a starting point.  I have the project building to a point, but not to completion.  

I am confused on how to integrate LCD panel and touch glass using gfxconf.h and include files.

gfxconf.h defs

#define GFX_USE_OS_FREERTOS              GFXON
#define GFX_OS_HEAP_SIZE                      40960
#define GFX_OS_NO_INIT                           GFXON 

#define GFX_USE_GDISP                            GFXON

#define GDISP_NEED_CLIP                        GFXON
#define GDISP_NEED_CIRCLE                   GFXON

#define GDISP_NEED_CONTROL              GFXON
#define GDISP_NEED_TEXT                      GFXON


#define GDISP_TOTAL_DISPLAYS           1

#define GDISP_DRIVER_LIST                    GDISPVMT_STM32LTDC


#define GFX_USE_GWIN                            GFXON

#define GWIN_NEED_WINDOWMANAGER                       GFXON

#define GWIN_NEED_WIDGET                  GFXON

#define GWIN_NEED_BUTTON                 GFXON

#define GFX_USE_GEVENT                       GFXON

#define GFX_USE_GTIMER                        GFXON

#define GFX_USE_GQUEUE                       GFXON

#define GQUEUE_NEED_ASYNC               GFXON

#define GFX_USE_GINPUT                         GFXON

#define GINPUT_NEED_MOUSE                GFXON

I have stm32_ltdc.h in my Inc folder

I have placed in gfx.mk this include -- include $(GFXLIB)/drivers/gdisp/STM32LTDC/driver.mk

I see this build error -- 


uGFX\src\gfx_mk.o: In function `_gdispInit':
C:\Users\fishe\Atollic\TrueSTUDIO\STM32_workspace_9.0\STM32F4\Debug/..\uGFX\src\gdisp/gdisp.c:601: undefined reference to `GDISPVMT_STM32LTDC'
uGFX\src\gfx_mk.o: In function `_gmouseInit':
C:\Users\fishe\Atollic\TrueSTUDIO\STM32_workspace_9.0\STM32F4\Debug/..\uGFX\src\ginput/ginput_mouse.c:669: undefined reference to `GMOUSEVMT_OnlyOne'


I'm in the process of paying for a commercial license and support.  

Any help u can give me would be greatly appreciated.

Edited by Joel Bodenmann
Adding code boxes

Share this post

Link to post
Share on other sites

Hello and welcome to the µGFX community!

Did you check out the Eclipse guide in the wiki (and/or the guides for the various eclipse based IDEs)?

P.S. Next time please use code boxes in your post (I've added them).

Share this post

Link to post
Share on other sites

Please carefully read the guide suggested above. It will explain a lot.

The first error is caused by adding the GDISP_TOTAL_DISPLAYS and the GDISP_DRIVER_LIST settings in your gfxconf.h. These lines are for multiple display support and are not needed for a single display. Instead the correct driver is managed using the compiler include path and the link script as per the above guide.

The second error is caused by not including a mouse/touch driver. Either include a driver or remove the GINPUT_NEED_MOUSE setting and optionally the GFX_USE_GINPUT setting from your gfxconf.h file.

Share this post

Link to post
Share on other sites

Thanks for the quick response.  Will use code boxes for future support questions.  

I did check out and read and followed the Eclipse guide.  Found some of these setup parameters in the GTXConf file confusing with no prior background with this tool set.

Share this post

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...