Dear Matrix team,
Further to my previous post titled ‘GLCD ILI9341 component not working correctly in FC 10 - Part 1' have attached the flowcode V8 and V10 files I used to demonstrate the problem that I am experiencing. Also, for additional info. I attach the user manual of the ILI9341 display hardware.
Kind regards
Martin
GLCD ILI9341 component not working correctly in FC 10 - Part 2
-
- Posts: 8
- http://meble-kuchenne.info.pl
- Joined: Wed Dec 02, 2020 9:53 pm
- Has thanked: 3 times
- Been thanked: 7 times
GLCD ILI9341 component not working correctly in FC 10 - Part 2
- Attachments
-
- 3.2inch_SPI_Module_MSP3218_User_Manual_EN.pdf
- (994.5 KiB) Downloaded 142 times
-
- HelloWorld FCV10 ILI9341.fcfx
- (17.46 KiB) Downloaded 145 times
-
- HelloWorld FCV8 ILI9341.fcfx
- (11.04 KiB) Downloaded 138 times
-
- Matrix Staff
- Posts: 1964
- Joined: Wed Dec 02, 2020 11:07 pm
- Has thanked: 629 times
- Been thanked: 659 times
Re: GLCD ILI9341 component not working correctly in FC 10 - Part 2
Hi
An update.
This component is going to be updated tomorrow with some changes and fix as I am able to replicate the issue.
The changes are related to automatically assigning unused pins.
An update.
This component is going to be updated tomorrow with some changes and fix as I am able to replicate the issue.
The changes are related to automatically assigning unused pins.
Martin
-
- Matrix Staff
- Posts: 1964
- Joined: Wed Dec 02, 2020 11:07 pm
- Has thanked: 629 times
- Been thanked: 659 times
Re: GLCD ILI9341 component not working correctly in FC 10 - Part 2
Can you try the attached and see if it works better for you.
If it does the it will be added to the component database.
Browse to this location using file explorer , it's hidden by default so just paste the link into your address bar.
Place the attached component.
If Flowcode is already open, then you will need to reload your project for the new component to work
If you run any component updates, then the component you added will be overwritten, so it will stop working again (unless the component update has been pushed).
If it does the it will be added to the component database.
Browse to this location using file explorer , it's hidden by default so just paste the link into your address bar.
Code: Select all
%ProgramData%\MatrixTSL\FlowcodeV10\Components
If Flowcode is already open, then you will need to reload your project for the new component to work
If you run any component updates, then the component you added will be overwritten, so it will stop working again (unless the component update has been pushed).
- Attachments
-
- gLCD_ILI9341_SPI.fcpx
- (19.58 KiB) Downloaded 199 times
Martin
-
- Posts: 797
- Joined: Thu Dec 03, 2020 8:25 pm
- Location: Denmark
- Has thanked: 686 times
- Been thanked: 177 times
Re: GLCD ILI9341 component not working correctly in FC 10 - Part 2
Hi Martin!
You deserve an answer , I made a setup and test;)
Your new SPI component work with an arduino now. But I have in proporties to choose Software instead of CH1 otherwice nothing in the display.
But slow display, have always been with Arduino
Br Jorgen
You deserve an answer , I made a setup and test;)
Your new SPI component work with an arduino now. But I have in proporties to choose Software instead of CH1 otherwice nothing in the display.
But slow display, have always been with Arduino

Br Jorgen
- Attachments
-
- HelloWorld FCV10 ILI9341.fcfx
- (17.44 KiB) Downloaded 112 times
-
- Matrix Staff
- Posts: 1964
- Joined: Wed Dec 02, 2020 11:07 pm
- Has thanked: 629 times
- Been thanked: 659 times
Re: GLCD ILI9341 component not working correctly in FC 10 - Part 2
Hi Jorgen.
Thank you for your update.
The gLCD_ILI9341_SPI component I posted should work with SPI channel on Uno, but it is going to be restricted when compared to ESP32.
If you want me to look at your project then I can see if I can get it working on my hardware.
Its important to note that data pins of the gLCD are 3V3 tolerant.
What I do is use 10K pullups to 3V3 then use Schottky diodes to allow microcontroller to pull the pins to 0.2V
Cathode of diode connects to the data pin of microcontroller. Anode to 10K pullup and data pin of the graphical display.
Then you can connect the display either to esp32 or Uno/PIC etc. that have 5v pins.
Thank you for your update.
The gLCD_ILI9341_SPI component I posted should work with SPI channel on Uno, but it is going to be restricted when compared to ESP32.
If you want me to look at your project then I can see if I can get it working on my hardware.
Its important to note that data pins of the gLCD are 3V3 tolerant.
What I do is use 10K pullups to 3V3 then use Schottky diodes to allow microcontroller to pull the pins to 0.2V
Cathode of diode connects to the data pin of microcontroller. Anode to 10K pullup and data pin of the graphical display.
Then you can connect the display either to esp32 or Uno/PIC etc. that have 5v pins.
Martin
-
- Posts: 797
- Joined: Thu Dec 03, 2020 8:25 pm
- Location: Denmark
- Has thanked: 686 times
- Been thanked: 177 times
Re: GLCD ILI9341 component not working correctly in FC 10 - Part 2
Hi again!
Yes I am aware of the display datapin max. can handle 3,3V. I am using some leveshifter, but anyway, thanks for your tip
I will test.
The testprogam is arix´s program with an Uno, normally I use the ESP when use the ILI display, much faster
I would only be helpfull and test your new update, and as mentiod, with the new update component the display work fine with the Uno but only in softwaremode, but not if I use Ch1 or Ch2 and the display is very slow, have always been.
Hope my explanation make sense Martin (my english is not 100%
), and if I can do something let me know
Br Jorgen
Yes I am aware of the display datapin max. can handle 3,3V. I am using some leveshifter, but anyway, thanks for your tip

The testprogam is arix´s program with an Uno, normally I use the ESP when use the ILI display, much faster

I would only be helpfull and test your new update, and as mentiod, with the new update component the display work fine with the Uno but only in softwaremode, but not if I use Ch1 or Ch2 and the display is very slow, have always been.
Hope my explanation make sense Martin (my english is not 100%


Br Jorgen
- Attachments
-
- levelshifter.png (191.54 KiB) Viewed 6728 times
Re: GLCD ILI9341 component not working correctly in FC 10 - Part 2
Dear Jorgen,
Thank you for following up on this topic. After my first post I became locked out of my forum account and could not post an update. Only today with help from the Matrix team I have been able to log back in. However, I did send Martin (medelec35) an email with my findings which are copied below.
“I tried the revised gLCD_ILI9341_SPI.fcpx component and I now have the 'Hello World' text displayed on my LCD screen. However on my hardware the 'Hello World' text appears to flicker with each cycle of the loop. This does not happen with the program created in FC V8 using the same hardware.
If I compare the two versions of my example flowchart using the debug single step simulation, I can see that as the rectangle outline (that precedes the 'Hello World' text) is drawn, it blanks out the text until the next Print statement which redraws the 'Hello World' text again. This also gives the appearance that the text is flickering in the simulation. Oddly, the same effect is present in both FC V10 and V8 during simulation, but it is not present on the hardware when running the V8 program.”
On my Uno (clone) the new component works both on Channel 1 and Software although as I stated above, the operation of the display differs between Flowcode 10 and Flowcode 8.
My use case is a 6 channel thermocouple temperature logger that I am building to monitor tempertures in my reflow oven. I started the project in flowcode V8 and I thought it would make good test project for evaluating Flowcode 10.
I only used the Uno because I had it spare lying round and I agree it is not very fast, but it is sufficient for this particular project.
The reason I am interested in getting ILI9341 display component to work is that I purchased a few for future projects and it would good to be able use them with Flowcode 10.
I like the ability in FC 10 to easily select different fonts and they look nice on these relatively inexpensive displays.
Kind regards
Martin
Thank you for following up on this topic. After my first post I became locked out of my forum account and could not post an update. Only today with help from the Matrix team I have been able to log back in. However, I did send Martin (medelec35) an email with my findings which are copied below.
“I tried the revised gLCD_ILI9341_SPI.fcpx component and I now have the 'Hello World' text displayed on my LCD screen. However on my hardware the 'Hello World' text appears to flicker with each cycle of the loop. This does not happen with the program created in FC V8 using the same hardware.
If I compare the two versions of my example flowchart using the debug single step simulation, I can see that as the rectangle outline (that precedes the 'Hello World' text) is drawn, it blanks out the text until the next Print statement which redraws the 'Hello World' text again. This also gives the appearance that the text is flickering in the simulation. Oddly, the same effect is present in both FC V10 and V8 during simulation, but it is not present on the hardware when running the V8 program.”
On my Uno (clone) the new component works both on Channel 1 and Software although as I stated above, the operation of the display differs between Flowcode 10 and Flowcode 8.
My use case is a 6 channel thermocouple temperature logger that I am building to monitor tempertures in my reflow oven. I started the project in flowcode V8 and I thought it would make good test project for evaluating Flowcode 10.
I only used the Uno because I had it spare lying round and I agree it is not very fast, but it is sufficient for this particular project.
The reason I am interested in getting ILI9341 display component to work is that I purchased a few for future projects and it would good to be able use them with Flowcode 10.
I like the ability in FC 10 to easily select different fonts and they look nice on these relatively inexpensive displays.
Kind regards
Martin
-
- Posts: 797
- Joined: Thu Dec 03, 2020 8:25 pm
- Location: Denmark
- Has thanked: 686 times
- Been thanked: 177 times
Re: GLCD ILI9341 component not working correctly in FC 10 - Part 2
Hi Martin & Martin!
Strange. To be sure I perform a test again with CH1, not working, only in software?
I have no flickering or other problem either in simulation or "in real world", apart it is very slowly
I gues Martin (medelec) will have a look tomorrow, at least he now have some further information. I att. my latest test, with green bagground.
I see your point you have some Uno, but I recommend the ESP32, much faster update in the display like a flash, and you can directly connect the display to the ESP without divider. I have my standard master I use for fast SPI when I made a new project, I will share if you want.
I let my setup waiting a while, let me know if I can help or we could compare.
Could be Martin could speed the Uno a bit up, he is one of the masters
Jorgen
Strange. To be sure I perform a test again with CH1, not working, only in software?
I have no flickering or other problem either in simulation or "in real world", apart it is very slowly

I gues Martin (medelec) will have a look tomorrow, at least he now have some further information. I att. my latest test, with green bagground.
I see your point you have some Uno, but I recommend the ESP32, much faster update in the display like a flash, and you can directly connect the display to the ESP without divider. I have my standard master I use for fast SPI when I made a new project, I will share if you want.
I let my setup waiting a while, let me know if I can help or we could compare.

Could be Martin could speed the Uno a bit up, he is one of the masters

Jorgen
- Attachments
-
- HelloWorld FCV10 ILI9341.fcfx
- (17.44 KiB) Downloaded 108 times
-
- Matrix Staff
- Posts: 1964
- Joined: Wed Dec 02, 2020 11:07 pm
- Has thanked: 629 times
- Been thanked: 659 times
Re: GLCD ILI9341 component not working correctly in FC 10 - Part 2
Hi Martin & Jorgen.
I have just tried the project you attached and it works OK on the Uno with SPI set for Channel 1.
I have modified the project for my hardware and to stop hello world text from flashing, which is expected the way it was set up.
With Channel 1 selected within your project to check SPI is the same as my settings, try this.
View menu then select Component debugger.
Select Expose full component tree in property pane.
You can close the Component debugger.
Within Properties scroll down to cal_spi1 (it's a fair way down!)
Check the settings are: If for example Clock Phase is set for leaning edge then the display won't work on the Uno.
Also speed will be an issue for level shifters.
You ideally want the presale as /4.
I'm not sure if your level shifter will work with the SPI speed?
It works in software mode as the speed is a lot slower.
My suggestion, lvl shifts at up to 32 MHz ok as it also works on ESP32, even though its not required.
I'm using eblocks2 so I can plug the gLCD straight into ESP32 or Uno upstream boards without any modifications at all.
If you are interested, I can create a schematic of my setup.
I have just tried the project you attached and it works OK on the Uno with SPI set for Channel 1.
I have modified the project for my hardware and to stop hello world text from flashing, which is expected the way it was set up.
With Channel 1 selected within your project to check SPI is the same as my settings, try this.
View menu then select Component debugger.
Select Expose full component tree in property pane.
You can close the Component debugger.
Within Properties scroll down to cal_spi1 (it's a fair way down!)
Check the settings are: If for example Clock Phase is set for leaning edge then the display won't work on the Uno.
Also speed will be an issue for level shifters.
You ideally want the presale as /4.
I'm not sure if your level shifter will work with the SPI speed?
It works in software mode as the speed is a lot slower.
My suggestion, lvl shifts at up to 32 MHz ok as it also works on ESP32, even though its not required.
I'm using eblocks2 so I can plug the gLCD straight into ESP32 or Uno upstream boards without any modifications at all.
If you are interested, I can create a schematic of my setup.
- Attachments
-
- HelloWorld FCV10 ILI9341 Uno.fcfx
- (17.39 KiB) Downloaded 114 times
Martin