UTFT has got drivers for 8-bit SPI and for 9- bit SPI. UTFT has no concept of a hardware SPI bus.
So it will be just as slow with 9-bits as it is with 8-bits.
Note that the device requires 2.8V logic. I would guess that 3.3V logic from a Due or Wemos will be ok.
I have driven an ILI9481 with 9-bit bidirectional. i.e. only CS, SDA, SCK pins.
I use AVR with 3.3V logic. Bit-bash one bit, hardware SPI for 8-bit write, bit-bash for 8-bit reads.
Life is much simpler with 9-bit hardware SPI with an ARM.
Looking at your Ali link, a regular 2.2", 2.4", 2.8" SPI module is cheaper and easier.
Most have an SD cage. Some even have an XPT2046 Touch controller. These certainly have better delivery.
Thank you very much, David, I appreciate your help.
I will look at using UTFT for this device, and need to be more careful for voltage levels ( I used UNO clone for a start).
Some "regular" SPI TFTs for Arduino have not yet arrived.
But the first Raspi TFT that looked promising for Arduino has arrived, and seems also to use 9bit SPI.
Maybe my hope to use it with Arduino IDE is helpless.
Seriously, 9-bit SPI is incredibly painful. Most microcontrollers can not manage this in hardware.
SAMD, STM32, Kinetis do not have the capability.
SAM3X (as used in a Due) can do 9-bit. Anyway, you still need to change formats on the fly when it comes to reading GRAM.
No, I have never bothered with the level-converter modules. I do have some level-converter modules but I suspect that they get unreliable at high clock rates.
I find it easier to run the whole MCU at 3.3V. You know that the MCU is in charge of data direction, timing etc.
I am constantly amazed by Arduino users' cavalier attitude to logic levels. Some chips and some ports are 5V tolerant as GPIO. The tolerance does not always extend to the pins when they are configured / multiplexed for peripherals.
As far as I know, all the common TFT controllers are NOT 5V tolerant. This does not mean that they fry immediately. But the long term reliability will suffer. Even if the 5V stress was only for a short time.
This has little relationship with your output. Note that I apply a Software Reset before I read any register.
So even if the bits might be misaligned, I would still expect a similar bit pattern.
Please confirm that you are actually using an ILI9341.
david_prentice:
I am VERY wary of any display that does not have a hardware Reset pin.
.
.
Please confirm that you are actually using an ILI9341.
David.
Yes, it has a reset pin. I had it connected to the reset of the board, which is sufficient for normal operation.
And no, I don't know if its really a ILI9341, it is under the display. But it works with TFT_ILI9341_ESP and with a modified Adafruit_ILI9341-dev library.
I am grateful for your ST7735_readreg_diag.ino, this will finally confirm the controller in use, verify the input path of my SPI9Class, and let me find out what controller my other SPI 9bit display have.
I will report as soon I have more results. Thank you!