Hello.
I'm looking for ability to speed up connection between nano and display. By now I'm using LCDWIKI library and get slow refreshing rate which eliminating to use this configuration.
Display works as on vid:
Is there any ability to make display usable with nano 3.0 or I need to use some other CPU's ? (with HW SPI or else) ?
Shift level resistors - 10kOhms.
I see there is a driver library for ili9341 and STM32F103C8T6 ...
Can i use this libs for run this lcds with touch screens ? (i need touch for my works)
I have always assumed that Marek Buriak came from Poland. But he might live in Ireland.
Incidentally, ILI9341_due runs on both Uno and Due. Obviously the faster performance comes with the Due.
I suggest that you run all the examples that come with each library.
See what they can do.
Write your own project that uses one of theses proven libraries.
From memory, they both use conventional GFX graphics but have more advanced text handling.
You can port most GFX-style projects fairly easily.
The Porting process will give you good experience in using libraries.
I suggest that you don't worry about how these libraries work until you have experience and confidence in just using them.
By all means study their source codes. And ask questions. But only when you have experience in their use.
Actually, the ILI9341 controller is pretty easy to use. e.g. write commands to control registers, write pixel data.
However the AVR Nano can only handle this sequentially (and at limited speed).
ARM and ESP can write using DMA (and as fast as the ILI9341 can receive). And process your application logic at the same time.
Sometimes we resort to small-format plates, thinking of a minimalist project. It is also true that the cost and immediate availability, leads us to get what we have at hand.
But when it comes to putting the pieces together and seeing the result, we inevitably look for a little more performance and we have to rethink everything again. We repeat the process ... but this time thinking about whether a library will help us see what we want.
MCU AVRs are very good to learn, but when it comes to getting serious, if we don't master their secrets, we get stuck and look at ARM in some of its flavors.
If you are looking for minimalism and speed, from my point of view there are teensy 4, teensy 4.1, and some STM32: F407, F429, F746 or F767
With AVR and with optimizations in the library you will not see more speed than the one proposed in the optimized libraries suggested here.
Thank You guys for great replying.
I've took nano because project is minimalistic. I need to prepare ozone generator countdown timer. To do it I don't need to use platform as arm64 which is in my scope too (Jetson nano). I need intuitive controlling panel for working time of some devices as pumps, generators or fan. That's it without any fireworks.
The library should be giving much better performance than that with a Nano. If you run the graphics test the results should be similar to column 3 for an ILI9341 display.
Guys.
I'm using div 2 for clock divider so maybe there is some other parameter to change to speed it up. I don't know.
I've started with wrong tutorial to connect ili9341 to nano 3.0.
Take a look at https://mytectutor.com/2-4-ili9341-tft-touch-screen-with-arduino/ . It was as stick in wheel !!!!
On this page is recomended to use 10KOhms resistors for shift lever from 5V to 3.3V. Hm it doesn't do it and Nano is working with ili9341 on 5V signals level ! Everything works fine correctly to set up SPI on 3.999.999 Hz clock for SPI as highest value. Over this value (using 10KOhms resistor without drop down line to GND over 1k2 resistor) I was not able to use DIV4 or DIV2 parameter in Clock divider for SPI. Because of overvoltage on signals ?
Sorry for indolence in this case : when I've measured voltage using 10KOhms resistor I've got 5V. Normal state. There is no dividing !!!!! Kirchoff's rules broken.
Question is : ILI9341 is able to work with 5V signal level but on low SPI conection speed ?
Cbm80amiga library I have found counterdown timer almost fully suitable for my purpose LowPower Arduino Countdown Timer with HX1230 LCD - YouTube. I would like to implement it on ILI9431.
About ILI9341_due library. I can not find it on Platformio repositories for libraries. By now I'm not fluent wih Platformio. Maybe it is good to implement this library on Platformio beside of Arduino IDE ?
About Bodmar libraries : can I get links to full documentation of functions (with some examples if it is possible) ?
About meters example, it runs on my nano : Meters by Bodmer library ILI9341 with atmega 328p (Nano 3.0) - YouTube
If you go the minimalist way I think of two suggestions, the teensy 4.1 is 3.3 V you just have to connect your ILI9341 directly, if the nano is still in your mind despite its speed, build the voltage dividers with SMD resistors:
for as simple as it can to write code (and squeeze all inside small atmega328p memory).
Code is here :
How it works :
I have question
how can I minimize flickering mostly on set up time menu ?
I was not digging so deeply into Bodmer library so maybe You have suggestions for me ?
It is still evaluation version of this timer, I have o implement + - buttons.
By this I have next one question;
is there any library for inc or dec controlling + button and - button (setting time). Dynamicly changing speed of inc/dec values depends on how long is active state on button ?
Your sincerely
Marek Wojciechowski
Using Superbutton library I can simple operate buttons to receive button's single double or longer state.