3
\$\begingroup\$

I'm currently working on a project that's intended for getting old electronics that access networks through the use of a phone line to access the internet. To do this, I'm emulating a simple phone system, but I will need a modem (single chip modem if possible) that will answer at the end of the line.

Hopefully, any modems I'd like to use would have these features:

  • Up to 56k speeds (V.92 performance - degrades gracefully down to about 1200 baud)
  • Single chip (not required, but it'd be best if that were possible)

I'd like to interface the modem with an ARM through a serial port, although it'd be fine if the modem just had an 8/16 bit I/O that can be used with older microprocessors. Wouldn't be too bad if I designed this around one of those CPUs, anyways..

I've done some looking on the internet, and really the only modem I could find was the CMX869B. I found no modems so far that have the V.92 performance I would like.

Thanks if anyone has any responses.

\$\endgroup\$
3
  • \$\begingroup\$ Old V.92 dial-up modems? I'd send you a dozen out of my junk pile if you gave an address. And so would half the people on Serverfault, probably. ;-) \$\endgroup\$
    – goblinbox
    Commented Mar 14, 2012 at 1:24
  • 1
    \$\begingroup\$ iaxmodem is an open-source (GPL) modem implementation for Asterisk. It only runs on x86 right now. \$\endgroup\$
    – joeforker
    Commented Mar 14, 2012 at 14:41
  • \$\begingroup\$ @goblinbox hah, I could use more modems... after all, can one have enough? joeforker: That sounds like something I'll look into. I'll do some research on how it works and I'll see if it'll run on an ARM without an OS. Probably the IO routines are the only things that'll need to be changed. \$\endgroup\$
    – Tristan
    Commented Mar 14, 2012 at 15:33

3 Answers 3

5
\$\begingroup\$

You won't be able to get a v.92 link with both sides of the connection being analog. I'm a little rusty, but I was the technical lead for a large (10k+ subscriber) dialup ISP in the late 90s - early 00s. I think the maximum speed you'll be able to achieve with both ends being analog is 33.6k. Wikipedia seems to agree with me on this: http://en.wikipedia.org/wiki/V.92

You could achieve this fairly easily if you were willing to grab an old Cisco AS5248, AS5300 or MaxTNT and a channel bank, possibly putting a simple software PBX system in the middle of it for doing the actual call routing. This will still cost you at least $1500 in equipment if you've got good access to surplus telco gear (eBay) and probably the better part of a week of time. Even then, the AS5248 might only support v.90. If you can live with 33.6k then just grab any old modem, throw a 9V battery in the loop and configure one to answer (ATA) and the other to dial without waiting for dialtone (ATX0D if memory serves).

Unless you are willing to invest a LOT of time and effort into it, you won't be able to build a v.92 softmodem in less time than you'd be able to acquire some used equipment and lab up a simple digital test bench. It's doubtful you'd find anything inexpensive or open-source for this, as the patents on v.92 are still in effect.

(edit to address theoretical question in comments)

In theory, you should be able to hit 56k easily. You don't have a PSTN that is stealing the LSB every 6 frames (1ms) and you also don't have a hard requirement to keep the bandwidth of the 20 or so feet of copper within some telecom spec. Without the PSTN you could just connect the devices through 20 feet of CAT3 and probably get a good megabit out of it with RS-485 without much effort at all, but that's not what the question was asking.

I do know that the consumer-end modems (the ones you buy and hook up to a computer) are not designed to negotiate a v.90/v.92 connection with themselves. If you take two v.92 modems and hook them up as I describe above, the fastest rate you'll see is a symmetric 33.6k. They were never designed to respond as if they were the digital end, and it's not possible to "adjust" them to do so. You'd have to completely re-engineer their firmware which, if you're going to go that route, you may as well build your own modem instead of trying to reverse-engineer someone else's.

\$\endgroup\$
3
  • \$\begingroup\$ Well... writing a soft modem sounds like something I could waste my evenings during the next summer break off from school, mixed with throwing sharp objects at the wall and hoping they stay there. I'd love to get myself some of that equipment, but sadly I don't have the money at the moment. As for the "both sides can not be analog" requirement - would this mean that the miles of cable between both modems would ruin the signal quality to where only V.90 is possible, or does this have something to do with how the traditional PSTN works? \$\endgroup\$
    – Tristan
    Commented Mar 14, 2012 at 15:31
  • \$\begingroup\$ edited my answer to address @TristanSeifert's theoretical question \$\endgroup\$
    – akohlsmith
    Commented Mar 14, 2012 at 16:55
  • \$\begingroup\$ The signal is "ruined" for v.92 purposes if it is run through two analog to digital conversions. Modem -> analog phone line -> digital trunk -> analog receive phone line -> Modem. This would not apply for the proposed phone system in a box. \$\endgroup\$
    – joeforker
    Commented Mar 14, 2012 at 17:29
4
\$\begingroup\$

Here's a V92 modem module we use in one of our products. It takes RS232 style inputs (at 3.3V). While not a single chip, it is a single module. My only complaint is that it's not surface-mount.

\$\endgroup\$
4
  • \$\begingroup\$ That looks very nice - I think it may actually be what I'll end up using, as interfacing it with the UART on my ARM shouldn't be a problem. How has your experience been with this device in your projects? Also, do you have a distributor that you purchase this item from? Digikey does not seem to carry it in their inventory. I also can't seem to find any more detailed data sheets on the item, so if you have any idea where I could obtain those, that'd be great. \$\endgroup\$
    – Tristan
    Commented Mar 14, 2012 at 22:25
  • \$\begingroup\$ I'm very happy with the modem. It has worked as expected in two designs so far (used as a backup data connection in a base station for a mobile device). Sorry, I don't know what distributor we use. We use a contract manufacturer to build it, so it might take me a while to find out. I'm sure it would be faster to contact [email protected]. If you have trouble getting it, let me know and I'll put some pressure on our manufactuing people to find out. \$\endgroup\$
    – Klox
    Commented Mar 16, 2012 at 15:48
  • \$\begingroup\$ Alright, thanks. I've emailed them yesterday, but I obviously assume they don't work on the weekend so I'll hopefully get a response back sooner or later. Is there any more detailed info on the part available than what the page lists? I'm assuming this part can work in both answer and originate mode and use the V.92 mode in both. The company has some other interesting things as well. I'll let you know if they get back to me as to where you can order their parts, but it seems as if you buy the parts directly from them or something. \$\endgroup\$
    – Tristan
    Commented Mar 18, 2012 at 6:19
  • \$\begingroup\$ Here's the HM-RC Family Designer's Guide. \$\endgroup\$
    – Klox
    Commented Mar 19, 2012 at 19:25
3
\$\begingroup\$

In addition to what @goblinbox commented, another possibility to consider, would be to build a soft-modem yourself. A modern ARM processor should have enough chops to handle most of the signal processing stuff in software.

According to the ARM guide, the only extra hardware needed is a 14-16bit linear CODEC at 8kHz and the PSTN interface circuit. The guide is only for V.22 but it's a start.

There seems to be other sources for soft-modems as well.

\$\endgroup\$
4
  • \$\begingroup\$ A soft modem sounds like something that I may look at if I can't find any suitable modem chips. My main concern is having extra processing time on the ARM to service the requests. Thanks for the idea, though! \$\endgroup\$
    – Tristan
    Commented Mar 14, 2012 at 15:32
  • \$\begingroup\$ According to the docs, the software processing overhead is supposed to be minimal. Modern processors are capable of complex OFDM at Mbps rates. But yea, a backup plan! \$\endgroup\$
    – sybreon
    Commented Mar 15, 2012 at 8:24
  • \$\begingroup\$ True. I didn't read the entire document yet (didn't have the time yet, but probably will this weekend) but hopefully that is true. With the code provided in the first link you showed, would I be able to magically transform that into V.92? I guess I'd need to increase the interrupt frequency and data processing speed, but hopefully my 80 MHz ARM doesn't blow up if I need to do a soft modem. It actually sorta sounds like fun tinkering with code to get it working at V.92... \$\endgroup\$
    – Tristan
    Commented Mar 15, 2012 at 14:43
  • \$\begingroup\$ Like @Andrew suggested, I wouldn't try to do V.92. It's more involved than just simply cranking up the frequency. The modulation techniques are different. \$\endgroup\$
    – sybreon
    Commented Mar 15, 2012 at 15:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.