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

# [NAME](#NAME)

**DS2438** - Smart Battery Monitor

# [SYNOPSIS](#SYNOPSIS)

## [Temperature Voltages and Current.](#Temperature_Voltages_and_Current.)

**26** \[.]XXXXXXXXXXXX\[XX]\[/\[ **CA** | **EE** | **date** | **disconnect/date** | **disconnect/udate** | **endcharge/date** | **endcharge/udate** | **IAD** | **offset** | **pages/page.\[0-7|ALL]** | **temperature** | **latesttemp** | **udate** | **VAD** | **VDD** | **vis** |

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

]]

## [Humidity sensor](#Humidity_sensor)

**26** \[.]XXXXXXXXXXXX\[XX]\[/\[ **HIH4000/humidity** | **HIH5030/humidity** | **HTM1735/humidity** | **DATANAB/reset** | **DATANAB/humidity** | **humidity** | **temperature** ]]

## [Barometer](#Barometer)

**26** \[.]XXXXXXXXXXXX\[XX]\[/\[ **B1-R1-A/pressure** | **B1-R1-A/gain** | **B1-R1-A/offset** | ]]

## [Light](#Light)

**26** \[.]XXXXXXXXXXXX\[XX]\[/\[ **S3-R1-A/current** | **S3-R1-A/illuminance** | **S3-R1-A/gain** ]]

# [FAMILY CODE](#FAMILY_CODE)

*26*

# [SPECIAL PROPERTIES](#SPECIAL_PROPERTIES)

## [pages/page.0 ... pages/page.7 pages/page.ALL](#pages/page.0_..._pages/page.7_pages/page.ALL)

*read-write, binary*  
Memory is split into 8 pages of 8 bytes each. Only the pages 3-7 are really available, and some of that appears to be reserved. See the datasheet for details.  
*ALL* is an aggregate of the pages. Each page is accessed sequentially.

## [temperature](#temperature)

*read-only, floating point*  
*Temperature* read by the chip at high resolution (~13 bits). Units are selected from the invoking command line. See [**owfs(1)**](/man/os/owfs/owfs.1) or [**owhttpd(1)**](/man/os/owfs/owhttpd.1) for choices. Default is Celsius. Conversion takes ~20 msec.

## [latesttemp](#latesttemp)

*read-only, floating point*  
Latest measured temperature. Reading this node will never trigger a temperature conversion. Intended for use in conjunction with **/simultaneous/temperature.**

## [VAD VDD](#VAD_VDD)

*read-only, floating point*  
Voltage read (~10 bits) at the one of the chip's two supply voltages. Range VDD= 2.4V to 10V, VAD=1.5 to 10V.

## [vis](#vis)

*read-only, floating point*  
Current sensor reading, as a voltage difference. Value is in volts.  
Actual current depends on Rsens resistor (see datasheet).  
The formula for current is I = vis / Rsens  
with units in Amps and Ohms.  
Current measurement will be temporarily enabled (see *Ienable* ) if not currently enabled (pun intended) for this reading.

# [CONFIGURATION PROPERTIES](#CONFIGURATION_PROPERTIES)

## [CA](#CA)

*read-write, yes-no*  
*Current Accumulator Configuration* flag bit. If "on" (1) current is stored in page 7 bytes 4-7. If "off" (0) that page can be used for general storage. See the datasheet for more information.

## [EE](#EE)

*read-write, yes-no*  
*Current Accumulator Shadow* flag bit. If "on" (1) current reading is stored to EEPROM. If "off" (0) that data will be lost when chip loses power. See the datasheet for more information

## [IAD](#IAD)

*read-write, yes-no*  
*Current A/D Control* flag bit. If "on" (1) current measured at 36.41 Hz. If "off" (0) current measurements won't be made. See the datasheet for more information.

# [DATE PROPERTIES](#DATE_PROPERTIES)

## [date](#date)

*read-write, ascii*  
26 character date representation of the *counter* value. Increments once per second.  
Setting *date* to a null string will put the current system time.  
Accepted date formats are:  
Sat\[urday] March 12 12:23:59 2001  
Apr\[il] 4 9:34:56 2002  
3/23/04 23:34:57  
current locale setting (your system's format)

## [disconnect/date](#disconnect/date)

*read-write, ascii*  
26 character date representation of the *disconnect/udate* value. Time when the battery pack waws removed from the charger. Format is the same as the *date* property.

## [disconnect/udate](#disconnect/udate)

*read-write, unsigned integer*  
Representation of *disconnect/date* as a number. See *udate* for details.

## [endcharge/date](#endcharge/date)

*read-write, ascii*  
26 character date representation of the *endcharge/udate* value. Format is the same as the *date* property.

## [endcharge/udate](#endcharge/udate)

*read-write, unsigned integer*  
Representation of *endcharge/date* as a number. See *udate* for details.

## [udate](#udate)

*read-write, unsigned integer*  
Time represented as a number. *udate* increments once per second.  
Usually set to unix time standard: number of seconds since Jan 1, 1970. The *date* field will be the unix representation (ascii text) of *udate* and setting either will change the other.

# [HUMIDITY PROPERTIES](#HUMIDITY_PROPERTIES)

## [HIH4000/humidity](#HIH4000/humidity)

*read-only, floating point*  
Relative humidity, as percent (1-100 scale).  
This value is for a design based on Honeywell's HIH-4000 humidity sensor.

## [HIH5030/humidity](#HIH5030/humidity)

*read-only, floating point*  
Relative humidity, as percent (1-100 scale).  
This value is for a design based on Honeywell's HIH-5030/5031 humidity sensor.

## [HTM1735/humidity](#HTM1735/humidity)

*read-only, floating point*  
Relative humidity, as percent (1-100 scale).  
This value is for a design based on Humirel's HTM-1735 humidity sensor.

## [DATANAB/humidity](#DATANAB/humidity)

*read-only, floating point*  
Based on DataNAB's humidity sensor. It uses a HIH-4000 sensor and the current sensning rather than voltage readings from the DS2438. Calibration values are stored on chip, and a check field is stored in chip memory.

## [DATANAB/reset](#DATANAB/reset)

*write-only, yes-no*  
Used to read calibration values and set the chip to current reading more. Should be automatically called when a humidity reading is requested.

## [humidity](#humidity)

*read-only, floating point*  
Relative humidity, as percent (1-100 scale).  
The **DS2438** actually does not read humidity, but a widely available and publicised circuit based on the chip, does. This design is for the common Honeywell HIH-3610 humidity chip. The mostly compatible HIH-4000 chip uses different temperature compensation, so is better read from the *HIH4000/humidity* value. See the datasheets for details.  
If the chip is instead a DATANAB design, the *DATANAB/humidity* value will be automatically used.

# [BAROMETER PROPERTIES](#BAROMETER_PROPERTIES)

## [B1-R1-A/pressure](#B1-R1-A/pressure)

*read-only, floating point*  
Pressure reading, as milli-bars, or other unit depending on *settings/units/pressure\_scale*.  
This value is for the B1-R1-A barometer from Hobby-Boards, and assumes the standard calibration.

## [B1-R1-A/gain](#B1-R1-A/gain)

*read/write, floating point*  
Calibration of pressure gain, as signed number, expressed as the same units as *B1-R1-A/pressure* per volt.  
This value will be multiplied with the measured voltage to get the *B1-R1-A/pressure* reading. It may have to be fine tuned for calibration purposes, although with the standard sensor, it will often be good enough to keep it as is.

## [B1-R1-A/offset](#B1-R1-A/offset)

*read/write, floating point*  
Calibration of pressure offset, as signed number, same units as *B1-R1-A/pressure.*  
This value will be added to the *B1-R1-A/pressure* reading. The default value is 904.7 millibars, which may be altered to to compensate for elevation.

# [SOLAR SENSOR PROPERTIES](#SOLAR_SENSOR_PROPERTIES)

## [S3-R1-A/current](#S3-R1-A/current)

*read-only, floating point*  
Photo-diode current, in micro-amperes.  
This value is for the S3-R1-A solar radiation sensor from Hobby-Boards. Due to noise and offsets, this value may read as a negative number in low light conditions. The *offset* register can be modified to reduce the offset as much as possible.

## [S3-R1-A/illumination](#S3-R1-A/illumination)

*read-only, floating point*  
Illumination, in lux. Always a positive number.  
This value is the lux reading from the solar sensor, taking *S3-R1-A/gain into consideration.*

## [S3-R1-A/gain](#S3-R1-A/gain)

*read/write, floating point*  
Calibration of photo-diode gain expressed as lux per micro-amperes. The default value is for the SFH203P photo-diode from Osram, used bare. A different gain may be used for instance to compensate for an integrathing, white sphere placed over the diode.  
This value is for the S3-R1-A solar radiation sensor from Hobby-Boards, using the SFH203P photo-diode from Osram.

# [MULTISENSOR PROPERTIES](#MULTISENSOR_PROPERTIES)

## [MultiSensor/type](#MultiSensor/type)

*read-only, ascii*  
For *iButtonLink's MultiSensor* line of 1-wire devices, give the specific configuration based on a data byte set in memory. (Byte 0 of page 3). This can help interpretation of the sensor values, distinguishing, current from water from light.

## [offset](#offset)

*read-write, integer*  
Correction for *current* readings. A value between -256 and 255. See the datasheet for details. Should be set to the negative of a true zero *current* reading.

# [STANDARD PROPERTIES](#STANDARD_PROPERTIES)

See the file man3/standard.3so.

# [ALARMS](#ALARMS)

None.

# [DESCRIPTION](#DESCRIPTION)

See the file man3/description.3so.

## [DS2438](#DS2438)

The [**DS2438 (3)**](/man/os/owfs/DS2438.3) is a more complete form of the **DS2436** battery chip. Current sensing is available, but not implemented. The major advantage compared to the **DS2436** is that two voltages can be read, allowing one to correct circuit measurements for supply voltage and temperature. A better comparison is the **DS276x** family of chips.

# [ADDRESSING](#ADDRESSING)

See the file man3/addressing.3so.

# [DATASHEET](#DATASHEET)

http://pdfserv.maxim-ic.com/en/ds/DS2438.pdf  
http://pdfserv.maxim-ic.com/en/an/humsensor.pdf  
http://goo.gl/o9DH0 (Redirects to 009012\_2.pdf PDF file on honeywell.com website)  
http://www.phanderson.com/hih-4000.pdf  
http://www.humirel.com/product/fichier/HTM1735%20RevG%20.pdf

# [SEE ALSO](#SEE_ALSO)

See the file man3/seealso.3so.

# [AVAILABILITY](#AVAILABILITY)

http://www.owfs.org

# [AUTHOR](#AUTHOR)

Paul Alfille (paul.alfille@gmail.com) Egil Kvaleberg

2003 OWFS Manpage

---

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