Egy lakás dobozokkal teli félreeső szobájában néhány hete időnként megszólalt egy pittyegés. A szerző nem akarta kézzel átkutatni az összes dobozt, ezért szoftveres megoldást épített a hang forrásának meghatározására: a Beep Locator nevű rendszert, amely több, a helyiségben elhelyezett eszköz mikrofonjaival triangulálja a hang helyét. A rendszer segítségével végül egy régi szén-monoxid-érzékelőt találtak, amely lemerült elemek miatt pittyegett.
Hogyan működött a Beep Locator?
A Beep Locator egy Python webalkalmazás-kiszolgálóból áll, amelyhez a helyiségben elhelyezett eszközök (a szerző példájában: két iPad, egy telefon, egy MacBook Pro és egy Surface Ultra) csatlakoztak böngészőn keresztül QR-kód vagy URL segítségével. A hallgató eszközök WebAudio-t és WebSocketet használnak, mikrofonnal rögzítenek egy 60 másodperces pufferhangot, és egy egyszerű pittyegés-észlelő algoritmust futtatnak (Fast Fourier Transform és magasáteresztő szűrő).
Amikor egy eszköz pittyegést jelentett, a szerver kiválasztotta a legkisebb körüli-késleltetésű (round-trip time) eszközt, hogy az rövid csipogást (chirp) játsszon le. Ezután minden hallgató feltöltött egy kb. 0,6 s-val a pittyegés előtt kezdődő és 0,8 s-ig tartó klipet. A chirp segít a rögzített klipek időbeli szinkronizálásában, ami kritikus a lokalizáláshoz. A beérkező események megjelentek a térképen (a pittyegés X-szel), és a „Sounds located” naplóban is szerepeltek, további játékgombokkal az egyes eszközökről lejátszható hangmintákhoz.
A rendszer képes volt újrakategorizálni a hangokat: a felhasználó kijelölhette a „This is the mystery beep” gombbal a keresett pittyegés mintáját, és onnantól a szerver figyelte annak frekvenciáját és ismétlési intervallumát, majd a triangulációs adatok alapján becsülte a legvalószínűbb helyet. A működés során a rendszer körülbelül 40 cm pontossággal adta meg a pittyegés helyét, így a szerző célzottan egy dobozhalmot átkutatva megtalálta a hibás szén-monoxid-érzékelőt.
Méréselv és háttérkutatás
A fejlesztés megkezdésekor a szerző Claude Code segítségével rátalált a 2007-es BeepBeep: A High-Accuracy Acoustic-Based System for Ranging and Localization Using COTS Devices című cikkre (szerzők: Chunyi Peng, Guobin Shen, Yongguang Zhang, Yanlin Li, Kun Tan). A BeepBeep szoftveres megközelítéssel, kereskedelmi forgalomban kapható eszközök (hangszóró, mikrofon, eszköz-közti kommunikáció) felhasználásával ér el nagy pontosságot három technika kombinálásával: kétirányú érzékelés, önrögzítés és mintaszámlálás. Ez az elv ihlette a Beep Locator implementációját.
Fejlesztési folyamat és eszközök
A projektet Claude Code Cloud segítségével indította a fejlesztő, Opus 5.5 „Extra thinking effort” módban futtatva. A fejlesztés során a hallgató kliensek WebSocketen keresztül képesek voltak automatikusan új JavaScript modulokat telepíteni és futtatni (installModule()), így éles környezetben, kézi beavatkozás nélkül lehetett frissíteni a hallgató kódját—fontos, mert a mikrofonhozzáférést kérő oldalak egyes böngészőkben újratöltéskor mindig engedélykérést indítanak.
A szerző iteratív módon kérte a rendszer bővítését: például „Rough mode”, amelyben a hallgatók ikonjai kézzel durván elmozgathatók a térképen, majd a hang alapján pontosít a rendszer; „clapping mode” a teszteléshez (tapsok megjelenítése külön jelöléssel a térképen); időbélyegzők (HH:MM:SS) a szimbólumoknál; valamint lejátszó gombok, amelyek sorban lejátszák az egyes eszközök által rögzített hangklipeket, ideiglenesen kikapcsolva a mikrofonfelvételt a lejátszás alatt. Később funkció készült a hallgatók újrapozícionálásához és javasolt új hallgatóelhelyezések számításához a pontosság növelése érdekében.
Mi az érdekes a projekten?
A fejlesztő szerint a legizgalmasabb elem, hogy a fejlesztési folyamatban Claude Code „füleket kapott”: bár maga a nagy nyelvi modell közvetlenül nem hall, a rendszer képes JavaScript és Python kód futtatására, amelyek a böngészők mikrofonját használva audioelemzést végeznek. Így a kódügynök (coding agent) részben automatikusan percepciós adatokhoz fér hozzá, folyamatosan új kódot telepít és elemez.
A Beep Locator gyakorlati bizonyítéka annak, hogy viszonylag olcsó, kereskedelmi eszközök felhasználásával megvalósítható a helymeghatározás akusztikus módszerekkel – a szerző esetében ez a megközelítés megtalálta a pittyegés forrását, és elkerülte a teljes kézi átkutatást.
Összegzés
A Beep Locator egy Python-alapú, több klienssel működő triangulációs rendszer, amely WebAudio és WebSocket technológiára építve képes meghatározni egy rejtélyes pittyegés helyét. A megoldás a BeepBeep kutatását követte, és fejlesztése során Claude Code és Opus/Fable eszközöket használtak: a rendszer körülbelül 40 cm pontossággal lokalizálta a hangot, amely végül egy lemerült szén-monoxid-érzékelő volt a dobozok között.



