infinitime/README.md

51 lines
1.1 KiB
Markdown

# InfiniTime
This is a go library for interfacing with InfiniTime firmware
over BLE on Linux.
[![Go Reference](https://pkg.go.dev/badge/go.arsenm.dev/infinitime.svg)](https://pkg.go.dev/go.arsenm.dev/infinitime)
---
### Dependencies
This library requires `dbus`, `bluez`, `playerctl`, and `pactl` to function. The first two are for bluetooth, and the last two for music control.
#### Arch
```shell
sudo pacman -S dbus bluez playerctl --needed
```
#### Debian/Ubuntu
```shell
sudo apt install dbus bluez playerctl
```
#### Fedora
```shell
sudo dnf install dbus bluez playerctl
```
`pactl` comes with `pulseaudio` or `pipewire-pulse` and should therefore be installed on most systems already.
---
### Features
This library currently supports the following features:
- Notifications
- Heart rate monitoring
- Setting time
- Battery level
- Music control
- OTA firmware upgrades
---
### Mentions
The DFU process used in this library was created with the help of [siglo](https://github.com/alexr4535/siglo)'s source code. Specifically, this file: [ble_dfu.py](https://github.com/alexr4535/siglo/blob/main/src/ble_dfu.py)