<story><title>Show HN: TCP over sound on Android</title><url>https://github.com/quiet/org.quietmodem.Quiet</url></story><parent_chain><item><author>steventhedev</author><text>Seems like this would benefit from not using standard TCP (which assumes that a dropped packet is always due to congestion), and maybe use one of the WiFi retransmission protocols (the names are slipping my mind at the moment).&lt;p&gt;Might increase that bandwidth from 7kbps to something more comfortable.</text></item></parent_chain><comment><author>brian-armstrong</author><text>Maybe - in my experience with this, when the devices are within a foot or so, there really isn&amp;#x27;t much packet loss, maybe as low as 10^-6 or so. But I haven&amp;#x27;t really explored moving further apart. I suspect that this suffers from a sharp knee where it starts out reliable and then very quickly fades off.&lt;p&gt;To be clear, the 7kbps is the raw frame throughput, not the effective rate with TCP. There are two ways I can see to boost this number. One would be to pack more bits into each symbol, e.g. to use a wider QAM mode. I find that in practice the degradation from using speaker&amp;#x2F;mic makes this somewhat impractical. The other would be to use a more broadband signal (the width of the the main audible channel is a few kHz). But this is also kind of undesirable since it has to compete with more interference across the spectrum and can also be a less pleasing sound.</text></comment>
<story><title>Show HN: TCP over sound on Android</title><url>https://github.com/quiet/org.quietmodem.Quiet</url></story><parent_chain><item><author>steventhedev</author><text>Seems like this would benefit from not using standard TCP (which assumes that a dropped packet is always due to congestion), and maybe use one of the WiFi retransmission protocols (the names are slipping my mind at the moment).&lt;p&gt;Might increase that bandwidth from 7kbps to something more comfortable.</text></item></parent_chain><comment><author>noselasd</author><text>Presumably the old V.42 protocol used for modems would be quite suitable for this - it does re-transmissions.</text></comment>