Show HN: Modembin – A pastebin that encodes your text into real FSK modem audio

a13x57 24 points 4 comments March 06, 2026
www.modembin.com · View on Hacker News

A fun weekend project: https://www.modembin.com It's a pastebin, except text/files are encoded into .wav files using real FSK modem audio. Image sharing is supported via Slow-Scan Television (SSTV), a method of transmitting images as FM audio originally used by ham radio operators. Everything runs in the browser with zero audio libraries and the encoding is vanilla TypeScript sine wave math: phase-continuous FSK with proper 8-N-1 framing, fractional bit accumulation for non-integer sample rates, and a quadrature FM discriminator on the decode side (no FFT windowing or Goertzel), The only dependency is lz-string for URL sharing compression. It supports Bell 103 (300 baud), Bell 202 (1200 baud), V.21, RTTY/Baudot, Caller ID (Bellcore MDMF), DTMF, Blue Box MF tones, and SSTV image encoding. There's also a chat mode where messages are transmitted as actual Bell 103 audio over WebSocket... or use the acoustic mode for speaker-to-mic coupling for in-room local chat.

Discussion Highlights (3 comments)

thebuilderjr

Fun project. I tried encoding a short sample and the shareable m/#... URL plus WAV export makes it easy to reproduce and share specific payloads. A feature that would make this even more useful as a debugging or teaching tool would be a decoder inspector: recovered bytes, framing errors, and maybe a small waterfall or discriminator view while decoding. For acoustic transfers especially, that would make it much easier to see whether a failure came from timing, levels, or just picking the wrong protocol.

achille

Fun challenge: I asked Claude/Gemini to decode the audio by just uploading it as puzzle.wav. Claude is able to decode it: https://claude.ai/share/4262fb6b-3ca1-407f-af0d-4d014686e65d

HanClinto

Oh this is really cool! Reminds me of ggwave [0]. It feels difficult to create hobbyist peripherals that interface with ones' phone -- trying to get cross-platform credentials to plug your own Arduino in via USB or connect via Bluetooth feels like a chore. I like the idea of phones communicating via some sort of audio library (ultrasonic maybe?) -- like R2-D2 chirping back and forth to communicate with other droids. I think this sort of thing could be part of a nice network of cross-device communication. [0] - https://github.com/ggerganov/ggwave

Semantic search powered by Rivestack pgvector
3,471 stories · 32,344 chunks indexed