This page is an attempt to summarise and link to the various LCDPANEL drivers available for the various MMBasic platforms.
These can be built in (OPTION LCDPANEL xxxx), Cfunction loadable drivers or MMBasic drivers implemented with the OPTION LCDPANEL USER method.
The scope includes links to various TBS threads that discuss supporting PCB designs, drivers etc, where to purchase.
In general this page will try to link to relevant threads on TBS rather than reproduce the information here.
.
Many drivers now allow the support for the BLIT command, transparent text and the PIXEL() function to read the colour of a particular pixel.
Transparent text is invoked by using a background colour of -1 and the BLIT command allows the background image to be saved and then restored allowing moving objects to be displayed over a background image. See the section Basic Drawing Features in the updated Micromite Plus Manual .
Two approaches are used to achieve these features.
1. The memory of the LCD PANEL is read by MMBasic to determine what is currently displayed.
To use this the RD pin needs to be connected and the LCDPANEL support the reading of data.(RD required) in table below
2. MMBasic keeps an image of what is currently displayed in its own memory and only every does Write actions toward the LCD PANEL.
This allows these features to be implemented when LCDPANEL doesn't support reading of data. RD pin is not required.
This uses memory from MMBasic and is usually only supported for the smaller resolution displays and when the MM is use has sufficient memory. (BUFF used to indicated this in the table below)
LCD Name resolution size/colour | Details Technology | Touch SD Card | PhysicalM interface | Electrical interface | MM Type | LCD Driver Support NAT=native (OPTION LCDPANEL XXXX) CFn=Loadable driver, NO=No Support BAS=MMBasic (OPTION LCDPANEL USER) BLT=BLIT and Transparent text support | Links to TBS threads for drivers,supporting boards etc Links to purchase options etc | Notes !! |
---|
ILI9341 SPI 240*320 2.2" 2.4" 2.8" 262K | Colour TFT with resistive touch | XPT2046 SD CARD | 14M Header 4M SD Card | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | NAT CFn NAT BLT CFn NAT BLT NAT BLT NAT BLT(BUFF) NAT(no touch support) | TBS thread for Enhanced ILI9341 driver for MM2 and MM+ The improved speed is included in the native driver from MMBasic V5.3 Most other enhancements are also now included in the MM+ native support, but this enhanced loadable driver is still relevant for the MM2. TBS thread for SD card support for MM2 | This is the only LCD Panel supported natively on the MM2. Pinout is described in the MM User Manual. The 2.4",2.8" usually include touch support.The 2.2" generally does not have touch support. Touch not supported on ArmmiteL4 MM2(+) TBS thread for ILI9341 rotated text on MM2 Since MMBasic 5.04 is native for the MM+ (see MMPlus manual page 26 Basic Drawing Features) |
ILI9163 SPI 128*160 1.44" 262K | Colour TFT with resistive touch | XPT2046 SD CARD | 14M Header 4M SD Card | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn NAT NAT BLT NAT BLT NAT BLT(BUFF) NAT(no touch support) | TO DO: Add TBS links | Pinout as per MM+ User Manual. |
ILI9163 SPI 128*128 1.44" 262K | Colour TFT with resistive touch | No No | 8M Header | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn NAT NAT BLT NAT BLT NAT BLT NAT(no touch support) | TO DO: Add TBS links | Pinout as per MM+ User Manual. |
ST7735 SPI 128*160 1.8" 262K | Colour TFT LCD | no SD CARD | 11M Header 4M SD Card | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn NAT NAT BLT NAT BLT NAT BLT(BUFF) NAT(no touch support) | TO DO: Add TBS links | Pinout as per MM+ User Manual.CFunction driver for MM2 included in MMBasic distribution |
SSD1963 480*272 4.3" 262K | Colour TFT with resistive touch. Three 480*272 pages exist.See MM Extreme Manual for details on these paged drivers | XPT2046 SD CARD | 2 x 20M header | 8 bit par 16 bit par | MM2 MM+ MMX RPi ArmH7 ArmL4 | NO 28pin CFn 44pin MM2 NAT BLT(RD pin required) NAT BLT(RD pin required) NAT BLT(RD pin required) NAT BLT(BUFF) NO | Loadable MM2(44pin) MM+: SSD1963 paged driver | Pinout as per MM Plus User Manual MM Extreme supports paged driver with OPTION LCDPANEL SSD1963_4P. ARMH7 driver is BUFF type. |
SSD1963 800*480 5" 7" 8" 262K | Colour TFT with resistive touch | XPT2046 SD CARD | 2 x 20M header | 8 bit par 16 bit par | MM2 MM+ MMX RPi ArmH7 ArmL4 | NO NAT BLT NAT BLT NAT BLT NAT BLT(RD Pin/BUFF) NO | Backpack for Armmite - STM32H7: Nucleo 144 has connection for SSD1963 panel. | Pinout as per MM Plus User Manual.A buffered driver can be used on ARMH7 but available memory is reduced for 800*480 resolution |
SSD1963 800*480 9" 262K | EastRising LCD Colour TFT with resistive touch. 7" & 8" also available with this EastRising pinout | XPT2046 SD CARD | 2 x 20M header Non standard. See links for info on adaptor board | 8 bit par 16 bit par | MM2 MM+ MMX RPi ArmH7 ArmL4 | NO NAT BLT NAT BLT NAT BLT NAT BLT NO | Thread on Adaptor Board for 9" Buy Adaptor Board here" | Pinout not same as other SSD1963 panels. Needs an adaptor board to match standard pinouts per MM Plus User Manual.A buffered driver can be used on ARMH7 but available memory is reduced for 800*480 resolution |
ILI9481 SPI 320*480 4" 262K | 480 by 320 pixel resolution and uses IPS technology which is both brighter and has a better viewing angle than the cheaper TFT panels | XPT2046 NO | 13x2 F Header RPi interface | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn CFn NAT BLT(BUFF) NAT BLT(BUFF) NAT BLT(BUFF) no | Initial ILI9481 thread for MMX Includes wiring and purchase details ILI9481 loadable driver for MM2 and MM+ | |
R6150SV 2.2" 220*220 2.2" 262K | parallel interface Round TFT LCD.Comes as 16bit but can be modified to use 8 bit | No No | custom | 8 bit par 16 bit par | MM2 MM+ MMX RPi ArmH7 ArmL4 | NO 28pin CFn 44pin CFn no no no no | TBS thread for drivers" | No longer available, but some made nice round gauges with them. See TBS thread for details. |
ILI9325 P16 240*320 2.8" 262K | Parallel interface TFT LCD.Comes as 16bit but can be modified to use 8 bit | XPT2046 SD CARD | 2 x 20M header STD SSD1963 i/f | 8 bit par 16 bit par | MM2 MM+ MMX RPi ArmH7 ArmL4 | NO 28pin CFn 44pin CFn
BAS
BAS
BAS)
BAS | TBS thread for 8bit conversion and drivers" Further TBS thread for 8bit conversion and drivers" | Pinout same as SSD1963 panels. Please be aware that to use these displays in 8-bit mode (rather than 16) you connect the data lines to DB8-DB15 and NOT DB0-DB7. See TBS threads. These are a bit historical. The two panels below seem to be more common now. |
SSD1289 240*320 3.2" 262K | Parallel interface TFT LCD.Comes as 16bit but can be modified to use 8 bit | XPT2046 SD CARD | 2 x 20M header STD SSD1963 i/f | 8 bit par 16 bit par | MM2 MM+ MMX RPi ArmH7 ArmL4 | NO 28pin CFn 44pin CFn
BAS
BAS
BAS
BAS | TBS thread for 8bit conversion and drivers" | Pinout same as SSD1963 panels.Many now advertised as SSD1289 are actually the ILI9341 below. |
ILI9341 P16 240*320 3.2" 262K | Parallel interface TFT LCD with touch.Comes as 16 bit but can be modified to use 8 bit | XPT2046 SD CARD | 2 x 20M header STD SSD1963 i/f | 8 bit par 16 bit par | MM2 MM+ MMX RPi ArmH7 ArmL4 | NO 28pin CFn 44pin CFn
BAS
BAS NAT (16 bit)
BAS | TBS thread for 8bit conversion and drivers Backpack for Armmite - STM32H7: Nucleo 144 has connection for ILI9341 in 16bit mode | Pinout same as SSD1963 panels.Supported on ArmH7 in 16 bit mode. |
ILI9341 P8 240*320 3.2" 262K | Parallel interface TFT LCD.8 bit with arduino format.Resistive touch if fitted not compatible with MicroMite | Touch not Supported SD CARD | arduino format
| 8 bit par
| MM2 MM+ MMX RPi ArmH7 ArmL4 | NO 28pin CFn 44pin CFn
BAS
BAS NAT(8bit)
BAS | TBS thread for 8 bit conversion and drivers
| Arduino pinout Supported on ArmH7 in 8bit mode but SSD1963 B8-15 cannot be used for anything else. |
KS0108 128*64
mono | GLCD display, no need for backlight, | No No | 14 pins | 8bit parallel | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn CFn
BAS
BAS
BAS
BAS | TBS discussion and drivers for MM2 and MM+ Later TBS discussion and updated drivers for MM2 and MM+ Loadable 8*6 Font for small displays | Is 5v so need level shifter or 5v tolerant pins on the MM |
ST7920 128*64
mono | GLCD display, no need for backlight, | No No | +5v GND SCL SDA | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn CFn
BAS
BAS
BAS NAT | Original TBS discussion on this GLCD Later TBS discussion and updated drivers for MM2 and MM+ Loadable 8*6 Font for small displays | Is 5v so need level shifter or 5v tolerant pins on the MM |
Nokia 5110 ST7920 84*84
mono | Nokia 5110 phone display.GLCD display using ST7920 controller, no need for backlight, | No No | +5v GND SCL SDA | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn CFn
BAS
BAS
BAS NAT | Original TBS discussion on this Nokia5110 Later TBS discussion and updated drivers for MM2 and MM+ Loadable 8*6 Font for small displays | Is 5v so need level shifter or 5v tolerant pins on the MM |
SSD1331 96*64 0.95" colour | Colour OLED display,96x64 RGB pixels, each one made of red, green and blue OLEDs. Each pixel can be set with 16-bits of resolution for a large range of colors. Because the display uses OLEDs, there is no backlight. | No No | Vcc Gnd SPI pins RST D/C CS | SPI write only | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn CFn
BAS
BAS
BAS NAT | TBS discussion and drivers for MM2 and MM+ Loadable 8*6 Font for small displays SPI is write only so no transparent text. | The latest release of the MM2, MM+ and MMX firmware includes the ability to write drivers for all sorts of displays entirely in Basic. |
SSD1351 128*128 1.5" mono | OLED display, no need for backlight, self-illumination,The display performance is better than the traditional LCD display, also lower consumption. | No No | ???? | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn CFn
BAS
BAS
BAS
BAS | TBS discussion and drivers for MM2 and MM+ Loadable 8*6 Font for small displays | The latest release of the MM2, MM+ and MMX firmware includes the ability to write drivers for all sorts of displays entirely in Basic. |
SSD1306 SPI 128*64 0.96" 1.3" mono | OLED display, no need for backlight, self-illumination,The display performance is better than the traditional LCD display, also lower consumption. | No No | +3.3v GND SCL SDA | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn CFn BAS BAS NAT NAT | TBS discussion and drivers for MM2 and MM+ Drivers for I2C and SPI versions. Support 0.96" ,1.3" and 96*16 version Loadable 8*6 Font for small displays | The latest release of the MM2, MM+ and MMX firmware includes the ability to write drivers for all sorts of displays entirely in Basic. A USER driver could be used for other devices based on this TBS thread. |
SSD1306 I2C 128*64 0.96" 1.3" mono | OLED display, no need for backlight, self-illumination,The display performance is better than the traditional LCD display, also lower consumption. | No No | +3.3v GND SCL SDA | I2C | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn CFn BAS BAS NAT NAT | TBS discussion and drivers for MM2 and MM+ for I2C and SPI versions Support 0.96" ,1.3" and 96*16 version Loadable 8*6 Font for small displays | The latest release of the MM2, MM+ and MMX firmware includes the ability to write drivers for all sorts of displays entirely in Basic. A USER driver could be used for other devices based on this TBS thread. |
SSD1306 I2C 128*32 0.91" mono | OLED display, no need for backlight, self-illumination,The display performance is better than the traditional LCD display, also lower consumption. | No No | +3.3v GND SCL SDA | I2C | MM2 MM+ MMX RPi ArmH7 ArmL4 | BAS BAS BAS BAS BAS NAT | I purchased from here A USER driver could be used for other devices based on this TBS thread. Loadable 8*6 Font for small displays | Only supported on natively on ArmmiteL4.The latest release of the MMBasic includes the ability to write custom display drivers entirely in Basic.see OPTION LCDPANEL USER |
E-Ink 2.9 128x296 mono | E-Ink 2.9 uses GDEH029A1 chip. Slow refresh but low power.Display remains after power is removed. | No No | +3.3v GND SCL SDA | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | BAS BAS BAS BAS BAS NAT BAS | TBS post with details and drivers Another 2.9" User driver in this TBS post | A screen refresh on the 2.9" display takes just less than 3 seconds and somewhat over 5 seconds on the 2.7" display |
E-Ink 2.7 176x264 mono | E-Ink 2.7 uses GDEH029A1 chip. Slow refresh but low power.Display remains after power is removed. | No No | +3.3v GND SCL SDA | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | BAS BAS BAS BAS BAS BAS | TBS post with details and drivers | A screen refresh on the 2.9" display takes just less than 3 seconds and somewhat over 5 seconds on the 2.7" display |
ST7789 IPS 240*240 1.3" HAT 262K | The display is 240x240 pixels and uses IPS technology to give a crystal clear image. Three buttons built in. | No No | Pi HAT format | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn CFn soon soon soon soon | TBS post with details and drivers | |
ST7735S IPS 80*160 0.96" 65K full color | 0.96 inch IPS color screen, brighter than ordinary TFT LCD SPI HD 65K Full Color screen Module ST7735 IC 80*160. | No No | 7 pin header | SPI | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn CFn ?? ?? ?? NAT | TBS post with details and drivers It appears there at least two variants of this display with different wiring. To accommodate this the CFunction has extra parameters. | |
RGB LED matrix display 64*32 13x26cm 64 colours | 64x32 RGB LED display driver for 64-pin Micromite operates in RGB222 mode 13x26cm | No No | 13 pins required | Custom | MM2 MM+ MMX RPi ArmH7 ArmL4 | CFn CFn no no no no | TBS post with details and drivers | |