The M7140 is based on a StrongARM SA1110 processor clocked at 133MHz. It includes a PCMCIA slot (for user-supplied WiFi radio card), and 100 BaseT Ethernet connectivity. As noted above, the device offers two RS-232 ports for bar code scanners or other serial devices, three optically isolated inputs, and three relay contact outputs for integration with PLCs, conveyor belts, scales, and alarm devices.

The M7140 boots from a journaling Flash memory file system (JFFS2) on 4MB of Flash, and includes 16MB of RAM as standard. An “expanded memory” edition is also available, with 16MB of Flash and 32MB of RAM. Additionally, the device supports CompactFlash cards up to 512MB.

Like AML's earlier M7100, the M7140 boots a 2.4.17 Linux kernel that is cross-compiled for the StrongARM architecture. AML engineers started from Larry Doolittle's page Building Linux for the nanoEngine.

Graphics are done using a Linux framebuffer. Graphical menus allow easy network setup and device configuration, according to AML. The “Links” text-based web browser runs in console or graphics mode, and supports Javascript.

An optional “Commandlink Application Development Suite” for Windows can be used with the M7140.

Other interesting software includes VT100 and VT220 terminal emulation, with TN5250 and TN3270 terminal emulation also optionally available. A SmallBASIC interpreter is provided, along with telnet, ftp, and http servers. The JFFS2 Flash partition for user program and data storage.

Why Linux?

AML Engineers Dave Veness and Dave Anders say they chose Linux because it was less expensive to implement than WinCE, PocketPC, or Palm. “We are surprised and very happy with the response from the Linux community. We will continue to use Linux whenever possible,” they said.

AML engineers performed all porting in-house, according to Veness and Anders. “The main challenge has been debugging device drivers and kernel oops issues. The StrongARM does not have a boundary scan debug interface, and debugging is problematic with StrongARM processors running Linux. We reverted to old divide and conquer techniques, inserting printk statements and toggling LEDs until we narrowed down the code regions causing the problems. The device is now stable and can run for days on end without locking up or failing.”

Veness and Anders expect Linux use to grow in the embedded and data acquisitions markets. “As more companies want control over their software investments, these companies will turn to Linux based operating systems. It therefore only makes sense to have embedded Linux devices that would utilize the same software technology. Linux is continuing to prove that operating systems can be economical, secure, and open-source.”