72 lines
1.7 KiB
Markdown
72 lines
1.7 KiB
Markdown
![]() |
battery [![Build Status](https://travis-ci.org/distatus/battery.svg?branch=master)](https://travis-ci.org/distatus/battery) [![Go Report Card](https://goreportcard.com/badge/github.com/distatus/battery)](https://goreportcard.com/report/github.com/distatus/battery) [![GoDoc](https://godoc.org/github.com/distatus/battery?status.svg)](https://godoc.org/github.com/distatus/battery)
|
||
|
=======
|
||
|
|
||
|
Cross-platform, normalized battery information library.
|
||
|
|
||
|
Gives access to a system independent, typed battery state, capacity, charge and voltage values recalculated as necessary to be returned in mW, mWh or V units.
|
||
|
|
||
|
Currently supported systems:
|
||
|
|
||
|
* Linux 2.6.39+
|
||
|
* OS X 10.10+
|
||
|
* Windows XP+
|
||
|
* FreeBSD
|
||
|
* DragonFlyBSD
|
||
|
* NetBSD
|
||
|
* OpenBSD
|
||
|
* Solaris
|
||
|
|
||
|
Installation
|
||
|
------------
|
||
|
|
||
|
```bash
|
||
|
$ go get -u github.com/distatus/battery
|
||
|
```
|
||
|
|
||
|
Code Example
|
||
|
------------
|
||
|
|
||
|
```go
|
||
|
import (
|
||
|
"fmt"
|
||
|
|
||
|
"github.com/distatus/battery"
|
||
|
)
|
||
|
|
||
|
func main() {
|
||
|
batteries, err := battery.GetAll()
|
||
|
if err != nil {
|
||
|
fmt.Println("Could not get battery info!")
|
||
|
return
|
||
|
}
|
||
|
for i, battery := range batteries {
|
||
|
fmt.Printf("Bat%d: ", i)
|
||
|
fmt.Printf("state: %f, ", battery.State)
|
||
|
fmt.Printf("current capacity: %f mWh, ", battery.Current)
|
||
|
fmt.Printf("last full capacity: %f mWh, ", battery.Full)
|
||
|
fmt.Printf("design capacity: %f mWh, ", battery.Design)
|
||
|
fmt.Printf("charge rate: %f mW, ", battery.ChargeRate)
|
||
|
fmt.Printf("voltage: %f V, ", battery.Voltage)
|
||
|
fmt.Printf("design voltage: %f V\n", battery.DesignVoltage)
|
||
|
}
|
||
|
}
|
||
|
```
|
||
|
|
||
|
CLI
|
||
|
---
|
||
|
|
||
|
There is also a little utility which - more or less - mimicks the GNU/Linux `acpi -b` command.
|
||
|
|
||
|
*Installation*
|
||
|
|
||
|
```bash
|
||
|
$ go get -u github.com/distatus/battery/cmd/battery
|
||
|
```
|
||
|
|
||
|
*Usage*
|
||
|
|
||
|
```bash
|
||
|
$ battery
|
||
|
BAT0: Full, 95.61% [Voltage: 12.15V (design: 12.15V)]
|
||
|
```
|