3.2 ips tft lcd display 480 320 hx8357c made in china
Since the HX8357 silicon is now at rev. D it could be that the B iteration silicon has a bug for example a timing clash between the SGRAM read access for the display drive and the writes by the Due/Mega. However there are quite a few other potential reasons, including a library bug!
Today I received an ILI9481 based display of the same design (advert stated HX8357B!) so I will see if that controller also produces spurious pixels. And also check the HX8357C I have.
The reason why i posted this instructable is that we have a bigger board, display , huge amount of memory (compared to the Uno) and many analog and digital pins.
I"m considering making a PJRC product for a 3.5 inch TFT touchscreen display with 480x320 resolution. Conceptually, it would be pretty similar to this Adafruit product (https://www.adafruit.com/products/2050), with SPI interface on the bottom side and 8 bit parallel interface on the top.
If we do this, which is still a pretty big "if" at this point, PJRC will almost certainly have a custom display made in China, and we"d assemble it onto a breakout board here in the USA. I"ve already talked with a few companies who would put together the display part from standard materials, but with the flex PCB part customized for us. That"s important, because almost all the ones readily available support only 16 bit parallel mode. This also means we can get access to signals not commonly brought out from other displays, like the TE output or PWM backlight control pin.
A couple major decisions to make are the type of TFT and touchscreen. IPS displays are available, which offer superior color range and wide viewing angles. Normal TN types, like we have now with the common 2.8 inch side, are less expensive. Likewise, touchscreens come in cheap resistive which detects only a single touch point and requires significant pressure, or more expensive capacitive touch that works similar to cell phones and tablets. Different touch controller chips can be used, some detecting 2 touch points, others up to 5 points.
I have found resistive touch screens a bit disappointing having been spoiled with capacitive screens on phones over the last several years so personally I would prefer capacitive touch. If there was an easy way to turn off the display to save power but wake it when touched that would be cool too. I like the few signals as possible side and would likely just use it. You guys have managed to stream video over SPI so for me its fast enough.
Is it worth having a footprint to allow a Teensy to be soldered directly onto the display? Maybe on just one edge if the pinout worked that way to avoid through holes going into the back of the display. Other choice would be a surface mount pin header kit, possibly with a PCB jig to make getting the rows lined up easier though that pushes price up. Single row might be easier, since you could either put the teensy behind the display, or flip it over and have it extending outside the display area if getting access to every single pin mattered for your project, and space mattered less.
Basic idea being that the display is already occupying a lot of project real estate, and needs decent size PCB anyway, so use that PCB to provide a motherboard for common sub units like the Micro controller. Might also make it easier for beginners to get the wiring right first time if it was a one for one line up.
I think this is a GREAT idea and would love to have such a display module. I"m definitely in favor of capacitive touch (two points is probably enough at that size) and reset, backlight PWM would save folks a lot of time and energy bringing such a thing up.
I"m actually waiting right now for a first spin of PCBs to come back from China to support a 3.2" display (this one (http://www.buydisplay.com/default/serial-spi-3-2-inch-tft-lcd-module-display-ili9341-power-than-sainsmart) from buydisplay.com). My board actually has a socket for Teensy (3.2 or 3.5/6), so acts as a baseboard with breakouts for a few GPIOs, I2C & USB host. I"ve also thrown in an ambient light sensor & audio amp. I would much preferred to have a larger display with more pixels and multi-point touch but sourcing LCDs is not easy for small quantities. This board, called BB0, looks like this:
My previous builds used an existing LCD modules with Teensy on a separate (hand wired) baseboard. Combining the two boards makes the whole thing smaller and simpler. Consider having a spot on the back to drop a Teensy right on. And also consider offering multiple versions of the PCB (i.e. propshield/propshield LC) with differing sets of support circuitry if that"s not possible.
... agree with Frank - the adafruit 3.5 inch TFT touchscreen display with 480x320 (https://www.adafruit.com/products/2050) has RAM buffer so it should be good from Teensy if an UNO can do it. Also the faster 8 bit interface using 12 pins would be cool if the Teensy underside pins could be used to keep edge pins and SPI free.
This display has a controller built into it with RAM buffering, so that almost no work is done by the microcontroller.*The display can be used in two modes: 8-bit or SPI.*For 8-bit mode, you"ll need 8 digital data lines and 4 or 5 digital control lines to read and write to the display (12 lines total). SPI mode requires only 5 pins total (SPI data in, data out, clock, select, and d/c) but is slower than 8-bit mode. In addition, 4 pins are required for the touch screen (2 digital, 2 analog)
Being an old geezer and having cataracts done with my eyes "fixed", I find these smaller displays disappointing for readability and also brightness of only 200-300 nits(cd/m2). What I"m currently looking for is a 7 or 8-inch display 800 x 600 and perhaps 1000nits for day light readability. I know they are out there for large quantity buyers. Heck if you went and integrated a display & controller, audio amp, SD Card, touch screen and a Teensy 3.6 on a board with some stick pins for attaching my own electronics behind it I"d be willing to drop 200 to 250 for it with a bright display.
I wonder if a 4.3" 480x272 (original PSP screen size) would be a better alternative for size and pixel density. It appears to be a very common size glass.
RE: Speed - more pixels means more data to write - but this depends on your application. 480x320 = double the pixels of a 240*320 :-) ~ 300KB (16Bit) instead of ~150KB per full screen
I"ll share it just as soon as I can get the display to show anything. Remind me in a couple days if I forget (or if this gets set aide by other urgent stuff).
Is it worth having a footprint to allow a Teensy to be soldered directly onto the display? Maybe on just one edge if the pinout worked that way to avoid through holes going into the back of the display. Other choice would be a surface mount pin header kit, possibly with a PCB jig to make getting the rows lined up easier though that pushes price up. Single row might be easier, since you could either put the teensy behind the display, or flip it over and have it extending outside the display area if getting access to every single pin mattered for your project, and space mattered less.
Basic idea being that the display is already occupying a lot of project real estate, and needs decent size PCB anyway, so use that PCB to provide a motherboard for common sub units like the Micro controller. Might also make it easier for beginners to get the wiring right first time if it was a one for one line up.
Mr. Wrangler is certainly a decent person, whom adores puppies, and contributes to the art of electronics. And putting the Teensy on the display board has a good rationale, but am not certain about connecting to the display, unless our hero (Sir Paul) can do this without adding more noise to the analog stuff.
And another thought. Having done something similar (was R, not C) for one of my employer"s field test projects, have had some problems resulting from the environmental limitations of these low-end displays. And this is where our hero becomes a victim of his success. Professional designers and professional fools (myself in latter category) have found the Teensy to be a suitable solution to rapid dev of ATE, monitoring, and control systems; both embedded and stand-alone. Last month, committed larceny and took nephew"s audio shield and put in field ATE for sig gen channel. The moral, or immorality, of the story is that PJRC has enabled some of us to become accustomed to consuming Stone IPA on a Bud lite budget. Understand that environmental limit specs are difficult to do, but characterization of specs for display/control part becomes mas muy importante.
I"ll share it just as soon as I can get the display to show anything. Remind me in a couple days if I forget (or if this gets set aide by other urgent stuff).
Dear Paul. Another fantastic project. My preference would be for at least a minimally daylight readable display option even if that cost extra. I have several hand held meter projects using the touch sensitive TFT display and it is unreadable even in very bright room light. Hence my desire for a brighter display.
Any suggested pin connections for the Buydisplay display with cap touch listed above?http://www.buydisplay.com/default/serial-spi-3-5-inch-tft-lcd-module-in-320x480-optl-touchscreen-ili9488 I may try laying out an Oshpark board myself. I think if I do it I may put in holes so the outside pins on a 3.6 at least will fit. Any suggestions on pins to use or keep open for other hardware are most welcome. I am assuming the prop and audio shield cs pins should be avoided.
Any suggested pin connections for the Buydisplay display with cap touch listed above?http://www.buydisplay.com/default/serial-spi-3-5-inch-tft-lcd-module-in-320x480-optl-touchscreen-ili9488 I may try laying out an Oshpark board myself. I think if I do it I may put in holes so the outside pins on a 3.6 at least will fit. Any suggestions on pins to use or keep open for other hardware are most welcome. I am assuming the prop and audio shield cs pins should be avoided.
@Matadormac - You may want to Google for sunlight readable TFT LCD display and compare the ribbon cable connector pinouts. I believe I found a 7-inch display that is compatible with the RA8875 adaptor sold at AdaFruit. It has a 40 pin cable and the pin outs match. The display brightness is 630 to 800 nits. I have not checked a similar 5-inch display or other sizes, but feel they may exist too. The display I found is a NewHaven Display NHD-7.0-800480EF-ASXN#-CTP available on DigiKey. Sure it costs 2x more that the 7-inch 200 nit display on AdaFruit, but I"m interested in sunlight readable too. I intend to check this out (verify) in a month or so when I order my project parts. I will post back here with results. NewHaven Display also has SSD1963 based controller boards for a reasonable cost.
You can also consider the ili9481 displays I am able to control the display with a Teensy 3.5 in 16 bit mode at 65k colors(RGB565). with very fast screen updates.
Waking this thread until a better answer … the T4 Beta thread shows interest in a larger display - the ili9488 is functional on T_3.6 and T4 - but 18 bit color is too many bytes for fast SPI updates - and the with a couple different 9488"s under test - some seem to have issues. Touch XPT2036 works - but Display I got like Paul"s {p#1470&1473} (https://forum.pjrc.com/showthread.php?p=197363#post197363)shows MISO not tristated - so reading Touch means cutting/not connecting the TFT"s MISO then it works with write only display. Most recent notes cluttering T4 thread are here XX (https://forum.pjrc.com/threads/54711-Teensy-4-0-First-Beta-Test?p=200250&viewfull=1#post200250)
The ILI9488"s so far all want 18 bit color - if one were "wired" to accept 8 and/or 16 bit that would drop the RAM/SPI hit - the PDF says it can be selected - but it seems there must be hardware bits set as well that preclude attempts to use 16 bit mode. So a better package is needed - 3.5" would be nice - higher res than 240x320 optional as 320x480 pixels are higher DPI and more numerous. Came across one that "works" on rPi - except it is missing the D/C pin and the PDF didn"t show me commands/data working without that control bit?
I guess that it it’s time to think about a “Teensy G”, a graphics (sub-)processor which would communicate with whatever “main” Teensy through a simple command set, similar to the gfx libraries and which would then care about rendering, frame buffering and efficient high-speed communication with the TFT, taking all that load away from the principal MCU.
3.5" 320x240, $64, SPI, capactive touch, FTDI FT813 Embedded Video Engine, sunlight readable TFT, open source drivers: https://www.newhavendisplay.com/nhd35320240ftcsxnctp-p-9561.html
3.5" 320x240, $51, SPI, resistive touch, FTDI FT812 Embedded Video Engine, sunlight readable TFT, open source drivers, https://www.newhavendisplay.com/nhd35320240ftcsxnt-p-9562.html
Other displays (3.5" 320x240, 4.3" 480x272, 5" 800x480, 7" 800x480, different display/touch features): https://www.newhavendisplay.com/eve2-tft-modules-c-1_990_992.html
Though I imagine there you want to get into having the ability to share memory with the display and/or use more pins in parallel to get around the SPI knothole of serially transferring 1 bit at a time.
Without having looked it up, I’d guess that in the meantime, a few TFT controllers with QSPI interface should be available, thus making the bottleneck four times wider...
I"ll connect it to an FPC breakout board for testing. I know there are some additional components required such as the driver transistor for the backlight, but I see other components on the 3.2 adapter you built in 2017 and would be interested in seeing a schematic if possible
Recently in the team we managed to install a 3.5 "FT813 HD screen, in the Teensy 4. After many hours of unveiling, we were able to link the Greiman SdFat beta library to the James 23X gameduino library, with the idea of using the interface SDIO, as a means to store images, jpg or png, assets, cell arrangements and even videos in avi format with audio.The screen specifically is this: NHD-3.5-320240FT-CSXN-CTP, without using an external power source.
They are somewhat expensive screens, however they have good resolution, are visible under sunlight, moderate consumption and have a 20-pin head that facilitates installation on a PCB. The SPI 1 bus can be configured up to 45 MHz!, in order to activate the display interface.
Recently in the team we managed to install a 3.5 "FT813 HD screen, in the Teensy 4. After many hours of unveiling, we were able to link the Greiman SdFat beta library to the James 23X gameduino library, with the idea of using the interface SDIO, as a means to store images, jpg or png, assets, cell arrangements and even videos in avi format with audio.The screen specifically is this: NHD-3.5-320240FT-CSXN-CTP, without using an external power source.
They are somewhat expensive screens, however they have good resolution, are visible under sunlight, moderate consumption and have a 20-pin head that facilitates installation on a PCB. The SPI 1 bus can be configured up to 45 MHz!, in order to activate the display interface.
It may have the upside of more GPU power (haven"t looked into the details), but at 78 USD and a resolution of 320x240 it"s not a relevant option, at least for my project.
I"ll connect it to an FPC breakout board for testing. I know there are some additional components required such as the driver transistor for the backlight, but I see other components on the 3.2 adapter you built in 2017 and would be interested in seeing a schematic if possible
Funny enough, I eventually used an Adafruite HX8357 display for my first prototype, but placed an order for the ILI9488 last week and it"s arriving later on today!
I"m looking forward to getting it to work - I"m following this schematic (http://www.lcdwiki.com/res/MSP3520/3.5%E5%AF%B8SPI%E6%A8%A1%E5%9D%97%E5%8E%9F%E7%90%8 6%E5%9B%BE.pdf) for wiring (Note the pin order is opposite on the buydisplay FPC) - there are minor differences, but the schematics seems pretty inline with the ILI9488 datasheed pin assignment
@Rezo - The one of theirs I have I think is one of these: https://www.buydisplay.com/lcd-3-5-inch-320x480-tft-display-module-optl-touch-screen-w-breakout-board
@Rezo - The one of theirs I have I think is one of these: https://www.buydisplay.com/lcd-3-5-inch-320x480-tft-display-module-optl-touch-screen-w-breakout-board
I"m willing to try the 9488 just because it"s a third of the price, has capacitive touch and they can be ordered as bare displays and not as a shield (I"ve designed PCBs to surface mount the T4.1 behind the display using SMD header pins to keep a low profile)
I am using the T4 with the HX display but I purchased two T4.1"s with the PSRAM chips for the option of a bigger frame buffer for the 9488 - has the library been updated to utilize the extra RAM or is it something still being worked on?
Over time, I would like to have an option or sub-class or ??? where you can define if you wish the TFT to use 1 byte 2 bytes or 4 bytes per pixel in the Frame buffer.
Over time, I would like to have an option or sub-class or ??? where you can define if you wish the TFT to use 1 byte 2 bytes or 4 bytes per pixel in the Frame buffer.
So even with the extra RAM and writing more bits at a time its till slower? I guess the only bottleneck is the SPI bus after all. But, I have seen someone here running the 9488 at 80Mhz! I can get the HX to run at 32Mhz at most and it looks exactly the same as it does at 26Mhz. Anything higher, it stops displaying.
Perhaps one of these days someone will be able to get one of these displays running using 16 bit parallel - I guess that will speed things up, and can easily be done with the available digital outputs on the 4.1
I got the display to work, but it"s quite unstable. At first, the pads/pins would start crackling and smoking as soon as I"d power it up, and this happened only on adjacent 3v3/GND pins. This would also cause the backlight to flicker as there seems to be excessive current draw from what I suspect are micro solder shorts on the FPC connector.
So I grabbed the other FPC breakout board I had along with a new connector and it seems to be working "Okay" yet still not too stable. I was able to run the demosuace sketch and confirm that the display does in fact work.
I"ve designed some small PCBs overnight to fit a T4/4.1 and the FPC connector to test the display (similar to what @Paul shared in this thread), but I"ll send them for fabrication at JLPCB and get them to assemble the FPC connector for me - that way I don"t have to mess with it for now.