Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.
|
Forum Index : Microcontroller and PC projects : ILI9481 IPS on PicoMite
Page 2 of 4 | |||||
Author | Message | ||||
disco4now Guru Joined: 18/12/2014 Location: AustraliaPosts: 844 |
Mick, The pictures you have posted show the MISO for the LCD snipped off. If you do have the MISO available we can attempt to read the ID via SPI. This will show whether you can communicate with the chip or not. If you can read the ID then it might just be configuration. If you get &HFF back then you don't have successful SPI communications. Latest F4 Latest H7 |
||||
phil99 Guru Joined: 11/02/2018 Location: AustraliaPosts: 1793 |
"The pictures you have posted show the MISO for the LCD snipped off" If that is how the supplier sent it then it suggests they may have the same issue as the ILI9488. As a precaution for testing solder a 680? to the top side of that pin and bend the other leg around to go in the socket. A more permanent fix is to cut the track going to that pin and solder a very small SMD resistor across the gap, though replacing the cut pin will be a bit tricky. From the manual page 36 near the bottom. "ILI9488/86 (connect MISO with a 680? series resistor as the controller does not tri-state its output properly)" . Edited 2022-06-28 10:32 by phil99 |
||||
bigmik Guru Joined: 20/06/2011 Location: AustraliaPosts: 2870 |
Hi Phil, Yes they are (the ILI9488 needs it) but for the test I referenced above I soldered a wire to reinstate the MISO to the TFT. Regards, Mick Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<< |
||||
bigmik Guru Joined: 20/06/2011 Location: AustraliaPosts: 2870 |
Hi All, @Lizby, MISO (master input, Slave Output) goes to both the touch pins and the tft pins, removing the pin as I did only removed MISO from the TFT pins, the touch still has MISO else it couldn’t communicate touch data back to the CPU, for the test I did I rejoined the MISO line to the tft (wire from the tft to the pcb it is fitted to) @Gerry, I am happy to do the test read the requested data if you can provide some sample code (you know I am pretty lame at programming) and also should I have an LCD PANEL option set or not set to run the code? I have been working In Conjunction with another ‘shedder, on a new design pico product that I will share details of on TBS soon. I found a few minor problems with both boards it is a 50mm x 50mm pcb for TFT use with a plug in daughter board 20mm x 50mm if you want to use it as a vga/PS2 board. This makes a VERY small footprint for a mini VGA pico PC. Also I have been using my CNC to cut fascia panels out of blank wall plates (same size as light switches) to house my new board to be the home unit for a weather station. News on these will be posted soon, the boards were mainly to be for the other ‘shedder and mine use but will be available on request if there is any interest. Once I finalise the cnc files I will also post them for others who might want the same. BTW the cnc is for the 3.5” ILI948x displays hence why I tried the display in question in this thread. The Pico Pi has sparked my interest in mites again as they are cheaper and more readily available than the MX170 plus it already has USB and 5V to 3v3 power supplies Regards, Mick Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<< |
||||
disco4now Guru Joined: 18/12/2014 Location: AustraliaPosts: 844 |
Hi Mick, Here is my results from the code below. You need to set the configuration section to match your wiring. Then do an OPTION RESET so nothing is configured. This is a good ILI9341. Note: ID is not all 0s and not all FF and TEMP from touch has values. This shows we are communicating with the chips. Hard Reset Send NOP Soft Reset ID &H04 HEX 0 0 0 7F TEST TOUCH CHIP Read TEMP1 907 Read TEMP2 1072 This is a display like yours that works but touch is BAD Note: ID is not all 0s and not all FF but TEMP from touch is 0. Hard Reset Send NOP Soft Reset ID &H04 HEX 2A 40 33 0 TEST TOUCH CHIP Read TEMP1 0 Read TEMP2 0 This is a display like yours where screen does not work but touch is GOOD Note: ID is all FFs but TEMP from touch has values Hard Reset Send NOP Soft Reset ID &H04 HEX FF FF FF FF TEST TOUCH CHIP Read TEMP1 864 Read TEMP2 1024 This is a result when I tried with an SPI that does not match my wiring Hard Reset Send NOP Soft Reset ID &H04 HEX 0 0 0 0 TEST TOUCH CHIP Read TEMP1 0 Read TEMP2 0 Latest F4 Latest H7 |
||||
bigmik Guru Joined: 20/06/2011 Location: AustraliaPosts: 2870 |
Hi All, @Gerry, Thank you for that quite extensive program. I ran it on my ILI9341 to see if I get the same result as you but It (from my understanding) fails the TFT chip read test This is the result I get with an ILI9341 (I tried two different ones a 2.8" and a 3.2") > RUN Hard Reset Send NOP Soft Reset ID &H04 HEX 0 0 0 0 TEST TOUCH CHIP Read TEMP1 845 Read TEMP2 995 > I changed the configuration for my setup as follows: 'MICKS CONFIGURATION LCD_DC=MM.INFO(PINNO GP15) LCD_RST=MM.INFO(PINNO GP14) LCD_CS=MM.INFO(PINNO GP13) SD_CS=MM.INFO(PINNO GP22) T_CS=MM.INFO(PINNO GP12) T_IRQ=MM.INFO(PINNO GP11) MYSPI=1 '2 id using spi2 pins SPITX=MM.INFO(PINNO GP19) SPIRX=MM.INFO(PINNO GP16) SPICLK=MM.INFO(PINNO GP18) I have checked and triple checked I think I set all of the PINNO correctly. This is the list of the Pin Allocation on my PCB. Note My allocations are in Dark Blue The Result with the ILI9488 returned a very similar result, the only difference was the TEMP values which were close but a few numbers off I think the RESET/ID &H04 HEX should not return all 0 for all four positions Is there some other setting I need to make in your code? Kind Regards, Mick Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<< |
||||
disco4now Guru Joined: 18/12/2014 Location: AustraliaPosts: 844 |
Hi Mick, Looks like it talks to the TOUCH OK as it can read the temperature. Did you have MISO from the display connected. Your config seems to match your wiring. I have added a couple more reads below, just put them after the read of the ID. I would first concentrate of getting the ILI9341 to return some values other than 0 to fully prove your wiring. This display works? so just make sure it can be read i.e. MISO is OK. I suspect it wont successfully do a BLIT. If you can get it to read then try the ILI9488/ILI9481 This is what I get on an ILI9341 with the extra reads. Hard Reset Send NOP Soft Reset Sleep out ID &H04 HEX 0 0 0 7F ID &H09 HEX -Display Status 0 30 80 0 ID &H0A HEX -Display POWER Mode 8 FF FF FF ID &H0F HEX -Display Self Diagnosis 0 FF FF FF TEST TOUCH CHIP Read TEMP1 841 Read TEMP2 987 > P.S. I also added this after the soft reset, should not make a difference but is where the sleep out message is coming from. Edited 2022-06-29 13:10 by disco4now Latest F4 Latest H7 |
||||
phil99 Guru Joined: 11/02/2018 Location: AustraliaPosts: 1793 |
Another way to test display MISO > pixel 1,1, rgb(blue) : ? pixel(1,1) 254 > |
||||
bigmik Guru Joined: 20/06/2011 Location: AustraliaPosts: 2870 |
Hi All, I buzzed out Miso and it is indeed connected through to Pico pin21 (GP16) @Gerry, I have added those 2 chunks of code and this is the output on my ILI9341 display (yes with MISO connected) run Hard Reset Send NOP Soft Reset Sleep out ID &H04 HEX 0 0 0 0 ID &H09 HEX -Display Status 0 30 80 0 ID &H0A HEX -Display POWER Mode 8 0 0 0 ID &H0F HEX -Display Self Diagnosis 0 0 0 0 TEST TOUCH CHIP Read TEMP1 758 Read TEMP2 910 > I removed the display and ran the program and it has a lot of FF and other stuff so I assume then the data must be at least partially valid. This is with NO display fitted run Hard Reset Send NOP Soft Reset Sleep out ID &H04 HEX 0 0 0 0 ID &H09 HEX -Display Status 0 0 0 0 ID &H0A HEX -Display POWER Mode 0 0 0 0 ID &H0F HEX -Display Self Diagnosis 0 0 0 0 TEST TOUCH CHIP Read TEMP1 0 Read TEMP2 0 > @Phil99, I will try that and see what happens. Kind Regards, Mick Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<< |
||||
bigmik Guru Joined: 20/06/2011 Location: AustraliaPosts: 2870 |
Hi Phil99, All, I had to reconfigure for the System SPI and all of the display options but this is what I received doing your test on my ILI9341 > pixel 1,1, rgb(blue) : ? pixel(1,1) 252 > pixel 1,1, rgb(red) : ? pixel(1,1) 16515072 > I also tried RGB(RED) Now I assume this means that the chip can be read? but your example showed a result of 254 mine returned 252 Regards, Mick Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<< |
||||
bigmik Guru Joined: 20/06/2011 Location: AustraliaPosts: 2870 |
Hi All, @Phil, I tried to be smart, and set the LCD PANEL to the ILI9841 option and I get this error after running your test line. These tests were done with the ILI9481 display and MISO connected > pixel 1,1, rgb(blue) : ? pixel(1,1) Error : Invalid on this display > When I set it for the ILI9488 display driver it ran the test but returned a large Number 65xxxx or similar) Anyway I will await and see what Gerry finds in the data I sent in the previous post. I think we have proved that I can read the TFT with the ILI9341 at least. Regards, Mick Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<< |
||||
disco4now Guru Joined: 18/12/2014 Location: AustraliaPosts: 844 |
Hi Mick, Looks good for the ILI9341. Looks like the ID is just not programed in. The results you get other than that match mine. So what happens when you swap to the suspect display. Gerry Latest F4 Latest H7 |
||||
bigmik Guru Joined: 20/06/2011 Location: AustraliaPosts: 2870 |
Hi Gerry, This is what I get with MISO connected and option list cleared with the ILI9481 display > option list > RUN Hard Reset Send NOP Soft Reset Sleep out ID &H04 HEX 0 0 0 0 ID &H09 HEX -Display Status 0 0 0 0 ID &H0A HEX -Display POWER Mode 8 0 0 0 ID &H0F HEX -Display Self Diagnosis 0 0 0 0 TEST TOUCH CHIP Read TEMP1 836 Read TEMP2 984 > I will check a few more ILI9341 displays I bought from other times if I can find any and check the ID on them I think you got 7a or 7F on the last read of your ID Regards, Mick Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<< |
||||
phil99 Guru Joined: 11/02/2018 Location: AustraliaPosts: 1793 |
"These tests were done with the ILI9481 display and MISO connected > pixel 1,1, rgb(blue) : ? pixel(1,1) Error : Invalid on this display >" I guess that currently the ILI948x display driver does not support MISO for the ILI9481. I guess you will have to wait till Peter receives his and has a play. Perhaps he can find a way to adapt the driver to cover the ILI9481. Re the pixel read back, any value other than 16777215 or 0 would indicate MISO is working, I think. Small differences might be due to the way 24 bits gets mapped to 16 bits for the display and back again? 16777215 = 24 bit white 0 = black Edited 2022-06-29 17:00 by phil99 |
||||
bigmik Guru Joined: 20/06/2011 Location: AustraliaPosts: 2870 |
Hi All, @Phil, I think you are correct in assuming the current ILI9481 driver doesnt support MISO hence the error message. @Gerry, I have 3 ILI9341 displays, 2 older 2.8" types both with Touch chips but one had a broken touch screen that I have removed, and a brand new 3.2". I also had an ancient 2.4" that was in an old water tank using the ultrasonic sensors but in typical mick style soldered directly to the BackPack board and hot glued into the box. That I have had to rip apart and desolder the pins to test the display. ALL 4 displays seem to show the exact same readings and none show the ID (they are all 0) I think we have confirmed that MISO is connected and working we just need to wait for Peter to get a driver going if he can. I do have a second display I guess I should tear its baggie open and try it. I will shoot myself if that works. Mick Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<< |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 8592 |
Mick Please try the attached using driver ILI9481N PicoMite.zip Option syntax same as everything else |
||||
disco4now Guru Joined: 18/12/2014 Location: AustraliaPosts: 844 |
This should return the ID for an ILI9481 according to the data sheet. Latest F4 Latest H7 |
||||
bigmik Guru Joined: 20/06/2011 Location: AustraliaPosts: 2870 |
Hi Peter, Thanks for trying that but I am Sorry to say there is no change. Here is my OPTION LIST > option list OPTION SYSTEM SPI GP18,GP19,GP16 OPTION LCDPANEL ILI9481N, PORTRAIT,GP15,GP14,GP13,GP20 OPTION TOUCH GP12,GP11 GUI CALIBRATE 1, 3441, 3568, -973, -1515 OPTION SDCARD GP22 > I will open the other module that I was trying to keep sealed just in case Regards, Mick PS. I just tried the other screen and the same result. Of course they may NOT even be ILI9481 knowing some of these `err' lets say third world suppliers. Once again the Gui Calibrate can be performed blind. I still have MISO connected on the NEW display do you need that removed from the TFT to try your new code? After loading that version this is the version I get displayed > ? mm.ver 5.070512 > Kind regards, Mick Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<< |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 8592 |
Mick The new driver uses the standard ili9481 initialisation but communicated using normal SPI (like the ILI9341). The previouse ILI9481 driver used special communication as the display (like the Waveshare 3.5") is wired parallel but with shift register chips to convert the parallel to serial. Can you find anywhere on the web that gives the initialisation sequence for your display? If you can I can incorporate it into the driver. |
||||
bigmik Guru Joined: 20/06/2011 Location: AustraliaPosts: 2870 |
Hi Peter, I will look and try to contact the seller about the init sequence or data sheet. Fingers crossed Mick Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<< |
||||
Page 2 of 4 |
Print this page |