Show HN: Modembin – A pastebin that encodes your text into real FSK modem audio
25 points
23 hours ago
| 2 comments
| modembin.com
| HN
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.

achille
17 hours ago
[-]
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

reply
HanClinto
15 hours ago
[-]
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

reply