How to get started with Gumstix

By Rob Scovell, in , posted: 13-Jul-2007 00:20

Dealing with the Gumstix reminds me of when I first installed Linux on a 486 way back in 1997. There is documentation, but it assumes you know what you are doing and what the terminology means ... and you go round in circles wondering where you can find an entry point.

Sometimes in the Gumstix wiki, it is hard to tell if the sections on some pages are stages in a process, or options.

I am putting this post out there in case it gets Googled by any other Gumstix n00bs such as myself.

Here are some n00b observations on how to prepare yourself to drive this baby. Some of them apply to generally small/embedded Linux computers.

You should know your way around Linux before you mess with a Gumstix.

Perhaps I should qualify that. Knowing your way around Linux makes this easier, but this could be an old-school way into Linux for a Linux newbie. There are no nice pretty graphical wizards to help you through the process. I suppose I could do a grumpy old man act and say that if struggling with self-referentially opaque documentation was good enough for me back in the 90s, it's good enough for anyone. If you want to learn Linux the hard way, get a Gumstix.

Corollary: make sure you know at least a little bit about Linux kernel compilation.

You will need to do this quite a lot to get your Gumstix to do what you want.

Play around with buildroot on your development PC first.

Buildroot is the compilation kit for small Linux computers. To create Linux installations for Gumstix, you use buildroot on a big Linux PC to create the OS that you will install on the Gumstix. Get to know buildroot very well. Go through the packages using 'make menuconfig' to see what options you can (and need to) configure. Practice compiling kernels. Practice compiling packages. Do this thoroughly before you even think about unpacking your Gumstix. This is the advice I would have given myself before I started if I had known that this is the advice to give. It would have made following the instructions easier.

Prepare to do without your usual tools.

'Less' is not installed by default, leaving you with 'more'. Bash isn't there either. See it as an exercise in tool dieting. You can't do a quick apt-get to install missing tools. Neither can you compile stuff on the Gumstix. This is perhaps obvious, but it is like having children. You sort of know what it's going to be like, but you don't really know until you experience it. This is a good opportunity to finally get around to getting your head around vi. (Hmmmm ... more 'old school' thoughts ... maybe anyone who aspires to be a Linux Alpha Geek should be required to install something on a Gumstix first ... perhaps it should be first-semester stuff on any Computer Science course.) Oh, and top isn't there either.

Get in some supplies of your favourite stimulant drink.

Take notes and blog.

The more people who blog about their Gumstix experiences, the more resources there will be on the Interweb-thingy about this, and the less reliant we will be on the sketchy details on the Gumstix wiki.

Don't re-flash the factory-flashed flash. Boot from MMC/CF instead.

Be kind to yourself. You might end up having to send it back to the USA to get it reflashed, which costs a fortune in shipping. (USD 45 each way for shipping plus the flashing fee.) USE THE CF/MMC CARD FOR YOUR CUSTOM INSTALLATIONS AND LEAVE THE ON-BOARD FLASH ALONE. This is especially true if you have a Gumstix with no serial port.

Setting it up to boot from MMC or CF is not all that straightforward because you have to create two buildroot target filesystems. The first loads into RAM and boots the second. This is very fiddly and is the main reason why you should play around with buildroot first, so you know what you're doing. I didn't, and I wasted a lot of time. But then, I didn't know what I didn't know until I found out I didn't know it.

Corollary: don't change the factory configuration files.

You run the risk of not being able to ssh into the thing. Leave well alone.

Next ... installing Asterisk on Gumstix ... watch this space ...

Other related posts:
More Snapr publicity
Tag and share photos from iPhone
iPhone apps approved!

Comment by Tim Fehlman, on 1-Aug-2007 03:52

This is gold! I just purchased my Gumstix and while I am not a Linux newbie, I am definitely a second or third generation Linux user (read "GUI dependent"). I think you have some solid information here about the Gumstix and I intend to follow your advice closely. If you or your readers are interested in following my Gumstix adventures, feel free to check out Tim

Comment by Paul S, on 17-Sep-2009 08:03

I'm a mechanical engineer stuck with the task of making a robot smart. Sadly this process involves learning linux, and gumstix. So yeah, you're advice is great. I wish there was more

Add a comment

Please note: comments that are inappropriate or promotional in nature will be deleted. E-mail addresses are not displayed, but you must enter a valid e-mail address to confirm your comments.

Are you a registered Geekzone user? Login to have the fields below automatically filled in for you and to enable links in comments. If you have (or qualify to have) a Geekzone Blog then your comment will be automatically confirmed and shown in this blog post.

Your name:

Your e-mail:

Your webpage: