Testing and Building with the New gumstix SBCs, Part 1
Vendor:gumstix
URL: www.gumstix.com and www.gumstix.org/tikiwiki
Prices: connex 400g - $139 US; etherstix - $49 US; waysmall - $20 US
Daughter board disconnection is dangerous for FFMC board
Can't use Ethernet with CF card
Fragile Bluetooth antenna connector
At the time of my first review of the original gumstix product, the gumstix waysmall 200X (ws200x), it contained the versions of what the company since has renamed the Basix FFMC. One version was available with Bluetooth connectivity and one without. The gumstix company prefers to refer to its modules as Full Function Miniature Computers (FFMC), principally because of the move toward the mother/daughter card concept. In the first review, I explored the strengths and weaknesses of these products. Here, I revisit the issues discussed in the first review and provide a status update.
For this review, I received a power supply, the new connex 400g FFMC and several daughter boards. Because so many new boards are available and there is so much material to cover dealing with this, this review is divided into a couple of parts. This time we discuss the gumstix connex 400g, the etherstix daughterboard and finally the waysmall daughterboard.
Figure 1. The connex 400g
Figure 3. The waysmall Daughterboard
During the course of writing the original review, I identified three primary concerns with the gumstix products:
No easy I/O line access
Evolving documentation and product line
Fragile Bluetooth antenna connector
The concern about I/O lines primarily was directed at the waysmall configuration of the gumstix FFMC. In many ways, the waysmall is an excellent development platform, as it is better protected from the environment than is the naked gumstix FFMC. However, the waysmall did not allow for any access to the I/O lines. The only real solution to this concern was a substantial hardware change. On the gumstix basix FFMC, the difficulty lies in the fact that all I/O access is handled through the 60-pin Hirose I/O header. Although the Hirose connector was a step forward in the stability of the physical connection, actual access to the I/O was diminished somewhat. The Hirose essentially required the user to design a daughterboard and surface-mount connections to the female Hirose on the motherboard. Consequently, this becomes a costly investment for a hobbyist who simply wants to experiment with the gumstix FFMC.
Although gumstix has not chosen to make this change on the waysmall, the company has provided a solution to the I/O access problem by releasing a breakout daughterboard, which I will discuss in a later article. All in all, the I/O access deficiency has been resolved, because the gumstix FFMC principally is an embedded tool. Consequently, as long as a cost-effective I/O access option is available--meaning no roll-your-own breakout boards--the need is satisfied.
In terms of the documentation, the principle criticism essentially was the lack of documentation and the draft nature of what was available. The original manual was a rough introductory document. Now, however, the principle documentation is available on-line. It provides a lot of useful tools to generate what essentially are custom manuals. In addition to the manuals, forums, FAQs and many other resources are available through the wiki. Some issues still exist in terms of the generated manuals skipping some key point, such as schematics. Overall, though, it is an excellent way to get the specific information you require.
The rapid development of the gumstix line is both a strength and weakness of the company's products. To its credit, the company appears to be maintaining backward compatibility wherever possible. One must keep in mind, however, that if you are designing a particular product line, the current model may change quickly. For example, look for the transition to a newer XScale PXA processor to happen sometime in 2005.
With regards to the fragile Bluetooth antenna connector, this is the only issue yet to be addressed in full. At the time of my first review, there was some discussion with gumstix about the fragility of the Bluetooth antenna. The company acknowledged the problem and was considering what options were available. An integrated antenna on the gumstix motherboard would take up a great deal of precious real estate, but this option is under consideration if it can be integrated with a Wi-Fi antenna.
This time around, gumstix provided me with the gumstix connex board, which is one of the smallest FFMCs available. The board measures 3.15" x .8" x .25" (80mm x 20mm x 6.3mm) and can be powered by the USB connections. connex and basix both use the same Intel XScale PXA225 chip; the evaluated version was a 400MHz version rather than the 200MHz originally reviewed. There are several differences between the connex and basix, but the most obvious is the addition of a 92-pin header on the bottom of the connex and the loss of the MMC adapter, which the header essentially replaced. With the exception of the stated changes, the connex is basically identical to the basix.
Networking capability is a must for a truly full function computer. Originally gumstix provided networking only through Bluetooth. As capable as Bluetooth is, its performance and range simply is inadequate for a large number of interesting and important applications. Perhaps I am spoiled, but I consider 10/100BaseT support to be absolutely essential for a computer truly to be usable. I considered the lack of a high-speed networking capability to be a real handicap for the gumstix basix. gumstix rectified this handicap, though, by introducing the etherstix daughtercard.
The etherstix board connects to the gumstix connex board through the 92-pin bus header, and the board is built around the SMSC LAN91C111 chip, which is a dual-speed, full-duplex switched Ethernet chip. The board measurements excluding the RJ-45 connector are 3.75" x 1.1" x 0.23" (95mm x 28mm x 6.4mm), and including the RJ-45, the board measures 4" x 1.1" x 0.75" (101mm x 28mm x 19mm). The board is fairly simple in that it includes the RJ-45, the SMSC chip, the support chips, 92-pin bus connector and finally the power connector.
The etherstix functions as one would expect a network card to function. The principle difference between the etherstix/connex combination and a generic computer is the connex does not assume that the etherstix is installed. Out of the box, one must activate the drivers in order for the NIC to come up. This is done intentionally, in order to avoid accidental damage through inappropriate probing.
If there is one issue with the etherstix, it is the 92-pin connector. If the etherstix/connex is up and running and the 92-pin connector becomes dislodged, there is a fairly high probability that either or both of the modules will be damaged or destroyed. Lesson to be learned: don't mess with it when the unit is powered up.
Two different waysmall interface boards now are available, the waysmall STUART and the waysmall HWUART. waysmall HWUART was used exclusively with the original non-Bluetooth version of the basix module and thus is not discussed further here. The waysmall STUART board essentially converts the connex and basix-Bluetooth modules into waysmall computers, hence the name of the board. These boards, which measure 3.19" x 1.38" x 0.5" (81mm x 35mm x 12.7mm, provide access to the two serial ports, the USB port and the power supply, all through the Hirose 60-pin header.
During testing, this board worked as one would expect. Again, the only concern is the potential for disconnecting the two boards, but that is being address by the introduction of mounting holes in both the connex and waysmall STUART boards.
Overall, this board is quite useful and highly recommended. Even if you find that your final design does not allow it to be used, it can help you get to know the gumstix FFMC modules themselves. Personally, I have gone back to this board several times in order to diagnose problems.
One point that has come up since the original review is the ARM CPU handles overclocking quite nicely. We have it on good authority that the 200MHz chip reliably overclocks to 533MHz, which is a nice feature to have in your back pocket. As usual, temperature and longevity issues when overclocking an embedded, or any, processor. Overclocking the PXA255 is fairly simple. Within the uClibc directory under buildroot/build_arm lives include/configs/gumstix.h. This file contains a #define line that assigns a hex value that determines the CPU speed from 100MHz to 533MHz. We will look more closely at this potential in the next installment of this article
gumstix recommends the uClibc buildboot system, which is a Linux native toolchain. In the previous review we indicated that other toolchain options were available. Although there certainly are other options, gumstix has focused on uClibc, so we focus on it as well; however, we do so in the next installment.
The most pressing concern we have with the gumstix modules is the delicate nature of the connections. The connectors failed several times while working with the unit. This particularly was the case for the smaller Hirose connector between the gumstix FFMC and the waysmall STUART board; it would become disconnected with little manipulation. Even though it is a concern, the scale of these parts is such that this problem simply may be the nature of the beast, which can be managed. gumstix plans to address this issue by adding mounting holes and either bundling standoffs or offering them for sale. The moral to the story, however, may be to set up the unit and run it through as thin a cable as possible, preferably the USB, which can be hot-mounted safely. If you can, connect by way of a network connection, thereby eliminating the concern for direct physical connection. Finally, be very, very careful with the unit if it is powered up.
Overall, connex is a substantial improvement over the original basix. We gave up the MMC slot, which was replaced with the 92-pin bus header, but that header has enabled the expansion of the gumstix line to include several different daughtercards, such as the etherstix network card, the CF module card and several others. In the next installment, we will discuss the toolchain and some of the other daughtercards, such as the CF card. We also will do some overclocking and break out the soldering iron.
Michael Boerner is an consultant based in St. Louis. He likes to focus on Linux in his work and can be reached at michael@boernerconsulting.com.