Skip to content

Install

Snap

Get it from the Snap Store

When using the snape make sure to plug all the connection or the microphone won't be found. List all connections with:

snap connections bark-monitor

connect them with:

sudo snap connect bark-monitor:XXX

This should connect them all:

sudo snap connect bark-monitor:alsa
sudo snap connect bark-monitor:pulseaudio
sudo snap connect bark-monitor:audio-record

The network and home interfaces connect automatically.

Snap commands

The snap ships the full command set. Commands other than bark-monitor are prefixed with the snap name:

bark-monitor                          # record with the Telegram bot
bark-monitor.bark-monitor-lite        # TFLite model, lighter on a Pi
bark-monitor.bark-monitor-cloud-pair  # pair with the hosted cloud
bark-monitor.bark-monitor-cloud-record  # record to the hosted cloud (service)

Hosted cloud: nothing to launch

bark-monitor-cloud-record installs as an always-on service: it starts with snap install, comes back after a reboot, and needs no config file — one is created with default folders on first start.

On a desktop, no terminal is needed at all: the applications menu has a Bark Monitor — Pair with cloud entry. Click it and the pairing wizard opens in your browser (once paired, the same entry opens your cloud dashboard).

Headless (a Pi without a screen): the service runs the wizard on a fixed port. From any device on the same network — your phone, your laptop — open the Pi's address, e.g.

http://raspberrypi.local:8899      # or the Pi's IP: http://192.168.1.42:8899

and paste the pairing code from the dashboard; recording starts by itself. Until the device is paired, the wizard also writes its exact URL to a plain file next to the config — no admin password needed:

cat /var/snap/bark-monitor/current/pairing-url.txt

The same URL is in the service logs (snap logs bark-monitor.bark-monitor-cloud-record), but on some systems that command asks for an admin password. The file disappears once the device is paired. Stop and start it like any snap service:

snap stop bark-monitor.bark-monitor-cloud-record
snap start bark-monitor.bark-monitor-cloud-record

The pip package installs the same tools without the prefix, as bark-monitor-lite, bark-monitor-cloud-pair and bark-monitor-cloud-record. There it is a foreground command (still zero-setup: the config and the pairing wizard are handled the same way).

Pypi

Get from pypi with pip install bark-monitor.

The YamNet bark-detection model (a small TFLite model run through ai-edge-litert) is a regular dependency: both bark-monitor and bark-monitor-lite can record out of the box, no extras needed. The snap ships with it included.

Docker

The docker image runs the recorder on any laptop — Windows, macOS or Linux — without installing Python or portaudio. The microphone is shared with the container through PulseAudio; see the docker documentation for the per-OS setup.

Manual install

The bark monitor relies on pyaudio and portaudio. Start by installing gcc/g++ and portaudio. On Ubuntu:

sudo apt install build-essential
sudo apt install portaudio19-dev
sudo apt install libolm-dev

Install using UV on python 3.12 or later. Run in the root folder:

uv sync

The YamNet model and its ai-edge-litert runtime are regular dependencies, so a plain uv sync can record. For development, uv sync --dev also installs the test and documentation dependencies. ```