Skip to content

Commit e0ad761

Browse files
committed
Update with support for SPI SSD1306 display
1 parent 5543cbc commit e0ad761

1 file changed

Lines changed: 19 additions & 8 deletions

File tree

‎docs/Universal-Display-Driver.md‎

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ ILI9488 TFT|SPI
2020
GC9A01|SPI
2121
SH1106 OLED display|I^2^C
2222
SH1107|SPI
23-
SSD1306 OLED display|I^2^C
23+
SSD1306 OLED display|I^2^C<br>SPI
2424
SSD1331|SPI
2525
ST7262|RGB (ESP32S3)
2626
ST7735<br>ST7735S|SPI
@@ -297,8 +297,14 @@ RGB 16 bit interface: (ESP32-S3 only)
297297
All signals must be given. Unused pins may be set to -1. If you specify a `*` char the pin number is derived from the Tasmota GPIO GUI.
298298
The CS and DC pins must be the standard pins e.g. `SPI_CS` or `SPI_DC`.
299299

300-
there are RGB displays that also need an SPI initialisation. in this case specify the Init sequence with :IS,SCLK,MOSI,CS,RESET
301-
there are RGB displays that also need an I2C initialisation. in this case specify the Init sequence with :II,BUS,ADDR (BUS = i2c bus nr 1 or 2, ADDR = adress of i2c device)
300+
`:IS`
301+
302+
There are RGB displays that also need an SPI initialisation. in this case specify the Init sequence with :IS,SCLK,MOSI,CS,RESET
303+
304+
305+
`:II`
306+
307+
There are RGB displays that also need an I2C initialisation. in this case specify the Init sequence with :II,BUS,ADDR (BUS = i2c bus nr 1 or 2, ADDR = adress of i2c device)
302308

303309
!!! i2c example
304310
```haskell
@@ -341,13 +347,11 @@ single entry defines a delay in milliseconds
341347
```
342348

343349
`:I`
344-
Initial register setup for the display controller. (`IC` marks that the controller is using command mode even with command parameters)
345-
All values are in hex.
350+
Initial register setup for the display controller. (`:IC` marks that the controller is using SPI command mode even with command parameters). All values are in hex.
346351

347352
On I^2^C all hex values are sent to I^2^C.
348353

349-
On SPI the first value is the command, then the number of arguments and the the arguments itself (lower 4 bits: 0..F).
350-
High 4 bits are used to add a pause after the command:
354+
On SPI the first value is the command, then the number of arguments and then the arguments itself. The number of arguments are the lower 4 bits: 0..F. The high 4 bits are used to add a pause after the command:
351355

352356
Second byte|Pause
353357
:---|:---
@@ -429,13 +433,20 @@ the appropriate coordinate convervsions are defined via pseudo opcodes:<br>
429433
bit 7 = swap x,y<br>
430434

431435
`:A`
432-
3 OPCODES to set address window _(all but epaper displays)_
436+
3 OPCODES to set address window _(all but epaper displays and 1 bit per pixel displays)_
433437

434438
1. set column opcode
435439
2. set row opcode
436440
3. start write opcode
437441
4. pixel size (optional)
438442

443+
2 OFFSETS for 1 bit per pixel displays
444+
445+
1. x offset
446+
2. y offset
447+
3. not used
448+
4. not used
449+
439450
`:P`
440451
Pixel transfer size (default = 16 bit RGB) _(optional)_
441452

0 commit comments

Comments
 (0)