You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit e0ad761
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: docs/Universal-Display-Driver.md
+19-8Lines changed: 19 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,7 +20,7 @@ ILI9488 TFT|SPI
20
20
GC9A01|SPI
21
21
SH1106 OLED display|I^2^C
22
22
SH1107|SPI
23
-
SSD1306 OLED display|I^2^C
23
+
SSD1306 OLED display|I^2^C<br>SPI
24
24
SSD1331|SPI
25
25
ST7262|RGB (ESP32S3)
26
26
ST7735<br>ST7735S|SPI
@@ -297,8 +297,14 @@ RGB 16 bit interface: (ESP32-S3 only)
297
297
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.
298
298
The CS and DC pins must be the standard pins e.g. `SPI_CS` or `SPI_DC`.
299
299
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)
302
308
303
309
!!! i2c example
304
310
```haskell
@@ -341,13 +347,11 @@ single entry defines a delay in milliseconds
341
347
```
342
348
343
349
`: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.
346
351
347
352
On I^2^C all hex values are sent to I^2^C.
348
353
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:
351
355
352
356
Second byte|Pause
353
357
:---|:---
@@ -429,13 +433,20 @@ the appropriate coordinate convervsions are defined via pseudo opcodes:<br>
429
433
bit 7 = swap x,y<br>
430
434
431
435
`: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)_
433
437
434
438
1. set column opcode
435
439
2. set row opcode
436
440
3. start write opcode
437
441
4. pixel size (optional)
438
442
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
+
439
450
`:P`
440
451
Pixel transfer size (default = 16 bit RGB) _(optional)_
0 commit comments