capitol hill, seattle — april 8-27, 2026
for the last three weeks, a raspberry pi on our third-floor balcony has been running mimir — an open-source bird monitoring system that uses birdnet for species identification and mfcc voice fingerprinting to recognize individual crows and jays by their unique vocal signatures. think of it as a doorbell camera, but for corvids.
here’s what 1,952 corvid sightings across 18 identified individuals have revealed.
the regulars
huginn — the boss

american crow · 749 sightings · present every day since april 8
huginn is the first to arrive (average 6:36 am) and the last to leave (8:09 pm). they account for nearly 40% of all corvid activity on the balcony. their vocal signature is dominated by scolds (424) and rattles (163), with occasional soft coos (85) — suggesting huginn spends a lot of time announcing territory and communicating with their partner.

voice-matched at a birdweather station 0.9 miles away at burke-gilman and again at skylab, 4.3 miles north in ballard. a minimum 4-mile daily range.
muninn — the explorer

american crow · 349 sightings · widest known territory
muninn arrives about 25 minutes after huginn (7:01 am) and the two co-occur in the same hour 117 times — almost certainly a bonded pair. but muninn gets around. their voice has been matched at six birdweather stations: north queen anne, tangletown, phinney ridge, skylab, ballard, and north of the university district — a range spanning 4.7 miles across north seattle.

odin — the jay who sleeps in
steller’s jay · 224 sightings · arrives 9:20 am average
our most consistent jay doesn’t share the crows’ dawn-patrol energy. odin rolls in mid-morning and stays through the afternoon. almost exclusively scolds and rattles — no coos, no soft calls. all business. matched with 99% confidence at a single remote station 4.3 miles away.

thor — the enigma
american crow · 190 sightings · only active 10 of 19 days
thor is the most confusing bird in the dataset. present for a few days, then vanishes for a week. but when thor shows up, they dominate — on april 22, thor was detected 117 times in a single day, more than any other corvid has managed. their voice has been matched at nine birdweather stations, the most of any bird in our system, spanning nearly all of north seattle from capitol hill to ballard.

the april 22 event — a day of near-continuous calling — could indicate a territorial dispute, a mobbing event, or a major food discovery. we’re still analyzing the audio.
the supporting cast
| name | species | sightings | days active | notes |
|---|---|---|---|---|
| baldur | american crow | 146 | 13 | emerged april 13, now a regular. distinctive voice — heavy on caws (45) where other crows favor scolds. |
| freya | steller’s jay | 101 | 14 | latest average arrival (10:14 am). matched at birds of maiden lane, 1.9mi away. |
| skadi | american crow | 80 | 10 | appeared april 15, peaked mid-month, now fading. possibly a seasonal transient. |
| tyr | steller’s jay | 42 | 10 | strictly an afternoon visitor (arrives 12:08 pm). |
| loki | common raven | 19 | 11 | our only raven. brief afternoon visits — in by 12:54, gone by 2:49. matched at 3 stations up to 3.7mi. |
| fenrir | steller’s jay | 18 | 8 | matched at a single remote station with 99% confidence. |
plus six more occasional visitors: bragi, nanna, sigyn, forseti, heimdall, and njord — most with fewer than 10 sightings. forseti is interesting: all three of their detections were alarm calls. a passing sentry.
patterns
two daily waves
activity peaks twice: a dawn chorus starting at 5-6 am, and an afternoon peak from 1-3 pm. the morning wave is crow-dominated (huginn and muninn). the afternoon wave brings more jays and the occasional raven.
05:00 ██████
06:00 ██████████████████████████████████
07:00 ███████████████████████
08:00 █████████████████████████
09:00 ████████████████████████
10:00 ███████████████████████
11:00 ███████████████████████████████
12:00 ███████████████████████
13:00 ██████████████████████████████████
14:00 ███████████████████████████████████
15:00 █████████████████████████████
16:00 █████████████████████████████
17:00 █████████████████████████
18:00 █████████████████
19:00 ███████████████
the huginn-muninn bond
these two arrive within 25 minutes of each other and share 117 hours of co-occurrence — more than any other pair. huginn leads, muninn follows. classic crow pair behavior: huginn holds the local territory while muninn ranges farther, possibly scouting food sources across the wider seattle area.
vocal personalities
each corvid has a distinct call-type distribution that acts like a behavioral fingerprint:
- huginn: scold-heavy (57%) — territorial enforcer
- thor: unusually high rattle ratio — might indicate a different social role or stress response
- baldur: the heaviest caw-caller (31% of calls) — caws are often long-distance contact calls, suggesting baldur maintains connections with crows outside our monitoring range
- forseti: 100% alarm calls — never relaxed enough to make any other sound here
territory mapping
by cross-referencing our voice fingerprints against nearby birdweather citizen science stations, we can map individual territories:
- muninn has the widest confirmed range: 6 stations, 4.7 miles
- thor has been matched at 9 stations but in fewer days — suggesting long-distance roaming rather than consistent territory
- huginn stays closer to home: only 2 stations, both within the capitol hill to ballard corridor
the setup
- audio: raspberry pi 3b + behringer umc22 interface + boya by-m1s lavalier mic
- video: reolink lumus pro 4k with ai animal detection, ftps push to pi
- software: mimir — flask web ui, birdnet tflite for species id, mfcc voice fingerprinting for individual recognition, sqlite storage
- cross-reference: birdweather api for remote voice matching across 150+ nearby stations
the system runs 24/7, processes audio in real-time, and sends push notifications when known corvids visit. total cost: about $150 in hardware plus a lot of peanuts.
18 corvids identified. 1,952 sightings. 19 days. one balcony. the crows know we’re watching — huginn scolds the microphone every morning at 6:36.