cancel
Showing results for 
Search instead for 
Did you mean: 

Actual Hardware Requirements for custom touchgfx implementation

a.lex
Associate II

Hi together,

I have a tinker board with a STM32F405RG (1024kB Flash 192kB SRAM, no FMC, no DMA2D) and an EADOGXL Display (SPI, 240x128, 4bit Grey).

As of now i've only played with the 'baremetal' data and command to the display.

I am wondering what the actual hw requirements for a custom board in touchgfx are.

Is the DMA2D (ChromART) required?

It says so in the Getting started with cubemx https://touchgfx.zendesk.com/hc/en-us/articles/360020001492-Getting-Started-with-CubeMX-and-TouchGFX

I plan to use a single (or double) frambuffer in internal Memory, as it is a greyscale display with a not to high resolution it should be 240*128*4bit = 15kB of SRAM.

Am I missing something else?

Btw is there any full toturial on how to create your own target/board from scratch?

Thanks in advance

1 ACCEPTED SOLUTION

Accepted Solutions
Martin KJELDSEN
Chief III

Hi @a.lex​,

Actually, you do not need much to run TouchGFX. If we take something simple and low cost to exemplify you could run TouchGFX on a G0 in internal RAM using a partial framebuffer strategy displaying on a SPI display.

You do not need DMA2D.

You do not need external RAM.

You do not need external FLASH.

But, you need to tailor your hardware to your UI requirements, of course. E.g.

  • You cannot hold a large number of full screen 24bpp images in internal flash.
  • You cannot have complex animations on a G0 running out of a small portion of internal ram because you're trying to save $$$.
  • Etc!

/Martin

View solution in original post

3 REPLIES 3
Martin KJELDSEN
Chief III

Hi @a.lex​,

Actually, you do not need much to run TouchGFX. If we take something simple and low cost to exemplify you could run TouchGFX on a G0 in internal RAM using a partial framebuffer strategy displaying on a SPI display.

You do not need DMA2D.

You do not need external RAM.

You do not need external FLASH.

But, you need to tailor your hardware to your UI requirements, of course. E.g.

  • You cannot hold a large number of full screen 24bpp images in internal flash.
  • You cannot have complex animations on a G0 running out of a small portion of internal ram because you're trying to save $$$.
  • Etc!

/Martin

a.lex
Associate II

Hi Martin,

Thank you very much, this is enough for me to give it a try.

I think initially configuring it via cube mx (as my mcu does not have an dma2d) is not possible, so I will start from scratch.

Is there a minimalist example available? Like only rendering into a small frame buffer on the chip?

Br,

Alex

Martin KJELDSEN
Chief III

I guess there's not something like you're describing - It's quite sad that CubeMX has these restrictions today so that you can only use TouchGFX with an LTDC/DSI/SDRAM/QSPI because that's what most of the the stm32 based boards were supporting when the integration was first started - To sort of lock in the combinations of IPS that were known to be "good".

We're working on something that will allow you to do just what you're describing. For any MCU, simply enable TouchGFX and render frames into some memory (But allows you to do much more complex things of course). It won't be ready until end 2019

Most of our application templates are made like that - from scratch, not using CubeMX (but CubeFW), so check those out and let me know if that can give yuo some inspiration.

/Martin