[Asterisk-Dev] Asterisk and uClinux
Brian Capouch
brianc at palaver.net
Tue Dec 21 19:19:00 MST 2004
TC wrote:
>>I have heard unconfirmed reports of * running on uCLinux, but it
>>definitely won't run on all versions with modification. Several people
>>have tried putting * on a Linksys WRT54G, and it doesn't work. It seems
>>nobody has yet made the effort to debug it, and publish the necessary
>>changes. It compiles. It loads. It runs. It fouls up, apparently
>>somewhere in the thread handling.
>
> Well the pthread libs has been ported out to the openwrt project now
> & asterisk has been compiled against that & seems to work ok
>
Asterisk runs pretty nicely on the WRT, modulo the fact that the
MIPSEL's lack of hardware floating point means that some of the codec
translations are too slow to be of any use (most notably, iLBC).
There are several ways around it. I haven't played much with ulaw,
since one of my baseline suppositions is that if I'm on an embedded
system to begin with, then other aspects of my experience, most
particularly bandwidth, should probably be optimized as well.
I have one system that uses gsm to talk to the outside world. On that
system, I have the phones speak ulaw, I talk to the ITSP world with gsm,
and because the gsm-ulaw transcodings are reasonable, I can even set
that system up to do voicemail, and the like. N.B. the jffs2 filesystem
does on-the-fly compression of files as the data goes in and out, so you
can't directly write voicemails onto the filesystem. You can always
write them to RAM (which is what I do) but then you need to a) watch the
amount of RAM available and b) offload the RAM-based files to the
non-volatile system before the system is taken down. But that isn't
always possible, of course.
So I built another system that uses *only* iLBC. I can't do local
voicemail on this setup, but that really isn't a huge limitation. My
test system has been up and running for a couple of weeks using this
setup. It is a ~$125 wireless CPE and Asterisk-based telephone client
all in one. I get my bandwidth wirelessly from a local ISP, and a GS
BT101 plugged into the WRT runs Asterisk against a "superserver"
instance of Asterisk back at my home place, which is where the voicemail
lives. I'm still tweaking a couple of things, but I'm optimistic this
system is going to be a perfectly usable low-end "give it to them and
let them walk out the door with it" system at a pretty hard-to-beat
price point.
Nicolas also ported the Postgres and MySQL client libraries to the WRT,
and so my phones now export their CDR stuff to my (relatively) big-hoss
Postgres instance running on a capacious Pentium machine.
Next up will be using the remote database stuff for configs and the
like. I'm also going to try to set up the IPSec stuff so that all the
calls coming out of the WRT will be secure back to my home server. Will
have to see what that does to call quality.
It's pretty exciting. The WRT can be armored for outdoor use, and at
<$70 a pop, seems like an awfully cheap entre into the world of embedded
systems.
B.
More information about the asterisk-dev
mailing list