Portable PBX

I’ve long been a user of the Asterisk open-source telephony software, using it as the core of my home and office telephone systems.

Recently I’ve been experimenting with the Raspberry Pi single-board computer. This is a device that has a half-gigabyte of RAM, an ARM-based processor, USB, and Ethernet. It uses a common SD card for its disk and costs $35.


Though I’m far from the first person to do this, I can report that it’s possible (and fairly easy) to run the Asterisk PBX ¬†on this platform.

The photo above was taken by my friend Fred Kuhl when we got together for lunch recently. I’m running Asterisk as a self-contained, battery-powered PBX.

The iPad is providing Internet connectivity (via LTE tethering to T-Mobile). The big flat box is a battery pack, and the smaller black box contains the Raspberry Pi single-board computer. There’s a display on the top so I can easily determine the device’s IP address when it’s not connected to a monitor, and the white nub projecting from the box is a WiFi adapter. I’m using Counterpath’s Bria IP softphone app on my iPhone to connect to the PBX via the WiFi network being created by the iPad. The Asterisk PBX uses Vitelity as its link to the public switched telephone network, so my demo configuration can place and receive external calls.

This demo configuration is clearly ridiculous since the iPhone is already quite capable of acting as a phone without external support. But as a technology demonstration, it’s pretty impressive. Asterisk is able to handle a half-dozen or so concurrent calls on this inexpensive battery-powered hardware, and it can perform all of the functions of a small digital PBX. It’s not hard to imagine an application for this hardware in a small-office environment or even as part of a mobile communication system supporting an event where traditional connectivity isn’t otherwise available.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.