I'm not your buddy, BirdPal
| 4 min read

Birdbuddy is a brand of smart bird feeders. I like what it does but I hate the app. So I made a syncing tool for it. I saw a post by Dan Q titled Your 'App' Could Have Been a Webpage (so I fixed it for you...) that has been stuck in my head. I have to have so many apps on my phone for the few times a week/month/year I have to do something with them. I've got a homelab and access to an llm, why not automate it?
Given a couple of days of free time I was able to come up with birdpal. A tiny go binary that grabs any images from my birdbuddy camera and puts them into my immich instance.
BirdBuddy Hardware
It's a self contained little bit of kit that charges itself with a solar panel and just needs the password for wifi and it's ready to go.
Feeding birds | ★★★★★
It has a little tray and a food reservoir that lets food fall into it as birds visit. until I added a baffle it was a little too good at feeding the other local wildlife.

Taking Pictures of Birds | ★★★★☆
Not Bad. Camera is clearly designed for small creatures a few inches in front of it. Software is great at not missing visitors. There's an option in the app to auto-id birds and that seems to work very well provided the bird is semi-cooperative. A bird sitting IN the food facing away is going to be a hard to id for anyone.
The Gripe
This thing was a gift from my lovely wife who buys me things I'd like but would never buy for myself. The hardware is pretty great and I have no complaints, I love to DIY but a DIY version of this would've taken me longer and not worked or looked as nice as this does.
The biggest flaw is the software. It's so slow, default share actions are geared to 1. their social app 2. pushing their brand and 3. pushing their subscription.
It takes multiple sub menus to share outside their app and to do it so their logo isn't in the photo. Further clicks to actually grab all the photos + video.
Identification being behind a paywall I get, but they only limit the automatic bird seen -> ID loop. As far as I can tell, paying them money doesn't get you a better model actually doing the ID-ing.
Introducing BirdPal
BirdPal is a commandline tool for linux (or anywhere containers can run) that can sync from your birdbuddy account to either a localdir or your immich instance.
It'll grab all the data and add it as xmp sidecars and immich tags.
A simple run looks like this
export BIRDPAL_BBEMAIL=you@example.com
export BIRDPAL_BBPASSWD='your-bird-buddy-password'
export BIRDPAL_IMMICHSERVER=https://immich.example.com
export BIRDPAL_IMMICHKEY=your-immich-api-key
birdpal --sync --update --full --tags
I've deleted the app and now I have it running with systemd timers. Instead of waiting for an app to load I just check out my BirdPal album or relevant tags in Immich.

Hopefully others find it as useful as I have.