disclaimer / info:
DISCLAIMER:
THIS IS EXPERIMENTAL SOFTWARE AND HARDWARE. USE AT YOUR OWN RISK. THE MAINTAINER(S) OF THESE PAGES AND THE DEVELOPER(S) OF SOFTWARE AND HARDWARE PRESENTED ON THESE PAGES CAN NOT BE HELD LIABLE UNDER ANY CIRCUMSTANCES FOR DAMAGE TO HARDWARE OR SOFTWARE, LOST DATA, OR OTHER DIRECT OR INDIRECT DAMAGE RESULTING FROM THE USE OF THIS SOFTWARE OR HARDWARE. IF YOU DO NOT AGREE TO THESE CONDITIONS, YOU ARE NOT PERMITTED TO USE OR FURTHER DISTRIBUTE THIS SOFTWARE OR TO USE ANY TEMPLATES FOR BUILDING HARDWARE PRESENTED HERE.
- this page deals with connecting an ericsson r520 or t65 display to a parallel or serial port and drive it using
serdisplib
- i'm not responsible for the content of external web pages
- external web pages will generally open in separate browser windows or tabs
- english is not my native language. please keep that in mind (corrections of english grammar and formulations are very welcome!)
- email: mrwastl at users.sourceforge.net
ericsson r520 / t65 displays:
description
ericsson r520/t65 displays are controlled using an i2c-based on-glass controller (model name unknown).
frontview of an ericsson r520 display | frontview of an ericsson t65 display |
specifications
resolution | 101 x 67 |
colours | 4 greylevels |
controller | i2c-based, model name unknown |
backlight | no |
adjustable contrast | no |
dimensions | module: about 45 x 45 mm (without speaker), display area: 30 x 24 mm (measured) |
display variations
name | aliases | description | example |
---|---|---|---|
ERICSSONR520 | E///R520, R520 | Ericsson R520/T65 i2c-displays | serdisp_init(sdcd, "ERICSSONR520", ""); |
pinout
pinout for ericsson r520/t65 displays1 VLCD +10V (lcd power supply, 10V +/-1V (measured)) 2 VLOGIC +2.7V (logic power supply, measured) 3 SDA i2c-SDA 4 GND GND 5 SCLK i2c-SCLK 6 /RES active low reset annotations
|
addressing
pages vs. rows:
the display is organised in columns and pages: 4 pixel-rows are combined to a so called page (one pixel requires 2 bit).
as only whole bytes can be transferred to the display, a single pixel cannot be changed without knowing its 3 'neighbour' pixels.
so a display buffer was introduced in the library. pixel changes are all done in this buffer and in a separate step only changed 'page bytes' are transferred (using an optimising algorithm) to the display.
some images
ericsson r520 display showing a test image | ericsson r520 display with output generated by graphlcd |
shadow man ( © by redhat) rendered by multidisplay |
another image rendered by multidisplay |
top ^
connecting an ericsson r520 or t65 display to the parallel port:
intro
i2c-displays only require two signal lines, SDA (data) and SCLK (clock).
furthermore ericsson r520/t65 displays have a RESET (/RES) signal line - but this one can be connected to a hardware reset circuit.
furthermore ericsson r520/t65 displays have a RESET (/RES) signal line - but this one can be connected to a hardware reset circuit.
i used D0 and D1 to connect the display to the parallel port. if a hardware reset circuit was not used, /RES was connected to D5.
wiring
signals:
+----------------------------+ | 1 2 3 4 5 6 | | # # # # # # | +------================------+ | | | | | | | rear view | | connector is visible | | | | ??n/a?? | | | | | | | +----------------------------+ Signal name PC LCD Signal name ---------------------------------------------------------- Data 0 2 3 SDATA i2c-SDA Data 1 3 5 SCLK i2c-SCLK Data 5 7 6 /RES active low reset (or via using a hardware reset circuit) Ground 18 4 GND Ground -- 1 VLCD +10 V (lcd power supply, some value around 10V) -- 2 VLOGIC +2.7V (logic power supply, some value around 2.7) Source: user "z01" from forum.lcdinfo.com; voltages measured by Wolfgang Astleitner
circuit:
with hardware reset circuit:
part list:
Part# Type Value Annotation --------------------------------------------------------------------------------------- R1-R2 Resistor 1 kOhm R3 Resistor 10 kOhm C1 Capacitor 10 uF
with software reset:
part list:
Part# Type Value Annotation --------------------------------------------------------------------------------------- R1-R3 Resistor 1 kOhm
remarks:
- VLOG needs to be about 2.7V
- changing VLCD influences the contrast
(possible values from +9V to +11V ==> low to high contrast; best readable when using +10V; all values measured using trial&error) - default wiring in serdisplib is: DO = SDA, D1 = SCLK, and a hardware reset circuit is used for /RES.
top ^
connecting an ericsson r520 or t65 display to the serial port:
intro
as i2c-displays only need two signal lines, it may be driven using the serial port.
also the power can be gained through it (so no extra power supply is needed!)
wiring
signals:
+----------------------------+ | 1 2 3 4 5 6 | | # # # # # # | +------================------+ | | | | | | | rear view | | connector is visible | | | | ??n/a?? | | | | | | | +----------------------------+ Signal name PC LCD Signal name ---------------------------------------------------------- TxD 3 1 VLCD +10V (lcd power supply) TxD 3 2 VLOGIC +2.7V (logic power supply) DTR 4 3 SDATA i2c-SDA GND 5 4 GND Ground RTS 7 5 SCLK i2c-SCLK --- - 6 /RES active low reset, controlled using a hardware reset circuitcircuit, part list will follow ...
top ^
passing options through serdisp_init():
intro
using the third parameter of
common information about passing options and customisable wiring can be found in a separate document.
serdisp_init()
, driver specific options and custom wiring can be set.common information about passing options and customisable wiring can be found in a separate document.
examples: serdisp_init(sdcd, "ERICSSONR520", "INVERT=YES"); serdisp_init(sdcd, "R520", "WIRING=SDA:D6,SCLK:D7");
options
identifier | short | remark | default |
---|---|---|---|
ROTATE | ROT | rotate display (1 == 180 degrees) | 0 |
INVERT | INV | invert display | 0 |
DELAY | delay after each write/read operation.0 .. no delay 1 .. one call of gettimeofday() >1 .. delay at least x nanoseconds | 0 | |
WIRING | WIRE | pre-defined or customisable wiring (only when protocol=PAR , no customisable wiring when protocol=SERRAW ) | 0 |
ranges, aliases
identifier | range | aliases |
---|---|---|
ROTATE | 0, 1, 90, 180, 270 | YES=180, NO=0, TRUE=180, FALSE=0 |
INVERT | 0, 1 | YES=1, NO=0, TRUE=1, FALSE=0 |
DELAY | >= 0 | NONE=0 |
pre-defined wiring definitions
identifier | numeric id | protocol | description |
---|---|---|---|
Original | 0 | PAR | parallel port wiring using hardware reset |
Rifer | 1 | PAR | Rifer wiring (SDA -> pin 2, SCLK -> pin 16) |
OrigReset | 2 | PAR | parallel port wiring using software reset |
display signals
identifier | description | mandatory |
---|---|---|
SDA | serial data input | * |
SCLK | serial clock | * |
RESET | reset, optional if hardware reset circuit is used | |
BACKLIGHT | backlight, optional |
annotations
- no customisable wiring when connecting display to serial port
top ^
links:
i2c | |||
---|---|---|---|
I2C-bus | Wikipedia page dealing with the i2c-bus (a protocol created by philips). | (english) | Wikipedia: I²C |
top ^
history:
2017-04-10 | small enhancement of page; replaced a dead link through wikipeda page |
2008-07-29 | added ericsson t65 displays which are pinout compliant and seem to have the same controller |
2007-03-31 | first release |
top ^