Kernel driver kbatt

Supported chips:

  • KEBA battery monitoring controller (IP core in FPGA)

    Prefix: ‘kbatt’

Authors:

Gerhard Engleder <eg@keba.com> Petar Bojanic <boja@keba.com>

Description

The KEBA battery monitoring controller is an IP core for FPGAs, which monitors the health of a coin cell battery. The coin cell battery is typically used to supply the RTC during power off to keep the current time. E.g., the CP500 FPGA includes this IP core to monitor the coin cell battery of PLCs and the corresponding cp500 driver creates an auxiliary device for the kbatt driver.

This driver provides information about the coin cell battery health to user space. Actually the user space shall be informed that the coin cell battery is nearly empty and needs to be replaced.

The coin cell battery must be tested actively to get to know if its nearly empty or not. Therefore, a load is put on the coin cell battery and the resulting voltage is evaluated. This evaluation is done by some hard wired analog logic, which compares the voltage to a defined limit. If the voltage is above the limit, then the coin cell battery is assumed to be ok. If the voltage is below the limit, then the coin cell battery is nearly empty (or broken, removed, ...) and shall be replaced by a new one. The KEBA battery monitoring controller allows to start the test of the coin cell battery and to get the result if the voltage is above or below the limit. The actual voltage is not available. Only the information if the voltage is below a limit is available.

The test load, which is put on the coin cell battery for the health check, is similar to the load during power off. Therefore, the lifetime of the coin cell battery is reduced directly by the duration of each test. To limit the negative impact to the lifetime the test is limited to at most once every 10 seconds. The test load is put on the coin cell battery for 100ms. Thus, in worst case the coin cell battery lifetime is reduced by 1% of the uptime or 3.65 days per year. As the coin cell battery lasts multiple years, this lifetime reduction negligible.

This driver only provides a single alarm attribute, which is raised when the coin cell battery is nearly empty.

Attribute

R/W

Contents

in0_min_alarm

R

voltage of coin cell battery under load is below limit