[Freeswitch-users] simulating a modem transaction...

Steve Underwood steveu at coppice.org
Mon Aug 6 17:25:00 MSD 2012

On 08/06/2012 06:46 PM, 8hector8 wrote:
> Hello everybody,
> Here is my issue. I need to simulate a modem transaction in C. It's a V.21
> modem in 200 bits/s. This modem dial a number and waits for an "request to
> send" sent by the reciever. This is where I have to simulate a modem.
> The "request to send" is composed of a 2100 Hz tone for 2,4 secondes and 32
> alternations of two tones :
> 1650 Hz and 1850 Hz, 15 ms each.
> In my idea, streamFile() function seams to be the good mean.
> The real issue is that when those tones are sent, the transmeter will send a
> "message" which is 16 digits in V.21 mode. 8 data bits, no parity, 2 stop
> bits.
> 200 bits/s means that each tone is 5 ms. 1180 Hz is a "1" and 980 is a "0".
> So, I need to get those 16 digits messages from tones back into numbers. So
> I need a way to listen the signals and analyse them and this is where I
> don't know how to do it.
> Maybe, I have to create a module into freeswitch and here also I need an
> help to do it.
> Thanks for your attention.
> Tony BECQ
The V.21 modem in spandsp can easily be modified to work at 200bps. 
There are setups in there for 110bps and 300bps. Just add another table 
entry to 200bps. Wrap that in some endpoint code, rather like the FAX 
modem stuff, and you're pretty much there.


Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users mailing list