Friday, September 19, 2008

Gumstix

Hey guys, I just watched a very interesting seminar/presentation on the Gumstix and how they're trying to work with Microsoft to provide Win CE 6 support for the Gumstix. The presentation is quite informative and gives excellent insight to some of the applications of Gumstix. With customers such as HP, Boeing, Nokia and Motorola, I think we can rest assured that we're getting a product that is solid. The company itself has been in operation for 5 years.

The presentation with slides and video is available at: http://content.digitalwell.washington.edu/msr/external_release_talks_12_05_2005/14736/lecture.htm.

Okay, so it looks like Gumstix has several variations for their motherboards that we can purchase. The main difference between them is the iteration of production. Their verdex boards are the most current (with the verdex2 or verdex pro board to come soon).

We should look at the verdex XL6P board which has bluetooth capability built right in, 128MB RAM, 32MB Flash and operates at 600MHz. http://gumstix.com/store/catalog/product_info.php?cPath=27&products_id=178

This would allow us to add two expansion boards to it. We could add, for example, an audio board, and an LCD driver board. I think we should add the following board: http://gumstix.com/store/catalog/product_info.php?cPath=31&products_id=158 to provide the audio I/O, USB and LCD display connection support.

It updates data to the flash rom using a serial connection which is quite slow. In order to do the updates, the wiki mentioned of a USB-serial cable being the easiest, slowest, yet stable method of updating the kernel, and other apps onto the rom.

As far as the operating system is concerned, they are using a customized version of Linux OpenEmbedded. There is extensive documentation available on their site as to how to acquire, compile and flash the linux OS onto the Gumstix.

Take a look here: The particular sections of interest to us are the Getting Started and Build System Overview
http://www.gumstix.net/Software/111.html


Of course, there is also the Linux OpenEmbedded wiki which has much more detail about the structure of the kernel and the Linux OE system itself. See here: http://wiki.openembedded.net/index.php/Main_Page.

Another interesting piece of info that I came across is that we can actuall run Qtopia ontop of Linux OE on our Gumstix board. This would give it a very nice prebuilt cell-phone like interface. Perhaps the functions can than be tweaked to give a display of heartrate/ECG waveform, date/time, workout info/records stored on SD and MP3 playback information. Take a look here to see an example of the GUI provided by this package: http://en.wikipedia.org/wiki/Qtopia. Also take a look at this link to see some of the devices that are currently using the Qtopia interface: http://trolltech.com/company/customers/customer-devices.

Qtopia also provides a set of built-in classes to provide Music Player functionality. We could also use simple GUI programming techniques to create a custom canvas and layout music controls which then utilize the classes provided in the Qtopia core system to play music. Qtopia requires a backend MP3 decoder or Quicktime or some sort of streaming server for linux to actually provide the MIDI/Wav/MP3 data to the player. This would greatly cut down on the work involved while giving a very polished look-and-feel to the interface. See here: http://doc.trolltech.com/4.4/phonon-capabilities.html and here: http://doc.trolltech.com/4.4/phonon-musicplayer.html to get some idea of how this would work.

My computer just blue-screened on me so I am afraid to keep going further. Therefore, I am posting this for now. I will continue once I have recovered from the psychological shock and aftermath of the blue screen.

1 comment:

MacEachern said...

I thought you were a Mac guy. What's with the blue screen?

This is all great information. I think we can order this gear this week, as long as there is nothing better out there.

Just please take a look at any documentation you can find, and also see what the company's support is like.

Is there an active community of developers? For example, a user forum that appears active?