A go library for interfacing with InfiniTime firmware over BLE on Linux.
This repository has been archived on 2024-04-14. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Elara e9a92bac46 Implement BLE filesystem (experimental and will change in the future) 2021-11-22 21:19:30 -08:00
blefs Implement BLE filesystem (experimental and will change in the future) 2021-11-22 21:19:30 -08:00
pkg/player Improve current music status functions 2021-08-23 10:16:03 -07:00
LICENSE Initial Commit 2021-08-19 17:41:09 -07:00
README.md Mention import path in README.md 2021-08-19 18:04:23 -07:00
btsetup.go Create Init() rather than using init() 2021-11-01 09:19:12 -07:00
dfu.go Fix issue where DFU responses are missed causing DFU to time out intermittently 2021-10-21 20:17:44 -07:00
docs.md Fix Alert Notification Service Client link 2021-10-15 20:13:09 -07:00
go.mod Update go-bluetooth to fix BlueZ 5.62 compatibility 2021-11-22 01:14:16 -08:00
go.sum Update go-bluetooth to fix BlueZ 5.62 compatibility 2021-11-22 01:14:16 -08:00
infinitime.go Implement BLE filesystem (experimental and will change in the future) 2021-11-22 21:19:30 -08:00
music.go Initial Commit 2021-08-19 17:41:09 -07:00

README.md

InfiniTime

This is a go library for interfacing with InfiniTime firmware over BLE on Linux.

Go Reference


Importing

This library's import path is 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

sudo pacman -S dbus bluez playerctl --needed

Debian/Ubuntu

sudo apt install dbus bluez playerctl

Fedora

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's source code. Specifically, this file: ble_dfu.py