[HN Gopher] Minimodem - general-purpose software audio FSK modem
___________________________________________________________________
Minimodem - general-purpose software audio FSK modem
Author : marcodiego
Score : 116 points
Date : 2022-04-02 15:21 UTC (7 hours ago)
(HTM) web link (www.whence.com)
(TXT) w3m dump (www.whence.com)
| xchip wrote:
| I am proud I contributed to this repo with a PR that substitutes
| the FFT with a goertzel filter, it simplifies things a lot.
| brian-armstrong wrote:
| If we're posting audio modems, here's another one I've
| contributed to, Quiet Modem. Haven't contributed to it much
| lately but happy to answer questions about it.
|
| https://github.com/quiet
| [deleted]
| JKCalhoun wrote:
| I would so love to have a terminal+modem for my mobile phone.
| ryeguy_24 wrote:
| Funny that this is top of HN right. Spent a ton of time in this
| repo lately trying to understand how modems work. Fascinating how
| we can use waves to send data (audio or rf). So much of the world
| relies on these modulation/demodulation approaches.
|
| Also, it was only a few days ago I finally learned that modem is
| short for MOdulator DEModulator. My mind was blown.
| oaiey wrote:
| The blessing of a recent birth that you stand on the shoulders
| of giants :)
| ttyprintk wrote:
| You might be interested to know about the Morse keying
| requirement for Ham radio licenses before the early 90s.
|
| I think ham radio licenses lost popularity between then and
| approx 2018. Demonstrating fluency with Morse was necessary for
| a license long ago. Nowadays, there's a renewal of interest but
| many new Ham operators can write a Morse codec faster than they
| can learn fluency by hand. I think the requirement for
| demonstrating Morse by hand in order to obtain a HF license
| will be dropped if it isn't already.
| Nux wrote:
| Not required in UK afaik.
| bittercynic wrote:
| The Morse requirement has been dropped for all classes of
| license (in the USA): http://arrl.org/learning-morse-code
| ttyprintk wrote:
| Thanks, I guess I'm living in the past
| inamberclad wrote:
| Hah, I had to learn the most basic understanding of Morse for
| my private pilot certificate. When I finally got to the
| checkride and had to fly off a VOR radial I asked the
| examiner if he wanted me to identify the station (by the 3
| letter Morse code broadcast) and he said nah.
| madengr wrote:
| nullc wrote:
| > I think the requirement for demonstrating Morse by hand in
| order to obtain a HF license will be dropped if it isn't
| already
|
| The Morse requirement was dropped by the FCC for all license
| classes back in 2006.
|
| But even with SDR making radio experimentation easier and
| more rewarding than ever ham radio seems to be continuing its
| slow decline and the average age of operations continues to
| rise... and we continue to lose spectrum (e.g. we just lost
| the 9cm band).
| ggerganov wrote:
| If you are interested in transmitting data over sound between
| airgapped devices, make sure to also checkout ggwave [0]. I've
| been working on this library on and off during the past year in
| my free time. I focused on making a FSK protocol that is robust
| in noisy environments at the cost of low bandwidth. Found some
| fun applications in various hobby projects.
|
| [0] https://github.com/ggerganov/ggwave
| westurner wrote:
| Could this be used to embed e.g. the sports "game clock" clock
| time(s) in broadcast TV/audio/video streams; in order to
| synchronize an air-gapped device next to the media signal
| reproduction unit?
|
| For example at a grille during the game.
|
| FWIU, e.g. Chromecast have ultrasonic pairing.
| ggerganov wrote:
| Yes absolutely! (Edit: or maybe not :-) see sibling comment
| for more info)
|
| Actually, the "Waver" youtube video linked at the top of the
| README has an embedded ultrasound transmission at around
| 0:36. I can for example decode the message on my iPhone by
| simply running the Waver app and playing the video on my PC.
|
| Some people have already done some work for AV sync in the
| issues of the project [0].
|
| [0] https://github.com/ggerganov/ggwave/issues/46
| throwaheyy wrote:
| Digital broadcasting adds significant latency so it would be
| in sync with the TV but still out of sync with the actual
| game (and other broadcast receivers).
|
| The same issue affects radio time signal (e.g.
| https://en.wikipedia.org/wiki/Greenwich_Time_Signal, last
| beep is the exact top of the hour), so some broadcasters will
| no longer play them on internet streams/digital radio, rather
| than be inaccurate.
| marcodiego wrote:
| Please, submit it to f-droid!
| sydthrowaway wrote:
| Is it possible to use ML to have greater bandwidth at lower
| SNR?
| ggerganov wrote:
| Probably, but I suppose you would need lots of training data
| in various surrounding conditions and hardware (mic,
| speakers).
|
| I wanted to experiment with using a mic-array in order to
| improve the SNR. Got a 4 Mic ReSpeaker [0] some time ago, but
| haven't played with it yet. My expectation is that capturing
| the audio simultaneously with multiple mics should reduce the
| noise and thus improve the robustness of the transmission
| allowing to increase the bandwidth.
|
| [0] https://respeaker.io/4_mic_array/
| danuker wrote:
| I'd imagine training data would be the limiting factor.
| flyinghamster wrote:
| If you're looking for a library to do FSK (or a variety of other
| telephony-related protocols), SpanDSP is worth looking into as
| well. I've used it to decode some radio-based telemetry that uses
| Bell 202 for data transmission.
|
| https://github.com/freeswitch/spandsp
| squarefoot wrote:
| > Minimodem can be used to transfer data between nearby computers
| using an audio cable (or just via sound waves), or between remote
| computers using radio, telephone, or another audio communications
| medium.
|
| It should be noted that any signal that can be modulated and
| demodulated can be used to exchange information, so either
| visible or IR light, ultra/infra sound etc. It's just a matter of
| building the right hardware interface.
| ryeguy_24 wrote:
| Do the audio cables need to have crossed wiring? Microphone
| wire of one connecting to the speaker wire of another?
| squarefoot wrote:
| Yes, but beware that directly connecting a speaker output to
| a microphone input can be dangerous for the input port.
| Computer headphones or small speakers outputs are generally
| safe because of their low power, but anything that can
| directly drive more powerful speakers can damage a microphone
| or line input if directly connected without any attenuation
| network in between.
| ttyprintk wrote:
| If we're talking analog, those cables usually have capacitors
| to limit DC and a stereo-mixing resistor because of the
| headphone impedance (KOhms) and microphone impedance (20-200
| Ohms).
| loloquwowndueo wrote:
| Minimodem was originally created to be able to get debugging
| information out of a computer with no network connectivity - if
| audio is working, one can transmit kernel and network driver
| debug dumps and decode them on another computer.
| marcodiego wrote:
| I think I remember an old patch that would replay the lines of
| a kernel panic using morse code on the keyboard lights.
| xphos wrote:
| The ingenuity of computer hackers is literally on another plane
| of existence some times. It's these kind of ideas which make me
| proud to do computer science
___________________________________________________________________
(page generated 2022-04-02 23:00 UTC)