Device Profile: Possio’s PX30 hackable wireless router
Mar 8, 2004 — by LinuxDevices Staff — from the LinuxDevices Archive — 15 viewsThe Possio PX30 is a hackable Linux-based wireless router featuring WLAN, Bluetooth, OSGi (Open Services Gateway Initiative), and Java support. It is an open platform supported by a “Developer Zone” website, targeting OSGi-enabled network edge devices that integrate diverse kinds of networks.
The PX30 is delivered as a complete system, including a plastic enclosure, pre-configured Linux OS, and IBM Java virtual machine and OSGi Service Platform. It supports 802.11b and Bluetooth wireless networks, and is “ready to run” out of the box as a Java programmable wireless router that can be configured through a Web interface or controlled by OSGi device management software, according to Possio CTO Ulf Söderberg.
Söderberg says the PX30 (click for larger view) can be configured as a router between Ethernet, WLAN, Bluetooth, and USB, supporting configurations that would otherwise require an unusual combination of technologies, protocols, and devices. An available option adds WAN connectivity through support for GPRS, UMTS/TDD, or UMTS/FDD, with additional protocol support under development.
According to Söderberg, the PX30 targets network edge equipment where device management requirements go beyond SNMP. “If you need to be able to perform actions like installing and removing software modules or other resources, then the OSGi service platform is a very nice way of doing it,” says Söderberg.
What's under the hood?
The PX30 is based on a single-board computer (SBC) with an Intel XScale PXA255 processor running at 300MHz. It boots from a 32MB internal Flash disk, and includes 64MB of RAM.
Possio PX30's XScale-based SBC
(Click to enlarge)
Interfaces include:
- 10/100 Mbps Ethernet
- PCMCIA slot occupied by 802.11b WLAN PC Card
- CompactFlash
- USB 1.1 host interface
- Integrated class 1 Bluetooth, Lan Access Profile, extensible with Possio's implementation of the JSR-82 Java Bluetooth API.
PX30's bottomside CF, RJ-45, and USB ports
(Click to enlarge)
Software side
Söderberg says Possio developed its Linux implementation in-house, starting with a 2.4.19 Linux kernel from the ARM Linux tree and adding several modifications.
In addition to Linux, the PX30 runs a variety of open source software, including busybox, OpenSSH, dnsmasq, iptables, hostap, Wireless Tools for Linux, and more.
The PX30 also includes a number of commercial software packages enabling it to function as a Java-programmable OSGi device. “This layer of Java and OSGi is the environment presented to the systems integrator and embedded system developer, effectively hiding the underlying Linux system, which we really see as a fat hardware abstraction layer,” said Söderberg.
The PX30 integrates a version of the OSGi service platform called Service Management Framework (SMF) by IBM. This runs on top of the IBM WebSphere Micro Environment, which consists of the IBM J9 Java VM configured for Connected Device Configuration/Foundation J2ME.
With the built-in OSGi service platform, the PX30 can be managed either manually via a web browser interface or automatically by some suitable back-end OSGi device management system like the one offered as part of the IBM WebSphere Suite, Söderberg notes.
Out of the box, the Bluetooth software of the PX30 supports “Lan Access Profile,” which may be used in place 802.11b to access the WAN/LAN with a PDA or Laptop. And, “It is very easy to extend the Bluetooth capabilities of the device by installing extra OSGi Service Bundles containing Java applications written using the JSR-82 API,” according to Söderberg.
“With the Bluetooth Java API, you may write your own implementation of a number of Bluetooth profiles that extends the RFCOMM or L2CAP protocols of the Bluetooth protocol stack. If you need a multiplayer game hub for Bluetooth phones, or some wireless sensor application, just write a suitable proxy application and package it as an OSGi Service bundle that you install on the PX30,” suggests Söderberg.
More suggested applications and programming samples for the PX30 can be found at Possio's DevZone.
Why Linux?
Linux was not actually Possio's first choice of operating systems.
“The initial goal was to design a digital convergence device built mostly on Java code,” says Söderberg. “After some time we realized that it would take too long to write all the neccessary device drivers and networking protocols in Java only. To save time (and money), Linux was chosen because of the strong networking support and the large amount of device drivers for PCMCIA cards.”
Söderberg adds that the choice of Linux “has been a success,” and “We would certainly consider using Linux again for future products.”
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.