19 days of listening: what my balcony microphone learned about seattle’s corvids

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

namespeciessightingsdays activenotes
balduramerican crow14613emerged april 13, now a regular. distinctive voice — heavy on caws (45) where other crows favor scolds.
freyasteller’s jay10114latest average arrival (10:14 am). matched at birds of maiden lane, 1.9mi away.
skadiamerican crow8010appeared april 15, peaked mid-month, now fading. possibly a seasonal transient.
tyrsteller’s jay4210strictly an afternoon visitor (arrives 12:08 pm).
lokicommon raven1911our only raven. brief afternoon visits — in by 12:54, gone by 2:49. matched at 3 stations up to 3.7mi.
fenrirsteller’s jay188matched 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.

Leave a Reply