9 releases

0.1.9 Aug 6, 2021
0.1.8 Jan 10, 2021
0.1.7 Nov 22, 2020
0.1.6 Oct 22, 2020

#1274 in Hardware support

GPL-3.0 license

125KB
2.5K SLoC

PRs ci/cd crates earbuds earbuds-git

LiveBudsCli

A free cli tool to control your Galaxy buds live, Galaxy Buds+ (and Galaxy Buds Pro (Beta))


Features

  • Equalizer, touchpad-lock and anc/ambient sound control
  • Basic Buds status (battery, anc/ambient sound, current equalizer setting, ...)
  • Changing touchpad tap action
  • Advanced status informations (battery voltage/current, temperature)
  • Auto music play/pause on bud remove (via mpris)
  • Automatic sink switch (pulseaudio) [feature: pulse-sink, used by default]
  • Desktop notifications (for low battery)
  • Bash completion (for every shell)
  • Connect/Disconnect your earbuds easily with a subcommand
  • Multiple device support
  • Individual device configs
  • Json output for scripts (via jq)
  • Change config options from cli

Install

Pacman repo

You can get it precompiled from my pacman repository

AUR

yay -S earbuds

Compilation

Requirements (make depends)

Arch: bluez-libs libpulse dbus
Fedora: dbus-devel bluez-libs-devel

Run following command:

cargo install earbuds

Polybar

Polybar
You can display the status of your buds in your polybar with this script
To achieve this, you have to add following to your polybar config and move the script into your polybar script folder. Don't forget to add buds to the modules section.

[module/buds]
type = custom/script
interval = 8
label = %output%
exec = ~/.config/polybar/scripts/polybar.sh
click-middle = earbuds toggle anc
click-right = earbuds toggle touchpadlock

Usage

To get most of the features listed above, you need to have a daemon instance running (earbuds -d). If you run one of the commands listed below, the daemon automatically gets started.

Status informations:

earbuds status

Set equalizer to Bass boost

earbuds set equalizer bass

Enable ANC

earbuds enable anc

Change ambient sound

earbuds set ambientsound <0-4> # 0: off 4: highest

Toggle noise reduction or the touchpad lock

earbuds toggle anc/touchpad

Get status in json format

earbuds status -o json

Set the left touchpad tap command to spotify

earbuds set tap-action spotify left

Connect/disconnect:

earbuds connect/disconnect

To debug the daemon run:

earbuds -k -d --no-fork

This kills the currently running daemon, creates a new one and starts it in the foreground.

Dependencies

~19–49MB
~839K SLoC