Progress on FOSS/OSHW soft-modem using AMR-riser board

A long time ago @tnt and I came up with the idea to utilize Audio/modem riser boards into FOSS-friendly soft-modems (or voice applications in need of FXO). Those AMR riser boards basically consist of the isolated telephony line interface, a clock source and a MC97 (like AC97) codec chip. The interface is digital samples in Rx + Tx direction, typicalyl at 8kHz sample rate.

You can find some more information and high-res pictures of such AMR boards at AMR Modem Riser - BBS-Revival - Open Source Mobile Communications. We did an associated riser board some years ago, which @tnt now hooked up to an iCE40 FPGA implementing the MC97 codec interface and a usb audio class device on the other side.

The further plan is now to do another board with a PMOD compatible header. This would allow easy attachment to a variety of FPGA boards.

What would be cool if there was a way it could take its samples via stdin-stdout. This would make it easier to connect it to a variety of sources, from direct adapters to ISDN to VoIP.

well, as it is a usb audio class device, it depends on your audio framework which API you use. @tnt had used pulseaudio, but you can obviosuly also use alsa directly. So all that’s needed to achieve your stdin/stdout request is a small tool whihc opens the audio device on one end, and reads/writes stdin/stdout. Should be almost as quick to implement than your weather fax decoder :wink:

1 Like