Scroll to navigation

DS3231(4) Device Drivers Manual DS3231(4)

NAME

ds3231Extremely Accurate i2c-integrated RTC/TCXO/Crystal

SYNOPSIS

device iic
device iicbus
device ds3231

DESCRIPTION

The ds3231 is a low-cost, extremely accurate I2C realtime clock (RTC) with an integrated temperature-compensated crystal oscillator (TCXO) and crystal.

The device incorporates a battery input and maintains accurate timekeeping when main power to the device is interrupted.

Access to ds3231 data is made with the sysctl(8) interface:

dev.ds3231.0.%desc: Maxim DS3231 RTC
dev.ds3231.0.%driver: ds3231
dev.ds3231.0.%location: addr=0xd0
dev.ds3231.0.%pnpinfo: name=rtc compat=maxim,ds3231
dev.ds3231.0.%parent: iicbus1
dev.ds3231.0.temperature: 23.2C
dev.ds3231.0.temp_conv: 0
dev.ds3231.0.bbsqw: 0
dev.ds3231.0.sqw_freq: 8192
dev.ds3231.0.sqw_mode: interrupt
dev.ds3231.0.32khz_enable: 1
dev.ds3231.%d.temperature
The read-only value of the current temperature read by the RTC.
dev.ds3231.%d.temp_conv
Start a new temperature conversion. When read as 1, a temperature conversion is in progress. When read as 0 and then set to 1, a temperature conversion is started. The temperature conversion runs automatically on power up and once every 64 seconds afterward.
dev.ds3231.%d.bbsqw
If set to 1 and dev.ds3231.%d.sqw_mode is set to square-wave, battery-backed square-wave output is enabled. If set to 0, the SQW pin will be set to high impendance when the RTC is being powered by battery.
dev.ds3231.%d.sqw_freq
Select the frequency of the SQW pin when the square-wave output is enabled on dev.ds3231.%d.sqw_mode. It can be set to 1, 1024, 4096, and 8192.
dev.ds3231.%d.sqw_mode
Set the operation mode for the SQW pin. It can be set to 'interrupt' (default) or 'square-wave'. In interrupt mode, the SQW pin is used to generate interrupts for the RTC alarms. In square-wave mode, the SQW pin drives a square-wave of dev.ds3231.%d.sqw_freq frequency.
dev.ds3231.%d.32khz_enable
Enable the 32kHz output.

Please check the ds3231 datasheet for more details.

On a device.hints(5) based system, such as MIPS, these values are configurable for ds3231:

hint.ds3231.%d.at
The iicbus(4) that the ds3231 is connected to.
hint.ds3231.%d.addr
The 8-bit i2c address of ds3231. The default 8-bit address for ds3231 is 0xd0.

On a FDT(4) based system the following properties must be set:

compatible
Must always be set to "maxim,ds3231".
reg
The 7-bit i2c address of ds3231. The default 7-bit address for ds3231 is 0x68.

SEE ALSO

fdt(4), iic(4), iicbus(4), sysctl(8)

HISTORY

The ds3231 driver first appeared in FreeBSD 11.0.

AUTHORS

The ds3231 driver and this manual page were written by Luiz Otavio O Souza <loos@FreeBSD.org>.

February 12, 2016 Debian