Best series One suggestion Please create a video on using smart phone display with mipi dsi interface with stm32mp series microcontroller, while choosing the display use cheap mobile brand display ie realme , mi , micromax etc . Display of which is easily available with connector in local market Just imagine 6 inch display with touch and 3 touch button at cost of 10$ in india or else
Thanks for the great video, can you please help me with the following, I am not using a partial buffer in place I am using a Single buffer what should be the changes in the code that are needed to display the output also if you have done any work on GC9a01 it would be of great help. Thank you!
In LCD_IO_WriteMultipleData() of the driver I do not see where spiDmaTransferComplete gets set, so I hang after the HAL_SPI_Transmit_DMA() in the while. Can you advise?
hello sir, I bought the ILI9341 2.4 inch display wrongly without TOUCH IC, If I Buy separately the touch IC xpt2046 and solder in the required place the touch part work, or the screen must have a Touch sensitivity option.
Good video, I'm using the adafruit screen that uses the same ILI9341 chip but with resistive touch screen,x+ x- y+ y-, I can load an image but I can't use the touch screen, could you make a video with the resistive touch screen versions?
You saved me thanks! I hadn´t got DMA FIFO enabled and data transfer was unreliable above 72 MHz HCLK, not sure exactly what FIFO to make it reliable with ILI9341?! I also cannot install TouchGFx on my 32F407VG Discovery board, CubeIDE has it unavailable, but why?!?
Help needed on error Hi, thank you for the video, I have the following error can you please suggest a fix Build started: Project: TUT_TOUCHGFX_ILI9341 *** Target 'TOUCHGFX_ILI9341' uses ARM-Compiler 'Default Compiler Version 5' which is not available. *** Please review the installed ARM Compiler Versions: 'Manage Project Items - Folders/Extensions' to manage ARM Compiler Versions. 'Options for Target - Target' to select an ARM Compiler Version for the target. *** Build aborted. Build Time Elapsed: 00:00:00
@@ControllersTech Thank you very much. Just one question : like you mentioned you need to fix it for the CUBEIDE still, do you have a working library for CUBEIDE already maybe? thank you again.
Great video! Thanks for sharing. Have you tried extending this to multiple displays? Any thoughts or suggestions on how to get it to work on multiple displays? I have tried with an stm32f767 nucleo board but have not had any success.
Would this work for a capacitive touchscreen (different driver)? I have seen an Arduino library for a I2C touch gfx driver I want to convert into STM32...
The buttons are not working to hide nor to show the widget. Is there a code that was missed from getting presented here? Especially in the presenter and view functions? I can confirm the touch driver is working though and I'm using touchgfx v4.20.
@@ControllersTech I checked the comments, but the info is very sketchy. We'd appreciate your clear and unambiguous explanation of this issue. This will make the video complete.
This is Jocelyn from Beijing DWIN Technology in China. adopt DWIN technology's products all of the world.We can provide which meet customer's requirements.
@@ControllersTech sorry my question is really bad. I mean when the display is already on the board, like in the other video of this series how is connected (mipi dsi, spi or other)? Because i would like to use a 7" display but the dev boatd has max 4". The only solution is to use it with spi connection like you do in this video? Thanks
Yes i guess they use the DSI with LTDC. You can check STM32 reference manual for more details. I never bothered to find out since they come preconnected with the board. Your question on which would be better? I guess HMI displays are easier since they only use uart to communicate. You can also try SPI as there is less wiring invovled. But if you want to build a custom board with display integrated, then yes it's much better to go for DSI. Check the stm32 reference manual once..
In code file ili9341.c, in function void ILI9341_EndOfDrawBitmap(void) the function contents are defined in 0, essentially there is nothing in that function. So how does HAL_SPI_TxCpltCallback function know that drawing is complete? void HAL_SPI_TxCpltCallback(SPI_HandleTypeDef *hspi) { if (hspi->Instance == SPI1) { ILI9341_EndOfDrawBitmap(); isTransmittingData = 0; DisplayDriver_TransferCompleteCallback(); } }
It does work. Actually someone was trying to post the comment on "how to make it work with cubeIDE", but youtube removed that comment or maybe that person removed himself..
@@guumballl i think no . there wasnt. when i switched to parallel interface changed many things. debug it if you have debugger. does ili9341 library work by it self? try draw something on screen before MX_TouchGFX_Process(); in while loop.
@@ControllersTech Haha yeah you are right, ill eat my words there and that's my bad. My team and I have to make a hi resolution digital audio player and we have been programming the LCD with a discovery board that already has an LCD embedded in it and it does not work with that. I ordered a nucleo and a discovery with no LCD on them and it works perfectly fine. Thanks for the content! You can use Cube to do this now by the way. The only issue that I am having is that my buttons are constantly acting like they are being touched even though they are not.
Hello, please tell me why I get an errror GFX_ILI9341\GFX_ILI9341.axf: error: L6050U: The code size of this image (91484 bytes) exceeds the maximum allowed for this version of the linker. Thank you
Many thanks for this tutorials!
I was waiting a video on this topic for a long time...thanks
Best series
One suggestion
Please create a video on using smart phone display with mipi dsi interface with stm32mp series microcontroller, while choosing the display use cheap mobile brand display ie realme , mi , micromax etc . Display of which is easily available with connector in local market
Just imagine 6 inch display with touch and 3 touch button at cost of 10$ in india or else
Hello. Great video. Is it possible to add the use of an OS to this project, as in your subsequent videos (for example, in #. 4).
Thanks for the great video, can you please help me with the following, I am not using a partial buffer in place I am using a Single buffer what should be the changes in the code that are needed to display the output also if you have done any work on GC9a01 it would be of great help. Thank you!
Excellent and inspiring. Thanks for sharing. Cheers.
Thanks for the video! Could you make a video about progress bar w/ AD read?
Yes i will do that. But it will take time as I am very busy at the moment
In LCD_IO_WriteMultipleData() of the driver I do not see where spiDmaTransferComplete gets set, so I hang after the HAL_SPI_Transmit_DMA() in the while. Can you advise?
Please please add this for parallel displays, great work as always!!
Lvgl is better for parallel displays. I will make one tutorial for it.
@@ControllersTech nice to see Lvgl at next tutorial! Thank you
@@ControllersTech thanks!!
@@ControllersTech i want TouchGFX with fsmc please
@@gungo2293 touchgfx with fmc would be great indeed.
hello sir, I bought the ILI9341 2.4 inch display wrongly without TOUCH IC, If I Buy separately the touch IC xpt2046 and solder in the required place the touch part work, or the screen must have a Touch sensitivity option.
Good video, I'm using the adafruit screen that uses the same ILI9341 chip but with resistive touch screen,x+ x- y+ y-, I can load an image but I can't use the touch screen, could you make a video with the resistive touch screen versions?
You saved me thanks! I hadn´t got DMA FIFO enabled and data transfer was unreliable above 72 MHz HCLK, not sure exactly what FIFO to make it reliable with ILI9341?! I also cannot install TouchGFx on my 32F407VG Discovery board, CubeIDE has it unavailable, but why?!?
I can't find the HAL_TIM_PeriodElapsedCallback() function in TuchGFX(4.24.1)
Thanks for the great video. May I know if you successfully running touchgfx with ILI9488 SPI driver?
Help needed on error
Hi, thank you for the video,
I have the following error can you please suggest a fix
Build started: Project: TUT_TOUCHGFX_ILI9341
*** Target 'TOUCHGFX_ILI9341' uses ARM-Compiler 'Default Compiler Version 5' which is not available.
*** Please review the installed ARM Compiler Versions:
'Manage Project Items - Folders/Extensions' to manage ARM Compiler Versions.
'Options for Target - Target' to select an ARM Compiler Version for the target.
*** Build aborted.
Build Time Elapsed: 00:00:00
You need to use uV5.
@@ControllersTech Thank you very much. Just one question : like you mentioned you need to fix it for the CUBEIDE still, do you have a working library for CUBEIDE already maybe? thank you again.
@@nithishsundar5818 if you use the most modern version of cube and touchgfx it works
Great video! Thanks for sharing. Have you tried extending this to multiple displays? Any thoughts or suggestions on how to get it to work on multiple displays? I have tried with an stm32f767 nucleo board but have not had any success.
Hi Mike,
Were you able to solve the issue?
Hi @@ergestbeshaj9750 - I was not able to solve the issue with SPI... There was a bottleneck somewhere slowing it down..
Would this work for a capacitive touchscreen (different driver)? I have seen an Arduino library for a I2C touch gfx driver I want to convert into STM32...
HI will this work on cubeide now or i hve to make any change
The buttons are not working to hide nor to show the widget. Is there a code that was missed from getting presented here? Especially in the presenter and view functions? I can confirm the touch driver is working though and I'm using touchgfx v4.20.
Yes you must have missed something.
Great video as always. Please advise when the STM32CubeIDE fixes will be available. Thank you
You can use it in the cubeIDE. A lot of viewers have done that. Check out the comments.
@@ControllersTech I checked the comments, but the info is very sketchy. We'd appreciate your clear and unambiguous explanation of this issue. This will make the video complete.
Just do the exact same thing on the most modern version of cube and touchgfx it works
Hello. works xpt2046 mirror. can you help me?
how to get so responsive like this one ?
Thank you for sharing this useful video. I want to configure Partial Frame Buffer with LTDC and not with SPI LCD. Can you guide me?
Why not directly use the touchgfx ?
Hii can you Please explain mx_touchgfx_process() actually work backend how the data goes from touchgfx to display
Watch further videos in this playlist
Hey, can you share how/where you synthesized the voice for the video? Many thanks in advance.
It's amazon polly
@@ControllersTech thanks a bunch man
Thanks for sharing. It is best
Awesome work !!
Thanks! Excellent!
Awesome 🔥
Please make video on modbus
This is Jocelyn from Beijing DWIN Technology in China. adopt DWIN technology's products all of the world.We can provide which meet customer's requirements.
it works well with 2.8inch TFT. but it doesn't work with 2.4inch TFT screen.
Can you help me?
I have mnetioned in the video, you need to find a proper driver for your display first.
First of all thank you so much, I think i can do the same for stm32f103c8t6 microcontroller
103c8 doesn't have enough memory. Alsobit does not support touchgfx i guess.
@@ControllersTech Thank you for your suggestion, I will try it and let you know the results
i am using stm32f407ve but not getting display, will you help me?
Made it work with this video, all working 407vet6 SPI
The display that you use in other video how is connected?
Which video ?
@@ControllersTech sorry my question is really bad. I mean when the display is already on the board, like in the other video of this series how is connected (mipi dsi, spi or other)? Because i would like to use a 7" display but the dev boatd has max 4". The only solution is to use it with spi connection like you do in this video?
Thanks
Yes i guess they use the DSI with LTDC. You can check STM32 reference manual for more details. I never bothered to find out since they come preconnected with the board.
Your question on which would be better?
I guess HMI displays are easier since they only use uart to communicate.
You can also try SPI as there is less wiring invovled.
But if you want to build a custom board with display integrated, then yes it's much better to go for DSI. Check the stm32 reference manual once..
Я искал медь, а нашёл золото!
Thanks you!
Can we use the same spi for touch and LCD ?
Touch works with interrupt.
thanks
And make for parallel 8 bit and 16bit interface
In code file ili9341.c, in function
void ILI9341_EndOfDrawBitmap(void)
the function contents are defined in 0, essentially there is nothing in that function.
So how does HAL_SPI_TxCpltCallback function know that drawing is complete?
void HAL_SPI_TxCpltCallback(SPI_HandleTypeDef *hspi)
{
if (hspi->Instance == SPI1) {
ILI9341_EndOfDrawBitmap();
isTransmittingData = 0;
DisplayDriver_TransferCompleteCallback();
}
}
Nice video. Please use your own voice in the future
Any chance of getting this to work on STN32CubeIDE?
It does work. Actually someone was trying to post the comment on "how to make it work with cubeIDE", but youtube removed that comment or maybe that person removed himself..
Made it with Cube IDE there wasnt problems .
thanks for the vid. didnt work for me :(. Am using F411CEU6. 0 error 0 warning on cubeIDE. chked all wiring but still getting blank (white ) screen..
@@gungo2293 did u make any adjustments not shown in this video to make it work?
@@guumballl i think no . there wasnt. when i switched to parallel interface changed many things.
debug it if you have debugger. does ili9341 library work by it self? try draw something on screen before MX_TouchGFX_Process(); in while loop.
Very useful
excellent
Naturally this doesn't work anymore.
Oh it works just fine.
@@ControllersTech Haha yeah you are right, ill eat my words there and that's my bad. My team and I have to make a hi resolution digital audio player and we have been programming the LCD with a discovery board that already has an LCD embedded in it and it does not work with that. I ordered a nucleo and a discovery with no LCD on them and it works perfectly fine. Thanks for the content! You can use Cube to do this now by the way. The only issue that I am having is that my buttons are constantly acting like they are being touched even though they are not.
Hello, please tell me why I get an errror GFX_ILI9341\GFX_ILI9341.axf: error: L6050U: The code size of this image (91484 bytes) exceeds the maximum allowed for this version of the linker. Thank you
Keil ?
@@ControllersTech yes
You need the licensed version i guess.
we can also use stm32f103c8t6??