News Archive (1999-2012) | 2013-current at LinuxGizmos | Current Tech News Portal |    About   

Device Profile: AML M7100 wireless data collection terminal

Oct 18, 2002 — by LinuxDevices Staff — from the LinuxDevices Archive — 9 views

The American Microsystems, Ltd. (AML) M7100 is a wireless data collection terminal that enables the real-time sharing of information between points of business activity and back-end business systems. Users scan or key data into the terminal, and the collected data is then transferred real-time over an IEEE 802.11b WLAN network to a database located on a back-end server. According to AML, the ability of the M7100 to collect, manage, and access information wirelessly helps businesses optimize their efficiencies, enhance productivity, and reduce costs.

Hardware features and functions

The M7100's lightweight, contoured design is intended to facilitate comfortable, one-handed operation over extended periods of use. The device features an easy-to-use 55-key alphanumeric keypad, and its graphical 160 x 160 backlit LCD with multi-font capability is easy to read, even in dimly lit environments.

The M7100 is powered by an embedded Intel 133MHz SA-1110 StrongARM processor, equipped with 16MB RAM and 4MB Flash ROM for program and nonvolatile data storage. Its input/output interfaces include multiple integrated scanner options, RS-232, USB, and infrared (IrDA) communication ports. A built-in IEEE 802.11b radio supports wireless connectivity for real-time, high-rate data transfer. As a result of careful attention to power management, the device supports eight-hour work shifts without recharging.

Optional peripherals include a removable pistol grip with trigger, spare battery charger/terminal charger/data interface, terminal emulation, and a durable holster with belt.

Software platform

According to AML software development engineer Nathan Beckett, AML's embedded software environment is based on the 2.4.17 ARM Linux kernel (with RMK ARM patches), along with BusyBox and the standard glibc library.

“All linux development work was done in-house,” said Beckett. “We started from Larry Doolittle's excellent page entitled Building Linux for the nanoEngine. That gave us a full-featured foundation and gcc toolchain for our project. The M7100 boots from a compressed RAM disk image, which is contained in the Flash ROM. We have also included an ftp server to facilitate loading custom software onto the handheld.” The physical size of the resulting disk image, once decompressed, is 8MB.

“Our device is intended to be used by people who may not be familiar with a typical PC- or PDA-type graphical user interface (GUI), Beckett continued. “One of the key design goals of our device was two days of continuous 9-hour use on a single battery charge, and high-resolution touch screens consume too much power. Also, another important design goal was single-handed use, something which is nearly impossible to achieve with a pointing device such as a stylus. As a result, instead of using a GUI, we implemented a simple menu system.”

Retrospective on the development project

“Probably the biggest challenge was getting our initial prototype to show some signs of life,” recalled Beckett. “For the most part, everything went smoothly after that. For example, it took all of about 30 minutes to get IrDA support working. From the wireless Ethernet drivers to the journaling flash file system, everything just seemed to work.”

Another challenge was designing a power supply system. According to Beckett, the development team spent more time achieving the required power battery life goals than on any other aspect of the handheld. The result was a two-stage power management design, explained Beckett . . .

  • Stage 1 — there is a programmable timer (“Sleep Timer) that the user can set through the system configuration menu. The Sleep Timer defines the amount of time that must elapse with no activity on the M7100 before it will power down into the Sleep Mode. No activity is defined as no keyboard keys being pressed and no bar codes being scanned. Sleep Mode is a very low power mode that basically powers down the CPU and most I/O on the device. If a keyboard interrupt or bar code interrupt is received, the unit will exit Sleep Mode and return to normal operating mode. While the M7100 is in Sleep Mode, the LCD display is blanked and a LED on the keyboard blinks to indicate unit is still powered on but in Sleep Mode.
  • Stage 2 — a second programmable timer (“Power Down Timer”) is also user accessible through the system configuration menu. This Power Down Timer defines the amount of time that must elapse after entering Sleep Mode with no activity on the M7100 before power will be completely removed.

Thoughts on using Linux

“We chose Linux due to its excellent device driver support,” said Beckett. “Support for just about every device we wanted to include was already either available for Linux under the GPL license or included in the kernel. In some cases, support for a similar device gave us a good basis for our own driver.”

The free availability of Linux and GNU software source code, including the ability to modify it as we wish, allowed AML to scale the operating system to match our hardware, added Beckett. “We got to pick and choose what we wanted to include. Because we didn't need a large amount of RAM or ROM (to accommodate a bunch of unnecessary programs), that allowed us to meet not only our price goal but our goal of long battery life.”

“We also chose Linux for its stability and performance and price,” continued Beckett. “We fully intend to pass the savings we get by using a free operating system on to the customer. This also allows us to offer a device to the customer that is infinitely configurable, which is not the case with proprietary operating systems. Even the most skeptical people in our organization are now very glad we decided to use Linux.”

“We have obtained so much in the area of driver and software support that we are very eager to contribute in any way we can to the GNU code base. All modifications to the any of the GNU sources will be available for download by the time the product ships,” said Beckett.

Availability

AML premiered their Linux-based M7100 wireless handheld terminal family at Frontline Solutions 2002 in Chicago in September, 2002.



 
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.



Comments are closed.