![]() |
Forum Index : Microcontroller and PC projects : Forget the ILI9488, The ST7796S is the new kid in town
![]() ![]() |
|||||
Author | Message | ||||
disco4now![]() Guru ![]() Joined: 18/12/2014 Location: AustraliaPosts: 983 |
The printout results should match below. The print hex$(pixel(1,1)) are giving incorrect results, one of the symptoms of it not working 100% even if screen output looks OK. Do you see D1 on your board? st7796S Test F80000 RED F80000 F80000 FC00 GREEN FC00 FC00 ------------ F8 BLUE F8 F8 F8 F8 BLUE F8 F8 F8 F8 BLUE F8 F8 F8 ---------------- FC00 FC00 FC00 FC00 F8 WRITE TIME: 1.268 F80000 F80000 BLIT TIME: 12.134 CLS TIME: 0.518 Latest F4 Latest H7 FotS |
||||
phil99![]() Guru ![]() Joined: 11/02/2018 Location: AustraliaPosts: 2449 |
Bypassed the diode D1 in the CS line but no change. BLIT and reading a pixel cause the display to freeze, accepts no new data. Interpreter still running but requires 'cpu restart' to get the display to respond. Now here is an odd thing, I think the display memory still takes data but it doesn't always go to the screen. > cpu restart > cls 255 'blue > ? pixel(9,9) 248 > ? pixel(9,9) 248 > ? pixel(19,19) 248 > cls 255<<8 'this normally is green but remains blue > ? pixel(19,19) 1630208 'returns value for green but display is blue > Edited 2025-05-19 16:03 by phil99 |
||||
disco4now![]() Guru ![]() Joined: 18/12/2014 Location: AustraliaPosts: 983 |
Mine works with Peter's latest code,both in landscape and portrait mode. Did you bridge J1 for 3.3v Latest F4 Latest H7 FotS |
||||
phil99![]() Guru ![]() Joined: 11/02/2018 Location: AustraliaPosts: 2449 |
Found the problem, old eyes - diode bypass hadn't stuck at both ends. All good now. PicoMite MMBasic RP2040 Edition V6.00.02RC23 Copyright 2011-2025 Geoff Graham Copyright 2016-2025 Peter Mather > RUN ST7796S Test by disco4now 19-05-2025 F80000 RED F80000 F80000 FC00 GREEN FC00 FC00 ------------ F8 BLUE F8 F8 F8 F8 BLUE F8 F8 F8 F8 BLUE F8 F8 F8 ---------------- FC00 FC00 FC00 FC00 F8 WRITE TIME: 0.692 F80000 F80000 BLIT TIME: 16.933 CLS TIME: 0.091 > Blit 0,100,100,200,40,40 > Footnote added 2025-05-19 20:40 by phil99 It has the same connector as ILI9341, ILI9488 etc. so the pin setup described in the manual for them will work. The PicoMite is very flexible, the only requirement is that System SPI uses appropriate SPI pins. |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10088 |
Great news on the diode, brilliant diagnosis ![]() |
||||
phil99![]() Guru ![]() Joined: 11/02/2018 Location: AustraliaPosts: 2449 |
With RC24 > RUN ST7796S Test by disco4now 19-05-2025 F80000 RED F80000 F80000 FC00 GREEN FC00 FC00 ------------ F8 BLUE F8 F8 F8 F8 BLUE F8 F8 F8 F8 BLUE F8 F8 F8 ---------------- FC00 FC00 FC00 FC00 F8 WRITE TIME: 0.702 F80000 F80000 BLIT TIME: 8.971 CLS TIME: 0.107 > An odd thing. If left for an hour or so mine becomes unresponsive. Sometimes it comes good after 'CPU Restart' command but sometimes requires a full reset. |
||||
phil99![]() Guru ![]() Joined: 11/02/2018 Location: AustraliaPosts: 2449 |
The odd behavior continues this morning. Left 'gui test lcdpanel' running until it happened again, the screen went black then white. Ran Gerry's test program and as you can see it shows nothing wrong yet the screen remains white throughout the test. > RUN ST7796S Test by disco4now 19-05-2025 F80000 RED F80000 F80000 FC00 GREEN FC00 FC00 ------------ F8 BLUE F8 F8 F8 F8 BLUE F8 F8 F8 F8 BLUE F8 F8 F8 ---------------- FC00 FC00 FC00 FC00 F8 WRITE TIME: 0.704 F80000 F80000 BLIT TIME: 8.987 CLS TIME: 0.104 > Supply to the panel is 4.83V, output from it's reg. is 3.27V. Edit. Probed all connections from Pico to panel and found no problem. Pulled Pico and panel out of their sockets, put hem back in and so far no problem. Its annoying when a fault isn't found, it may return any time. . Edited 2025-05-20 22:48 by phil99 |
||||
homa![]() Guru ![]() Joined: 05/11/2021 Location: GermanyPosts: 462 |
So my display works right away thanks to the tips on J1 and the diode. However, I have noticed that ghost dots appear when I touch the screen. Circled by me in the picture. But I only painted on the right side of the touch. Except afterwards the circle for marking ;-) Does anyone else have the same problems? Matthias ![]() |
||||
phil99![]() Guru ![]() Joined: 11/02/2018 Location: AustraliaPosts: 2449 |
Many screens do that with GUI TEST TOUCH, especially when touched near the edges of the screen. However they give the correct coordinates with Touch(x) and Touch(y) functions. Adding a delay reduces the number of random dots. > cls:Do:circle touch(x),touch(y),2,1,,,rgb(white):pause 1:loop Edited 2025-05-21 09:21 by phil99 |
||||
homa![]() Guru ![]() Joined: 05/11/2021 Location: GermanyPosts: 462 |
Unfortunately, this is not the solution. The ghost dots appear if you don't press hard enough with the pen. Sliding lightly over it causes many of these dots to appear. With relatively firm pressure, it only happens when releasing (like a key bounce, only with offset). |
||||
![]() ![]() |
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |