A go library for interfacing with InfiniTime firmware over BLE on Linux.
Go to file
Arsen Musayelyan 65fa04d360 Use adapter ID in btmgmt as well 2022-05-02 20:20:16 -07:00
blefs Restrict to one open file of each type at a time 2021-12-13 09:56:34 -08:00
internal/utils Switch player to MPRIS interface 2021-11-24 16:31:18 -08:00
pkg/player Handle case where artists value is a single string rather than a slice. Fixes Arsen6331/itd#9. 2022-03-04 12:04:37 -08:00
weather Add weather service 2021-12-12 12:43:43 -08:00
LICENSE Initial Commit 2021-08-19 17:41:09 -07:00
README.md Fix README errors 2021-11-24 16:51:42 -08:00
btsetup.go Use adapter ID in btmgmt as well 2022-05-02 20:20:16 -07:00
dfu.go Clarify DFU debug logs 2022-04-23 20:08:49 -07:00
go.mod Ensure that done signals for Watch functions are handled properly and restart notifications if they stop unexpectedly 2022-04-23 18:40:25 -07:00
go.sum Ensure that done signals for Watch functions are handled properly and restart notifications if they stop unexpectedly 2022-04-23 18:40:25 -07:00
infinitime.go Add debug logging 2022-04-23 19:58:00 -07:00
music.go Add debug logging 2022-04-23 19:58:00 -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, 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