Frankenrouter 2

This page is currently under construction. I just got soundmodem running (Sept 24 2009) and I'm now documenting the process. If you have any questions, comments or suggestions please email: frank at ve1fis net.

The second frankenrouter is based on an ASUS WL-520gU and USB audio dongle. The intended user of these instructions is someone with experience in Linux and AX.25. The result is a very bare-bones soundmodem AX.25 packet radio system that doesn't do anything... it is up to you to configure it to do what you want it to do. That's what I am in the process of doing myself. The reason for posting this page is that I thought someone out there might be interested in running soundmodem on OpenWRT.

Start with installing the standard OpenWRT image from, then install a number of packages from the standard repository:

opkg update
opkg install kmod-alsa
opkg install kmod-ax25
opkg install kmod-sound-core
opkg install kmod-usb-core
opkg install kmod-usb-ohci
opkg install libaudiofile
opkg install libncurses
opkg install libpthread

Next, add the following line to /etc/opkg.conf; I put mine just after the 'snapshots' line:

src/gz ax25

Then add these AX.25 packages, compliments of the OpenWRT/X-WRT AX.25 Project:

opkg update
opkg install libax25
opkg install ax25-apps
opkg install ax25-tools

The AX.25 repository contains kernel 2.6 modules, so to avoid inadvertent installing of kernel 2.6 modules in this 2.4-based system later on, you can just comment it out by inserting a # at the beginning of the line in /etc/opkg.conf. If you want to install any other AX.25 software later on, just uncomment this line temporarily.

Next, download the soundmodem package from the attachment link at the bottom of this page and scp it to the router. I tried wget'ting it directly from the router but it seemed to get corrupted in some way. Then install it:

opkg install soundmodem_0.14-1_mipsel.ipk

The source package is also at the bottom of this page. It's just soundmodem-0.14 and a few minor patches.

Next , create an /etc/ax25/soundmodem.conf file. Here is mine:

<?xml version="1.0"?>
  <configuration name="Soundcard">
    <chaccess txdelay="150" slottime="100" ppersist="40" fulldup="0" txtail="10"/>
    <audio type="soundcard" device="/dev/sound/dsp" halfdup="0" capturechannelmode="Mono"/>
    <ptt file="none"/>
    <channel name="Channel 0">
      <mod mode="afsk" bps="1200" f0="1200" f1="2200" diffenc="1"/>
      <demod mode="afsk" bps="1200" f0="1200" f1="2200" diffdec="1"/>
      <pkt mode="MKISS" ifname="sm0" hwaddr="MYCALL" ip=""
          netmask="" broadcast=""/>


Add an entry like the following to your /etc/ax25/axports file:

sm0     MYCALL          9600    255     2       soundmodem

If you have not rebooted the router after installing all of the packages, you should do so.

After rebooting, plug in a USB audio dongle and run

soundmodem -v9

In another window, you can sniff packets with

axlisten -a

In another window, send a beacon:

beacon -s -c MYCALL -d "APZFIS v WIDE2-2" sm0 ">Hello there VE1FIS... testing soundmodem"

More to come. All of this fits in the flash with 600k or so free space left. I'm using kmod-alsa with OSS emulation. There isn't enough room to install alsa-lib and alsa-utils to get alsamixer. If anyone can show me a more appropriate sound configuration please let me know.

Frank Smith,
26 Sep 2009 04:45
Frank Smith,
26 Sep 2009 03:50