| [ Home | Comics | Robots | Humans | Projects | About | Account ] | |
PC motherboards have always been attractive to robot builders because of their low cost compared to specialized embedded controller boards. But one of the big problems with adapting PC motherboards for use in mobile robots is the size. The new Mini-ITX form factor created by VIA Technologies solves this problem. Mini-ITX boards are just 17cm x 17cm making them ideal for use in mobile robots. In this review, we provide our first impressions of the VIA EPIA M10000 Mini-ITX motherboard.
As with any PC motherboard, robot builders face the problem of supplying power to a board designed for an ATX power supply. The board requires +/-12vdc, +/-5vdc, and +3.3vdc. Fortunately, there are several 12vdc to ATX adapter boards available such as the small iTuner Pw-60 DC-DC convertor which is designed specifically for the VIA Mini-ITX boards. It plugs directly into the ATX PS connector on the motherboard and once you connect a 12vdc battery to it, you're all set to go. The VIA Technologies' website includes a page about the use of the Mini-ITX boards as car PCs that include additional information on operating the boards from 12vdc. The 1GHz M10000 consumes about 10 watts of power peak while the slower models peak at about 5 watts. The VIA EPIA M-series boards include a lot of I/O options that can be used directly such as serial ports, USB connectors, and even an I2C port. There are also ports that can be repurposed by the creative robot builder. The fan connectors include pulse counters used to measure the fan RPM. These might be used with wheel encoders for odometery. The chassis intrusion connector would make a good general purpose input that could be connected to a bumper switch. Some hands-on experience
I had brought along an ATX power supply, a 256MB DIMM, a spare hard drive and CD drive and associated cables. We connected all the parts in the DPRG lab, plugged in the power, and the EPIA M10000 fired up without a hitch. We did a fast and uneventful install of RedHat Linux 9 complete with X, GNOME, and all GNU development tools. In a robot, it would make more sense to use a slimmed down Linux distribution instead of a full-blown distribution like RedHat that's intended for server and desktop use. But as a way of testing out the board it worked great (in fact, the EPIA boards look like they'd be ideal as Linux servers). The M10000 has a 1GHz CPU with a small fan. Other models of the EPIA Mini-ITX motherboards have slower CPUs and do not require a fan. For robots with limited power, it might be best to choose one of the models without a fan. None of the several heat sinks on the motherboard ever became more than slightly warm to the touch even after running steadily for over 24 hours. While the VIA EPIA is very fast compared to the motherboards usually adapted for robotics, it doesn't have high performance graphics hardware. It was more than fast enough to run X but you probably wouldn't want to use this sort of board as a gaming machine. (As if the average robot builder has enough free time to play games anyway!)
All sorts of ideas were floated for hacking the connectors and hardware to allow more interesting uses, many of which probably violate the warranty and some of which made the VIA representative cringe in horror. But the easiest way by far to get a lot more I/O would be to use an add-on daugterboard. Several DPRG members suggested adding a New Micros IsoPod connected to one of the serial ports. This would instantly give the system a 40MIPs I/O subprocessor capable of running dozens of R/C servos, h-bridges, and monitoring all sorts of sensors and switches. There was a lot of interest at the DPRG in using the I2C connector provided on the motherboard. A helpful blog entry by Dafydd Walters on I2C usage can be found at mobilerobotics.org. As a final test of whether or not the VIA Mini-ITX form factor would work well with the average robot, I pulled out my own robot for a test fitting. When I built this robot in 1997, I used an NMI 8051 controller board mounted on a piece of foam core with several other small boards such as a Scott Edwards SSC. As it turned out the foam core panel was exactly 17cm wide and about 25cm long. I was easily able to fit the Mini-ITX board into the existing case without any changes. In fact, it fit so well, that I might just bring this robot to the next DPRG RBNO to use as a test platform for some more detailed experimentation with the Mini-ITX.
Conclusions The VIA Technologies EPIA M10000 Mini-ITX motherboard is ideal for use in mobile robots. It fast, runs cool, draws minimal power, has lots of I/O, and is very small. There's probably no better PC motherboard around for robotics use at this time. The specs:
CPU: 1GHz VIA C3/EDEN EBGA Processor VIA CLE266 North BridgeMemory: 1x184pin DIMM up 1GB DDR266 Expansion slot: 1x32 v2.2 PCI Internal I/O Ports: 2 UltraDMA 133/100/66 IDE HD connectorRear External I/O Ports 1 PS2 Mouse ports URLs mentioned in this review
VIA Technologies, Inc. Cool, posted 14 Oct 2003 at 17:16 UTC by jstrohm »What battery are you using and how long can it keep this thing running? PIC 16C745/16C765, posted 14 Oct 2003 at 20:05 UTC by wohleb »The PIC 16C745/16C765 chips have a built in USB1.1 slow speed bus-slave interface. You can build your own USB driver or piggyback on the HID class. I use a custom HID interface for sending 8 byte packets between the host and the PIC, all using the built-in HID driver in Windows. You only need to make a few Windows API calls. The sample apps for these PICs cover all of this. If you use minimal support hardware, it can be completely bus-powered. So...Does it work?, posted 15 Oct 2003 at 17:36 UTC by earlwb »So....Does it work? I just noticed a nice I/O expander for it, posted 17 Oct 2003 at 19:35 UTC by earlwb »USB Micro through Dontronics is selling the U401 USP I/O port expander unit. This gives you SPI and 16 general purpose I/O lines to use with the Via Mini-ITX board. It looks to be really easy to interface and use if your using an OS that supports USB ports. Diskless options?, posted 5 Nov 2003 at 17:43 UTC by tdickens »Steve, Hardrive VS compactflash, posted 5 Dec 2003 at 22:19 UTC by jstrohm »I've got a similar configuration running Redhat on a hard drive but originally I was running off a 256 MB compactflash. You just have to be careful with writing to disk because compactflash can only support a certain number of write (much less than regular hard drives). So watch out for constantly updated logs and such You can find IDE to compact flash adapters. My whole setup came from http://mini-box.com and I think they sell the converter seperately. |