Page 1 of 1

What is i80 bus (used for LCD display)

Posted: Wed May 31, 2023 6:48 am
by zazas321
Hello. I would like to understand what is i80 bus and why it is used? I have programmed a couple of displays before but never come across i80.

I use the following display:
https://github.com/Xinyuan-LilyGO/T-Display-S3

I recently looked up example projects for the Kaluga development board as well as example project for:
esp\esp-idf\examples\peripherals\lcd\i80_controller

What is the reason of using i80 bus? Can I not use just the SPI to communicate with the display? Do I need SPI+i80?

Re: What is i80 bus (used for LCD display)

Posted: Wed May 31, 2023 7:17 am
by ESP_Sprite
I80 is the bus traditionally used in the (by now ancient) Intel 80xx (8080, 8085 etc) range of chips. It has a parallel data bus, plus a read and a write line (rather than the 68xx bus, which has an enable and a r/~w line). The original reason for LCDs to have this bus was so they could easily be integrated into

If you're not interested in the history, it's effectively an 8- or 16-bit bus to your display. As the bus can transport 8 or 16 times more bits per clock cycle than SPI, it;s a lot faster. That means that for the same clock speed, you can transport more pixels per second, leading to higher max framerates.

If your display is small enough (=doesn't have many pixels to begin with) or you display contents where frame rates don't matter, it doesn't matter if you use SPI or I80.

Re: What is i80 bus (used for LCD display)

Posted: Wed May 31, 2023 8:01 am
by MicroController
It's also commonly called "8080", "8-bit Intel" or "Intel parallel" bus/protocol/interface. And no, you (probably) can't choose which interface to use as the T-Display board is hardwired for the 8080 parallel interface.

Re: What is i80 bus (used for LCD display)

Posted: Wed May 31, 2023 10:51 am
by zazas321
Thank you for clarifications!