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

# [NAME](#NAME)

**DS2780** - Stand-alone Fuel Gauge IC

[**DS2788**](#DS2788)

\- Stand-alone Fuel Gauge with LED Drivers

# [SYNOPSIS](#SYNOPSIS)

## [Temperature Voltage Current Memory and Switch.](#Temperature_Voltage_Current_Memory_and_Switch.)

**32** \[.]XXXXXXXXXXXX\[XX]\[/\[ **lock.\[0-1|ALL]** | **memory** | **pages/page.\[0-1|ALL]** | **PIO** | **sensed** | **temperature** | **vbias** | **vis** | **volt** | **volthours** |  
**aef** | **chgtf** | **ds** | **learnf** | **pmod** | **porf** | **rnaop** | **sef** | **uven** | **uvf** |

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

]]

## [Thermocouple](#Thermocouple)

**32** \[.]XXXXXXXXXXXX\[XX][/[ **temperature** | **typeX/range\_low** | **typeX/range\_high** | **typeX/temperature**

# [FAMILY CODE](#FAMILY_CODE)

*32*

# [SPECIAL PROPERTIES](#SPECIAL_PROPERTIES)

## [lock.\[0-1|ALL\]](#lock._0-1_ALL_)

*read-write, yes-no*  
Lock either of the two eprom pages to prevent further writes. Apparently setting *lock* is permanent.

## [memory](#memory)

*read-write, binary*  
Access to the full 256 byte memory range. Much of this space is reserved or special use. User space is the *page* area.  
See the *DATASHEET* for a full memory map.

## [pages/pages.\[0-1|ALL\]](#pages/pages._0-1_ALL_)

*read-write, binary* Two 16 byte areas of memory for user application. The *lock* property can prevent further alteration.  
NOTE that the *page* property is different from the common *OWFS* implementation in that all of *memory* is not accessible.

## [PIO](#PIO)

*write-only, yes-no*  
Controls the PIO pin allowing external switching.  
Writing "1" turns the PIO pin on (conducting). Writing "0" makes the pin non-conducting. The logical state of the voltage can be read with the *sensed* property. This will reflect the current voltage at the pin, not the value sent to *PIO*  
Note also that *PIO* will also be altered by the power-status of the *DS2680* See the datasheet for details.

## [sensed](#sensed)

*read-only, yes-no*  
The logical voltage at the PIO pin. Useful only if the *PIO* property is set to "0" (non-conducting).  
Value will be 0 or 1 depending on the voltage threshold.

## [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 is continuous.

## [vbias](#vbias)

*read-write, floating point*  
Fixed offset applied to each *vis* measurement. Used for the *volthours* value. Units are in **Volts.**  
Range -2.0mV to 2.0mV

## [vis](#vis)

*read-only, floating point*  
Current sensor reading (unknown external resistor). Measures the voltage gradient between the Vis pins. Units are in **Volts**  
The *vis* readings are integrated over time to provide the *volthours* property.  
The *current* reading is derived from *vis* assuming the internal 25 mOhm resistor is employed. There is no way to know this through software.

## [volt](#volt)

*read-only, floating point*  
Voltage read at the voltage sensor;. This is separate from the *vis* voltage that is used for *current* measurement. Units are **Volts**  
Range is between 0 and 4.75V

## [volthours](#volthours)

*read-write, floating point*  
Integral of *vis - vbias* over time. Units are in **volthours**

# [THERMOCOUPLE](#THERMOCOUPLE)

## [typeX/](#typeX/)

*directory*  
Thermocouple circuit using the *DS2780* to read the Seebeck voltage and the reference temperature. Since the type interpretation of the values read depends on the type of thermocouple, the correct directory must be chosen. Supported thermocouple types include types B, E, J, K, N, R, S and T.

## [typeX/range\_low typeX/ranges\_high](#typeX/range_low_typeX/ranges_high)

*read-only, flaoting point*  
The lower and upper temperature supported by this thermocouple (at least by the conversion routines). In the globally chosen temperature units.

## [typeX/temperature](#typeX/temperature)

*read-only, floating point*  
Thermocouple temperature. Requires a voltage and temperature conversion. Returned in globally chosen temperature units.  
Note: there are two types of temperature measurements possible. The *temperature* value in the main device directory is the reference temperature read at the chip. The *typeX/temperature* value is at the thermocouple junction, probably remote from the chip.

# [OBSCURE PROPERTIES](#OBSCURE_PROPERTIES)

## [aef chgtf dc learnf pmod porf rnaop sef uven uvf](#aef_chgtf_dc_learnf_pmod_porf_rnaop_sef_uven_uvf)

*varies, yes-no*  
Bit flags corresponding to various battery management functions of the chip. See the *DATASHEET* for details of the identically named entries.  
In general, writing "0" corresponds to a 0 bit value, and non-zero corresponds to a 1 bit value.

# [STANDARD PROPERTIES](#STANDARD_PROPERTIES)

See the file man3/standard.3so.

# [ALARMS](#ALARMS)

None.

# [DESCRIPTION](#DESCRIPTION)

See the file man3/description.3so.

## [DS2780](#DS2780)

The [**DS2780 (3)**](/man/os/owfs/DS2780.3) is a battery charging controller. It has elaborate algorithms for estimating battery capacity.

A number of interesting devices can be built with the **DS2780** including thermocouples. Support for thermocouples in built into the software, using the embedded thermister as the cold junction temperature.

# [ADDRESSING](#ADDRESSING)

See the file man3/addressing.3so.

# [DATASHEET](#DATASHEET)

http://pdfserv.maxim-ic.com/en/ds/DS2780.pdf  
http://pdfserv.maxim-ic.com/en/ds/DS2788.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)

2003 OWFS Manpage

---

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