Install
Snap
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: bothbark-monitorandbark-monitor-litecan 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-litertruntime are regular dependencies, so a plainuv synccan record. For development,uv sync --devalso installs the test and documentation dependencies. ```