LCD(3) One-Wire File System LCD(3)

# [NAME](#NAME)

**LCD** - LCD controller

# [SYNOPSIS](#SYNOPSIS)

1-wire LCD controller by Louis Swart

**FF** \[.]XXXXXXXXXXXX\[XX]\[/\[ **backlight** | **counters.\[0-3|ALL]** | **cumulative.\[0-3|ALL]** | **branch.\[0-1|ALL]** | **data** | **gpio.\[0-3|ALL]** | **LCDon** | **line16.\[0-3|ALL]** | **line20.\[0-3|ALL]** | **line40.\[0|1|ALL]** | **memory** | **register** | **screen16** | **screen20** | **screen40** | **version** |

See the file man3/standard\_mini.3so.

]]

# [FAMILY CODE](#FAMILY_CODE)

*FF*

# [SPECIAL PROPERTIES](#SPECIAL_PROPERTIES)

## [backlight](#backlight)

*write-only,yes-no*  
Write a non-zero value to turn on the LCD backlight. Write zero to turn off.

## [counters\[0-3,ALL\]](#counters_0-3,ALL_)

*read-only,unsigned integer*  
Read the number of times the gpio has been externally changed. If wired to a push switch, will count twice per button press. The LCD firmware resets all the counter when any one is read. Use the *ALL* extension to read them all, simultaneously, or use the *cumulative* property instead.  
*ALL* is an aggregate of the properties, comma separated. Read atomically.

## [cumulative\[0-3,ALL\]](#cumulative_0-3,ALL_)

*read-write,unsigned integer*  
Cumulative sum of the *counters* property. To reset, write a zero. The cumulative counter can have any value written, which allows preservation of counts across program restarts if the value at program termination is stored.  
Reading *cumulative* will reset the *counters* property. All the cumulative counters will be updated so that no counts will be lost. Reads of *counters* can be interspersed without losing *cumulative* accuracy.  
Note: *cumulative* requires the *caching* system be compiled into libow.  
*ALL* is an aggregate of the properties, comma separated.

## [data](#data)

*read-write,unsigned int*  
Contents of the LCD data byte (see datasheet). Not usually needed.

## [LCDon](#LCDon)

*write-only,yes-no*  
Write a non-zero value to turn on the LCD screen (also clears). Write a zero to turn off.

## [line16\[0-3,ALL\] line20\[0-3,ALL\] line40\[0-1,ALL\]](#line16_0-3,ALL__line20_0-3,ALL__line40_0-1,ALL_)

*write-only,ascii*  
Write text to the LCD screen. Assumes 16/20/40 char width. (Cannot be determined from controller).  
*ALL* is an aggregate of the properties, comma separated. Each is set in turn.

## [memory](#memory)

*read-write,binary*  
112 bytes of on-board memory.

## [register](#register)

*read-write,unsigned int*  
Contents of the LCD register (see datasheet). Not usually needed.

## [screen16 screen20 screen40](#screen16_screen20_screen40)

*write-only,ascii*  
Write text to the LCD screen. Assumes 16/20/40 char width. (Cannot be determined from controller).

## [version](#version)

*read-only,ascii*  
Self-reported LCD controller version. 16 bytes.

# [STANDARD PROPERTIES](#STANDARD_PROPERTIES)

See the file man3/standard.3so.

# [ALARMS](#ALARMS)

None implemented.

# [DESCRIPTION](#DESCRIPTION)

See the file man3/description.3so.

## [LCD](#LCD)

The [**LCD (3)**](/man/os/owfs/LCD.3) controller is a microprocessor driven device that simulates the operation of 1-wire devices. It's creator has arbitrarily chosen the *family code* FF. The controller requires external power. Full details are available from the designer.  
The main draw of the **LCD** controller is as any easy way to provide output to users.

# [ADDRESSING](#ADDRESSING)

See the file man3/addressing.3so.

# [DATASHEET](#DATASHEET)

Available from http://www.louisswart.co.za/1-Wire\_index.html

# [SEE ALSO](#SEE_ALSO)

See the file man3/seealso.3so.

# [AVAILABILITY](#AVAILABILITY)

http://www.owfs.org

# [AUTHOR](#AUTHOR)

Paul Alfille (paul.alfille@gmail.com)

2003 OWFS Manpage

---

Document: LCD(3) from owfs 3.2.4-r9 (Chainguard OS)
Source: https://github.com/owfs/owfs
