1LCD(3)                       One-Wire File System                       LCD(3)
2
3
4

NAME

6       LCD - LCD controller
7

SYNOPSIS

9       1-wire LCD controller by Louis Swart
10
11       FF  [.]XXXXXXXXXXXX[XX][/[  backlight  |  counters.[0-3|ALL]  | cumula‐
12       tive.[0-3|ALL] | branch.[0-1|ALL] | data |  gpio.[0-3|ALL]  |  LCDon  |
13       line16.[0-3|ALL]  | line20.[0-3|ALL] | line40.[0|1|ALL] | memory | reg‐
14       ister | screen16 | screen20 | screen40 | version | address | crc8 |  id
15       | locator | r_address | r_id | r_locator | type ]]
16

FAMILY CODE

18       FF
19

SPECIAL PROPERTIES

21   backlight
22       write-only,yes-no
23       Write a non-zero value to turn on the LCD backlight. Write zero to turn
24       off.
25
26   counters[0-3,ALL]
27       read-only,unsigned integer
28       Read the number of times the gpio has been externally changed. If wired
29       to  a  push switch, will count twice per button press. The LCD firmware
30       resets all the counter when any one is read. Use the ALL  extension  to
31       read them all, simultaneously, or use the cumulative property instead.
32       ALL  is  an  aggregate  of the properties, comma separated. Read atomi‐
33       cally.
34
35   cumulative[0-3,ALL]
36       read-write,unsigned integer
37       Cumulative sum of the counters property. To reset, write  a  zero.  The
38       cumulative  counter  can have any value written, which allows preserva‐
39       tion of counts across program restarts if the value at program termina‐
40       tion is stored.
41       Reading cumulative will reset the counters property. All the cumulative
42       counters will be updated so that no counts will be lost. Reads of coun‐
43       ters can be interspersed without losing cumulative accuracy.
44       Note: cumulative requires the caching system be compiled into libow.
45       ALL is an aggregate of the properties, comma separated.
46
47   data
48       read-write,unsigned int
49       Contents of the LCD data byte (see datasheet). Not usually needed.
50
51   LCDon
52       write-only,yes-no
53       Write a non-zero value to turn on the LCD screen (also clears). Write a
54       zero to turn off.
55
56   line16[0-3,ALL] line20[0-3,ALL] line40[0-1,ALL]
57       write-only,ascii
58       Write text to the LCD screen. Assumes 16/20/40 char width.  (Cannot  be
59       determined from controller).
60       ALL  is an aggregate of the properties, comma separated. Each is set in
61       turn.
62
63   memory
64       read-write,binary
65       112 bytes of on-board memory.
66
67   register
68       read-write,unsigned int
69       Contents of the LCD register (see datasheet). Not usually needed.
70
71   screen16 screen20 screen40
72       write-only,ascii
73       Write text to the LCD screen. Assumes 16/20/40 char width.  (Cannot  be
74       determined from controller).
75
76   version
77       read-only,ascii
78       Self-reported LCD controller version. 16 bytes.
79

STANDARD PROPERTIES

81   address
82   r_address
83       read-only, ascii
84       The  entire  64-bit  unique  ID. Given as upper case hexidecimal digits
85       (0-9A-F).
86       address starts with the family code
87       r address is the address in reverse order, which is often used in other
88       applications and labeling.
89
90   crc8
91       read-only, ascii
92       The  8-bit error correction portion. Uses cyclic redundancy check. Com‐
93       puted from the preceding 56 bits of the  unique  ID  number.  Given  as
94       upper case hexadecimal digits (0-9A-F).
95
96   family
97       read-only, ascii
98       The  8-bit  family  code. Unique to each type of device. Given as upper
99       case hexadecimal digits (0-9A-F).
100
101   id
102   r_id
103       read-only, ascii
104       The 48-bit middle portion of the unique ID number. Does not include the
105       family code or CRC. Given as upper case hexadecimal digits (0-9A-F).
106       r  id is the id in reverse order, which is often used in other applica‐
107       tions and labeling.
108
109   locator
110   r_locator
111       read-only, ascii
112       Uses an extension of the 1-wire design from  iButtonLink  company  that
113       associated  1-wire  physical  connections with a unique 1-wire code. If
114       the connection is behind a Link Locator the locator will show a  unique
115       8-byte number (16 character hexadecimal) starting with family code FE.
116       If  no  Link  Locator is between the device and the master, the locator
117       field will be all FF.
118       r locator is the locator in reverse order.
119
120   present (DEPRECATED)
121       read-only, yes-no
122       Is the device currently present on the 1-wire bus?
123
124   type
125       read-only, ascii
126       Part name assigned by Dallas Semi. E.g.  DS2401  Alternative  packaging
127       (iButton vs chip) will not be distiguished.
128

ALARMS

130       None implemented.
131

DESCRIPTION

133   1-Wire
134       1-wire is a wiring protocol and series of devices designed and manufac‐
135       tured by Dallas Semiconductor, Inc. The bus is  a  low-power  low-speed
136       low-connector scheme where the data line can also provide power.
137
138       Each  device  is  uniquely and unalterably numbered during manufacture.
139       There are a wide variety of devices, including memory, sensors  (humid‐
140       ity, temperature, voltage, contact, current), switches, timers and data
141       loggers. More complex devices (like thermocouple sensors) can be  built
142       with  these  basic  devices.  There  are  also 1-wire devices that have
143       encryption included.
144
145       The 1-wire scheme uses a single bus master and multiple slaves  on  the
146       same  wire.  The bus master initiates all communication. The slaves can
147       be individually discovered and addressed using their unique ID.
148
149       Bus masters come in a variety of configurations including serial,  par‐
150       allel, i2c, network or USB adapters.
151
152   OWFS design
153       OWFS  is  a  suite of programs that designed to make the 1-wire bus and
154       its devices easily accessible. The underlying principle is to create  a
155       virtual  filesystem,  with  the  unique ID being the directory, and the
156       individual properties of the device are  represented  as  simple  files
157       that can be read and written.
158
159       Details  of  the  individual slave or master design are hidden behind a
160       consistent interface. The goal is to provide an easy set of tools for a
161       software  designer  to create monitoring or control applications. There
162       are some performance enhancements in the implementation, including data
163       caching, parallel access to bus masters, and aggregation of device com‐
164       munication. Still the fundamental goal has been ease of use,  flexibil‐
165       ity and correctness rather than speed.
166
167   LCD
168       The LCD (3) controller is a microprocessor driven device that simulates
169       the operation of 1-wire devices. It's creator  has  arbitrarily  chosen
170       the  family  code  FF.  The  controller  requires  external power. Full
171       details are available from the designer.
172       The main draw of the LCD controller is as any easy way to provide  out‐
173       put to users.
174

ADDRESSING

176       All  1-wire  devices are factory assigned a unique 64-bit address. This
177       address is of the form:
178
179       Family Code
180              8 bits
181
182       Address
183              48 bits
184
185       CRC    8 bits
186
187       Addressing under OWFS is in hexadecimal, of form:
188
189              01.123456789ABC
190
191       where 01 is an example 8-bit family code, and 12345678ABC is an example
192       48 bit address.
193
194       The  dot  is  optional,  and the CRC code can included. If included, it
195       must be correct.
196

DATASHEET

198       Available from http://www.louisswart.co.za/1-Wire_index.html
199

SEE ALSO

201   Programs
202       owfs (1) owhttpd (1) owftpd (1)  owserver  (1)  owdir  (1)  owread  (1)
203       owwrite (1) owpresent (1) owtap (1)
204
205   Configuration and testing
206       owfs (5) owtap (1) owmon (1)
207
208   Language bindings
209       owtcl (3) owperl (3) owcapi (3)
210
211   Clocks
212       DS1427  (3)  DS1904  (3)  DS1994  (3) DS2404 (3) DS2404S (3) DS2415 (3)
213       DS2417 (3)
214
215   ID
216       DS2401 (3) DS2411 (3) DS1990A (3)
217
218   Memory
219       DS1982 (3) DS1985 (3) DS1986 (3)  DS1991  (3)  DS1992  (3)  DS1993  (3)
220       DS1995  (3)  DS1996  (3)  DS2430A  (3) DS2431 (3) DS2433 (3) DS2502 (3)
221       DS2506 (3) DS28E04 (3) DS28EC20 (3)
222
223   Switches
224       DS2405 (3) DS2406 (3) DS2408 (3) DS2409 (3) DS2413 (3) DS28EA00 (3)
225
226   Temperature
227       DS1822 (3) DS1825 (3) DS1820 (3) DS18B20 (3)  DS18S20  (3)  DS1920  (3)
228       DS1921  (3) DS1821 (3) DS28EA00 (3) DS28E04 (3) EDS0064 (3) EDS0065 (3)
229       EDS0066 (3) EDS0067 (3) EDS0068 (3) EDS0071 (3)  EDS0072  (3)  MAX31826
230       (3)
231
232   Humidity
233       DS1922 (3) DS2438 (3) EDS0065 (3) EDS0068 (3)
234
235   Voltage
236       DS2450 (3)
237
238   Resistance
239       DS2890 (3)
240
241   Multifunction (current, voltage, temperature)
242       DS2436  (3)  DS2437  (3)  DS2438  (3)  DS2751 (3) DS2755 (3) DS2756 (3)
243       DS2760 (3) DS2770 (3) DS2780 (3) DS2781 (3) DS2788 (3) DS2784 (3)
244
245   Counter
246       DS2423 (3)
247
248   LCD Screen
249       LCD (3) DS2408 (3)
250
251   Crypto
252       DS1977 (3)
253
254   Pressure
255       DS2406 (3) TAI8570 (3) EDS0066 (3) EDS0068 (3)
256
257   Moisture
258       EEEF (3) DS2438 (3)
259

AVAILABILITY

261       http://www.owfs.org
262

AUTHOR

264       Paul Alfille (paul.alfille@gmail.com)
265
266
267
268OWFS Manpage                         2003                               LCD(3)
Impressum