A go library for interfacing with InfiniTime firmware over BLE on Linux.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Arsen Musayelyan 0eead333b7 Add RemoveAll() and MkdirAll() to the filesystem implementation 7 months ago
blefs Add RemoveAll() and MkdirAll() to the filesystem implementation 7 months ago
internal/utils Switch player to MPRIS interface 1 year ago
pkg/player Handle case where artists value is a single string rather than a slice. Fixes Arsen6331/itd#9. 1 year ago
weather Add weather service 1 year ago
LICENSE Initial Commit 2 years ago
README.md Fix README errors 1 year ago
btsetup.go Use adapter ID in btmgmt as well 11 months ago
dfu.go Clarify DFU debug logs 11 months ago
go.mod Update go-bluetooth library for 5.65 support 7 months ago
go.sum Update go-bluetooth library for 5.65 support 7 months ago
infinitime.go Add contexts and improve error handling 11 months ago
music.go Add debug logging 11 months ago

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, and pactl to function. These allow the library to use bluetooth, control media, control volume, etc.

Arch

sudo pacman -S dbus bluez libpulse --needed

Debian/Ubuntu

sudo apt install dbus bluez pulseaudio-utils

Fedora

sudo dnf install dbus bluez pulseaudio-utils

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