Checkout our new Website/Blog here.
I have installed Ubuntu 10.04 on a gumstix overo using a collection of instructions found online. A summary of the instructions is below for convenience. This is my first attempt and there are a few issues that I am going to try to resolve.
I used an ubuntu 10.04 desktop machine as my working environment for these instructions.
1. Install rootstock: ‘sudo apt-get install rootstock’
Rootstock is a utility used to make a rootFS for a port
2. make rootfs using rootstock. This may take several hours
I used the following command but doing ‘man rootstock’ will give you a list of advanced commands
I set my distribution with -d to lucid because I wanted ubuntu 10.04
the openssh-server will allow you to connect your gumstix to the internet and ssh in
‘sudo rootstock -f “Gumstix” -l “gumstix” -p “overo” -n “Gumstix Overo
Ubuntu” -s lxde,gdm,openssh-server,x11vnc -t “America/Vancouver” –serial ttyS2 -d lucid –locale en_US.UTF-8’
Note 1: the user gumstix and password overo do not work because the user does not get created properly. More on how to deal with that later
Note 2: my rootstock command threw a segfault near the end but still made the image. Everything appears to be working fine so far but I am going to try to figure out how to stop it from doing that
Note 3: the lxde,gdm is good for a minimal install for use on a small device with limited power and storage space. Good for a headless system.
Link for more info on making a rootfs
https://wiki.ubuntu.com/ARM/RootfsFromScratch
3. Get MLO and u-boot from this link
http://www.sakoman.com/feeds/omap3/glibc/images/overo/201009091145/
4. Get your kernel u-image This kernel is based on the 2.6.34 kernel. Newer and older kernels should work but you will have to find modules for that kernel. (see step 8 )
http://dl.dropbox.com/u/211887/Ubuntu/uImage-2.6.34-r88-overo.bin
5. Format your microSD card as per usual
6. put MLO, u-boot, u-image on microSD card boot partition
7. extract generated rootfs to second partition
8. Download and extract modules and copy them to second partition (where you extracted the rootfs)
http://dl.dropbox.com/u/211887/Ubuntu/modules-2.6.34-r88-overo.tgz
9. On the second partition open the /etc/shadow file. ‘sudo gedit /path/to/second/partition/etc/shadow’
Delete the ‘*’ for the root entry. This will allow you to login as root and create a user.
Note: remember to put the ‘*’ back after you have created a user so someone can’t login as root and screw up your system
10. open the ‘/etc/network/interfaces’ file. ‘sudo gedit /path/to/second/partition/etc/network/interfaces’
add the following code to the bottom
auto eth0
iface eth0 inet dhcp
You can now unmount the microSD card, place it in the gumstix and boot to it.
Login using serial console using the gumstix instructions in the link below or you can plug an ethernet card in and ssh in
http://www.gumstix.net/Documentation/view/Overo-Setup-and-Programming/Getting-started/109.html
11. login as root and then create a user for yourself and give yourself sudo
sudo adduser youruser
sudo adduser youruser sudo
sudo apt-get install nano
nano /etc/shadow
add the ‘*’ back in that we removed earlier
log out as root
12. log in as your user
open the /etc/apt/sources.list file
add the following lines if they are not present
deb http://ports.ubuntu.com/ubuntu-ports lucid-updates main
deb http://ports.ubuntu.com/ubuntu-ports lucid-security main
then close the file
sudo apt-get update && sudo apt-get upgrade
13. Have fun
email me at nwnadams@gmail.com if you have any problems or have something you want to add that other people should know
All your links are invalid… http://www.sakoman.com/feeds/omap3/glibc/images/overo/201009091145/
Otherwise, a good writeup on embedded linux.
thanks, fixing the links…
edit: fixed
Can this be done for verdex or is it just for overo ?
I have a verdex lcd pack and thinking about trying it out.
I haven’t tested it on the verdex, I believe it ‘should’ work but I will be honest and say I have no idea. Give it a shot and tell me what happens.
It would be awesome if you posted your finished rootfs image somewhere. Great writeup.
awesome instructions thanks!.
noob question here as i’m attempting to attach externally powered usb hub + usb-serial adapter + to eventual sensor but i’m having trouble finding the enumerated device (/dev/ttyS or ttyUSB). dmesg command indicates that it recognizes standard pl2303 usb-serial adapter and it sees the vendor via lsusb.
am i missing a package/seed? thanks for any help!
its hard to tell. Does the serial adapter work on its own without the hub? Also does it work on a pc running ubuntu (the hub and/or the serial adapter). Sorry that i’m not more help, Im not certain what the issue is
Thanks for the help. Ya, will need to find a mini-b to serial or attachment to the mini-b interface to go with my usb-serial adapter. From what i understood, the adapter may need some power that the board “may” not have enough to supply hence the externally powered hub. But i will definitely look for an adapter, makes more sense not dealing with the hub. The hub does currently provide functionality for a keyboard and mouse however so it seems running items through the hub works.
Here are the tests using the hub (Belkin F5U404) & adapter (Trendnet TU-S9 which uses Prolific pl2303 chip) setup.
command > dmesg | grep 2303
laptop response:
[ 1623.026880] pl2303 1-3.1:1.0: pl2303 converter detected
[ 1623.028761] usb 1-3.1: pl2303 converter now attached to ttyUSB0
gumstix response:
usb 2-2.2: New USB device found, idvendor=067b,idProduct=2303
usb 2-2.2: New USB device found, idvendor=067b,idProduct=2303
So it appears no enumeration of the port as ttyUSB0 appears only for the laptop. This is important b/c i’m running a python script to interrogate the sensor through the enumerated port by sending an ASCII command and reading from the same port to log the data.
Thanks again! (sorry for the length =/)
Am having just the same problems, hp. I have a pl2303 usb -> serial adapter (which I’ll call the “hub” hereinafter). ‘lsusb’ reports it as
>>>ID 0557:2008 ATEN International Co., Ltd UC-232A Serial Port [pl2303]
I’m currently interrogating it in python.
I have the hub plugged into the computer’s USB port (plus the external power adapter is plugged in). I can connect to, and communicate with, serial port instruments if I use one of the hub’s 3 USB ports, and use a USB->serial cable adapter there. However, if I plug directly into the serial out (either 9-pin or 25-pin), I can’t communicate with the instruments. I think I’m not addressing it correctly, but nowhere can I find the right syntax or devices. I’ve tried about everything in the ‘/dev’ directory 🙂
Best to all. If any can help me, cheers!
Thanks for the instructions, but the boot fails every time with:
init: ureadahead main process (49) terminated with status 5
You should put –serial ttyS2 when you create rootfs.
Then console is obtained.
sudo sed -i ‘s+^start on starting mountall+start on mounted MOUNTPOINT=/var+’ /etc/init/ureadahead.conf
init: ureadahead main process (50) terminated with status 5
init: procps main process (78) terminated with status 255
These errors occurred.
Hi,
Same problems here:
init: ureadahead main process (50) terminated with status 5
init: procps main process (78) terminated with status 255
* PulseAudio configured for per-user sessions
Hi,
I’ve followed your instructions which were great, thanks. However I’m now trying to get a ftdi usb-serial to work and am unable to modprobe anything, as I’m getting the following error “FATAL: Could not load /lib/modules/2.6.34/modules.dep: No such file or directory” Is this something anyone else has experienced, if so how did you fix it?
Thanks
sudo mkdir /lib/modules/`uname -r`
sudo update-initramfs -c -k `uname -r`
I notice snowbots is plural. After you did this initial install did you you create an image to copy over to the other bots? Just wondering, because that’s what I need to do. I can’t find any information on the Overo wiki. If you know how to make a image of your disk, I’d love to hear about it.
Great page. Thanks so much.
-Estelle
Hello!
Thanks for your support, actually we are working with OveroFire by Gumstix, our development machine has Ubuntu 12.04 but when I try install rootstock with: sudo apt-get install rootstock is not possible! I try with sudo aptitude install rootstock too.
We need to install Ubuntu in our gumstix.
The response for this commands is:
No version found for rootstock
Mireya, Please use ubunutu 10.04, it supports rootstock… you can actually install 10.04 inside a virtual manager in your exisiting 12.04.. 12.04 doesn’t support rootstock.. there is a work around though..
Worked well.. and for those have problem like hanging during boot like ureadahead main process stopping, use ttyO2 in rootstock command..
logging in with username and password (-l & -p) was not a problem.
Mireya, Please use ubunutu 10.04, it supports rootstock… you can actually install 10.04 inside a virtual manager in your exisiting 12.04.. 12.04 doesn’t support rootstock.. there is a work around though..
Is this the Seg Fault that you get:
I: Mounting temporary Image
/usr/bin/rootstock: line 195: 13023 Segmentation fault qemu-system-arm $QEMUOPTS -append “${APPEND}” > $QEMUFIFO 2>&1
I: ARM rootfs created as…./ubuntu-dev3/armel-rootfs-201301212017.tgz
Any time I have “lxde,gdm” as part of seed the image Seg faults. Any suggestions to get around that? Unlike you..my image would not boot due to this
So I think the issue I found with the seg fault is due to a not proper install of qemu! What I did was I removed all traces of qemu. then followed xecdesign.com/compiling-qemu/ as described and was able to build a complete image. This might not work for everyone but it seemed to do trick. I still have yet to test image but I think I made step in right direction.
regards
I agree! I still am stunned this keeps happening again and again in modern day times. This news was well received as I am not running. We would love to have pondered for the future. Anyway I will keep track of this situation to this.