Initial Commit

This commit is contained in:
2021-08-19 17:41:09 -07:00
commit 21078996c1
10 changed files with 1088 additions and 0 deletions

49
README.md Normal file
View File

@@ -0,0 +1,49 @@
# InfiniTime
This is a go library for interfacing with InfiniTime firmware
over BLE on Linux.
---
### 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)