<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.gumstix.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ashcharles</id>
		<title>Gumstix User Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.gumstix.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ashcharles"/>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php/Special:Contributions/Ashcharles"/>
		<updated>2026-04-04T21:08:09Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.25.3</generator>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Kernel_Reconfiguration&amp;diff=6166</id>
		<title>Kernel Reconfiguration</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Kernel_Reconfiguration&amp;diff=6166"/>
				<updated>2016-04-01T23:42:08Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[http://www.yoctoproject.org/docs/1.6.1/kernel-dev/kernel-dev.html This] provides the most complete documentation for kernel development in a Yocto environment.&lt;br /&gt;
&lt;br /&gt;
[[Category:How_to_-_linux]]&lt;br /&gt;
[[Category:How_to_-_general]]&lt;br /&gt;
There are several possible work flows for modifying the kernel:&lt;br /&gt;
[[http://blogs.elphel.com/2009/12/openembeddedangstrom-kernel-workflow/ Using bitbake]]&lt;br /&gt;
[[http://bec-systems.com/site/521/best-practices-for-kernel-development-with-openembedded Using kernel tools]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Overo==&lt;br /&gt;
&lt;br /&gt;
These instructions assume you are using the default gumstix-oe kernel which is declared here&lt;br /&gt;
  &lt;br /&gt;
 $ cd $OVEROTOP&lt;br /&gt;
 $ grep linux org.openembedded/conf/machine/overo.conf&lt;br /&gt;
 PREFERRED_PROVIDER_virtual/kernel = &amp;quot;linux-omap3&amp;quot;&lt;br /&gt;
&lt;br /&gt;
And the current revision as defined here&lt;br /&gt;
&lt;br /&gt;
 $ bitbake --show-versions | grep linux-omap3&lt;br /&gt;
 linux-omap3                            0:2.6.32-r51&lt;br /&gt;
&lt;br /&gt;
So the rest of the example will assume linux-omap3-2.6.32 revision 51. This is the kernel that will be built when we use the reference 'virtual/kernel' in bitbake commands.&lt;br /&gt;
&lt;br /&gt;
Substitute the kernel version and revision your system is using in the following steps.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
First build the kernel normally with bitbake. If you have built an image, then it's already done. &lt;br /&gt;
&lt;br /&gt;
If not run this command&lt;br /&gt;
&lt;br /&gt;
 $ bitbake virtual/kernel&lt;br /&gt;
&lt;br /&gt;
This will create a source directory in the ${OVEROTOP}/tmp/work/overo-angstrom-linux-gnueabi directory.&lt;br /&gt;
In this case it will be &lt;br /&gt;
&lt;br /&gt;
${OVEROTOP}/tmp/work/overo-angstrom-linux-gnueabi/linux-omap3-2.6.32-r51&lt;br /&gt;
&lt;br /&gt;
To modify the kernel configuration, run menuconfig via bitbake. Make your changes and save the configuration.&lt;br /&gt;
&lt;br /&gt;
 $ bitbake -c menuconfig virtual/kernel&lt;br /&gt;
&lt;br /&gt;
The new kernel configuration file you created can be found here.&lt;br /&gt;
&lt;br /&gt;
${OVEROTOP}/tmp/work/overo-angstrom-linux-gnueabi/linux-omap3-2.6.32-r51/git/.config&lt;br /&gt;
&lt;br /&gt;
Copy that file to where the bitbake recipe for the kernel will use it.&lt;br /&gt;
&lt;br /&gt;
 $ cp ${OVEROTOP}/tmp/work/overo-angstrom-linux/gnueabi/linux-omap3-2.6.32-r51/git/.config \&lt;br /&gt;
    ${OVEROTOP}/org.openembedded.dev/recipes/linux/linux-omap3-2.6.32/overo/defconfig&lt;br /&gt;
&lt;br /&gt;
For 2.6.39 I used:&lt;br /&gt;
&lt;br /&gt;
 $ cp ${OVEROTOP}/tmp/work/overo-angstrom-linux-gnueabi/linux-omap3-2.6.39-r101/git/.config \&lt;br /&gt;
    ${OVEROTOP}/org.openembedded.dev/recipes/linux/linux-omap3/overo/defconfig&lt;br /&gt;
&lt;br /&gt;
Then rebuild the kernel.&lt;br /&gt;
&lt;br /&gt;
 $ bitbake -c clean virtual/kernel&lt;br /&gt;
 $ bitbake virtual/kernel&lt;br /&gt;
&lt;br /&gt;
Then rebuild the rootfs to get the modules installed correctly. &lt;br /&gt;
&lt;br /&gt;
Substitute the image you are using, the example if you are using the omap3-console-image.&lt;br /&gt;
&lt;br /&gt;
 $ bitbake omap3-console-image&lt;br /&gt;
&lt;br /&gt;
Finally, install the new kernel and rootfs the way you normally would using either a &lt;br /&gt;
[http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Creating-a-bootable-microSD-card/111.html microSD card] &lt;br /&gt;
or by copying to [http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Writing-images-to-onboard-nand/111.html onboard nand].&lt;br /&gt;
&lt;br /&gt;
==Verdex==&lt;br /&gt;
&lt;br /&gt;
To reconfigure the kernel with the current state of Gumstix's OE things, you will need ''gnome-terminal''. Run this command: '''bitbake gumstix-kernel -c menuconfig'''&lt;br /&gt;
&lt;br /&gt;
NOTE: You have to have ncurses and ncurses-dev installed in order for the MENUCONFIG to actually work.&amp;lt;br&amp;gt;&lt;br /&gt;
NOTE: If a screen flashes infront of you and dissapears edit $OE_HOME/org.openembedded.snapshot/conf/bitbake.conf to the following &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
-GNOME_TERMCMDRUN = '${GNOME_TERMCMD} -x ${SHELLRCCMD}'&lt;br /&gt;
+GNOME_TERMCMDRUN = '${GNOME_TERMCMD} -x ${SHELLCMDS}'&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: If you don't have gnome-terminal installed and wish to use xterm instead, use:&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
-GNOME_TERMCMD = 'gnome-terminal --disable-factory -t &amp;quot;$TERMWINDOWTITLE&amp;quot;'&lt;br /&gt;
-GNOME_TERMCMDRUN = '${GNOME_TERMCMD} -x ${SHELLRCCMD}'&lt;br /&gt;
+GNOME_TERMCMD = 'xterm -title &amp;quot;$TERMWINDOWTITLE&amp;quot;'&lt;br /&gt;
+GNOME_TERMCMDRUN = '${GNOME_TERMCMD} -e ${SHELLCMDS}'&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The kernel config information is kept in&amp;lt;br&amp;gt; &lt;br /&gt;
''$OE_HOME/com.gumstix.collection/packages/linux/gumstix-kernel-2.6.XX/gumstix-custom-YYYYY/defconfig''&amp;lt;br&amp;gt;&lt;br /&gt;
where XX is the current default kernel version for your bitbake environment.  That nugget is set in the&lt;br /&gt;
''$OE_HOME/com.gumstix.collection/conf/machine/include/gumstix.inc'' file, under the PREFERRED_VERSION_gumstix-kernel&lt;br /&gt;
and YYYYY is usually one of connex/basix/verdex.  That nugget comes from&amp;lt;br&amp;gt;&lt;br /&gt;
''$OE_HOME/build/conf/auto.conf''&lt;br /&gt;
&lt;br /&gt;
After running menuconfig, running &amp;quot;bitbake -c rebuild gumstix-kernel&amp;quot; will blow away the customizations just made.  There is probably a better way to do this, but in order to preserve the customizations, you can copy the new config file and replace the default config.  For example, to preserve a verdex board's config, do:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
cp \&lt;br /&gt;
 $OE_HOME/tmp/work/gumstix-custom-verdex-angstrom-linux-gnueabi/gumstix-kernel-2.6.21-r1/linux-2.6.21/.config \&lt;br /&gt;
 $OE_HOME/com.gumstix.collection/packages/linux/gumstix-kernel-2.6.21/gumstix-custom-verdex/defconfig&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now that you have replaced the default config, the following commands will rebuild and repackage the new kernel and create new images for you:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
bitbake -c rebuild gumstix-kernel&lt;br /&gt;
bitbake -c rebuild task-base-gumstix&lt;br /&gt;
bitbake gumstix-basic-image&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Other notes==&lt;br /&gt;
Totally lost inside of menuconfig?  Press '/' to search for appropriate options.&lt;br /&gt;
&lt;br /&gt;
Want to know more about the kernel?  I found the 'Linux Kernel in a Nutshell' book (not to be confused with the 'Linux in a Nutshell' book) quite helpful.  The book is freely available online here (http://www.kroah.com/lkn/); Chapter 4 (Configuring and Building) and Chapter 6 (Upgrading a Kernel) as well as the first bit of Chapter 7 (Customizing a Kernel) and the last bit of Chapter 8 (Kernel Configuration: Kernel Debugging) have useful notes about kernel configuration.&lt;br /&gt;
&lt;br /&gt;
Your kernel is now larger than the 1MB originally specified so do_sizecheck() fails?&lt;br /&gt;
You'll probably want to edit the ~/verdex-oe/org.openembedded.dev/conf/machine/include and change the maximum image size to, say, 2MB, i.e. KERNEL_IMAGE_MAXSIZE = &amp;quot;2097153&amp;quot;.  Actually, you should really do this in the user.collections directory to keep the original source tree clean.&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=HelloWorld_Examples&amp;diff=6165</id>
		<title>HelloWorld Examples</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=HelloWorld_Examples&amp;diff=6165"/>
				<updated>2016-04-01T23:40:21Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: Replaced content with &amp;quot;This page has been superseded by the infomation [https://www.yoctoproject.org/docs/latest/bitbake-user-manual/bitbake-user-manual.html#hello-world-example here].&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page has been superseded by the infomation [https://www.yoctoproject.org/docs/latest/bitbake-user-manual/bitbake-user-manual.html#hello-world-example here].&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6164</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6164"/>
				<updated>2016-04-01T23:38:36Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;''Welcome to the Gumstix User Wiki''&amp;lt;/big&amp;gt;     &lt;br /&gt;
&lt;br /&gt;
This site is provided so that Gumstix users can share their knowledge, showcase their Gumstix-based projects, and pass on links to other sources of information and materials.  This information is entirely user generated and supported.  Please contribute your know-how to help your fellow developers.&lt;br /&gt;
&lt;br /&gt;
  '''Community additions and edits are always encouraged, but please read the help page before making any major edits.'''&lt;br /&gt;
  ''You will need to create a new user account if you would like to contribute or edit content on this site.''&lt;br /&gt;
&lt;br /&gt;
Visit the [http://gumstix.org Gumstix Developer Center] for official Gumstix documentation and other information of interest to developers.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;&lt;br /&gt;
''Focus'']]&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;''All Topics'']]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - Android|Android]]&lt;br /&gt;
* [[:Category:how to - eclipse|Eclipse]]&lt;br /&gt;
* [[Linaro]]&lt;br /&gt;
* [[Installing Linaro Image]]&lt;br /&gt;
* [[LinuxLink]]&lt;br /&gt;
* [[:Category:how to - Ubuntu|Ubuntu]]&lt;br /&gt;
* [[:Category:how to - Debian|Debian]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - audio|Audio]]&lt;br /&gt;
* [[:Category:how to - adc|ADC]]&lt;br /&gt;
* [[AutoLogin|Automatic Logins]]&lt;br /&gt;
* [[:Category:how to - batteries|Batteries]]&lt;br /&gt;
* [[:Category:how to - bluetooth|Bluetooth]]&lt;br /&gt;
* [[:Category:how to - Buildroot overo|Buildroot (overo)]]&lt;br /&gt;
* [[:Category:Connect_hardware|Connect Hardware]]&lt;br /&gt;
* [[Caspa_camera_boards|Caspa camera boards]]&lt;br /&gt;
* [[:Category:how to - displays|Displays]]&lt;br /&gt;
* [[:Category:how to - DSP|DSP]]&lt;br /&gt;
* [[:Category:how_to_-_ethernet|Ethernet]]&lt;br /&gt;
* [[:Category:how_to_-_expansion_boards|Expansion Boards]]&lt;br /&gt;
* [[:Category:how to - Fast Boot|Fast Boot]]&lt;br /&gt;
* [[:Category:how to - Fortran|Fortran]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - git|Git]]&lt;br /&gt;
* [[GPIO|GPIO]]&lt;br /&gt;
* [[GPS|GPS]]&lt;br /&gt;
* [[:Category:how to - Build helloworld|HelloWorld]]&lt;br /&gt;
* [[HelloWorld|HelloWorld in Python, C, C++]]&lt;br /&gt;
* [[HelloWorld in Java|HelloWorld in Java]]&lt;br /&gt;
* [[:Category:how to - i2c|I2C]]&lt;br /&gt;
* [[:Category:how to - JAVA|JAVA]]&lt;br /&gt;
* [[Kernel Build]]&lt;br /&gt;
* [[Kernel Reconfiguration|Kernel Reconfiguration]]&lt;br /&gt;
* [[:Category:how to - Known Issues|Known Issues]]&lt;br /&gt;
* [[:Category:how to - LCD|LCD]]&lt;br /&gt;
* [[:Category:how to - Low Power|Low Power]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - linux|Linux]]&lt;br /&gt;
* [[AudioIn | Use a microphone]]&lt;br /&gt;
* [[MicroSd |MicroSD Duplication]]&lt;br /&gt;
* [[:Category:how to - Network_Boot|Network Boot]]&lt;br /&gt;
* [[:Category:how to - OpenEmbedded|OpenEmbedded]]&lt;br /&gt;
* [[Overo Bare Metal|Overo Bare Metal]]&lt;br /&gt;
* [[:Category:How to - PWM|PWM]]&lt;br /&gt;
* [[:Category:How_to_-_qemu|Qemu]]&lt;br /&gt;
* [[:Category:How_to_-_Qt|Qt]]&lt;br /&gt;
* [[:Category:how to - robotics|Robotics]]&lt;br /&gt;
* [[ROS|ROS]]&lt;br /&gt;
* [[RoboVero|RoboVero]]&lt;br /&gt;
* [[:Category:SPI|SPI]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:SUSE|SUSE]]&lt;br /&gt;
* [[Remote Debugging with GDB|Remote Debugging with GDB]]&lt;br /&gt;
* [[Toolchain]]&lt;br /&gt;
* [[U-Boot|UBoot]]&lt;br /&gt;
* [[:Category:how to - usb|USB]]&lt;br /&gt;
* [[Verdex Git Repository]]&lt;br /&gt;
* [[Verdex JTAG]]&lt;br /&gt;
* [[VerdexPro U-Boot Flashing Fix]]&lt;br /&gt;
* [[:Category:how to - virtual machine|Virtual Machine]]&lt;br /&gt;
* [[:Category:how to - webcams|Webcams]]&lt;br /&gt;
* [[:Category:how to - wifi|Wifi]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:projects|User Projects]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:User_pics_videos|User Pics &amp;amp; Videos]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:resources|Resources]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:faqs|Questions and Answers]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:projects - audio|Audio]]&lt;br /&gt;
* [[:Category:projects - competitions|Competitions]]&lt;br /&gt;
* [[:Category:projects - displays|Displays]]&lt;br /&gt;
* [[:Category:projects - pdas|PDA's]]&lt;br /&gt;
* [[:Category:Projects_-Research_and_Education|Research &amp;amp; Education]]&lt;br /&gt;
* [[:Category:projects - monitoring and control|Monitoring and Control]]&lt;br /&gt;
* [[:Category:projects - robotics|Robotics &amp;amp; UAV's]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [http://www.youtube.com/results?uploaded=m&amp;amp;search_query=gumstix&amp;amp;search_type=videos&amp;amp;suggested_categories=28&amp;amp;uni=3&amp;amp;search_sort=video_date_uploaded Gumstix on Youtube]&lt;br /&gt;
* [http://www.flickr.com/search/?q=gumstix&amp;amp;s=rec Gumstix in Flickr]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Windows CE solution|Solutions for Windows CE]]&lt;br /&gt;
* [[Qt solution|Solutions for Qt]]&lt;br /&gt;
* [[Manufacturer's specifications|Specifications for Processors &amp;amp; Components]]&lt;br /&gt;
* [[Software information]]&lt;br /&gt;
* [[Verified Peripherals]]&lt;br /&gt;
* [[Third Party Boards]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Gumstix Community Mailing List (no cost)&lt;br /&gt;
* [https://lists.sourceforge.net/lists/listinfo/gumstix-users Sign-up]&lt;br /&gt;
* [http://gumstix.8.x6.nabble.com/ Archives]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=U-Boot&amp;diff=6163</id>
		<title>U-Boot</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=U-Boot&amp;diff=6163"/>
				<updated>2016-04-01T23:37:37Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== boot.scr ==&lt;br /&gt;
On boot, U-Boot looks for a file called ''boot.scr'' which it will try to run.  Users can create such a script to do boot time configuration of the board, do low-level testing, or set up the U-Boot environment.  A common use case is to do a one-time configuration and reflash of boards to be deployed without microSD cards.&lt;br /&gt;
&lt;br /&gt;
This page doesn't discuss uEnv.txt files however modern version of u-boot can use these which don't require any additional processing.&lt;br /&gt;
&lt;br /&gt;
=== Example Script ===&lt;br /&gt;
For example, the script below flashes a new x-load, U-Boot, and kernel image to an Overo board.  If it is mounted on an expansion board with LEDs, the blue one will light up if the script completes successfully or a red one will light up if the script fails.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
setenv success 1&lt;br /&gt;
setenv loadaddr 0x82000000&lt;br /&gt;
setenv ext -new&lt;br /&gt;
# clear daughter card LEDs (GPIO21 and GPIO22)&lt;br /&gt;
mw 48310034 ff9fffff&lt;br /&gt;
mw 48310094 00600000&lt;br /&gt;
&lt;br /&gt;
# Two notes:&lt;br /&gt;
# 1. FAT file-systems handle letter case strangely---we should use&lt;br /&gt;
#    lower-case only&lt;br /&gt;
# 2. x-load should be copied first to the microSD card otherwise U-Boot&lt;br /&gt;
#    doesn't see it.&lt;br /&gt;
&lt;br /&gt;
if mmc init; then&lt;br /&gt;
  echo &amp;quot;Flashing uimage${ext}...&amp;quot;&lt;br /&gt;
  nandecc sw&lt;br /&gt;
  nand erase&lt;br /&gt;
  if fatload mmc 1 ${loadaddr} uimage${ext}; then&lt;br /&gt;
     nand write ${loadaddr} 0x00280000 0x00200000&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;ERROR: couldn\'t find uimage${ext}...&amp;quot;&lt;br /&gt;
    setenv success 0&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  echo &amp;quot;Flashing u-boot${ext}.bin...&amp;quot;&lt;br /&gt;
  if fatload mmc 1 ${loadaddr} u-boot${ext}.bin; then&lt;br /&gt;
    nand write ${loadaddr} 0x00080000 0x001c0000&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;ERROR: couldn\'t find u-boot${ext}.bin...&amp;quot;&lt;br /&gt;
    setenv success 0&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  echo &amp;quot;Flashing x-load${ext}...&amp;quot;&lt;br /&gt;
  if fatload mmc 1 ${loadaddr} x-load${ext}; then&lt;br /&gt;
    nandecc hw&lt;br /&gt;
    nand write ${loadaddr} 0x00000000 0x00080000&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;ERROR: couldn\'t find x-load${ext}...&amp;quot;&lt;br /&gt;
    setenv success 0&lt;br /&gt;
  fi&lt;br /&gt;
else&lt;br /&gt;
  echo &amp;quot;Please insert a microSD and reboot the board&amp;quot;&lt;br /&gt;
  setenv success 0&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
# display error condition&lt;br /&gt;
if test $success -eq 1; then&lt;br /&gt;
  # SUCCESS: light up LED on GPIO22&lt;br /&gt;
  mw 48310090 00400000&lt;br /&gt;
  echo &amp;quot;COMPLETED SUCCESSFULLY&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
  # ERROR: light up LED on GPIO21&lt;br /&gt;
  mw 48310090 00200000&lt;br /&gt;
  echo &amp;quot;COMPLETED WITH ERRORS&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note, this script uses a NAND flash layout similar to this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@overo:~# cat /proc/mtd &lt;br /&gt;
dev:    size   erasesize  name&lt;br /&gt;
mtd0: 00080000 00020000 &amp;quot;xloader&amp;quot;&lt;br /&gt;
mtd1: 001c0000 00020000 &amp;quot;uboot&amp;quot;&lt;br /&gt;
mtd2: 00040000 00020000 &amp;quot;uboot environment&amp;quot;&lt;br /&gt;
mtd3: 00400000 00020000 &amp;quot;linux&amp;quot;&lt;br /&gt;
mtd4: 0f980000 00020000 &amp;quot;rootfs&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
More sample scripts can be found in the ''recipes/angstrom/angstrom-uboot-scripts/'' directory.  This script does nothing when it finishes but many people will want to call ''boot'', ''saveenv'' or ''reset'' depending on the application.&lt;br /&gt;
&lt;br /&gt;
=== Usage ===&lt;br /&gt;
To use a script like this, it is necessary to convert this script file (e.g. myscript.cmd) to a U-Boot readable script.  We use the U-Boot ''mkimage'' command to add the required header:&lt;br /&gt;
 $ mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n &amp;quot;myscript&amp;quot; -d myscript.cmd boot.scr&lt;br /&gt;
Or simple copy ''myscript.cmd'' to the ''recipes/angstrom/angstrom-uboot-scripts/'' directory, and do a bitbake&lt;br /&gt;
 $ bitbake angstrom-uboot-scripts&lt;br /&gt;
This will generate a ''boot.scr'' file (or a ''myscript.cmd.scr'' file by the second method).&lt;br /&gt;
&lt;br /&gt;
The following files should be loaded onto the FAT partition of a bootable microSD card (taking care to copy over x-load first):&lt;br /&gt;
* '''x-load-new''' --- your new x-load&lt;br /&gt;
* '''mlo''' --- a current bootloader&lt;br /&gt;
* '''u-boot'''--- a current U-Boot&lt;br /&gt;
* '''u-boot-new''' --- your new U-Boot&lt;br /&gt;
* '''uimage-new''' --- your new ima&lt;br /&gt;
Unmount the microSD card from the host machine, load it onto your Gumstix COM, and boot the board.  The ''boot.scr'' file should be run once x-load (MLO) has passed control to U-Boot.&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
* [http://www.denx.de/wiki/view/DULG/UBootScripts U-Boot Scripts]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Kernel_Build&amp;diff=6162</id>
		<title>Kernel Build</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Kernel_Build&amp;diff=6162"/>
				<updated>2016-04-01T23:36:18Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;There are [https://github.com/gumstix/yocto-manifest/wiki/Kernel,-Device-Tree-and-u-boot updated instructions] for standalone compilation of u-boot and linux.  Yocto users may also find [https://github.com/gumstix/yocto-manifest/wiki/Kernel-Compilation this] useful.&lt;br /&gt;
&lt;br /&gt;
This wiki entry has some older details on building the Gumstix Linux kernel and bootloader from source.&lt;br /&gt;
&lt;br /&gt;
Start by installing the [http://wiki.gumstix.org/index.php?title=Toolchain toolchain].&lt;br /&gt;
&lt;br /&gt;
You will also need the U-boot 'mkimage' utility.  Debian and Ubuntu users can install it from their respective repositories.  It's also compiled when U-boot is built if you can't get it otherwise.  On top of that you will need 'git' and 'make'.&lt;br /&gt;
 $ sudo apt-get install uboot-mkimage git make&lt;br /&gt;
&lt;br /&gt;
The official kernel build [http://gumstix.org/basic-cross-compilation.html instructions] are the best source to describe building a kernel and are up to date. The gumstix kernels are stored on [https://github.com/gumstix/linux github] and are in different branches for differing platforms. There is a table of branches against platforms on the [http://gumstix.org/access-source-code.html gumstix.org website].&lt;br /&gt;
&lt;br /&gt;
The most usual way to pull the source code is using git:&lt;br /&gt;
&lt;br /&gt;
 $ git clone --branch omap-3.6 git://github.com/gumstix/linux.git linux&lt;br /&gt;
&lt;br /&gt;
will clone the entire source tree to your machine and checkout the omap-3.6 branch into the &amp;quot;linux&amp;quot; directory. You can also use &amp;lt;tt&amp;gt;https&amp;lt;/tt&amp;gt; instead of &amp;lt;tt&amp;gt;git&amp;lt;/tt&amp;gt;. There are plenty of guides online to using git but a few timesaving methods are worth mentioning:&lt;br /&gt;
&lt;br /&gt;
=== Cloning a shallow tree ===&lt;br /&gt;
&lt;br /&gt;
You can clone just the tip of the relevant branch using a shallow clone. This has some restrictions but saves time and bandwidth:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;nowiki&amp;gt;$ git clone --depth 1 --branch omap-3.6 https://github.com/gumstix/linux.git omap-3.6&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As of November 2013, this will pull 190MB from the server instead of over a gigabyte.&lt;br /&gt;
&lt;br /&gt;
You can also pull a zip file of this branch, either using the [https://github.com/gumstix/linux website] or by finding the appropriate link (use the website!) and using curl or wget.&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;nowiki&amp;gt;$ wget https://github.com/gumstix/linux/archive/omap-3.6.zip&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(this will do a 301 redirect so be aware of this - you might get a very small file with html in it!)&lt;br /&gt;
&lt;br /&gt;
For the 3.6 branch, this will pull approximately 123MB from the github server.&lt;br /&gt;
&lt;br /&gt;
=== Subtleties ===&lt;br /&gt;
&lt;br /&gt;
There is absolutely no difference in result aside from the presence of the &amp;quot;.git&amp;quot; directory, but this has a few subtle consequences. If you build with the zip file, you will get kernel and module versions stamped &amp;quot;3.6.0&amp;quot;. If you build from the git repository, the make process:&lt;br /&gt;
&lt;br /&gt;
* detects the git repository presence&lt;br /&gt;
* see that the checkout is not stamped with a tag (eg: &amp;quot;3.6.0&amp;quot;).&lt;br /&gt;
* adds a + to all versions to show that the repository is not officially 3.6.0.&lt;br /&gt;
&lt;br /&gt;
Thus you will get kernel and module version stamped with &amp;quot;3.6.0+&amp;quot;. If you try and load a 3.6.0+ module into a 3.6.0 kernel, it will fail with an &amp;quot;invalid module format&amp;quot; error. You can force it with &amp;quot;modprobe -f&amp;quot; but that isn't really a recommended action generally. The normal procedure is to install the kernel and modules together (see the [http://gumstix.org/basic-cross-compilation.html website] for details.&lt;br /&gt;
&lt;br /&gt;
You can override the version modification by setting LOCALVERSION (to anything) before running make.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== U-Boot ==&lt;br /&gt;
&lt;br /&gt;
The source for U-Boot is held in [https://github.com/gumstix/u-boot github]. The branch that the Yocto recipes are using is currently 2013.07 (although there is a 2013.10 branch too). You can checkout the branch with:&lt;br /&gt;
&lt;br /&gt;
  $ git clone --branch v2013.07 git://github.com/gumstix/u-boot.git&lt;br /&gt;
&lt;br /&gt;
or some variation of same (see above). You can also pull the zip file directly in the same way as above. You can configure U-Boot for:&lt;br /&gt;
&lt;br /&gt;
Overo:&lt;br /&gt;
  $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- omap3_overo_config&lt;br /&gt;
&lt;br /&gt;
Duovero:&lt;br /&gt;
  $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- omap4_duovero_config&lt;br /&gt;
&lt;br /&gt;
Then build u-boot:&lt;br /&gt;
  $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- all&lt;br /&gt;
&lt;br /&gt;
This should create MLO, u-boot.bin and u-boot.img in your u-boot directory.&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6161</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6161"/>
				<updated>2016-04-01T23:33:36Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;''Welcome to the Gumstix User Wiki''&amp;lt;/big&amp;gt;     &lt;br /&gt;
&lt;br /&gt;
This site is provided so that Gumstix users can share their knowledge, showcase their Gumstix-based projects, and pass on links to other sources of information and materials.  This information is entirely user generated and supported.  Please contribute your know-how to help your fellow developers.&lt;br /&gt;
&lt;br /&gt;
  '''Community additions and edits are always encouraged, but please read the help page before making any major edits.'''&lt;br /&gt;
  ''You will need to create a new user account if you would like to contribute or edit content on this site.''&lt;br /&gt;
&lt;br /&gt;
Visit the [http://gumstix.org Gumstix Developer Center] for official Gumstix documentation and other information of interest to developers.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;&lt;br /&gt;
''Focus'']]&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;''All Topics'']]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - Android|Android]]&lt;br /&gt;
* [[:Category:how to - eclipse|Eclipse]]&lt;br /&gt;
* [[Linaro]]&lt;br /&gt;
* [[Installing Linaro Image]]&lt;br /&gt;
* [[LinuxLink]]&lt;br /&gt;
* [[:Category:how to - Ubuntu|Ubuntu]]&lt;br /&gt;
* [[:Category:how to - Debian|Debian]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - audio|Audio]]&lt;br /&gt;
* [[:Category:how to - adc|ADC]]&lt;br /&gt;
* [[AutoLogin|Automatic Logins]]&lt;br /&gt;
* [[:Category:how to - batteries|Batteries]]&lt;br /&gt;
* [[:Category:how to - bluetooth|Bluetooth]]&lt;br /&gt;
* [[:Category:how to - Buildroot overo|Buildroot (overo)]]&lt;br /&gt;
* [[:Category:Connect_hardware|Connect Hardware]]&lt;br /&gt;
* [[Caspa_camera_boards|Caspa camera boards]]&lt;br /&gt;
* [[:Category:how to - displays|Displays]]&lt;br /&gt;
* [[:Category:how to - DSP|DSP]]&lt;br /&gt;
* [[:Category:how_to_-_ethernet|Ethernet]]&lt;br /&gt;
* [[:Category:how_to_-_expansion_boards|Expansion Boards]]&lt;br /&gt;
* [[:Category:how to - Fast Boot|Fast Boot]]&lt;br /&gt;
* [[:Category:how to - Fortran|Fortran]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Gaining Console Connection via Terminal]]&lt;br /&gt;
* [[:Category:how to - git|Git]]&lt;br /&gt;
* [[GPIO|GPIO]]&lt;br /&gt;
* [[GPS|GPS]]&lt;br /&gt;
* [[:Category:how to - Build helloworld|HelloWorld]]&lt;br /&gt;
* [[HelloWorld|HelloWorld in Python, C, C++]]&lt;br /&gt;
* [[HelloWorld in Java|HelloWorld in Java]]&lt;br /&gt;
* [[:Category:how to - i2c|I2C]]&lt;br /&gt;
* [[:Category:how to - JAVA|JAVA]]&lt;br /&gt;
* [[Kernel Build]]&lt;br /&gt;
* [[Kernel Reconfiguration|Kernel Reconfiguration]]&lt;br /&gt;
* [[:Category:how to - Known Issues|Known Issues]]&lt;br /&gt;
* [[:Category:how to - LCD|LCD]]&lt;br /&gt;
* [[:Category:how to - Low Power|Low Power]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - linux|Linux]]&lt;br /&gt;
* [[AudioIn | Use a microphone]]&lt;br /&gt;
* [[MicroSd |MicroSD Duplication]]&lt;br /&gt;
* [[:Category:how to - Network_Boot|Network Boot]]&lt;br /&gt;
* [[:Category:how to - OpenEmbedded|OpenEmbedded]]&lt;br /&gt;
* [[Overo Bare Metal|Overo Bare Metal]]&lt;br /&gt;
* [[:Category:How to - PWM|PWM]]&lt;br /&gt;
* [[:Category:How_to_-_qemu|Qemu]]&lt;br /&gt;
* [[:Category:How_to_-_Qt|Qt]]&lt;br /&gt;
* [[:Category:how to - robotics|Robotics]]&lt;br /&gt;
* [[ROS|ROS]]&lt;br /&gt;
* [[RoboVero|RoboVero]]&lt;br /&gt;
* [[:Category:SPI|SPI]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:SUSE|SUSE]]&lt;br /&gt;
* [[Remote Debugging with GDB|Remote Debugging with GDB]]&lt;br /&gt;
* [[Toolchain]]&lt;br /&gt;
* [[U-Boot|UBoot]]&lt;br /&gt;
* [[:Category:how to - usb|USB]]&lt;br /&gt;
* [[Verdex Git Repository]]&lt;br /&gt;
* [[Verdex JTAG]]&lt;br /&gt;
* [[VerdexPro U-Boot Flashing Fix]]&lt;br /&gt;
* [[:Category:how to - virtual machine|Virtual Machine]]&lt;br /&gt;
* [[:Category:how to - webcams|Webcams]]&lt;br /&gt;
* [[:Category:how to - wifi|Wifi]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:projects|User Projects]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:User_pics_videos|User Pics &amp;amp; Videos]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:resources|Resources]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:faqs|Questions and Answers]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:projects - audio|Audio]]&lt;br /&gt;
* [[:Category:projects - competitions|Competitions]]&lt;br /&gt;
* [[:Category:projects - displays|Displays]]&lt;br /&gt;
* [[:Category:projects - pdas|PDA's]]&lt;br /&gt;
* [[:Category:Projects_-Research_and_Education|Research &amp;amp; Education]]&lt;br /&gt;
* [[:Category:projects - monitoring and control|Monitoring and Control]]&lt;br /&gt;
* [[:Category:projects - robotics|Robotics &amp;amp; UAV's]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [http://www.youtube.com/results?uploaded=m&amp;amp;search_query=gumstix&amp;amp;search_type=videos&amp;amp;suggested_categories=28&amp;amp;uni=3&amp;amp;search_sort=video_date_uploaded Gumstix on Youtube]&lt;br /&gt;
* [http://www.flickr.com/search/?q=gumstix&amp;amp;s=rec Gumstix in Flickr]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Windows CE solution|Solutions for Windows CE]]&lt;br /&gt;
* [[Qt solution|Solutions for Qt]]&lt;br /&gt;
* [[Manufacturer's specifications|Specifications for Processors &amp;amp; Components]]&lt;br /&gt;
* [[Software information]]&lt;br /&gt;
* [[Verified Peripherals]]&lt;br /&gt;
* [[Third Party Boards]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Gumstix Community Mailing List (no cost)&lt;br /&gt;
* [https://lists.sourceforge.net/lists/listinfo/gumstix-users Sign-up]&lt;br /&gt;
* [http://gumstix.8.x6.nabble.com/ Archives]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6160</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6160"/>
				<updated>2016-04-01T23:32:36Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;''Welcome to the Gumstix User Wiki''&amp;lt;/big&amp;gt;     &lt;br /&gt;
&lt;br /&gt;
This site is provided so that Gumstix users can share their knowledge, showcase their Gumstix-based projects, and pass on links to other sources of information and materials.  This information is entirely user generated and supported.  Please contribute your know-how to help your fellow developers.&lt;br /&gt;
&lt;br /&gt;
  '''Community additions and edits are always encouraged, but please read the help page before making any major edits.'''&lt;br /&gt;
  ''You will need to create a new user account if you would like to contribute or edit content on this site.''&lt;br /&gt;
&lt;br /&gt;
Visit the [http://gumstix.org Gumstix Developer Center] for official Gumstix documentation and other information of interest to developers.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;&lt;br /&gt;
''Focus'']]&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;''All Topics'']]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - Android|Android]]&lt;br /&gt;
* [[:Category:how to - eclipse|Eclipse]]&lt;br /&gt;
* [[Linaro]]&lt;br /&gt;
* [[Installing Linaro Image]]&lt;br /&gt;
* [[LinuxLink]]&lt;br /&gt;
* [[:Category:how to - Ubuntu|Ubuntu]]&lt;br /&gt;
* [[:Category:how to - Debian|Debian]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - audio|Audio]]&lt;br /&gt;
* [[:Category:how to - adc|ADC]]&lt;br /&gt;
* [[AutoLogin|Automatic Logins]]&lt;br /&gt;
* [[:Category:how to - batteries|Batteries]]&lt;br /&gt;
* [[:Category:how to - bluetooth|Bluetooth]]&lt;br /&gt;
* [[:Category:how to - Buildroot overo|Buildroot (overo)]]&lt;br /&gt;
* [[:Category:Connect_hardware|Connect Hardware]]&lt;br /&gt;
* [[Caspa_camera_boards|Caspa camera boards]]&lt;br /&gt;
* [[:Category:how to - displays|Displays]]&lt;br /&gt;
* [[:Category:how to - DSP|DSP]]&lt;br /&gt;
* [[:Category:how_to_-_ethernet|Ethernet]]&lt;br /&gt;
* [[:Category:how_to_-_expansion_boards|Expansion Boards]]&lt;br /&gt;
* [[:Category:how to - Fast Boot|Fast Boot]]&lt;br /&gt;
* [[:Category:how to - Fortran|Fortran]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Gaining Console Connection via Terminal]]&lt;br /&gt;
* [[:Category:how to - git|Git]]&lt;br /&gt;
* [[GPIO|GPIO]]&lt;br /&gt;
* [[GPS|GPS]]&lt;br /&gt;
* [[:Category:how to - Build helloworld|HelloWorld]]&lt;br /&gt;
* [[HelloWorld|HelloWorld in Python, C, C++]]&lt;br /&gt;
* [[HelloWorld in Java|HelloWorld in Java]]&lt;br /&gt;
* [[:Category:how to - i2c|I2C]]&lt;br /&gt;
* [[:Category:how to - IMU|IMU]]&lt;br /&gt;
* [[:Category:how to - JAVA|JAVA]]&lt;br /&gt;
* [[Kernel Build]]&lt;br /&gt;
* [[Kernel Reconfiguration|Kernel Reconfiguration]]&lt;br /&gt;
* [[:Category:how to - Known Issues|Known Issues]]&lt;br /&gt;
* [[:Category:how to - LCD|LCD]]&lt;br /&gt;
* [[:Category:how to - Low Power|Low Power]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - linux|Linux]]&lt;br /&gt;
* [[AudioIn | Use a microphone]]&lt;br /&gt;
* [[MicroSd |MicroSD Duplication]]&lt;br /&gt;
* [[:Category:how to - Network_Boot|Network Boot]]&lt;br /&gt;
* [[:Category:how to - OpenEmbedded|OpenEmbedded]]&lt;br /&gt;
* [[Overo Bare Metal|Overo Bare Metal]]&lt;br /&gt;
* [[:Category:How to - PWM|PWM]]&lt;br /&gt;
* [[:Category:How_to_-_qemu|Qemu]]&lt;br /&gt;
* [[:Category:How_to_-_Qt|Qt]]&lt;br /&gt;
* [[:Category:how to - robotics|Robotics]]&lt;br /&gt;
* [[ROS|ROS]]&lt;br /&gt;
* [[RoboVero|RoboVero]]&lt;br /&gt;
* [[:Category:SPI|SPI]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:SUSE|SUSE]]&lt;br /&gt;
* [[Remote Debugging with GDB|Remote Debugging with GDB]]&lt;br /&gt;
* [[Toolchain]]&lt;br /&gt;
* [[U-Boot|UBoot]]&lt;br /&gt;
* [[:Category:how to - usb|USB]]&lt;br /&gt;
* [[Verdex Git Repository]]&lt;br /&gt;
* [[Verdex JTAG]]&lt;br /&gt;
* [[VerdexPro U-Boot Flashing Fix]]&lt;br /&gt;
* [[:Category:how to - virtual machine|Virtual Machine]]&lt;br /&gt;
* [[:Category:how to - webcams|Webcams]]&lt;br /&gt;
* [[:Category:how to - wifi|Wifi]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:projects|User Projects]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:User_pics_videos|User Pics &amp;amp; Videos]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:resources|Resources]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:faqs|Questions and Answers]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:projects - audio|Audio]]&lt;br /&gt;
* [[:Category:projects - competitions|Competitions]]&lt;br /&gt;
* [[:Category:projects - displays|Displays]]&lt;br /&gt;
* [[:Category:projects - pdas|PDA's]]&lt;br /&gt;
* [[:Category:Projects_-Research_and_Education|Research &amp;amp; Education]]&lt;br /&gt;
* [[:Category:projects - monitoring and control|Monitoring and Control]]&lt;br /&gt;
* [[:Category:projects - robotics|Robotics &amp;amp; UAV's]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [http://www.youtube.com/results?uploaded=m&amp;amp;search_query=gumstix&amp;amp;search_type=videos&amp;amp;suggested_categories=28&amp;amp;uni=3&amp;amp;search_sort=video_date_uploaded Gumstix on Youtube]&lt;br /&gt;
* [http://www.flickr.com/search/?q=gumstix&amp;amp;s=rec Gumstix in Flickr]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Windows CE solution|Solutions for Windows CE]]&lt;br /&gt;
* [[Qt solution|Solutions for Qt]]&lt;br /&gt;
* [[Manufacturer's specifications|Specifications for Processors &amp;amp; Components]]&lt;br /&gt;
* [[Software information]]&lt;br /&gt;
* [[Verified Peripherals]]&lt;br /&gt;
* [[Third Party Boards]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Gumstix Community Mailing List (no cost)&lt;br /&gt;
* [https://lists.sourceforge.net/lists/listinfo/gumstix-users Sign-up]&lt;br /&gt;
* [http://gumstix.8.x6.nabble.com/ Archives]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6159</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6159"/>
				<updated>2016-04-01T23:30:45Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;''Welcome to the Gumstix User Wiki''&amp;lt;/big&amp;gt;     &lt;br /&gt;
&lt;br /&gt;
This site is provided so that Gumstix users can share their knowledge, showcase their Gumstix-based projects, and pass on links to other sources of information and materials.  This information is entirely user generated and supported.  Please contribute your know-how to help your fellow developers.&lt;br /&gt;
&lt;br /&gt;
  '''Community additions and edits are always encouraged, but please read the help page before making any major edits.'''&lt;br /&gt;
  ''You will need to create a new user account if you would like to contribute or edit content on this site.''&lt;br /&gt;
&lt;br /&gt;
Visit the [http://gumstix.org Gumstix Developer Center] for official Gumstix documentation and other information of interest to developers.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;&lt;br /&gt;
''Focus'']]&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;''All Topics'']]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - Android|Android]]&lt;br /&gt;
* [[:Category:how to - eclipse|Eclipse]]&lt;br /&gt;
* [[Linaro]]&lt;br /&gt;
* [[Installing Linaro Image]]&lt;br /&gt;
* [[LinuxLink]]&lt;br /&gt;
* [[:Category:how to - Ubuntu|Ubuntu]]&lt;br /&gt;
* [[:Category:how to - Debian|Debian]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - audio|Audio]]&lt;br /&gt;
* [[:Category:how to - adc|ADC]]&lt;br /&gt;
* [[AutoLogin|Automatic Logins]]&lt;br /&gt;
* [[:Category:how to - batteries|Batteries]]&lt;br /&gt;
* [[:Category:how to - bluetooth|Bluetooth]]&lt;br /&gt;
* [[:Category:how to - Buildroot overo|Buildroot (overo)]]&lt;br /&gt;
* [[:Category:Connect_hardware|Connect Hardware]]&lt;br /&gt;
* [[Caspa_camera_boards|Caspa camera boards]]&lt;br /&gt;
* [[:Category:how to - displays|Displays]]&lt;br /&gt;
* [[:Category:how to - DSP|DSP]]&lt;br /&gt;
* [[:Category:how_to_-_ethernet|Ethernet]]&lt;br /&gt;
* [[:Category:how_to_-_expansion_boards|Expansion Boards]]&lt;br /&gt;
* [[:Category:how to - Fast Boot|Fast Boot]]&lt;br /&gt;
* [[:Category:how to - Fortran|Fortran]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Gaining Console Connection via Terminal]]&lt;br /&gt;
* [[:Category:how to - git|Git]]&lt;br /&gt;
* [[GPIO|GPIO]]&lt;br /&gt;
* [[GPS|GPS]]&lt;br /&gt;
* [[:Category:how to - gui|GUI]]&lt;br /&gt;
* [[:Category:how to - Build helloworld|HelloWorld]]&lt;br /&gt;
* [[HelloWorld|HelloWorld in Python, C, C++]]&lt;br /&gt;
* [[HelloWorld in Java|HelloWorld in Java]]&lt;br /&gt;
* [[:Category:how to - i2c|I2C]]&lt;br /&gt;
* [[:Category:how to - IMU|IMU]]&lt;br /&gt;
* [[:Category:how to - JAVA|JAVA]]&lt;br /&gt;
* [[Kernel Build]]&lt;br /&gt;
* [[Kernel Reconfiguration|Kernel Reconfiguration]]&lt;br /&gt;
* [[:Category:how to - Known Issues|Known Issues]]&lt;br /&gt;
* [[:Category:how to - LCD|LCD]]&lt;br /&gt;
* [[:Category:how to - Low Power|Low Power]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - linux|Linux]]&lt;br /&gt;
* [[AudioIn | Use a microphone]]&lt;br /&gt;
* [[MicroSd |MicroSD Duplication]]&lt;br /&gt;
* [[:Category:how to - Network_Boot|Network Boot]]&lt;br /&gt;
* [[:Category:how to - OpenEmbedded|OpenEmbedded]]&lt;br /&gt;
* [[Overo Bare Metal|Overo Bare Metal]]&lt;br /&gt;
* [[:Category:How to - PWM|PWM]]&lt;br /&gt;
* [[:Category:How_to_-_qemu|Qemu]]&lt;br /&gt;
* [[:Category:How_to_-_Qt|Qt]]&lt;br /&gt;
* [[:Category:how to - robotics|Robotics]]&lt;br /&gt;
* [[ROS|ROS]]&lt;br /&gt;
* [[RoboVero|RoboVero]]&lt;br /&gt;
* [[:Category:SPI|SPI]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:SUSE|SUSE]]&lt;br /&gt;
* [[Remote Debugging with GDB|Remote Debugging with GDB]]&lt;br /&gt;
* [[Toolchain]]&lt;br /&gt;
* [[U-Boot|UBoot]]&lt;br /&gt;
* [[:Category:how to - usb|USB]]&lt;br /&gt;
* [[Verdex Git Repository]]&lt;br /&gt;
* [[Verdex JTAG]]&lt;br /&gt;
* [[VerdexPro U-Boot Flashing Fix]]&lt;br /&gt;
* [[:Category:how to - virtual machine|Virtual Machine]]&lt;br /&gt;
* [[:Category:how to - webcams|Webcams]]&lt;br /&gt;
* [[:Category:how to - wifi|Wifi]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:projects|User Projects]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:User_pics_videos|User Pics &amp;amp; Videos]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:resources|Resources]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:faqs|Questions and Answers]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:projects - audio|Audio]]&lt;br /&gt;
* [[:Category:projects - competitions|Competitions]]&lt;br /&gt;
* [[:Category:projects - displays|Displays]]&lt;br /&gt;
* [[:Category:projects - pdas|PDA's]]&lt;br /&gt;
* [[:Category:Projects_-Research_and_Education|Research &amp;amp; Education]]&lt;br /&gt;
* [[:Category:projects - monitoring and control|Monitoring and Control]]&lt;br /&gt;
* [[:Category:projects - robotics|Robotics &amp;amp; UAV's]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [http://www.youtube.com/results?uploaded=m&amp;amp;search_query=gumstix&amp;amp;search_type=videos&amp;amp;suggested_categories=28&amp;amp;uni=3&amp;amp;search_sort=video_date_uploaded Gumstix on Youtube]&lt;br /&gt;
* [http://www.flickr.com/search/?q=gumstix&amp;amp;s=rec Gumstix in Flickr]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Windows CE solution|Solutions for Windows CE]]&lt;br /&gt;
* [[Qt solution|Solutions for Qt]]&lt;br /&gt;
* [[Manufacturer's specifications|Specifications for Processors &amp;amp; Components]]&lt;br /&gt;
* [[Software information]]&lt;br /&gt;
* [[Verified Peripherals]]&lt;br /&gt;
* [[Third Party Boards]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Gumstix Community Mailing List (no cost)&lt;br /&gt;
* [https://lists.sourceforge.net/lists/listinfo/gumstix-users Sign-up]&lt;br /&gt;
* [http://gumstix.8.x6.nabble.com/ Archives]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6158</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6158"/>
				<updated>2016-04-01T23:27:57Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;''Welcome to the Gumstix User Wiki''&amp;lt;/big&amp;gt;     &lt;br /&gt;
&lt;br /&gt;
This site is provided so that Gumstix users can share their knowledge, showcase their Gumstix-based projects, and pass on links to other sources of information and materials.  This information is entirely user generated and supported.  Please contribute your know-how to help your fellow developers.&lt;br /&gt;
&lt;br /&gt;
  '''Community additions and edits are always encouraged, but please read the help page before making any major edits.'''&lt;br /&gt;
  ''You will need to create a new user account if you would like to contribute or edit content on this site.''&lt;br /&gt;
&lt;br /&gt;
Visit the [http://gumstix.org Gumstix Developer Center] for official Gumstix documentation and other information of interest to developers.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;&lt;br /&gt;
''Focus'']]&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;''All Topics'']]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - Android|Android]]&lt;br /&gt;
* [[:Category:how to - eclipse|Eclipse]]&lt;br /&gt;
* [[Linaro]]&lt;br /&gt;
* [[Installing Linaro Image]]&lt;br /&gt;
* [[LinuxLink]]&lt;br /&gt;
* [[:Category:how to - Ubuntu|Ubuntu]]&lt;br /&gt;
* [[:Category:how to - Debian|Debian]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - audio|Audio]]&lt;br /&gt;
* [[:Category:how to - adc|ADC]]&lt;br /&gt;
* [[AutoLogin|Automatic Logins]]&lt;br /&gt;
* [[:Category:how to - batteries|Batteries]]&lt;br /&gt;
* [[:Category:how to - bluetooth|Bluetooth]]&lt;br /&gt;
* [[:Category:how to - Buildroot overo|Buildroot (overo)]]&lt;br /&gt;
* [[:Category:Connect_hardware|Connect Hardware]]&lt;br /&gt;
* [[Caspa_camera_boards|Caspa camera boards]]&lt;br /&gt;
* [[:Category:how to - displays|Displays]]&lt;br /&gt;
* [[:Category:how to - DSP|DSP]]&lt;br /&gt;
* [[:Category:how_to_-_ethernet|Ethernet]]&lt;br /&gt;
* [[:Category:how_to_-_expansion_boards|Expansion Boards]]&lt;br /&gt;
* [[:Category:how to - fedora|Fedora]]&lt;br /&gt;
* [[:Category:how to - Fast Boot|Fast Boot]]&lt;br /&gt;
* [[:Category:how to - Fortran|Fortran]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Gaining Console Connection via Terminal]]&lt;br /&gt;
* [[:Category:how to - git|Git]]&lt;br /&gt;
* [[GPIO|GPIO]]&lt;br /&gt;
* [[GPS|GPS]]&lt;br /&gt;
* [[:Category:how to - gui|GUI]]&lt;br /&gt;
* [[:Category:how to - Build helloworld|HelloWorld]]&lt;br /&gt;
* [[HelloWorld|HelloWorld in Python, C, C++]]&lt;br /&gt;
* [[HelloWorld in Java|HelloWorld in Java]]&lt;br /&gt;
* [[:Category:how to - i2c|I2C]]&lt;br /&gt;
* [[:Category:how to - IMU|IMU]]&lt;br /&gt;
* [[:Category:how to - JAVA|JAVA]]&lt;br /&gt;
* [[Kernel Build]]&lt;br /&gt;
* [[Kernel Reconfiguration|Kernel Reconfiguration]]&lt;br /&gt;
* [[:Category:how to - Known Issues|Known Issues]]&lt;br /&gt;
* [[:Category:how to - LCD|LCD]]&lt;br /&gt;
* [[:Category:how to - Low Power|Low Power]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - linux|Linux]]&lt;br /&gt;
* [[AudioIn | Use a microphone]]&lt;br /&gt;
* [[MicroSd |MicroSD Duplication]]&lt;br /&gt;
* [[:Category:how to - Network_Boot|Network Boot]]&lt;br /&gt;
* [[:Category:how to - OpenEmbedded|OpenEmbedded]]&lt;br /&gt;
* [[Overo Bare Metal|Overo Bare Metal]]&lt;br /&gt;
* [[:Category:How to - PWM|PWM]]&lt;br /&gt;
* [[:Category:How_to_-_qemu|Qemu]]&lt;br /&gt;
* [[:Category:How_to_-_Qt|Qt]]&lt;br /&gt;
* [[:Category:how to - robotics|Robotics]]&lt;br /&gt;
* [[ROS|ROS]]&lt;br /&gt;
* [[RoboVero|RoboVero]]&lt;br /&gt;
* [[:Category:SPI|SPI]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:SUSE|SUSE]]&lt;br /&gt;
* [[Remote Debugging with GDB|Remote Debugging with GDB]]&lt;br /&gt;
* [[Toolchain]]&lt;br /&gt;
* [[U-Boot|UBoot]]&lt;br /&gt;
* [[:Category:how to - usb|USB]]&lt;br /&gt;
* [[Verdex Git Repository]]&lt;br /&gt;
* [[Verdex JTAG]]&lt;br /&gt;
* [[VerdexPro U-Boot Flashing Fix]]&lt;br /&gt;
* [[:Category:how to - virtual machine|Virtual Machine]]&lt;br /&gt;
* [[:Category:how to - webcams|Webcams]]&lt;br /&gt;
* [[:Category:how to - wifi|Wifi]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:projects|User Projects]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:User_pics_videos|User Pics &amp;amp; Videos]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:resources|Resources]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:faqs|Questions and Answers]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:projects - audio|Audio]]&lt;br /&gt;
* [[:Category:projects - competitions|Competitions]]&lt;br /&gt;
* [[:Category:projects - displays|Displays]]&lt;br /&gt;
* [[:Category:projects - pdas|PDA's]]&lt;br /&gt;
* [[:Category:Projects_-Research_and_Education|Research &amp;amp; Education]]&lt;br /&gt;
* [[:Category:projects - monitoring and control|Monitoring and Control]]&lt;br /&gt;
* [[:Category:projects - robotics|Robotics &amp;amp; UAV's]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [http://www.youtube.com/results?uploaded=m&amp;amp;search_query=gumstix&amp;amp;search_type=videos&amp;amp;suggested_categories=28&amp;amp;uni=3&amp;amp;search_sort=video_date_uploaded Gumstix on Youtube]&lt;br /&gt;
* [http://www.flickr.com/search/?q=gumstix&amp;amp;s=rec Gumstix in Flickr]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Windows CE solution|Solutions for Windows CE]]&lt;br /&gt;
* [[Qt solution|Solutions for Qt]]&lt;br /&gt;
* [[Manufacturer's specifications|Specifications for Processors &amp;amp; Components]]&lt;br /&gt;
* [[Software information]]&lt;br /&gt;
* [[Verified Peripherals]]&lt;br /&gt;
* [[Third Party Boards]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Gumstix Community Mailing List (no cost)&lt;br /&gt;
* [https://lists.sourceforge.net/lists/listinfo/gumstix-users Sign-up]&lt;br /&gt;
* [http://gumstix.8.x6.nabble.com/ Archives]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Caspa_camera_boards&amp;diff=6157</id>
		<title>Caspa camera boards</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Caspa_camera_boards&amp;diff=6157"/>
				<updated>2016-04-01T23:26:06Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;The Caspa series of Camera Boards from Gumstix&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The MT9V032 sensor, at the heart of the Caspa FS camera board and the Caspa VL camera board, is not yet supported in the kernel, so a little work is necessary to get the camera up and running.&lt;br /&gt;
&lt;br /&gt;
The OMAP3 processors in Gumstix' Overo COMs have dedicated hardware for capturing and processing data from image sensors. The Caspa camera sensor outputs raw 10-bit Bayer images which is transferred to the Image Signal Processor (ISP) via a parallel interface. The ISP contains various sub-modules that can be exported as Video for Linux (V4L2) devices in /dev. For additional hardware information see the external links section.&lt;br /&gt;
&lt;br /&gt;
Updated information about using the Caspa with the Overo is available [https://github.com/gumstix/yocto-manifest/wiki/Gstreamer-and-Caspa here]&lt;br /&gt;
&lt;br /&gt;
== Quickstart ==&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
Insert the white ribbon cable contact-side-up into the Caspa connector and contact side down into the Overo connector.&lt;br /&gt;
&lt;br /&gt;
Using a small flat-head screwdriver, loosen the lensholder set screw and rotate the lens to adjust the focus.&lt;br /&gt;
&lt;br /&gt;
=== Get Up and Running with an Image ===&lt;br /&gt;
&lt;br /&gt;
At the time of writing, streaming video with a Caspa from an Overo COM has been tested and confirmed working with the latest Overo images from our development branch. The links for the working image are:&lt;br /&gt;
&lt;br /&gt;
* [https://s3-us-west-2.amazonaws.com/gumstix-yocto/2014-05-21/overo/dev/MLO MLO]&lt;br /&gt;
* [https://s3-us-west-2.amazonaws.com/gumstix-yocto/2014-05-21/overo/dev/u-boot.img U-Boot]&lt;br /&gt;
* [https://s3-us-west-2.amazonaws.com/gumstix-yocto/2014-05-21/overo/dev/uImage uImage]&lt;br /&gt;
* Root Filesystems:&lt;br /&gt;
** [https://s3-us-west-2.amazonaws.com/gumstix-yocto/2014-05-21/overo/dev/gumstix-console-image-overo.tar.bz2 Console]&lt;br /&gt;
** [https://s3-us-west-2.amazonaws.com/gumstix-yocto/2014-05-21/overo/dev/gumstix-xfce-image-overo.tar.bz2 Desktop]&lt;br /&gt;
&lt;br /&gt;
Instructions for using these files to get up and running are available at [http://gumstix.org/getting-started-guide.html gumstix.org].&lt;br /&gt;
&lt;br /&gt;
Once you are up and running, the Caspa will appear as &amp;lt;pre&amp;gt;/dev/video6&amp;lt;/pre&amp;gt;. You will need to run the following command to install the correct packages:&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo smart install gstreamer gst-plugins-good-video4linux2 gst-plugins-bad-autoconvert gst-plugins-base-theora gst-plugins-good-rtp gst-plugins-good-udp&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Testing ===&lt;br /&gt;
==== RAW ====&lt;br /&gt;
Run the following commands for a RAW capture:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#Set the pipes&lt;br /&gt;
media-ctl -r -l '&amp;quot;mt9v032 3-005c&amp;quot;:0-&amp;gt;&amp;quot;OMAP3 ISP CCDC&amp;quot;:0[1], &amp;quot;OMAP3 ISP CCDC&amp;quot;:2-&amp;gt;&amp;quot;OMAP3 ISP preview&amp;quot;:0[1], &amp;quot;OMAP3 ISP preview&amp;quot;:1-&amp;gt;&amp;quot;OMAP3 ISP resizer&amp;quot;:0[1], &amp;quot;OMAP3 ISP resizer&amp;quot;:1-&amp;gt;&amp;quot;OMAP3 ISP resizer output&amp;quot;:0[1]'&lt;br /&gt;
&lt;br /&gt;
#Set the formats&lt;br /&gt;
media-ctl -V '&amp;quot;mt9v032 3-005c&amp;quot;:0[SGRBG10 752x480], &amp;quot;OMAP3 ISP CCDC&amp;quot;:2[SGRBG10 752x480], &amp;quot;OMAP3 ISP preview&amp;quot;:1[UYVY 752x480], &amp;quot;OMAP3 ISP resizer&amp;quot;:1[UYVY 752x480]'&lt;br /&gt;
&lt;br /&gt;
gst-launch -v v4l2src device=/dev/video6 ! rtpvrawpay ! udpsink host=[DESTINATION ADDRESS] port=5000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can then watch the video with the following command:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gst-launch -v udpsrc port=5000 caps=&amp;quot;application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)RAW, sampling=(string)YCbCr-4:2:2, depth=(string)8, width=(string)752, height=(string)480, colorimetry=(string)SMPTE240M, payload=(int)96&amp;quot; ! rtpvrawdepay ! xvimagesink&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== THEORA ====&lt;br /&gt;
Set the pipes:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#Set the pipes&lt;br /&gt;
media-ctl -r -l '&amp;quot;mt9v032 3-005c&amp;quot;:0-&amp;gt;&amp;quot;OMAP3 ISP CCDC&amp;quot;:0[1], &amp;quot;OMAP3 ISP CCDC&amp;quot;:2-&amp;gt;&amp;quot;OMAP3 ISP preview&amp;quot;:0[1], &amp;quot;OMAP3 ISP preview&amp;quot;:1-&amp;gt;&amp;quot;OMAP3 ISP resizer&amp;quot;:0[1], &amp;quot;OMAP3 ISP resizer&amp;quot;:1-&amp;gt;&amp;quot;OMAP3 ISP resizer output&amp;quot;:0[1]'&lt;br /&gt;
&lt;br /&gt;
#Set the formats&lt;br /&gt;
media-ctl -V '&amp;quot;mt9v032 3-005c&amp;quot;:0[SGRBG10 752x480], &amp;quot;OMAP3 ISP CCDC&amp;quot;:2[SGRBG10 752x480], &amp;quot;OMAP3 ISP preview&amp;quot;:1[UYVY 752x480], &amp;quot;OMAP3 ISP resizer&amp;quot;:1[UYVY 752x480]'&lt;br /&gt;
&lt;br /&gt;
LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so gst-launch -v v4l2src device=/dev/video6 ! autoconvert ! theoraenc ! rtptheorapay ! udpsink host=[DESTINATION ADDRESS]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then you can watch the video:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;gst-launch -v udpsrc caps=&amp;quot;[REPLACE WITH THE CAPS OUTPUT FROM ABOVE]&amp;quot; ! rtptheoradepay ! theoradec ! xvimagesink&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== JPEG ====&lt;br /&gt;
A few extra packages are required for JPEG:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo smart install gst-plugins-base-videorate gst-plugins-good-jpeg gst-plugins-good-multipart gst-plugins-base-tcp&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Next you can begin capture:&lt;br /&gt;
&amp;lt;pre&amp;gt;gst-launch v4l2src device=/dev/video6 ! autoconvert ! jpegenc quality=30 ! multipartmux ! tcpserversink port=5000 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally view the result:&lt;br /&gt;
&amp;lt;pre&amp;gt;gst-launch tcpclientsrc host=[IP ADDRESS OF YOUR GUMSTIX COM] port=5000 ! multipartdemux ! jpegdec ! xvimagesink&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Display Frame Rate ===&lt;br /&gt;
Replacing the last element &amp;lt;pre&amp;gt;xvimagesink&amp;lt;/pre&amp;gt; with &amp;lt;pre&amp;gt;fpsdisplaysink&amp;lt;/pre&amp;gt; shows load status overlayed on the screen. However the FPS remains at 0 and the number of dropped frame increases. Probably configuration issue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Statistics ==&lt;br /&gt;
These statistics were verified on an Overo AirSTORM COM:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| &lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot; | RAW&lt;br /&gt;
! THEORA&lt;br /&gt;
! JPEG&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot; | Bandwidth&lt;br /&gt;
| ~10 MB/s&lt;br /&gt;
| 30 KB/s&lt;br /&gt;
| 130KB/s&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot; | Image Quality&lt;br /&gt;
| High&lt;br /&gt;
| Low&lt;br /&gt;
| Medium&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot; | FPS&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot; | CPU Load&lt;br /&gt;
| ~94%&lt;br /&gt;
| ~94%&lt;br /&gt;
| ~94%&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Older Information ==&lt;br /&gt;
&lt;br /&gt;
This section contains deprecated, but potentially useful information about using Caspa cameras.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Kernel Version 2.6.34 Customizations ===&lt;br /&gt;
&lt;br /&gt;
Get the kernel source that is used in the Gumstix kernel recipe (~/overo-oe/org.openmebedded.dev/recipes/linux/linux-omap3_2.6.34.bb) and create a new branch from the recipe SRCREV.&lt;br /&gt;
 $ git clone -b caspa https://github.com/gumstix/linux.git&lt;br /&gt;
 $ cd linux&lt;br /&gt;
&lt;br /&gt;
Or, fetch and patch:&lt;br /&gt;
 $ cd ~&lt;br /&gt;
 $ git clone git://www.sakoman.com/git/linux.git&lt;br /&gt;
 $ cd linux&lt;br /&gt;
 $ git checkout -b 2.6.34 cb89736af28f583598e49a05249334a194d00f1d&lt;br /&gt;
 $ wget http://cumulus.gumstix.org/sources/mt9v032-2.6.34.patch&lt;br /&gt;
 $ patch -p1 &amp;lt; mt9v032-2.6.34.patch&lt;br /&gt;
&lt;br /&gt;
Get the kernel configuration. This is the same one used for the linux-omap3-caspapx image.&lt;br /&gt;
 $ wget http://cumulus.gumstix.org/sources/mt9v032-2.6.34.defconfig&lt;br /&gt;
 $ cp mt9v032-2.6.34.defconfig .config&lt;br /&gt;
&lt;br /&gt;
If you haven't done so yet, you'll need to [http://www.jumpnowtek.com/gumstix/overo/Overo-Systems-with-Yocto.html set up your build environment]. Build the console image. This will ensure that the cross compiler, binutils, and libraries need to compile the kernel are installed.&lt;br /&gt;
 $ bitbake omap3-console-image&lt;br /&gt;
&lt;br /&gt;
Add the cross compiler to your path and configure the kernel. The cross compiler location depends on the architecture of your build machine.&lt;br /&gt;
 ''32-bit processors''&lt;br /&gt;
 $ export PATH=/home/&amp;lt;username&amp;gt;/overo-oe/tmp/sysroots/i686-linux/usr/armv7a/bin:${PATH} &amp;lt;br /&amp;gt;&lt;br /&gt;
 ''64-bit processors''&lt;br /&gt;
 $ export PATH=/home/&amp;lt;username&amp;gt;/overo-oe/tmp/sysroots/x86_64-linux/usr/armv7a/bin:${PATH}&lt;br /&gt;
&lt;br /&gt;
Build kernel and modules&lt;br /&gt;
 $ make ARCH=arm CROSS_COMPILE=arm-angstrom-linux-gnueabi- uImage&lt;br /&gt;
 $ make ARCH=arm CROSS_COMPILE=arm-angstrom-linux-gnueabi- modules&lt;br /&gt;
&lt;br /&gt;
Install modules&lt;br /&gt;
 $ mkdir ~/linux-omap-2.6/modules&lt;br /&gt;
 $ make ARCH=arm CROSS_COMPILE=arm-angstrom-linux-gnueabi- INSTALL_MOD_PATH=./modules modules_install&lt;br /&gt;
&lt;br /&gt;
=== Other Kernel Versions ===&lt;br /&gt;
&lt;br /&gt;
The ISP code used for the 2.6.34 patch came from the arago-project. This is the OMAP3 PSP kernel integration/staging tree&lt;br /&gt;
 $ git remote add git://arago-project.org/git/projects/linux-omap3.git aragoOMAP3 PSP kernel integration/staging tree&lt;br /&gt;
 $ git fetch arago&lt;br /&gt;
 $ git checkout -b arago&lt;br /&gt;
&lt;br /&gt;
The V4L2 subdevice framework offers a way to configure the Image Signal Processor pipeline from user-space. This is currently under active development and users wishing to make use of this should visit the Media controller development repository [http://git.linuxtv.org/pinchartl/media.git here]. This contains the bleeding edge Video for Linux media framework, ISP, and MT9V032 drivers.&lt;br /&gt;
&lt;br /&gt;
=== MT9V032 Driver ===&lt;br /&gt;
&lt;br /&gt;
If you want to take advantage of an unimplemented sensor feature, change defaults, etc., you need to modify the driver source. After you've made a change you can use a script like the following to quickly test your new driver.&lt;br /&gt;
&lt;br /&gt;
 #! /bin/bash &amp;lt;br&amp;gt;&lt;br /&gt;
 TARGET_OVERO=&amp;quot;root@10.0.1.15&amp;quot;&lt;br /&gt;
 make -j8 ARCH=arm CROSS_COMPILE=arm-angstrom-linux-gnueabi- modules&lt;br /&gt;
 ssh $TARGET_OVERO 'rmmod mt9v032'&lt;br /&gt;
 scp drivers/media/video/mt9v032.ko $TARGET_OVERO:/lib/modules/2.6.34/kernel/drivers/media/video/&lt;br /&gt;
 ssh $TARGET_OVERO 'insmod /lib/modules/2.6.34/kernel/drivers/media/video/mt9v032.ko'&lt;br /&gt;
 ssh $TARGET_OVERO 'mplayer -display :0.0 tv:// -tv driver=v4l2:device=/dev/video0'&lt;br /&gt;
&lt;br /&gt;
=== Image Signal Processor ===&lt;br /&gt;
&lt;br /&gt;
There is some code that you can't modularize and modifying means rebuilding the kernel. Such is the case for the ISP code which is used by board-overo.c for hardware configuration. Another script like that in the previous section can be very useful.&lt;br /&gt;
&lt;br /&gt;
This script rebuilds the kernel, copies it to the COM, and resets:&lt;br /&gt;
&lt;br /&gt;
 #! /bin/bash &amp;lt;br /&amp;gt;&lt;br /&gt;
 TARGET_OVERO=&amp;quot;root@10.0.1.15&amp;quot;&lt;br /&gt;
 make -j8 ARCH=arm CROSS_COMPILE=arm-angstrom-linux-gnueabi- uImage;&lt;br /&gt;
 scp arch/arm/boot/uImage $TARGET_OVERO:/boot/uImage;&lt;br /&gt;
 scp arch/arm/boot/uImage $TARGET_OVERO:/media/mmcblk0p1/uImage&lt;br /&gt;
 ssh $TARGET_OVERO 'shutdown -r now'&lt;br /&gt;
&lt;br /&gt;
This is useful for adjusting the filters, white balance, and color blending coefficients used by the ISP preview module. The preview module is used for doing hardware conversion from 10-bit Bayer to YUV. If you are having color problems - especially under certain lighting conditions but not others - look at '''isppreview.c''' and the gamma correction tables in '''drivers/media/video/isp/'''&lt;br /&gt;
&lt;br /&gt;
=== Tuning ===&lt;br /&gt;
&lt;br /&gt;
==== Module Parameters ====&lt;br /&gt;
By default, auto exposure, auto gain, and high dynamic range are all enabled. You can disable any or all of these to suit your needs by reloading the driver.&lt;br /&gt;
&lt;br /&gt;
Get a list of driver parameters.&lt;br /&gt;
 # modinfo mt9v032&lt;br /&gt;
 filename:       /lib/modules/2.6.34/kernel/drivers/media/video/mt9v032.ko&lt;br /&gt;
 license:        GPL&lt;br /&gt;
 author:         Ignacio Garcia Perez &amp;lt;iggarpe@gmail.com&amp;gt;&lt;br /&gt;
 description:    mt9v032 camera sensor driver&lt;br /&gt;
 srcversion:     A46920FD64C35A2645E0D54&lt;br /&gt;
 alias:          i2c:mt9v032&lt;br /&gt;
 depends:        &lt;br /&gt;
 vermagic:       2.6.34 mod_unload modversions ARMv7 &lt;br /&gt;
 parm:           sensor_type:Sensor type: &amp;quot;color&amp;quot; or &amp;quot;mono&amp;quot; (charp)&lt;br /&gt;
 parm:           auto_exp:Initial state of automatic exposure (int)&lt;br /&gt;
 parm:           auto_gain:Initial state of automatic gain (int)&lt;br /&gt;
 parm:           hdr:High dynamic range (int)&lt;br /&gt;
 parm:           low_light:Enable companding (int)&lt;br /&gt;
 parm:           hflip:Horizontal flip (int)&lt;br /&gt;
 parm:           vflip:Vertical flip (int)&lt;br /&gt;
&lt;br /&gt;
Depending on the light level, auto exposure might reduce the framerate as low as 15 frames per second. You can disable auto exposure like so:&lt;br /&gt;
 # rmmod mt9v032;&lt;br /&gt;
 # insmod /lib/modules/2.6.34/kernel/drivers/media/video/mt9v032.ko auto_exp=0&lt;br /&gt;
&lt;br /&gt;
If this makes your image too dark, you can disable auto gain and enable companding mode (more information [http://www.aptina.com/assets/downloadDocument.do?id=668 here]).&lt;br /&gt;
 # rmmod mt9v032&lt;br /&gt;
 # insmod /lib/modules/2.6.34/kernel/drivers/media/video/mt9v032.ko auto_exp=0 auto_gain=0 low_light=1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Userspace control (IOCTL) === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== External Links == &lt;br /&gt;
&lt;br /&gt;
Caspa VL (filtered lens): [http://www.mars-cam.com/optical/lenses/ccd_cmos/43fix.php V-4303.6-1]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Caspa FS (unfiltered lens): [http://www.ktnc.co.kr/english/viewtopic.php?t=468 KLB-0360]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://focus.ti.com/general/docs/lit/getliterature.tsp?literatureNumber=spruf98m&amp;amp;fileType=pdf OMAP35x Technical Reference Manual]&lt;br /&gt;
&lt;br /&gt;
[http://www.aptina.com/assets/downloadDocument.do?id=668 MT9V032 Datasheet]&lt;br /&gt;
&lt;br /&gt;
[http://pubs.gumstix.com/boards/CASPA/PCB30009-R2496/ Caspa layout and schematic files]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:How_to_-_expansion_boards]]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_bluetooth&amp;diff=6156</id>
		<title>Category:How to - bluetooth</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_bluetooth&amp;diff=6156"/>
				<updated>2016-04-01T23:23:19Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: /* Configure extra GPIOs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Essentials ==&lt;br /&gt;
&lt;br /&gt;
Install the basic bluetooth stuff with&lt;br /&gt;
&lt;br /&gt;
 opkg install bluez-utils&lt;br /&gt;
&lt;br /&gt;
First off, I had to move the &amp;quot;sleep 1&amp;quot; from after &amp;quot;sdptool add ...&amp;quot; to before the sdptool command. The startup script seemed to be failing to run to completion before I did that.&lt;br /&gt;
&lt;br /&gt;
== Networking: pan access point ==&lt;br /&gt;
&lt;br /&gt;
 ipkg install dnsmasq&lt;br /&gt;
&lt;br /&gt;
/etc/dnsmasq.conf needs to contain (among other things it comes with):&lt;br /&gt;
&lt;br /&gt;
 interface=bnep0&lt;br /&gt;
 dhcp-range=10.0.1.10,10.0.1.200,2h&lt;br /&gt;
&lt;br /&gt;
/etc/network/interfaces:&lt;br /&gt;
&lt;br /&gt;
 allow-hotplug bnep0&lt;br /&gt;
 iface bnep0 inet static&lt;br /&gt;
        address 10.0.1.1&lt;br /&gt;
        netmask 255.255.255.0&lt;br /&gt;
        network 10.0.1.0&lt;br /&gt;
&lt;br /&gt;
/etc/default/bluetooth:&lt;br /&gt;
&lt;br /&gt;
 PAND_ENABLE=true&lt;br /&gt;
 PAND_OPTIONS=&amp;quot;--listen --role NAP&amp;quot;&lt;br /&gt;
&lt;br /&gt;
/etc/network/if-up.d/btap&lt;br /&gt;
&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 iptables -A POSTROUTING -t nat -j MASQUERADE -s 10.0.1.0/24&lt;br /&gt;
 echo 1 &amp;gt; /proc/sys/net/ipv4/ip_forward&lt;br /&gt;
 iptables -P FORWARD ACCEPT&lt;br /&gt;
&lt;br /&gt;
You may need to re-run pand or re-run the post-up script.&lt;br /&gt;
&lt;br /&gt;
== Networking: pan client ==&lt;br /&gt;
&lt;br /&gt;
/etc/network/interfaces:&lt;br /&gt;
&lt;br /&gt;
 allow-hotplug bnep0&lt;br /&gt;
 iface bnep0 inet dhcp&lt;br /&gt;
&lt;br /&gt;
/etc/default/bluetooth:&lt;br /&gt;
&lt;br /&gt;
 PAND_ENABLE=true&lt;br /&gt;
 PAND_OPTIONS=&amp;quot;--role PANU --search&amp;quot;&lt;br /&gt;
&lt;br /&gt;
For some reason pan can't find my access point so I have to hardcode it&lt;br /&gt;
&lt;br /&gt;
 PAND_OPTIONS=&amp;quot;-c 00:0B:5D:44:33:22&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Dialup networking: server ==&lt;br /&gt;
&lt;br /&gt;
ipkg install pppd&lt;br /&gt;
&lt;br /&gt;
ipkg install (some kernel modules iirc)&lt;br /&gt;
&lt;br /&gt;
I'm not sure if both the bridging and masquerading scripts are required. The pan0 device would need to be created in advance (with brctl iirc)&lt;br /&gt;
&lt;br /&gt;
/etc/default/bluetooth:&lt;br /&gt;
&lt;br /&gt;
 DUND_ENABLE=true                                                         &lt;br /&gt;
 DUND_OPTIONS=&amp;quot;--master --channel 3 --auth --encrypt --secure --pppd /bin/mypppd&amp;quot;&lt;br /&gt;
&lt;br /&gt;
/bin/mypppd:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/sh                                                                      &lt;br /&gt;
 LEASES=/var/run/mypppd.leases                                                  &lt;br /&gt;
 grep -q $DUN_BDADDR $LEASES || echo $DUN_BDADDR &amp;gt;&amp;gt;$LEASES                      &lt;br /&gt;
 LOCAL=192.168.32.10                                                            &lt;br /&gt;
 REMOTE=192.168.42.`grep -n $DUN_BDADDR $LEASES | cut -d : -f1`                 &lt;br /&gt;
 pppd $LOCAL:$REMOTE $*                                                    &lt;br /&gt;
&lt;br /&gt;
/etc/ppp/peers/dun:&lt;br /&gt;
&lt;br /&gt;
 460800                                                                         &lt;br /&gt;
 crtscts                                                                        &lt;br /&gt;
 debug                                                                          &lt;br /&gt;
 local                                                                          &lt;br /&gt;
 noipdefault                                                                    &lt;br /&gt;
 passive                                                                        &lt;br /&gt;
 connect &amp;quot;/etc/ppp/peers/at-command.pl&amp;quot;                                         &lt;br /&gt;
 noauth                                                                         &lt;br /&gt;
 nodefaultroute                                                                 &lt;br /&gt;
 noipx                                                                          &lt;br /&gt;
 noaccomp                                                                       &lt;br /&gt;
 nobsdcomp                                                                      &lt;br /&gt;
 nodeflate                                                                      &lt;br /&gt;
 ms-dns 198.60.22.2&lt;br /&gt;
&lt;br /&gt;
/etc/ppp/peers/at-command.pl:&lt;br /&gt;
&lt;br /&gt;
 #!/usr/bin/perl                                                                &lt;br /&gt;
                                                                               &lt;br /&gt;
 $/ = &amp;quot;\r&amp;quot;;                                                                     &lt;br /&gt;
 while(&amp;lt;STDIN&amp;gt;)                                                                 &lt;br /&gt;
 {                                                                              &lt;br /&gt;
        $_ = uc;                                                               &lt;br /&gt;
        if(/^ATD/) {                                                           &lt;br /&gt;
                print &amp;quot;CONNECT\r\n&amp;quot;;                                           &lt;br /&gt;
                exit(0);                                                       &lt;br /&gt;
        } elsif(/^AT/) {                                                       &lt;br /&gt;
                print &amp;quot;OK\r\n&amp;quot;;                                                &lt;br /&gt;
        }                                                                      &lt;br /&gt;
 }                                    &lt;br /&gt;
&lt;br /&gt;
/etc/ppp/ip-up.d/09nat&lt;br /&gt;
&lt;br /&gt;
 iptables -F -t nat                                                             &lt;br /&gt;
                                                                               &lt;br /&gt;
 echo &amp;quot;1&amp;quot; &amp;gt; /proc/sys/net/ipv4/ip_forward                                       &lt;br /&gt;
 echo &amp;quot;1&amp;quot; &amp;gt; /proc/sys/net/ipv4/ip_dynaddr                                       &lt;br /&gt;
                                                                               &lt;br /&gt;
 iptables -t nat -A POSTROUTING -s 192.168.42.0/24 -j MASQUERADE                &lt;br /&gt;
 iptables -t nat -A POSTROUTING -s 10.0.1.0/24     -j MASQUERADE                &lt;br /&gt;
 iptables -P FORWARD ACCEPT                        &lt;br /&gt;
&lt;br /&gt;
/etc/ppp/ip-up.d/10bridge&lt;br /&gt;
&lt;br /&gt;
 #!/bin/sh                                                                  &lt;br /&gt;
 brctl addif pan0 $2&lt;br /&gt;
&lt;br /&gt;
== Dialup networking: client ==&lt;br /&gt;
&lt;br /&gt;
== GPS repeater ==&lt;br /&gt;
&lt;br /&gt;
Install gpsd and configure it for your gps connection.&lt;br /&gt;
&lt;br /&gt;
In /etc/init.d/bluetooth, change &lt;br /&gt;
&lt;br /&gt;
 $RFCOMM_EXEC -r watch 0 1 /sbin/getty -w -L rfcomm0 115200 vt100 &amp;amp;&lt;br /&gt;
to&lt;br /&gt;
 $RFCOMM_EXEC -r watch 0 1 sh -c &amp;quot;gpspipe -r &amp;gt;/dev/rfcomm0&amp;quot; &amp;amp;&lt;br /&gt;
&lt;br /&gt;
Unfortunately, advertising your gps uses the same sdp record as advertising your bluetooth console, so this knocks out your console. You can bring it back on an unadvertised channel:&lt;br /&gt;
&lt;br /&gt;
 $RFCOMM_EXEC -r watch 1 2 /sbin/getty -w -L rfcomm1 115200 vt100 &amp;amp;&lt;br /&gt;
&lt;br /&gt;
but then you'll have to be able to manually choose channel 2. That's not a problem from linux, but problematic for others.&lt;br /&gt;
&lt;br /&gt;
== Keyboard or mouse ==&lt;br /&gt;
&lt;br /&gt;
Put your keyboard or mouse in pairing mode and run:&lt;br /&gt;
&lt;br /&gt;
 hidd --search&lt;br /&gt;
&lt;br /&gt;
The keyboard should connect and on subsequent runs it will reconnect automatically if you boot up with this in /etc/default/bluetooth&lt;br /&gt;
&lt;br /&gt;
 HIDD_ENABLE=true&lt;br /&gt;
 HIDD_OPTIONS=&amp;quot;--master --server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Voice audio ==&lt;br /&gt;
&lt;br /&gt;
Currently the way to use voice over bluetooth requires a vx board and a USB bluetooth adapter with a CSR chip in it.&lt;br /&gt;
&lt;br /&gt;
== High-fidelity audio ==&lt;br /&gt;
&lt;br /&gt;
You can use A2DP with either the internal bluetooth adapter (model 08 or newer) or any brand of USB adapter if you have a vx board.&lt;br /&gt;
&lt;br /&gt;
Install the packages you'll need:&lt;br /&gt;
&lt;br /&gt;
 ipkg install bluez-utils bluez-utils-alsa alsa-utils-aplay madplay&lt;br /&gt;
&lt;br /&gt;
Edit /etc/bluetooth/audio.service to enable autostart:&lt;br /&gt;
&lt;br /&gt;
 [Bluetooth Service]&lt;br /&gt;
 Identifier=audio&lt;br /&gt;
 Name=Audio service&lt;br /&gt;
 Description=Bluetooth Audio service&lt;br /&gt;
 Autostart=true&lt;br /&gt;
&lt;br /&gt;
Reboot now if you had to change this.&lt;br /&gt;
&lt;br /&gt;
You'll likely need the passkey agent running, at least the first time you connect. A few itech headsets need &amp;quot;8888&amp;quot; but most need &amp;quot;0000&amp;quot; for the pin:&lt;br /&gt;
&lt;br /&gt;
 passkey-agent --default 0000 &amp;amp;&lt;br /&gt;
&lt;br /&gt;
put your headset in pairing mode. Usually this means starting from off and holding the power button down until it flashes. Then find the headset's address:&lt;br /&gt;
&lt;br /&gt;
 hcitool scan&lt;br /&gt;
&lt;br /&gt;
edit your /etc/asound.conf with an adapter for bluetooth with the address you just found. My headset is made by itech, so I name the adapter after it:&lt;br /&gt;
&lt;br /&gt;
 pcm.itech {&lt;br /&gt;
  type bluetooth&lt;br /&gt;
  device &amp;quot;00:0D:3C:8A:13:06&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
now try playing something to it:&lt;br /&gt;
&lt;br /&gt;
 madplay song.mp3 -r 44100 --output=wave:- | aplay -D itech&lt;br /&gt;
&lt;br /&gt;
you can also live-encode the line in source to a2dp:&lt;br /&gt;
&lt;br /&gt;
 arecord -c 2 -f s16 -r 44100 | aplay -D itech&lt;br /&gt;
&lt;br /&gt;
unfortunately for live encoding, the delay is pretty bad and for some reason I can never get stereo audio from the line-in source.&lt;br /&gt;
&lt;br /&gt;
== Debugging connection problems ==&lt;br /&gt;
&lt;br /&gt;
The best way to figure out what is happening is to use hcidump.&lt;br /&gt;
&lt;br /&gt;
 ipkg install bluez-hcidump&lt;br /&gt;
&lt;br /&gt;
In a separate window, or in the background, start the dump:&lt;br /&gt;
&lt;br /&gt;
 hcidump -XV&lt;br /&gt;
&lt;br /&gt;
And then in another window, try out your bluetooth command that isn't working. hcidump output is very verbose, but you'll probably be able to zero in on the issue by studying it a little.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Bluetooth advice from Australia==&lt;br /&gt;
===kick-start===&lt;br /&gt;
The Infineon v1.01 modules require a once-only 'kick-start' to become operational at a speed of 921600.&lt;br /&gt;
We have found the kick-start procedure below must be adhered to exactly, in order for the module to properly invoke the 'infineon manufacturer mode' function (that changes the speed) within  hciattach.&lt;br /&gt;
&lt;br /&gt;
The kick-start procedure is as follows-&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/init.d/S30bluetooth stop&lt;br /&gt;
&lt;br /&gt;
echo \&amp;quot;AF1 out\&amp;quot; &amp;gt; /proc/gpio/GPIO12&lt;br /&gt;
echo \&amp;quot;GPIO out clear\&amp;quot; &amp;gt;/proc/gpio/GPIO7&lt;br /&gt;
sleep 1&lt;br /&gt;
echo \&amp;quot;GPIO out set\&amp;quot; &amp;gt;/proc/gpio/GPIO7&lt;br /&gt;
sleep 1&lt;br /&gt;
echo \&amp;quot;AF1 in\&amp;quot;  &amp;gt; /proc/gpio/GPIO42&lt;br /&gt;
echo \&amp;quot;AF2 out\&amp;quot; &amp;gt; /proc/gpio/GPIO43&lt;br /&gt;
echo \&amp;quot;AF1 in\&amp;quot;  &amp;gt; /proc/gpio/GPIO44&lt;br /&gt;
echo \&amp;quot;AF2 out\&amp;quot; &amp;gt; /proc/gpio/GPIO45&lt;br /&gt;
/usr/sbin/hciattach -s 115200 ttyS1 gumstix 115200&lt;br /&gt;
/etc/init.d/S30bluetooth stop&lt;br /&gt;
echo \&amp;quot;AF1 out\&amp;quot; &amp;gt; /proc/gpio/GPIO12&lt;br /&gt;
echo \&amp;quot;GPIO out clear\&amp;quot; &amp;gt;/proc/gpio/GPIO7&lt;br /&gt;
sleep 1&lt;br /&gt;
echo \&amp;quot;GPIO out set\&amp;quot; &amp;gt;/proc/gpio/GPIO7&lt;br /&gt;
sleep 1&lt;br /&gt;
echo \&amp;quot;AF1 in\&amp;quot;  &amp;gt; /proc/gpio/GPIO42&lt;br /&gt;
echo \&amp;quot;AF2 out\&amp;quot; &amp;gt; /proc/gpio/GPIO43&lt;br /&gt;
echo \&amp;quot;AF1 in\&amp;quot;  &amp;gt; /proc/gpio/GPIO44&lt;br /&gt;
echo \&amp;quot;AF2 out\&amp;quot; &amp;gt; /proc/gpio/GPIO45&lt;br /&gt;
/usr/sbin/hciattach -s 115200 ttyS1 gumstix 921600  &amp;lt;-- (Infineon Manufacturer Mode is invoked here, within hciattach)&lt;br /&gt;
/etc/init.d/S30bluetooth stop&lt;br /&gt;
echo \&amp;quot;AF1 out\&amp;quot; &amp;gt; /proc/gpio/GPIO12&lt;br /&gt;
echo \&amp;quot;GPIO out clear\&amp;quot; &amp;gt;/proc/gpio/GPIO7&lt;br /&gt;
sleep 1&lt;br /&gt;
echo \&amp;quot;GPIO out set\&amp;quot; &amp;gt;/proc/gpio/GPIO7&lt;br /&gt;
sleep 1&lt;br /&gt;
echo \&amp;quot;AF1 in\&amp;quot;  &amp;gt; /proc/gpio/GPIO42&lt;br /&gt;
echo \&amp;quot;AF2 out\&amp;quot; &amp;gt; /proc/gpio/GPIO43&lt;br /&gt;
echo \&amp;quot;AF1 in\&amp;quot;  &amp;gt; /proc/gpio/GPIO44&lt;br /&gt;
echo \&amp;quot;AF2 out\&amp;quot; &amp;gt; /proc/gpio/GPIO45&lt;br /&gt;
/usr/sbin/hciattach -s 921600 ttyS1 gumstix 921600 &amp;lt;-- (Will now connect at 921600 using this command only)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
===BlueZ utilities===&lt;br /&gt;
The BlueZ utilities version we were using was too old- V2.24, and it did not contain the appropriate 'infineon manufacturer mode' functions required to change the speed of the module. It gave the following output when trying to bring up the module-&lt;br /&gt;
&lt;br /&gt;
----Read wrong response size: 4&lt;br /&gt;
----0x04 0xff 0x01 0x00&lt;br /&gt;
&lt;br /&gt;
We upgraded to BlueZ V3.24 and this solved the above problem, however&lt;br /&gt;
we had to comment out the following lines in the 'gumstix_reset'&lt;br /&gt;
function of 'hciattach.c'-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
//system(&amp;quot;echo clear &amp;gt; /proc/gpio/GPIO12&amp;quot;);&lt;br /&gt;
//system(&amp;quot;echo set &amp;gt; /proc/gpio/GPIO12&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We felt these were more appropriate in S30Bluetooth.&lt;br /&gt;
--------------------------------------------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
===HCIATTACH commands===&lt;br /&gt;
The Bluetooth appears to be on ttyS1, where previously it was present on ttyS3.&lt;br /&gt;
Thus the following changes needed to be made to /etc/default/bluetooth-&lt;br /&gt;
&lt;br /&gt;
HCIATTACH_TTY=ttyS1&lt;br /&gt;
&lt;br /&gt;
...and we also had to put in new speed parameters to bring the module up properly after a kick-start-&lt;br /&gt;
&lt;br /&gt;
HCIATTACH_START_SPEED=921600&lt;br /&gt;
HCIATTACH_SPEED=921600&lt;br /&gt;
--------------------------------------------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
===Configure extra GPIOs===&lt;br /&gt;
Lastly, some extra GPIOs needed to be configured as appropriate. We only discovered this when we looked at the Open Embedded version of /etc/init.d/bluetooth and discovered that it had some mysterious extra GPIOs being set, that were not present in the buildroot script or any documentation. These are the following-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo AF1 out &amp;gt; /proc/gpio/GPIO12&lt;br /&gt;
sleep 1&lt;br /&gt;
echo GPIO out clear &amp;gt;/proc/gpio/GPIO7&lt;br /&gt;
sleep 1&lt;br /&gt;
echo GPIO out set &amp;gt;/proc/gpio/GPIO7&lt;br /&gt;
sleep 1&lt;br /&gt;
echo &amp;quot;AF1 in&amp;quot;  &amp;gt; /proc/gpio/GPIO42      #(Not present in buildroot)&lt;br /&gt;
echo &amp;quot;AF2 out&amp;quot; &amp;gt; /proc/gpio/GPIO43      #(Not present in buildroot)&lt;br /&gt;
echo &amp;quot;AF1 in&amp;quot;  &amp;gt; /proc/gpio/GPIO44      #(Not present in buildroot, not documented)&lt;br /&gt;
echo &amp;quot;AF2 out&amp;quot; &amp;gt; /proc/gpio/GPIO45      #(Not present in buildroot, not documented)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
All of these changes were required to make the modules work properly.&lt;br /&gt;
&lt;br /&gt;
We have also identified that the new v1.01 infineon module has improved pairing ability over its predecessor. Its predecessor required that a passkey be entered every time the unit connects to a paired device. The new module only requires a passkey once, and subsequent connection attempts are automatically connected, as they should be.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tomas Targownik&lt;br /&gt;
&lt;br /&gt;
[[Category:How_to_-_general]]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6155</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6155"/>
				<updated>2016-04-01T23:22:49Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;''Welcome to the Gumstix User Wiki''&amp;lt;/big&amp;gt;     &lt;br /&gt;
&lt;br /&gt;
This site is provided so that Gumstix users can share their knowledge, showcase their Gumstix-based projects, and pass on links to other sources of information and materials.  This information is entirely user generated and supported.  Please contribute your know-how to help your fellow developers.&lt;br /&gt;
&lt;br /&gt;
  '''Community additions and edits are always encouraged, but please read the help page before making any major edits.'''&lt;br /&gt;
  ''You will need to create a new user account if you would like to contribute or edit content on this site.''&lt;br /&gt;
&lt;br /&gt;
Visit the [http://gumstix.org Gumstix Developer Center] for official Gumstix documentation and other information of interest to developers.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;&lt;br /&gt;
''Focus'']]&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;''All Topics'']]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - Android|Android]]&lt;br /&gt;
* [[:Category:how to - eclipse|Eclipse]]&lt;br /&gt;
* [[Linaro]]&lt;br /&gt;
* [[Installing Linaro Image]]&lt;br /&gt;
* [[LinuxLink]]&lt;br /&gt;
* [[:Category:how to - Ubuntu|Ubuntu]]&lt;br /&gt;
* [[:Category:how to - Debian|Debian]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - audio|Audio]]&lt;br /&gt;
* [[:Category:how to - adc|ADC]]&lt;br /&gt;
* [[AutoLogin|Automatic Logins]]&lt;br /&gt;
* [[:Category:how to - batteries|Batteries]]&lt;br /&gt;
* [[:Category:how to - bluetooth|Bluetooth]]&lt;br /&gt;
* [[:Category:how to - Buildroot overo|Buildroot (overo)]]&lt;br /&gt;
* [[:Category:Connect_hardware|Connect Hardware]]&lt;br /&gt;
* [[Caspa_camera_boards|Caspa camera boards]]&lt;br /&gt;
* [[:Category:how to - displays|Displays]]&lt;br /&gt;
* [[:Category:how to - DSP|DSP]]&lt;br /&gt;
* [[:Category:how_to_-_ethernet|Ethernet]]&lt;br /&gt;
* [[:Category:how_to_-_expansion_boards|Expansion Boards]]&lt;br /&gt;
* [[:Category:how to - fedora|Fedora]]&lt;br /&gt;
* [[:Category:how to - Fast Boot|Fast Boot]]&lt;br /&gt;
* [[:Category:how to - Fortran|Fortran]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Gaining Console Connection via Terminal]]&lt;br /&gt;
* [[:Category:how to - git|Git]]&lt;br /&gt;
* [[GPIO|GPIO]]&lt;br /&gt;
* [[GPS|GPS]]&lt;br /&gt;
* [[:Category:how to - gui|GUI]]&lt;br /&gt;
* [[:Category:how to - general|General]]&lt;br /&gt;
* [[:Category:how to - Build helloworld|HelloWorld]]&lt;br /&gt;
* [[HelloWorld|HelloWorld in Python, C, C++]]&lt;br /&gt;
* [[HelloWorld in Java|HelloWorld in Java]]&lt;br /&gt;
* [[:Category:how to - i2c|I2C]]&lt;br /&gt;
* [[:Category:how to - IMU|IMU]]&lt;br /&gt;
* [[:Category:how to - JAVA|JAVA]]&lt;br /&gt;
* [[Kernel Build]]&lt;br /&gt;
* [[Kernel Reconfiguration|Kernel Reconfiguration]]&lt;br /&gt;
* [[:Category:how to - Known Issues|Known Issues]]&lt;br /&gt;
* [[:Category:how to - LCD|LCD]]&lt;br /&gt;
* [[:Category:how to - Low Power|Low Power]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - linux|Linux]]&lt;br /&gt;
* [[AudioIn | Use a microphone]]&lt;br /&gt;
* [[MicroSd |MicroSD Duplication]]&lt;br /&gt;
* [[:Category:how to - Network_Boot|Network Boot]]&lt;br /&gt;
* [[:Category:how to - OpenEmbedded|OpenEmbedded]]&lt;br /&gt;
* [[Overo Bare Metal|Overo Bare Metal]]&lt;br /&gt;
* [[:Category:How to - PWM|PWM]]&lt;br /&gt;
* [[:Category:How_to_-_qemu|Qemu]]&lt;br /&gt;
* [[:Category:How_to_-_Qt|Qt]]&lt;br /&gt;
* [[:Category:how to - robotics|Robotics]]&lt;br /&gt;
* [[ROS|ROS]]&lt;br /&gt;
* [[RoboVero|RoboVero]]&lt;br /&gt;
* [[:Category:SPI|SPI]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:SUSE|SUSE]]&lt;br /&gt;
* [[Remote Debugging with GDB|Remote Debugging with GDB]]&lt;br /&gt;
* [[Toolchain]]&lt;br /&gt;
* [[U-Boot|UBoot]]&lt;br /&gt;
* [[:Category:how to - usb|USB]]&lt;br /&gt;
* [[Verdex Git Repository]]&lt;br /&gt;
* [[Verdex JTAG]]&lt;br /&gt;
* [[VerdexPro U-Boot Flashing Fix]]&lt;br /&gt;
* [[:Category:how to - virtual machine|Virtual Machine]]&lt;br /&gt;
* [[:Category:how to - webcams|Webcams]]&lt;br /&gt;
* [[:Category:how to - wifi|Wifi]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:projects|User Projects]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:User_pics_videos|User Pics &amp;amp; Videos]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:resources|Resources]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:faqs|Questions and Answers]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:projects - audio|Audio]]&lt;br /&gt;
* [[:Category:projects - competitions|Competitions]]&lt;br /&gt;
* [[:Category:projects - displays|Displays]]&lt;br /&gt;
* [[:Category:projects - pdas|PDA's]]&lt;br /&gt;
* [[:Category:Projects_-Research_and_Education|Research &amp;amp; Education]]&lt;br /&gt;
* [[:Category:projects - monitoring and control|Monitoring and Control]]&lt;br /&gt;
* [[:Category:projects - robotics|Robotics &amp;amp; UAV's]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [http://www.youtube.com/results?uploaded=m&amp;amp;search_query=gumstix&amp;amp;search_type=videos&amp;amp;suggested_categories=28&amp;amp;uni=3&amp;amp;search_sort=video_date_uploaded Gumstix on Youtube]&lt;br /&gt;
* [http://www.flickr.com/search/?q=gumstix&amp;amp;s=rec Gumstix in Flickr]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Windows CE solution|Solutions for Windows CE]]&lt;br /&gt;
* [[Qt solution|Solutions for Qt]]&lt;br /&gt;
* [[Manufacturer's specifications|Specifications for Processors &amp;amp; Components]]&lt;br /&gt;
* [[Software information]]&lt;br /&gt;
* [[Verified Peripherals]]&lt;br /&gt;
* [[Third Party Boards]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Gumstix Community Mailing List (no cost)&lt;br /&gt;
* [https://lists.sourceforge.net/lists/listinfo/gumstix-users Sign-up]&lt;br /&gt;
* [http://gumstix.8.x6.nabble.com/ Archives]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=RowboatAndroid&amp;diff=6154</id>
		<title>RowboatAndroid</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=RowboatAndroid&amp;diff=6154"/>
				<updated>2016-04-01T23:22:00Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;To get started with Android on Gumstix, have a look at https://github.com/gumdroid/manifest which makes some use of the Rowboat project.&lt;br /&gt;
&lt;br /&gt;
== Android on Overo ==&lt;br /&gt;
There are several ports of Android to Overo; one port is based off the Rowboat-Android project.  This project is focused on creating a port of Android for the TI OMAP processors such as the OMAP3503 and OMAP3530 used on the Gumstix Overo boards.  The steps described below explain how to get Android Froyo (2.2) running on an Overo.  At the current time, there is no support for the DSP but the SGX drivers are supported.&lt;br /&gt;
&lt;br /&gt;
== Setup ==&lt;br /&gt;
This section explains how to download the required code and build a kernel and root file system.&lt;br /&gt;
&lt;br /&gt;
=== Checkout Sources ===&lt;br /&gt;
Repo is a tool to manage multiple Git repositories. You can install it wherever you like but if you have administrator rights, you might find this convenient:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 $ sudo curl http://android.git.kernel.org/repo &amp;gt; repo&lt;br /&gt;
 $ sudo chmod a+x repo&lt;br /&gt;
 $ sudo mv repo /usr/bin/repo&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
With Repo installed, grab the manifest file that describes all the git repositories we wish to fetch and then use 'repo sync' to get the latest and greatest source:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 $ mkdir ~/rowboat-android&lt;br /&gt;
 $ cd ~/rowboat-android&lt;br /&gt;
 $ repo init -u git://gitorious.org/~ashcharles/rowboat/gumstix-manifest.git&lt;br /&gt;
 $ repo sync&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
This (default) manifest pulls most of the repositories directly from the rowboat-android project but a few specific repositories (ahem, the kernel) have been cloned from this project and tweaked for the Overo.&lt;br /&gt;
&lt;br /&gt;
=== Build a Kernel ===&lt;br /&gt;
This would be a good time to apply any kernel patches.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 $ cd ~/rowboat-android/kernel&lt;br /&gt;
 $ patch -p1 &amp;lt; ~/0001-added-palo43-pushbutton-and-led-support.patch&lt;br /&gt;
 $ patch -p1 &amp;lt; ~/[http://groups.google.com/group/rowboat/browse_thread/thread/adf23db34979817f/bfd1f0f7a13691c6?lnk=gst&amp;amp;q=IGEPv2+ADB#bfd1f0f7a13691c6 0001-Enable-ADB-on-IGEPv2-board.patch]&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To build a kernel, follow [http://code.google.com/p/rowboat/wiki/ConfigureAndBuild#Build_kernel these] steps; you can use ''overo_android_defconfig'' to configure the kernel. E.g.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 $ cd ~/rowboat-android&lt;br /&gt;
 $ export PATH=${PWD}/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin:$PATH&lt;br /&gt;
 $ cd kernel&lt;br /&gt;
 $ make ARCH=arm overo_android_defconfig&lt;br /&gt;
 $ make ARCH=arm CROSS_COMPILE=arm-eabi- uImage -j8&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
You should now have a shiny new 2.6.32 Overo kernel here ''arch/arm/boot/uImage''.&lt;br /&gt;
&lt;br /&gt;
=== Build a Root File System ===&lt;br /&gt;
Follow [http://code.google.com/p/rowboat/wiki/ConfigureAndBuild#Build_rootfs these] instructions to build a root file system using ''TARGET_PRODUCT=overo'' as the argument for make. E.g.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 $ cd ~/rowboat-android&lt;br /&gt;
 $ make TARGET_PRODUCT=overo -j8&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
After a bit of a wait (read: an hour or two depending on your machine), you should have the ''root'' and ''system'' directories in the ''out/target/product/overo'' directory; we can combine these to make our final root file system:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 $ cd ~/rowboat-android/out/target/product/overo&lt;br /&gt;
 $ mkdir android_rootfs&lt;br /&gt;
 $ cp -r root/* android_rootfs&lt;br /&gt;
 $ cp -r system android_rootfs&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
NOTE: Users wanting support for SGX hardware should skip to that section now before packaging their root file system.&lt;br /&gt;
&lt;br /&gt;
We use the built-in ''mktarball.sh'' utility to package our android_rootfs directory into a tarball wherein the files have appropriate (i.e. root) permissions; this means you need root permissions for this next step:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 $ cd ~/rowboat-android/out/target/product/overo&lt;br /&gt;
 $ sudo ../../../../build/tools/mktarball.sh ../../../host/linux-x86/bin/fs_get_stats android_rootfs . rootfs rootfs.tar.bz2&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
You should now have a root file system tarball sitting here ''~/rowboat-android/out/target/product/overo/rootfs.tar.bz2''.&lt;br /&gt;
&lt;br /&gt;
=== Getting SGX (Optional) ===&lt;br /&gt;
The PowerVR SGX hardware found on Overo boards with a OMAP3530 processor (FE, Fire, Water) provides integrated graphics support; in particular, it seems to reduce flicker on displays attached to the Overo.  It is necessary to add some extra libraries and drivers to the root file system to make use of this hardware. Grab the required code and build it:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 $ cd ~/rowboat-android&lt;br /&gt;
 $ git clone git://gitorious.org/rowboat/ti_android_sgx_sdk.git&lt;br /&gt;
 $ cd ti_android_sgx_sdk&lt;br /&gt;
 $ ./OMAP35x_Android_Graphics_SDK_setuplinux_3_01_00_03.bin&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
At this point, you will be prompted to agree to the software license and asked where to unpack the source files (something like ~/rowboat-android/ is probably appropriate). Now navigate to this directory and edit the user-modifiable fields in the ''Rules.make'' file.  Here are some suggested values:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 HOME=/home/&amp;lt;username&amp;gt;/rowboat-android/out/target/product/overo&lt;br /&gt;
 GRAPHICS_INSTALL_DIR=/home/&amp;lt;username&amp;gt;/rowboat-android/OMAP35x_Android_Graphics_SDK_3_01_00_03&lt;br /&gt;
 ANDROID_ROOT=$(HOME)/android_rootfs&lt;br /&gt;
 CSTOOL_DIR=/home/&amp;lt;username&amp;gt;/rowboat-android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/&lt;br /&gt;
 KERNEL_INSTALL_DIR=/home/&amp;lt;username&amp;gt;/rowboat-android/kernel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Finally, we can build and install this code (N.B. these command are issued from the directory where we unpacked the source):&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 $ make -j8&lt;br /&gt;
 $ make install OMAPES=3.x&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
More complete instructions are available [http://code.google.com/p/rowboat/wiki/ConfigureAndBuild#Install_the_Android_Graphics_SGX_SDK_on_Host_Machine here].&lt;br /&gt;
&lt;br /&gt;
=== DSP Support ===&lt;br /&gt;
Currently, this version does not support the C64+ DSP found on Overo boards with a OMAP3530 processor (FE, Fire, Water).  To get this working, these two pages may be helpful:&lt;br /&gt;
* http://code.google.com/p/rowboat/wiki/DSP&lt;br /&gt;
* http://code.google.com/p/rowboat/wiki/DSPCodecs&lt;br /&gt;
&lt;br /&gt;
== Install ==&lt;br /&gt;
'''Method 1'''&lt;br /&gt;
&lt;br /&gt;
Included with the TI images is a mkmmc-android.sh script that will do the heavy lifting for you. It will make a bootable micoSD card, format it appropriately then copy the images in the required order to the correct partitions on the card. Download as part of the TI Development Package or as a standalone script [http://gitorious.org/rowboat/mk-mmc/blobs/master/mkmmc-android.sh here].&lt;br /&gt;
&lt;br /&gt;
'''Method 2'''&lt;br /&gt;
&lt;br /&gt;
It is easiest to boot Android from a microSD card.  Follow the instructions [http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Creating-a-bootable-microSD-card/111.html here] to create a bootable microSD card with a recent MLO and U-boot from [http://www.sakoman.com/feeds/omap3/glibc/images/overo/ gumstix]. Also copy over the Android kernel and untar the root file system (requires root permissions) you have created:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 $ cd ~/rowboat-android&lt;br /&gt;
 $ cp kernel/arch/arm/boot/uImage /media/boot&lt;br /&gt;
 $ sudo tar xaf out/target/product/overo/rootfs.tar.bz2 --numeric-owner -C /media/rootfs&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
NOTE: this assumes the FAT partition of your bootable microSD card is mounted at /media/boot and that the EXT3 partition is mounted at /media/rootfs---adjust as appropriate.&lt;br /&gt;
&lt;br /&gt;
HINT: The commands to package the root file system, install the SGX (if desired), and copy these over to a microSD card are readily script-able; if you plan on doing this more than once...&lt;br /&gt;
&lt;br /&gt;
==Boot==&lt;br /&gt;
The Android kernel requires some special parameters on boot.  I have set these up in u-boot as follows (though this is certainly not the only way to do it):&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 # setenv anddisplay 'vram=8M omapfb.mode=dvi:1024x768MR-16@60 omapdss.def_disp=lcd43'&lt;br /&gt;
 # setenv andconsole 'console=ttyS2,115200n8 console=tty0 androidboot.console=ttyS2'&lt;br /&gt;
 # setenv androot 'root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait init=/init'&lt;br /&gt;
 # setenv andbootargs 'setenv bootargs mpurate=500 ${andconsole} ${androot} ${anddisplay}'&lt;br /&gt;
 # setenv andbootcmd 'mmc init; fatload mmc 0 ${loadaddr} uImage; run andbootargs; bootm ${loadaddr}'&lt;br /&gt;
 # saveenv&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
To boot Android, just type ''run andbootcmd'' at the u-boot prompt.&lt;br /&gt;
&lt;br /&gt;
If you always want to boot into android, set and save ${andbootcmd} as your boot command i.e.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 # setenv bootcmd ${andbootcmd}&lt;br /&gt;
 # saveenv&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE:&lt;br /&gt;
If you are using a 4.3&amp;quot; LCD panel (Chestnut43, Palo43), use ''defaultdisplay=lcd43''; for a 3.5&amp;quot; LCD panel (Palo35), use ''defaultdisplay=lcd35''; for an external DVI monitor (Tobi, Summit), use ''defaultdisplay=dvi''.  Even if you are using an LCD panel, it is not necessary to change the ''omapfb.mode'' as this just sets up the framebuffer in the case that an external DVI monitor is used.&lt;br /&gt;
&lt;br /&gt;
== Using Android ==&lt;br /&gt;
For touchscreen displays, you might like to replace the ''pointercal'' file found in ''~/rowboat-android/devices/gumstix/overo'' with one specific to the display you are using.  To do this, boot your Gumstix + touchscreen with the standard Angstrom build, do the touchscreen calibration step, and then grab the ''/etc/pointercal'' file from the root file system.&lt;br /&gt;
&lt;br /&gt;
A mouse with a scroll-wheel can be attached to the USB Host port via a USB hub and used as buttons:&lt;br /&gt;
* Right-click---back to home screen&lt;br /&gt;
* Middle(scroll)-click---options&lt;br /&gt;
* Scroll---scrolls&lt;br /&gt;
Note that the mouse doesn't function like a regular pointer.&lt;br /&gt;
&lt;br /&gt;
Please help out by listing features that are not (and, equally important, '''are''' working):&lt;br /&gt;
&lt;br /&gt;
=== Unknown ===&lt;br /&gt;
 '''Palo35 &amp;amp; Palo43 - USB OTG'''&lt;br /&gt;
   '''USB Flash Drive'''&lt;br /&gt;
   '''USB Ethernet'''&lt;br /&gt;
   '''USB Hub'''&lt;br /&gt;
   '''USB Camera'''&lt;br /&gt;
&lt;br /&gt;
 '''Palo35 &amp;amp; Palo43 - USB Host'''&lt;br /&gt;
   '''USB ADB'''&lt;br /&gt;
   '''USB Mass Storage Device'''&lt;br /&gt;
&lt;br /&gt;
 '''Palo35 &amp;amp; Palo43 - Full Serial Communication'''&lt;br /&gt;
&lt;br /&gt;
=== Known Working ===&lt;br /&gt;
 '''Palo35 &amp;amp; Palo43 - Sound''' is confirmed working with Android 2.2 on the Palo43 and Palo35 boards from Gumstix.&lt;br /&gt;
 '''Palo35 &amp;amp; Palo43 - LCD''' is confirmed working only when you build from rowboat source code. The pre-built images provided by gumstix DO NOT work.&lt;br /&gt;
 '''Palo35 &amp;amp; Palo43 - Touchscreen''' is confirmed working with patches. See Known Failing below.&lt;br /&gt;
 '''Palo45 - LED's &amp;amp; Buttons''' are confirmed working using pre-built images as well as building from rowboat source.&lt;br /&gt;
 '''Palo35 - LED's''' are confirmed working when built from source and kernel patches to board-overo.c applied&lt;br /&gt;
&lt;br /&gt;
=== Known Failing ===&lt;br /&gt;
 '''Palo35 &amp;amp; Palo43 - Touchscreen ''' coordinates are inverted. When building from rowboat source, you need to edit kernel/input/touchscreen/ads7846.c at line 634 (just ouside the #endif) add:&lt;br /&gt;
 x = pdata-&amp;gt;x_max - x;&lt;br /&gt;
 y = pdata-&amp;gt;y_max - y;&lt;br /&gt;
 '''Palo35 - Buttons''' do not work at this time even with the aforementioned patches applied.&lt;br /&gt;
&lt;br /&gt;
In palo35 interface board running with an overo fire,the gpio buttons does work using the patch, also you need to configure the .configue file to enable the keyboard gpio.&lt;br /&gt;
&lt;br /&gt;
== Help and Help Out ==&lt;br /&gt;
These steps have mostly been taken from (and would hopefully be integrated with :)) the [[http://code.google.com/p/rowboat/wiki/Main rowboat-android]] wiki; look here for additional information. Other useful links include:&lt;br /&gt;
* http://omapzoom.org/wiki/OMAP_Android_Main&lt;br /&gt;
The mailing list for this project is quite valuable; check the archives for rowboat@googlegroups.com.&lt;br /&gt;
&lt;br /&gt;
Patches, suggestions and improvements are most welcome---please send to ash (at) gumstix.com.&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_Android&amp;diff=6153</id>
		<title>Category:How to - Android</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_Android&amp;diff=6153"/>
				<updated>2016-04-01T23:20:29Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;To get started with Android on Gumstix, have a look at https://github.com/gumdroid/manifest.  This page links to some older methods.&lt;br /&gt;
&lt;br /&gt;
== Android on Overo ==&lt;br /&gt;
&lt;br /&gt;
The rowboat-android project has created a port of Android for the TI OMAP processors such as the OMAP3503 and OMAP3530 processors used on Gumstix Overo COMs. See [[Android_Gingerbread|these instructions]] to get Android Gingerbread running on an Overo COM.  The older [[RowboatAndroid|instructions]] explain how to build Android Froyo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Android on FLOW ==&lt;br /&gt;
&lt;br /&gt;
[http://www.gizmoforyou.net/site GizmoForYou] has ported '''Android Cupcake''', '''Eclair''' as well as '''Froyo (2.2)''' to the Overo line of platforms for their [http://www.gizmoforyou.net/site/shop/gizmos/computing/flow.html FLOW G1 and G1.5] Open Source PDA/Phone. The port supports many features that exist on the Overo platform as well as other FLOW features.&lt;br /&gt;
&lt;br /&gt;
=== Mailing list archives ===&lt;br /&gt;
&lt;br /&gt;
For recent postings on the Gumstix mailing list about Android, [http://www.nabble.com/forum/Search.jtp?query=android&amp;amp;sort=date&amp;amp;local=y&amp;amp;forum=22543 click here].&lt;br /&gt;
&lt;br /&gt;
== Android on Verdex Pro ==&lt;br /&gt;
&lt;br /&gt;
=== Mobile Device called &amp;quot;bc9&amp;quot; ===&lt;br /&gt;
BeatCraft, Inc. is developing verdex pro based mobile device named &amp;quot;bc9&amp;quot; and have successfully booted&lt;br /&gt;
Android on it. [http://labs.beatcraft.com/en/index.php?Android Click here] for more.&lt;br /&gt;
&lt;br /&gt;
===Android on Gumstix videos on Youtube ===&lt;br /&gt;
On Youtube, you can watch Android start up on a Gumstix in these [http://www.youtube.com/results?search_type=videos&amp;amp;search_query=gumstix+android&amp;amp;search_sort=video_date_uploaded videos posted on Youtube]&lt;br /&gt;
&lt;br /&gt;
Also, check the Gumstix mailing list archives for some threads about Android on Gumstix Overo and Verdex Pro COMs.&lt;br /&gt;
&lt;br /&gt;
== Other Useful Links ==&lt;br /&gt;
&lt;br /&gt;
===Android - an open alliance handset project===&lt;br /&gt;
&lt;br /&gt;
Android is a software stack for mobile devices that includes an operating system, middleware and key applications. The [http://developer.android.com/sdk/1.1_r1/index.html Android SDK] provides the tools and APIs necessary to begin developing applications to run on Android-powered devices.&lt;br /&gt;
&lt;br /&gt;
[http://developer.android.com/ The Android developer site] provides information about Google projects based on the Android platform, such as external libraries that extend the Android platform, Android applications, hosted services and APIs, and more.&lt;br /&gt;
&lt;br /&gt;
=== Porting Guide to Beagleboard ===&lt;br /&gt;
[http://labs.embinux.org/index.php/Android_Porting_Guide_to_Beagle_Board Click here] for the Android porting guide to the Beagle Board]&lt;br /&gt;
&lt;br /&gt;
=== Installing Android on OMAP platforms ===&lt;br /&gt;
[http://omapzoom.org/wiki/OMAP_Android_Main This project] focuses on the platform specific layers need to install Android on supported OMAP platforms.&lt;br /&gt;
&lt;br /&gt;
=== Installing Market Apps ===&lt;br /&gt;
The standard Android market can't be used without certification from Google.  There are several [http://www.linaro.org/linaro-blog/2011/10/26/using-markets-with-linaro-android-builds/ alternative markets].&lt;br /&gt;
Further instructions and information can be posted here..&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_eclipse&amp;diff=6152</id>
		<title>Category:How to - eclipse</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_eclipse&amp;diff=6152"/>
				<updated>2016-04-01T23:18:07Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Yocto users may consider the more updated [https://www.yoctoproject.org/tools-resources/projects/application-development-toolkit-adt Application Development Toolkit] instead.&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_eclipse&amp;diff=6151</id>
		<title>Category:How to - eclipse</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_eclipse&amp;diff=6151"/>
				<updated>2016-04-01T23:17:59Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Yocto user may consider the more updated [https://www.yoctoproject.org/tools-resources/projects/application-development-toolkit-adt Application Development Toolkit] instead.&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6150</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6150"/>
				<updated>2016-04-01T23:15:28Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;''Welcome to the Gumstix User Wiki''&amp;lt;/big&amp;gt;     &lt;br /&gt;
&lt;br /&gt;
This site is provided so that Gumstix users can share their knowledge, showcase their Gumstix-based projects, and pass on links to other sources of information and materials.  This information is entirely user generated and supported.  Please contribute your know-how to help your fellow developers.&lt;br /&gt;
&lt;br /&gt;
  '''Community additions and edits are always encouraged, but please read the help page before making any major edits.'''&lt;br /&gt;
  ''You will need to create a new user account if you would like to contribute or edit content on this site.''&lt;br /&gt;
&lt;br /&gt;
Visit the [http://gumstix.org Gumstix Developer Center] for official Gumstix documentation and other information of interest to developers.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;&lt;br /&gt;
''Focus'']]&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;''All Topics'']]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - Android|Android]]&lt;br /&gt;
* [[:Category:how to - eclipse|Eclipse]]&lt;br /&gt;
* [[Linaro]]&lt;br /&gt;
* [[Installing Linaro Image]]&lt;br /&gt;
* [[LinuxLink]]&lt;br /&gt;
* [[:Category:how to - Ubuntu|Ubuntu]]&lt;br /&gt;
* [[:Category:how to - Debian|Debian]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[1-wire|1-wire]]&lt;br /&gt;
* [[:Category:how to - audio|Audio]]&lt;br /&gt;
* [[:Category:how to - adc|ADC]]&lt;br /&gt;
* [[AutoLogin|Automatic Logins]]&lt;br /&gt;
* [[:Category:how to - batteries|Batteries]]&lt;br /&gt;
* [[:Category:how to - bluetooth|Bluetooth]]&lt;br /&gt;
* [[:Category:how to - Buildroot overo|Buildroot (overo)]]&lt;br /&gt;
* [[:Category:Connect_hardware|Connect Hardware]]&lt;br /&gt;
* [[Caspa_camera_boards|Caspa camera boards]]&lt;br /&gt;
* [[:Category:how to - displays|Displays]]&lt;br /&gt;
* [[:Category:how to - DSP|DSP]]&lt;br /&gt;
* [[:Category:how_to_-_ethernet|Ethernet]]&lt;br /&gt;
* [[:Category:how_to_-_expansion_boards|Expansion Boards]]&lt;br /&gt;
* [[:Category:how to - fedora|Fedora]]&lt;br /&gt;
* [[:Category:how to - Fast Boot|Fast Boot]]&lt;br /&gt;
* [[:Category:how to - Fortran|Fortran]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Gaining Console Connection via Terminal]]&lt;br /&gt;
* [[:Category:how to - git|Git]]&lt;br /&gt;
* [[GPIO|GPIO]]&lt;br /&gt;
* [[GPS|GPS]]&lt;br /&gt;
* [[:Category:how to - gui|GUI]]&lt;br /&gt;
* [[:Category:how to - general|General]]&lt;br /&gt;
* [[:Category:how to - Build helloworld|HelloWorld]]&lt;br /&gt;
* [[HelloWorld|HelloWorld in Python, C, C++]]&lt;br /&gt;
* [[HelloWorld in Java|HelloWorld in Java]]&lt;br /&gt;
* [[:Category:how to - i2c|I2C]]&lt;br /&gt;
* [[:Category:how to - IMU|IMU]]&lt;br /&gt;
* [[:Category:how to - JAVA|JAVA]]&lt;br /&gt;
* [[Kernel Build]]&lt;br /&gt;
* [[Kernel Reconfiguration|Kernel Reconfiguration]]&lt;br /&gt;
* [[:Category:how to - Known Issues|Known Issues]]&lt;br /&gt;
* [[:Category:how to - LCD|LCD]]&lt;br /&gt;
* [[:Category:how to - Low Power|Low Power]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - linux|Linux]]&lt;br /&gt;
* [[AudioIn | Use a microphone]]&lt;br /&gt;
* [[MicroSd |MicroSD Duplication]]&lt;br /&gt;
* [[:Category:how to - Network_Boot|Network Boot]]&lt;br /&gt;
* [[:Category:how to - OpenEmbedded|OpenEmbedded]]&lt;br /&gt;
* [[Overo Bare Metal|Overo Bare Metal]]&lt;br /&gt;
* [[:Category:How to - PWM|PWM]]&lt;br /&gt;
* [[:Category:How_to_-_qemu|Qemu]]&lt;br /&gt;
* [[:Category:How_to_-_Qt|Qt]]&lt;br /&gt;
* [[:Category:how to - robotics|Robotics]]&lt;br /&gt;
* [[ROS|ROS]]&lt;br /&gt;
* [[RoboVero|RoboVero]]&lt;br /&gt;
* [[:Category:SPI|SPI]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:SUSE|SUSE]]&lt;br /&gt;
* [[Remote Debugging with GDB|Remote Debugging with GDB]]&lt;br /&gt;
* [[Toolchain]]&lt;br /&gt;
* [[U-Boot|UBoot]]&lt;br /&gt;
* [[:Category:how to - usb|USB]]&lt;br /&gt;
* [[Verdex Git Repository]]&lt;br /&gt;
* [[Verdex JTAG]]&lt;br /&gt;
* [[VerdexPro U-Boot Flashing Fix]]&lt;br /&gt;
* [[:Category:how to - virtual machine|Virtual Machine]]&lt;br /&gt;
* [[:Category:how to - webcams|Webcams]]&lt;br /&gt;
* [[:Category:how to - wifi|Wifi]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:projects|User Projects]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:User_pics_videos|User Pics &amp;amp; Videos]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:resources|Resources]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:faqs|Questions and Answers]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:projects - audio|Audio]]&lt;br /&gt;
* [[:Category:projects - competitions|Competitions]]&lt;br /&gt;
* [[:Category:projects - displays|Displays]]&lt;br /&gt;
* [[:Category:projects - pdas|PDA's]]&lt;br /&gt;
* [[:Category:Projects_-Research_and_Education|Research &amp;amp; Education]]&lt;br /&gt;
* [[:Category:projects - monitoring and control|Monitoring and Control]]&lt;br /&gt;
* [[:Category:projects - robotics|Robotics &amp;amp; UAV's]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [http://www.youtube.com/results?uploaded=m&amp;amp;search_query=gumstix&amp;amp;search_type=videos&amp;amp;suggested_categories=28&amp;amp;uni=3&amp;amp;search_sort=video_date_uploaded Gumstix on Youtube]&lt;br /&gt;
* [http://www.flickr.com/search/?q=gumstix&amp;amp;s=rec Gumstix in Flickr]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Windows CE solution|Solutions for Windows CE]]&lt;br /&gt;
* [[Qt solution|Solutions for Qt]]&lt;br /&gt;
* [[Manufacturer's specifications|Specifications for Processors &amp;amp; Components]]&lt;br /&gt;
* [[Software information]]&lt;br /&gt;
* [[Verified Peripherals]]&lt;br /&gt;
* [[Third Party Boards]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Gumstix Community Mailing List (no cost)&lt;br /&gt;
* [https://lists.sourceforge.net/lists/listinfo/gumstix-users Sign-up]&lt;br /&gt;
* [http://gumstix.8.x6.nabble.com/ Archives]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Software_information&amp;diff=6149</id>
		<title>Software information</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Software_information&amp;diff=6149"/>
				<updated>2016-04-01T23:06:19Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
This page discusses older build system.  Most users probably want [https://github.com/gumstix/yocto-manifest/wiki this] instead.  But, just in case...&lt;br /&gt;
&lt;br /&gt;
Gumstix uses Linux® OpenEmbedded, a build environment that allows you to build rootfs images, packages and custom software in a easy way.&lt;br /&gt;
&lt;br /&gt;
There are different rootfs images (gumstix images) that provide a software bundle and a base system out-of-the-box with a single command,&lt;br /&gt;
choose one that fits best your application needs!&lt;br /&gt;
&lt;br /&gt;
Extra software not included on gumstix images is installed through software packages with ipkg.&lt;br /&gt;
&lt;br /&gt;
== OMAP 35x-based Overo Development ==&lt;br /&gt;
&lt;br /&gt;
To get started on Overo, [http://www.gumstix.net/Overo/114.html click here].&lt;br /&gt;
&lt;br /&gt;
== PXA-based Gumstix Motherboards ==&lt;br /&gt;
&lt;br /&gt;
To get started on Verdex Pro, [http://www.gumstix.net/Setup-and-Programming/cat/Getting-started/111.html click here] and bitbake the image of your choice depending on your application needs. &lt;br /&gt;
&lt;br /&gt;
After building, the rootfs image, kernel and optionally any software packages are transferred to your gumstix through a serial connection, using compact flash or MMC type cards or ethernet network (assuming your hardware supports the appropriate interface)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Gumstix images ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
! Image || Size || Description || Status&lt;br /&gt;
|-&lt;br /&gt;
| gumstix-minimal-image || ~7.8 MB || Builds a gumstix minimal system  || style=&amp;quot;background:green;&amp;quot; | ok&lt;br /&gt;
|-&lt;br /&gt;
| gumstix-basic-image || ~9.0 MB || Builds a gumstix minimal system (gumstix-minimal-image) + '''cron''', '''ntp''', '''ntpdate''', '''mtd-utils''' and '''boa''' webserver || style=&amp;quot;background:green;&amp;quot; | ok&lt;br /&gt;
|-&lt;br /&gt;
| gumstix-perl-image || ~9.7 MB || Builds gumstix-basic-image + '''perl'''  || style=&amp;quot;background:green;&amp;quot; | ok&lt;br /&gt;
|-&lt;br /&gt;
| gumstix-goliath-image ||  ||  || style=&amp;quot;background:white;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| gumstix-qtopia-console-image || ~10.9 MB || Builds a basic gumstix root filesystem plus non-GUI Qtopia libraries || style=&amp;quot;background:white;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| gumstix-qtopia-gui-image || ~15.5 MB || Builds a basic gumstix root filesystem plus Qtopia || style=&amp;quot;background:yellow;&amp;quot; | work-in-progress&lt;br /&gt;
|-&lt;br /&gt;
| gumstix-x11-image || ~14.8 MB || Builds a gumstix minimal system (gumstix-minimal-image) + plus '''KDrive''' (Xserver), the [http://matchbox-project.org/ '''matchbox'''] window manager and '''GTK+'''  || ! style=&amp;quot;background:green;&amp;quot; | ok&lt;br /&gt;
|-&lt;br /&gt;
| gumstix-x11-full-image ||  || gumstix x11 image + midori || style=&amp;quot;background:yellow;&amp;quot; | work-in-progress&lt;br /&gt;
|-&lt;br /&gt;
| gumstix-x11-32mb-image || ~17.7 MB || gumstix x11 image + midori || style=&amp;quot;background:yellow;&amp;quot; | work-in-progress&lt;br /&gt;
|-&lt;br /&gt;
| gumstix-microwindows-image || --- || ---  || style=&amp;quot;background:yellow;&amp;quot; | work-in-progress&lt;br /&gt;
|-&lt;br /&gt;
| gumstix-directfb-image || ~10.8 MB || gumstix-basic-image + DirectFB 1.1.0 (packages [http://www.directfb.org/ '''directfb'''] and '''directfb-examples''') || style=&amp;quot;background:green;&amp;quot; | ok&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Recipes to build gumstix images are stored in '''gumstix-oe/com.gumstix.collection/packages/images'''&lt;br /&gt;
&lt;br /&gt;
=== Packages ===&lt;br /&gt;
&lt;br /&gt;
Once you have setup the build environment, building a software package is as easy as typing bitbake &amp;lt;app&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Package receipes are stored in '''gumstix-oe/org.openembedded.snapshot/packages'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
[[Category:Literature]]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Third_Party_Boards&amp;diff=6148</id>
		<title>Third Party Boards</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Third_Party_Boards&amp;diff=6148"/>
				<updated>2016-04-01T23:04:33Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you have designed a third party board and would like to make other people aware of it, please list it here. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;iXion&amp;lt;/b&amp;gt; is a Gumstix Overo-based, multimedia platform made by iXion with several features like a 5&amp;quot; LCD touchscreen, HDMI video out, 802.11 b/g (Wifi), Bluetooth, HSDPA, GPS, USB, Ethernet and more.&lt;br /&gt;
&lt;br /&gt;
The design for the iXion expansion board will be completely open-sourced at [http://www.xdevelop.at iXion] within the next week, so check for that.&lt;br /&gt;
&lt;br /&gt;
A video of the iXion board has been posted on youtube [http://www.youtube.com/watch?v=nD0fSQKsWuM here].&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6147</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6147"/>
				<updated>2016-04-01T23:02:01Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;''Welcome to the Gumstix User Wiki''&amp;lt;/big&amp;gt;     &lt;br /&gt;
&lt;br /&gt;
This site is provided so that Gumstix users can share their knowledge, showcase their Gumstix-based projects, and pass on links to other sources of information and materials.  This information is entirely user generated and supported.  Please contribute your know-how to help your fellow developers.&lt;br /&gt;
&lt;br /&gt;
  '''Community additions and edits are always encouraged, but please read the help page before making any major edits.'''&lt;br /&gt;
  ''You will need to create a new user account if you would like to contribute or edit content on this site.''&lt;br /&gt;
&lt;br /&gt;
Visit the [http://gumstix.org Gumstix Developer Center] for official Gumstix documentation and other information of interest to developers.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;&lt;br /&gt;
''Focus'']]&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;''All Topics'']]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - Android|Android]]&lt;br /&gt;
* [[:Category:how to - eclipse|Eclipse]]&lt;br /&gt;
* [[:Category:How_to_-_Migrate_to_Gumstix|Migrate to Gumstix]]&lt;br /&gt;
* [[Linaro]]&lt;br /&gt;
* [[Installing Linaro Image]]&lt;br /&gt;
* [[LinuxLink]]&lt;br /&gt;
* [[:Category:how to - Ubuntu|Ubuntu]]&lt;br /&gt;
* [[:Category:how to - Debian|Debian]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[1-wire|1-wire]]&lt;br /&gt;
* [[:Category:how to - audio|Audio]]&lt;br /&gt;
* [[:Category:how to - adc|ADC]]&lt;br /&gt;
* [[AutoLogin|Automatic Logins]]&lt;br /&gt;
* [[:Category:how to - batteries|Batteries]]&lt;br /&gt;
* [[:Category:how to - bluetooth|Bluetooth]]&lt;br /&gt;
* [[:Category:how to - Buildroot overo|Buildroot (overo)]]&lt;br /&gt;
* [[:Category:Connect_hardware|Connect Hardware]]&lt;br /&gt;
* [[Caspa_camera_boards|Caspa camera boards]]&lt;br /&gt;
* [[:Category:how to - displays|Displays]]&lt;br /&gt;
* [[:Category:how to - DSP|DSP]]&lt;br /&gt;
* [[:Category:how_to_-_ethernet|Ethernet]]&lt;br /&gt;
* [[:Category:how_to_-_expansion_boards|Expansion Boards]]&lt;br /&gt;
* [[:Category:how to - fedora|Fedora]]&lt;br /&gt;
* [[:Category:how to - Fast Boot|Fast Boot]]&lt;br /&gt;
* [[:Category:how to - Fortran|Fortran]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Gaining Console Connection via Terminal]]&lt;br /&gt;
* [[:Category:how to - git|Git]]&lt;br /&gt;
* [[GPIO|GPIO]]&lt;br /&gt;
* [[GPS|GPS]]&lt;br /&gt;
* [[:Category:how to - gui|GUI]]&lt;br /&gt;
* [[:Category:how to - general|General]]&lt;br /&gt;
* [[:Category:how to - Build helloworld|HelloWorld]]&lt;br /&gt;
* [[HelloWorld|HelloWorld in Python, C, C++]]&lt;br /&gt;
* [[HelloWorld in Java|HelloWorld in Java]]&lt;br /&gt;
* [[:Category:how to - i2c|I2C]]&lt;br /&gt;
* [[:Category:how to - IMU|IMU]]&lt;br /&gt;
* [[:Category:how to - JAVA|JAVA]]&lt;br /&gt;
* [[Kernel Build]]&lt;br /&gt;
* [[Kernel Reconfiguration|Kernel Reconfiguration]]&lt;br /&gt;
* [[:Category:how to - Known Issues|Known Issues]]&lt;br /&gt;
* [[:Category:how to - LCD|LCD]]&lt;br /&gt;
* [[:Category:how to - Low Power|Low Power]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - linux|Linux]]&lt;br /&gt;
* [[AudioIn | Use a microphone]]&lt;br /&gt;
* [[MicroSd |MicroSD Duplication]]&lt;br /&gt;
* [[:Category:how to - Network_Boot|Network Boot]]&lt;br /&gt;
* [[:Category:how to - OpenEmbedded|OpenEmbedded]]&lt;br /&gt;
* [[Overo Bare Metal|Overo Bare Metal]]&lt;br /&gt;
* [[:Category:How to - PWM|PWM]]&lt;br /&gt;
* [[:Category:How_to_-_qemu|Qemu]]&lt;br /&gt;
* [[:Category:How_to_-_Qt|Qt]]&lt;br /&gt;
* [[:Category:how to - robotics|Robotics]]&lt;br /&gt;
* [[ROS|ROS]]&lt;br /&gt;
* [[RoboVero|RoboVero]]&lt;br /&gt;
* [[:Category:SPI|SPI]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:SUSE|SUSE]]&lt;br /&gt;
* [[Remote Debugging with GDB|Remote Debugging with GDB]]&lt;br /&gt;
* [[Toolchain]]&lt;br /&gt;
* [[U-Boot|UBoot]]&lt;br /&gt;
* [[:Category:how to - usb|USB]]&lt;br /&gt;
* [[Verdex Git Repository]]&lt;br /&gt;
* [[Verdex JTAG]]&lt;br /&gt;
* [[VerdexPro U-Boot Flashing Fix]]&lt;br /&gt;
* [[:Category:how to - virtual machine|Virtual Machine]]&lt;br /&gt;
* [[:Category:how to - webcams|Webcams]]&lt;br /&gt;
* [[:Category:how to - wifi|Wifi]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:projects|User Projects]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:User_pics_videos|User Pics &amp;amp; Videos]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:resources|Resources]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:faqs|Questions and Answers]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:projects - audio|Audio]]&lt;br /&gt;
* [[:Category:projects - competitions|Competitions]]&lt;br /&gt;
* [[:Category:projects - displays|Displays]]&lt;br /&gt;
* [[:Category:projects - pdas|PDA's]]&lt;br /&gt;
* [[:Category:Projects_-Research_and_Education|Research &amp;amp; Education]]&lt;br /&gt;
* [[:Category:projects - monitoring and control|Monitoring and Control]]&lt;br /&gt;
* [[:Category:projects - robotics|Robotics &amp;amp; UAV's]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [http://www.youtube.com/results?uploaded=m&amp;amp;search_query=gumstix&amp;amp;search_type=videos&amp;amp;suggested_categories=28&amp;amp;uni=3&amp;amp;search_sort=video_date_uploaded Gumstix on Youtube]&lt;br /&gt;
* [http://www.flickr.com/search/?q=gumstix&amp;amp;s=rec Gumstix in Flickr]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Windows CE solution|Solutions for Windows CE]]&lt;br /&gt;
* [[Qt solution|Solutions for Qt]]&lt;br /&gt;
* [[Manufacturer's specifications|Specifications for Processors &amp;amp; Components]]&lt;br /&gt;
* [[Software information]]&lt;br /&gt;
* [[Verified Peripherals]]&lt;br /&gt;
* [[Third Party Boards]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Gumstix Community Mailing List (no cost)&lt;br /&gt;
* [https://lists.sourceforge.net/lists/listinfo/gumstix-users Sign-up]&lt;br /&gt;
* [http://gumstix.8.x6.nabble.com/ Archives]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=ROS&amp;diff=6146</id>
		<title>ROS</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=ROS&amp;diff=6146"/>
				<updated>2016-04-01T23:01:31Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Rob Linsalata of [http://www.willowgarage.com Willow Garage] has posted [http://www.willowgarage.com/blog/2012/12/11/exploring-ros-turtlecore a great demo video] of [http://www.ros.org ROS] running on [https://www.gumstix.com Gumstix Overo COM] and [http://www.irobot.com iRobot Create] platform. Unfortunately it looks like Rob did not get a chance to write up a full tutorial on what it takes to get ROS running on the Gumstix and iRobot setup. So here is how I managed to get ROS Groovy (the latest release as of December 2012) to drive the Create.&lt;br /&gt;
&lt;br /&gt;
If you are looking for Player instead, look at [http://playerstage.sourceforge.net/wiki/Cross_Compile_Player_with_Openembedded_and_bitBake these instructions]&lt;br /&gt;
&lt;br /&gt;
== Prebuilt Image ==&lt;br /&gt;
You can download the image resulting from this guide from [https://s3-us-west-2.amazonaws.com/linaro/GumstixLinaroROS_20130204_2.gz here] and its [https://s3-us-west-2.amazonaws.com/linaro/md5sum MD5SUM].&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* 1 Development computer running Ubuntu (I used 12.04)&lt;br /&gt;
* 1 Gumstix Overo COM with WiFi&lt;br /&gt;
* 1 Gumstix Turtlecore Expansion board&lt;br /&gt;
* 1 MicroSD Card (8GB or larger recommended)&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
=== Get an Operating System ===&lt;br /&gt;
&lt;br /&gt;
First thing you probably want to do is to [http://wiki.gumstix.org/index.php?title=Installing_Linaro_Image  install Linaro on an Overo COM]. [http://www.linaro.org/ Linaro] is a variant of Ubuntu and is designed for embedded application. So follow that link and get a Linaro image flashed into your MicroSD. The next part is where the challenge arises. Willow Garage does not provide ARM binaries. They only provide precompiled packages for your everyday computers running Intel or AMD CPUs. So we have to compile ROS from scratch for ARM architecture. Setting up a cross compilation environment is not a simple task, so I decided to do it natively on an Overo (even it means letting it compile over night).&lt;br /&gt;
&lt;br /&gt;
=== ROS Native Compilation ===&lt;br /&gt;
&lt;br /&gt;
# Get all libraries and tools&lt;br /&gt;
#:   $ sudo apt-get install python-pip build-essential python-yaml cmake subversion wget python-setuptools mercurial git-core python-yaml libapr1-dev libaprutil1-dev libbz2-dev python-dev python-empy python-nose libgtest-dev python-paramiko libboost-all-dev liblog4cxx10-dev pkg-config libqt4-dev qt4-qmake&lt;br /&gt;
# Some of the ROS tools need to come from PIP as I wasn't able to get them through Aptitude&lt;br /&gt;
#:   $ pip install rospkg rosdep rosinstall catkin-pkg wstool&lt;br /&gt;
# Initialize dependencies&lt;br /&gt;
#:   $ sudo rosdep init&lt;br /&gt;
#:   $ rosdep update&lt;br /&gt;
# Now we create a catkin workspace and initialize to build core ROS packages&lt;br /&gt;
#:   $ mkdir -p ~/ros_core_ws&lt;br /&gt;
#:   $ cd ~/ros_core_ws&lt;br /&gt;
#:   $ wstool init src https://raw.github.com/gist/4129582/e8889c0fc3af2f95892190e0fabc2bd535208355/base.rosinstall&lt;br /&gt;
# Build catkin and install it. catkin is the low-level build system of ROS&lt;br /&gt;
#:   $ ./src/catkin/bin/catkin_make&lt;br /&gt;
#:   $ ./src/catkin/bin/catkin_make install&lt;br /&gt;
# Setup catkin build environment&lt;br /&gt;
#:   $ source ~/ros_core_ws/install/setup.bash&lt;br /&gt;
# Now we create and initialize a workspace to put all our ROS packages&lt;br /&gt;
#:   $ mkdir ~/ros&lt;br /&gt;
#:   $ cd ~/ros&lt;br /&gt;
#:   $ rosws init . ~/ros_core_ws/install/&lt;br /&gt;
# Current ROS distribution does not recognize Linaro. We have to patch the os detection file.&lt;br /&gt;
#:   $ vim /usr/local/lib/python2.7/dist-packages/rospkg/os_detect.py&lt;br /&gt;
# Add the following bold faced changes &lt;br /&gt;
#:   OS_UBUNTU='ubuntu' &lt;br /&gt;
#:   '''OS_LINARO='linaro'''&lt;br /&gt;
#:   OsDetect.register_default(OS_UBUNTU, LsbDetect(&amp;quot;Ubuntu&amp;quot;)) &lt;br /&gt;
#:   '''OsDetect.register_default(OS_UBUNTU, LsbDetect(&amp;quot;Linaro&amp;quot;))'''&lt;br /&gt;
# There are a couple dependencies required before we can compile iRobot's Create ROS package&lt;br /&gt;
#:   $ roslocate info kdl &amp;gt; kdl.rosinstall&lt;br /&gt;
#:   $ rosws merge kdl.rosinstall&lt;br /&gt;
#:   $ rosws update&lt;br /&gt;
#:   $ rosdep install kdl&lt;br /&gt;
#:   $ rosmake kdl&lt;br /&gt;
#:   $ roslocate info bullet &amp;gt; bullet.rosinstall&lt;br /&gt;
#:   $ rosws merge bullet.rosinstall&lt;br /&gt;
#:   $ rosws update&lt;br /&gt;
#:   $ rosdep install bullet&lt;br /&gt;
#:   $ rosmake bullet&lt;br /&gt;
#If the last step fails indicating that a packaged named bullet was not found, try updating dependency map before running rosmake&lt;br /&gt;
#:   $ rosdep update&lt;br /&gt;
# And build geometry package, the last dependency&lt;br /&gt;
#:   $ roslocate info geometry &amp;gt; geometry.rosinstall&lt;br /&gt;
#In the geometry package's rosinstall file, switch the branch name to fuerte_devel. For some reason the default branch does not work.&lt;br /&gt;
#:   $ vim geometry.rosinstall&lt;br /&gt;
#::      //version: tf_rework&lt;br /&gt;
#::        version: fuerte_devel&lt;br /&gt;
#:   $ rosws merge geometry.rosinstall&lt;br /&gt;
#:   $ rosws update&lt;br /&gt;
#:   $ rosdep install geometry&lt;br /&gt;
#:   $ rosmake geometry&lt;br /&gt;
# Finally we can install iRobot's ROS package&lt;br /&gt;
#:   $ roslocate info irobot_create_2_1 &amp;gt; irobot_create_2_1.rosinstall&lt;br /&gt;
#:   $ vim irobot_create_2_1.rosinstall&lt;br /&gt;
#:   $ rosws merge irobot_create_2_1 &lt;br /&gt;
#:   $ rosws update&lt;br /&gt;
#:   $ rosmake irobot_create_2_1&lt;br /&gt;
&lt;br /&gt;
== Running ROS ==&lt;br /&gt;
&lt;br /&gt;
# We have everything in place to drive the Create around. To start the core services of ROS, do the following:&lt;br /&gt;
#:   $ cd ~/ros&lt;br /&gt;
#:   $ . ./setup.sh&lt;br /&gt;
#:   $ roscore&lt;br /&gt;
# The iRobot Create is connected to ttyO0 on Gumstix Turtlecore. So make the change: &lt;br /&gt;
#:   $ rosparam set /brown/irobot_create_2_1/port /dev/ttyO0 &lt;br /&gt;
# Now we can start the driver program in another terminal:&lt;br /&gt;
#:   $ rosrun irobot_create_2_1 driver.py&lt;br /&gt;
# Again, in a new terminal while roscore and the driver program are running, you can do the following to make the Create roll forward!!:&lt;br /&gt;
#:   $ rosservice call /tank 1 100 100 &amp;amp;amp;&amp;amp;amp; sleep 0.5 &amp;amp;amp;&amp;amp;amp; rosservice call /brake 1&lt;br /&gt;
&lt;br /&gt;
== Issues and Workarounds ==&lt;br /&gt;
&lt;br /&gt;
It is discovered that the original image released (in Jan. 2013) cannot bring-up WiFi when used with expansion boards with an Ethernet port. Here is the workaround if you are already using the image:&lt;br /&gt;
#  Remove network-manager.conf and networking.conf from /etc/init directory, and 70-persistent-net.rules from /etc/udev/rules.d &lt;br /&gt;
#  Follow [[Overo_Wifi]]&lt;br /&gt;
#  This will disable the GUI network manager. However you can easily bring up your wireless interface with command 'ifup wlan0'.&lt;br /&gt;
#  Additionally if you would like to auto-connect on boot, configure the interface in /etc/wpa_supplicant.conf as 'auto' as below:&lt;br /&gt;
 auto wlan0&lt;br /&gt;
 iface wlan0 inet dhcp&lt;br /&gt;
 pre-up wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant.conf -B&lt;br /&gt;
 down killall wpa_supplicant&lt;br /&gt;
The Prebuilt Image section of this article already contains the updated image as well (published Feb. 2013).&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
*[http://pharos.ece.utexas.edu/wiki/index.php/Writing_A_Simple_Node_that_Moves_the_iRobot_Create_Robot Writing A Simple Node that Moves the iRobot Create Robot - Pharos Testbed Wiki]&lt;br /&gt;
*[http://pharos.ece.utexas.edu/wiki/index.php/Using_ROS_Electric_to_Tele-Operate_an_iRobot_Create_Robot Using ROS Electric to Tele-Operate an iRobot Create Robot - Pharos Testbed Wiki]&lt;br /&gt;
*[http://ros.org/wiki/groovy/Installation/Source Installing on Ubuntu from source - ROS.org]&lt;br /&gt;
*[http://ros.org/wiki/TurtleCore Turtlecore - ROS.org]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6145</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6145"/>
				<updated>2016-04-01T22:59:36Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;''Welcome to the Gumstix User Wiki''&amp;lt;/big&amp;gt;     &lt;br /&gt;
&lt;br /&gt;
This site is provided so that Gumstix users can share their knowledge, showcase their Gumstix-based projects, and pass on links to other sources of information and materials.  This information is entirely user generated and supported.  Please contribute your know-how to help your fellow developers.&lt;br /&gt;
&lt;br /&gt;
  '''Community additions and edits are always encouraged, but please read the help page before making any major edits.'''&lt;br /&gt;
  ''You will need to create a new user account if you would like to contribute or edit content on this site.''&lt;br /&gt;
&lt;br /&gt;
Visit the [http://gumstix.org Gumstix Developer Center] for official Gumstix documentation and other information of interest to developers.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;&lt;br /&gt;
''Focus'']]&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;''All Topics'']]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - Android|Android]]&lt;br /&gt;
* [[:Category:how to - eclipse|Eclipse]]&lt;br /&gt;
* [[:Category:How_to_-_Migrate_to_Gumstix|Migrate to Gumstix]]&lt;br /&gt;
* [[Linaro]]&lt;br /&gt;
* [[Installing Linaro Image]]&lt;br /&gt;
* [[LinuxLink]]&lt;br /&gt;
* [[:Category:how to - Ubuntu|Ubuntu]]&lt;br /&gt;
* [[:Category:how to - Debian|Debian]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[1-wire|1-wire]]&lt;br /&gt;
* [[:Category:how to - audio|Audio]]&lt;br /&gt;
* [[:Category:how to - adc|ADC]]&lt;br /&gt;
* [[AutoLogin|Automatic Logins]]&lt;br /&gt;
* [[:Category:how to - batteries|Batteries]]&lt;br /&gt;
* [[:Category:how to - bluetooth|Bluetooth]]&lt;br /&gt;
* [[:Category:how to - Buildroot overo|Buildroot (overo)]]&lt;br /&gt;
* [[:Category:Connect_hardware|Connect Hardware]]&lt;br /&gt;
* [[Caspa_camera_boards|Caspa camera boards]]&lt;br /&gt;
* [[:Category:how to - displays|Displays]]&lt;br /&gt;
* [[:Category:how to - DSP|DSP]]&lt;br /&gt;
* [[:Category:how_to_-_ethernet|Ethernet]]&lt;br /&gt;
* [[:Category:how_to_-_expansion_boards|Expansion Boards]]&lt;br /&gt;
* [[:Category:how to - fedora|Fedora]]&lt;br /&gt;
* [[:Category:how to - Fast Boot|Fast Boot]]&lt;br /&gt;
* [[:Category:how to - Fortran|Fortran]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Gaining Console Connection via Terminal]]&lt;br /&gt;
* [[:Category:how to - git|Git]]&lt;br /&gt;
* [[GPIO|GPIO]]&lt;br /&gt;
* [[GPS|GPS]]&lt;br /&gt;
* [[:Category:how to - gui|GUI]]&lt;br /&gt;
* [[:Category:how to - general|General]]&lt;br /&gt;
* [[:Category:how to - Build helloworld|HelloWorld]]&lt;br /&gt;
* [[HelloWorld|HelloWorld in Python, C, C++]]&lt;br /&gt;
* [[HelloWorld in Java|HelloWorld in Java]]&lt;br /&gt;
* [[:Category:how to - i2c|I2C]]&lt;br /&gt;
* [[:Category:how to - IMU|IMU]]&lt;br /&gt;
* [[:Category:how to - JAVA|JAVA]]&lt;br /&gt;
* [[Kernel Build]]&lt;br /&gt;
* [[Kernel Reconfiguration|Kernel Reconfiguration]]&lt;br /&gt;
* [[:Category:how to - Known Issues|Known Issues]]&lt;br /&gt;
* [[:Category:how to - LCD|LCD]]&lt;br /&gt;
* [[:Category:how to - Low Power|Low Power]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - linux|Linux]]&lt;br /&gt;
* [[AudioIn | Use a microphone]]&lt;br /&gt;
* [[MicroSd |MicroSD Duplication]]&lt;br /&gt;
* [[:Category:how to - Network_Boot|Network Boot]]&lt;br /&gt;
* [[:Category:how to - OpenEmbedded|OpenEmbedded]]&lt;br /&gt;
* [[Overo Bare Metal|Overo Bare Metal]]&lt;br /&gt;
* [[:Category:how to - player|Player]]&lt;br /&gt;
* [[:Category:How to - PWM|PWM]]&lt;br /&gt;
* [[:Category:How_to_-_qemu|Qemu]]&lt;br /&gt;
* [[:Category:How_to_-_Qt|Qt]]&lt;br /&gt;
* [[:Category:how to - robotics|Robotics]]&lt;br /&gt;
* [[ROS|ROS]]&lt;br /&gt;
* [[RoboVero|RoboVero]]&lt;br /&gt;
* [[:Category:SPI|SPI]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:SUSE|SUSE]]&lt;br /&gt;
* [[Remote Debugging with GDB|Remote Debugging with GDB]]&lt;br /&gt;
* [[Toolchain]]&lt;br /&gt;
* [[U-Boot|UBoot]]&lt;br /&gt;
* [[:Category:how to - usb|USB]]&lt;br /&gt;
* [[Verdex Git Repository]]&lt;br /&gt;
* [[Verdex JTAG]]&lt;br /&gt;
* [[VerdexPro U-Boot Flashing Fix]]&lt;br /&gt;
* [[:Category:how to - virtual machine|Virtual Machine]]&lt;br /&gt;
* [[:Category:how to - webcams|Webcams]]&lt;br /&gt;
* [[:Category:how to - wifi|Wifi]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:projects|User Projects]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:User_pics_videos|User Pics &amp;amp; Videos]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:resources|Resources]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:faqs|Questions and Answers]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:projects - audio|Audio]]&lt;br /&gt;
* [[:Category:projects - competitions|Competitions]]&lt;br /&gt;
* [[:Category:projects - displays|Displays]]&lt;br /&gt;
* [[:Category:projects - pdas|PDA's]]&lt;br /&gt;
* [[:Category:Projects_-Research_and_Education|Research &amp;amp; Education]]&lt;br /&gt;
* [[:Category:projects - monitoring and control|Monitoring and Control]]&lt;br /&gt;
* [[:Category:projects - robotics|Robotics &amp;amp; UAV's]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [http://www.youtube.com/results?uploaded=m&amp;amp;search_query=gumstix&amp;amp;search_type=videos&amp;amp;suggested_categories=28&amp;amp;uni=3&amp;amp;search_sort=video_date_uploaded Gumstix on Youtube]&lt;br /&gt;
* [http://www.flickr.com/search/?q=gumstix&amp;amp;s=rec Gumstix in Flickr]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Windows CE solution|Solutions for Windows CE]]&lt;br /&gt;
* [[Qt solution|Solutions for Qt]]&lt;br /&gt;
* [[Manufacturer's specifications|Specifications for Processors &amp;amp; Components]]&lt;br /&gt;
* [[Software information]]&lt;br /&gt;
* [[Verified Peripherals]]&lt;br /&gt;
* [[Third Party Boards]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Gumstix Community Mailing List (no cost)&lt;br /&gt;
* [https://lists.sourceforge.net/lists/listinfo/gumstix-users Sign-up]&lt;br /&gt;
* [http://gumstix.8.x6.nabble.com/ Archives]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Eclipse_on_Gumstix_for_new_users&amp;diff=6144</id>
		<title>Eclipse on Gumstix for new users</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Eclipse_on_Gumstix_for_new_users&amp;diff=6144"/>
				<updated>2016-04-01T22:57:56Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This guide provides step-by-step instructions for using the Eclipse Integrated Development Environment (IDE) to develop applications for the Gumstix COMs.&lt;br /&gt;
&lt;br /&gt;
We'll walk through these tasks:&lt;br /&gt;
:* setting up Eclipse&lt;br /&gt;
:* connection to your Gumstix system&lt;br /&gt;
:* creating a simple &amp;quot;Hello, World!&amp;quot; Python program&lt;br /&gt;
:* running a web server&lt;br /&gt;
:* installing new packages on your Gumstix&lt;br /&gt;
:* creating a small graphical Java application&lt;br /&gt;
:* remote debugging of your Java application&lt;br /&gt;
:* natively-compiling C/C++ code on your Gumstix&lt;br /&gt;
:* remote debugging C/C++ using the GDB server interface.&lt;br /&gt;
&lt;br /&gt;
We will also explain how to set up a cross-compilation toolchain so you can develop C/C++ applications on your development computer and upload them to your Gumstix.&lt;br /&gt;
&lt;br /&gt;
Remember, Gumstix COMs are fully-fledged, albeit tiny, Linux systems so there are many tools we don't cover here.  For example, [http://wiki.openembedded.net/index.php/OpenEmbedded_Tools_for_Eclipse_(OTE) this document] explains how to use the powerful OpenEmbedded build system within Eclipse.&lt;br /&gt;
&lt;br /&gt;
Required Tools:&lt;br /&gt;
:* any Windows, Apple or Linux computer with a USB port&lt;br /&gt;
:* recent version of the Java Runtime Environment (available [http://java.sun.com/javase/downloads/index.jsp here])&lt;br /&gt;
:* a Gumstix COM running [http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Downloading-pre-built-images/111.html up-to-date software]&lt;br /&gt;
:* any expansion board of the Gumstix Overo series, such as Chestnut or Tobi, that has both a USB console port and a 10/100 &lt;br /&gt;
:* Ethernet jack&lt;br /&gt;
:* a 5V power supply&lt;br /&gt;
:* an ethernet cable and internet connection&lt;br /&gt;
:* a mini-A to Standard-A USB cable&lt;br /&gt;
:* a [http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Creating-a-bootable-microSD-card/111.html bootable microSD card] (only needed for native C/C++ compilation)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Download Eclipse==&lt;br /&gt;
[http://www.eclipse.org/downloads/ Download] the Eclipse IDE for Java Developers for your Operating System: www.eclipse.org&lt;br /&gt;
&lt;br /&gt;
:* it is ''not'' necessary to install the Eclipse software; just double-click on the application once it has finished downloading&lt;br /&gt;
:* when prompted, choose a workspace folder in which you want to store your projects and your configuration information&lt;br /&gt;
:* then click through to the Eclipse workbench itself&lt;br /&gt;
&lt;br /&gt;
==Install Plugins==&lt;br /&gt;
For developers, a great variety of additional features can be added to Eclipse from various repositories of plug-ins known as ''Update Sites''.&lt;br /&gt;
To install a new plugin in Eclipse, first select the ''Update Site''.&lt;br /&gt;
:* navigate to '''Help-&amp;gt;Install New Software...'''&lt;br /&gt;
:* select the Update Site for your version of Eclipse from the &amp;quot;Work with&amp;quot;dropdown menu&lt;br /&gt;
&lt;br /&gt;
:Note: If you are not sure which version of Eclipse you have, you can check by reopening Eclipse, it will be displayed on the loading screen.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Hint:&lt;br /&gt;
If the update site is not available, you can add it by clicking the 'Add...' button on the right. For the Galileo release, you can use the URL http://dowload.eclipse.org/releases/galileo&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
As we are working with a remote system, we'll install the Remote System Explorer plugin.&lt;br /&gt;
:* search for the ''Remote System Explorer End-User Runtime'' plugin&lt;br /&gt;
:* select it for installation&lt;br /&gt;
&lt;br /&gt;
Still in Eclipse,&lt;br /&gt;
:* select &amp;quot;Next&amp;quot;.... twice&lt;br /&gt;
:* select the radio button to &amp;quot;ACCEPT&amp;quot; the terms of the license agreement&lt;br /&gt;
:* choose &amp;quot;Yes&amp;quot; to restart Eclipse for the changes to take effect&lt;br /&gt;
&lt;br /&gt;
Once Eclipse has restarted, let's add two other useful plugins that allow connection to the console port of our Gumstix without needing a terminal emulator program such as kermit or TeraTerm.&lt;br /&gt;
From within Eclipse,&lt;br /&gt;
:* navigate to '''Help-&amp;gt;Install New Software'''&lt;br /&gt;
:* search on &amp;quot;Target&amp;quot; to find the ''Target Manager Terminal''&lt;br /&gt;
&lt;br /&gt;
:* select the ''Target Manager Terminal''&lt;br /&gt;
:* click &amp;quot;Next&amp;quot;&lt;br /&gt;
:* click &amp;quot;Finish&amp;quot; to complete installation&lt;br /&gt;
:* choose &amp;quot;Yes&amp;quot; to restart Eclipse for the changes to take effect&lt;br /&gt;
&lt;br /&gt;
We'll also need to add a new update site by doing these steps in Eclipse:&lt;br /&gt;
:* navigate to '''Help-&amp;gt;Install New Software...'''&lt;br /&gt;
:* click the &amp;quot;Add...&amp;quot; button&lt;br /&gt;
:* type ''http://rxtx.qbang.org/eclipse'' into the ''Location'' field and create a name&lt;br /&gt;
&lt;br /&gt;
:* Click the &amp;quot;OK&amp;quot; button&lt;br /&gt;
Go into the sub-directory as shown below to select the ''RXTX End-User Runtime'' plugin that this site provides.&lt;br /&gt;
&lt;br /&gt;
:* click &amp;quot;Next&amp;quot; twice&lt;br /&gt;
:* select the radio button to &amp;quot;ACCEPT&amp;quot; the terms of the license agreement&lt;br /&gt;
:* click &amp;quot;OK&amp;quot; at the security warning window&lt;br /&gt;
:* click &amp;quot;Finish&amp;quot; to complete installation&lt;br /&gt;
:* choose the &amp;quot;Yes&amp;quot; button to restart Eclipse for the changes to take effect&lt;br /&gt;
&lt;br /&gt;
==Connect Your Gumstix==&lt;br /&gt;
Now it is time to connect your Gumstix---let's get started by establishing a console connection.&lt;br /&gt;
:* mount your Gumstix COM down on to your expansion board&lt;br /&gt;
:* plug the mini-A USB plug into the port marked CONSOLE and end of the cable into a standard USB port on your computer&lt;br /&gt;
----&lt;br /&gt;
Hint:&lt;br /&gt;
Your computer should detect your Gumstix system when you first connect the USB cable, even though the power is not yet turned on. On Macintosh and Windows systems, a pop-up window should appear instructing you to download a new driver (do so) or notifying you that a USBserial device has been detected. If not, you can download drivers from [http://www.ftdichip.com/FTDrivers.htm this site]. Choose the &amp;quot;VCP&amp;quot; driver.&lt;br /&gt;
Once you have downloaded this driver, make sure to unplug and then replug the USB cable running from your computer to your Gumstix expansion board so the Gumstix will be recognized by your computer.&lt;br /&gt;
----&lt;br /&gt;
:* connect your Gumstix to the internet using an ethernet cable&lt;br /&gt;
    NOTE: You still have NOT plugged the power cable in to the &lt;br /&gt;
    Gumstix expansion board! This diagram shows the locations&lt;br /&gt;
    of the USB 'CONSOLE' port and the 'POWER' input port on a &lt;br /&gt;
    Summit board on which an Overo COM has been mounted.&lt;br /&gt;
&lt;br /&gt;
:* if you are booting from a microSD card, insert this card now until you hear it click in place.&lt;br /&gt;
Before applying power to the board, let's open up a connection to the console port.&lt;br /&gt;
In Eclipse,&lt;br /&gt;
:* navigate to '''Window-&amp;gt;Show View-&amp;gt;Other-&amp;gt;Terminal-&amp;gt;Terminal'''&lt;br /&gt;
:* click on the 'N' connection icon in the window that appears&lt;br /&gt;
&lt;br /&gt;
:* make the connection using the following settings:&lt;br /&gt;
    Connection Type: Serial&lt;br /&gt;
    Port: &amp;lt;port to which your Gumstix is connected&amp;gt;&lt;br /&gt;
    Baud Rate: 115200&lt;br /&gt;
    Data Bits: 8&lt;br /&gt;
    Stop Bits: 1&lt;br /&gt;
    Parity: none&lt;br /&gt;
    Flow Control: none&lt;br /&gt;
    Timeout: 5&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Hint:&lt;br /&gt;
The port to which your Gumstix is connected will have a different name depending on your Host operating system.&lt;br /&gt;
:* On Windows, it should be ''USB-COM''&lt;br /&gt;
:* On Macintosh, it should be ''/dev/tty.usbserial-xxxxxxxx'' where ''xxxxxxxx'' is an arbitrary string of characters&lt;br /&gt;
:* On Linux, it should be ''/dev/ttyUSBx'' where ''x'' is a number.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Hint:&lt;br /&gt;
If this does not work, or you wish to gain Console access via a *nix Shell instead, visit the tutorial on [[Gaining Console Connection via Terminal]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
*Now, it's time to apply power to the Gumstix expansion board so plug the 5V wall adapter into the power input jack on the Gumstix.&lt;br /&gt;
&lt;br /&gt;
You should see text appear in this window; for now, just let the Gumstix boot. When prompted, you can log in to the root account. The default credentials are:&lt;br /&gt;
&lt;br /&gt;
'''Overo'''&lt;br /&gt;
&lt;br /&gt;
username: root&lt;br /&gt;
&lt;br /&gt;
password: &amp;lt;leave blank&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''VerdexPro'''&lt;br /&gt;
&lt;br /&gt;
username: root&lt;br /&gt;
&lt;br /&gt;
password: gumstix&lt;br /&gt;
&lt;br /&gt;
==Create a Web Site==&lt;br /&gt;
Each Gumstix comes with a built-in package manager called opkg. A package manager is a useful tool for installing software; you can install everything from media players to GPS mapping tools to the Firefox web browser. In this example, you'll use opkg tool to install a new application for your Gumstix: the Apache web server.&lt;br /&gt;
&lt;br /&gt;
To make your own Gumstix web site, type the following in the terminal window:&lt;br /&gt;
    opkg update 			&amp;lt;Enter&amp;gt;&lt;br /&gt;
    opkg install apache2		&amp;lt;Enter&amp;gt;&lt;br /&gt;
Before you start using Apache, which is now running, you'll need to find the IP address (internet address) of your Gumstix COM. To do this, type the following command into the terminal window:&lt;br /&gt;
    ifconfig | grep 'inet addr' 	&amp;lt;Enter&amp;gt;&lt;br /&gt;
You should see something like this appear on your screen.&lt;br /&gt;
    inet addr: 10.0.1.73 Bcast: 192.168.0.255 Mask: 255.255.255.0&lt;br /&gt;
The IP address of your Gumstix is the first address shown: ''10.0.1.73'' in this case.&lt;br /&gt;
Now,&lt;br /&gt;
:* open up a web browser on your host computer&lt;br /&gt;
:* type that IP address of your Gumstix into the address bar&lt;br /&gt;
You should see something like this which is the default web site for Apache running on your Gumstix.&lt;br /&gt;
&lt;br /&gt;
[[File:GumstixEclipse11.jpg]]&lt;br /&gt;
&lt;br /&gt;
To make your web site say something more interesting, do the follow in your terminal window:&lt;br /&gt;
:* type: ''nano /usr/share/apache2/htdocs/index.html''&lt;br /&gt;
:* replace the words at the top of the screen &amp;quot;It Works&amp;quot; with the words &amp;quot;Gumstix Rocks!&amp;quot;&lt;br /&gt;
:* press 'Ctrl+O' &amp;lt;Enter&amp;gt;&lt;br /&gt;
:* press 'Ctrl+X' to save and exit&lt;br /&gt;
:* refresh your web browser&lt;br /&gt;
&lt;br /&gt;
==Write a Java Application==&lt;br /&gt;
So far, you haven't actually used Eclipse other than as a console interface for your Gumstix. It is time to harness the power of Eclipse to write a small graphical Java application.&lt;br /&gt;
In Eclipse.&lt;br /&gt;
:* Navigate to '''File-&amp;gt; New-&amp;gt; Java Project''',&lt;br /&gt;
:* Name the project ''gumstix-java''&lt;br /&gt;
:* Select &amp;quot;Finish&amp;quot;&lt;br /&gt;
Once the project is created,&lt;br /&gt;
:* Select '''File-&amp;gt;New-&amp;gt;Class'''&lt;br /&gt;
:* Name your class ''Hello''&lt;br /&gt;
:* click &amp;quot;FINISH&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Add the following code to your class:&lt;br /&gt;
&lt;br /&gt;
    import javax.swing.JFrame;&lt;br /&gt;
    import javax.swing.JLabel;&lt;br /&gt;
    public class Hello {&lt;br /&gt;
    	public static void main(String [] args) {&lt;br /&gt;
    		JFrame frame = new JFrame(&amp;quot;hello&amp;quot;);&lt;br /&gt;
    		final JLabel label = new JLabel(&amp;quot;hello from Gumstix&amp;quot;);&lt;br /&gt;
    		frame.getContentPane().add(label);&lt;br /&gt;
    		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    		frame.pack();&lt;br /&gt;
    		frame.setVisible(true);&lt;br /&gt;
    	}&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
You should get something that looks like this:&lt;br /&gt;
&lt;br /&gt;
Press the green run button to test drive our application on our host machine.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Hint:&lt;br /&gt;
Eclipse has many auto-completion features. Simply typing /:*&amp;lt;Enter&amp;gt; before a class creates a standard documentation block. Likewise, pressing &amp;lt;Ctrl&amp;gt;+&amp;lt;Space&amp;gt; provides context specific auto-completion options. Many other hints for speedy development are explained in the tutorials [http://www.eclipse.org/resources/?category=Getting%20Started here].&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Upload Code==&lt;br /&gt;
In Step 5 we discovered the IP address of our Gumstix. With this, we can connect to our Gumstix using the SSH protocol which allows us to rapidly transfer files. For this step, navigate to '''Window-&amp;gt;Open Perspective-&amp;gt;Other-&amp;gt;Remote System Explorer''' and click on the connection icon in the ''Remote Systems'' panel on the left. Select ''SSH without shells'' as the connection type and press Next. Put the internet address you found in Step 5 into the field marked ''Host Name'' and hit finish. To test that everything is working correctly, right-click on the terminal item list under your new connection and select ''Launch Terminal''. A console interface exactly like the USB console interface we set up in Step 3 should pop up.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Hint:&lt;br /&gt;
A 'Perspective' is an arrangement of windows and widgets, that is a specific view of the Eclipse workspace, designed for a particular task. If you wish to focus on any particular widget, double click the tab in Eclipse; return to the previous view by double-clicking again.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By installing the VNC viewer plugin, we can get a graphical interface to our Gumstix system. Do this by adding the ''Tools for mobile linux runtime'' plugin ('''Help-&amp;gt;Install New Software''') from the main update site. To use, select the VNC viewer widget from '''Window-&amp;gt;Show View-&amp;gt;Other-&amp;gt;VNC Category-&amp;gt;VNC''' and click on the ''New Connection'' icon in the VNC Viewer panel. Again, the ''Host'' is the internet address of your Gumstix board.&lt;br /&gt;
&lt;br /&gt;
Finally, we need to upload our java code before we can run it. Switch back to the Java Perspective ('''Window-&amp;gt;Open Perspective-&amp;gt;Java''') and right-click on our Java file and selecting Export. Choose the option to export file to a remote file system and choose to upload your ''Hello.class'' file.&lt;br /&gt;
&lt;br /&gt;
You will need to ''Browse'' to find your Gumstix board; you should upload this code to your home directory on the Gumstix.&lt;br /&gt;
&lt;br /&gt;
==Debug a Java Application==&lt;br /&gt;
We can debug our java application remotely from Eclipse. To do this, we need a Java Virtual Machine capable of doing debugging. This time, the package we need isn't available in our package sources however we can fetch the package directly from a web site and install it using the same opkg package management tool.&lt;br /&gt;
    wget http://bugcommunity.com/downloads/files/phoneme-advanced-personal-debug_mr2-r1_armv6.ipk 	&amp;lt;Enter&amp;gt;&lt;br /&gt;
    opkg install -force-depends phoneme-advanced-personal-debug_mr2-r1_armv6.ipk &amp;lt;Enter&amp;gt;&lt;br /&gt;
Let's also update our Java libraries so we have access to the standard graphical libraries.&lt;br /&gt;
    opkg install classpath-gtk	&amp;lt;Enter&amp;gt;&lt;br /&gt;
Next, let's start our Java code in debugging mode on the Overo:&lt;br /&gt;
    java-cdc -Xdebug -Xrunjwdp:transport=dHt_socket,server=y,suspend=y,address=1234 Hello	&amp;lt;Enter&amp;gt;&lt;br /&gt;
Finally, let's connect to our debugging session by navigating in Eclipse to '''Run-&amp;gt;Debug Configurations''' and double-clicking on Remote Java Application to create a new configuration. Fill in the form as shown below using the internet address found in the previous step.&lt;br /&gt;
&lt;br /&gt;
==Install a native C/C++ SDK==&lt;br /&gt;
When we discussed Python and Java we noted that both are interpreted languages--- neither needs to be compiled. C and C++ code requires compilation which can be done natively---on the Gumstix itself---or on a development machine using a cross-compiler. To do native compilation, you need to install a compiler as well as any required libraries. You'll need to be booting from a microSD card as this installation takes approximately 75MB of space.&lt;br /&gt;
    $ echo 'src/gz angstrom-base http://www.angstrom-distribution.org/feeds/unstable/ipk/glibc/armv7a/base'  &amp;gt; /etc/opkg/angstrom-base.conf&lt;br /&gt;
    $ opkg update&lt;br /&gt;
    $ opkg install task-native-sdk&lt;br /&gt;
Firstly, we are adding a new package repository to our package manager and updating our list of available packages before actually installing the complete package needed to do native development.&lt;br /&gt;
&lt;br /&gt;
Let's create either of the following files in Eclipse, upload the code and then compile on the Gumstix using our newly installed compiler.&lt;br /&gt;
&lt;br /&gt;
===C++: HelloWorld.cpp===&lt;br /&gt;
    #include &amp;lt;iostream&amp;gt;&lt;br /&gt;
    using namespace std;&lt;br /&gt;
    int main () {&lt;br /&gt;
    	cout &amp;lt;&amp;lt; &amp;quot;Gumstix runs on C++&amp;quot; &amp;lt;&amp;lt; endl;&lt;br /&gt;
    	return 0;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
Save the file and issue the following commands to compile and run HelloWorld.cpp&lt;br /&gt;
    g++ -o hello hello.cpp	&amp;lt;enter&amp;gt;&lt;br /&gt;
    Gumstix runs on C++   	&amp;lt;enter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===C: HelloWorld.c===&lt;br /&gt;
    #include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
    int main () {&lt;br /&gt;
    	printf(&amp;quot;Gumstix runs on C\n&amp;quot;);&lt;br /&gt;
    	return 0;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
Save the file and issue the following commands to compile and run HelloWorld.c&lt;br /&gt;
    gcc -o hello hello.c&lt;br /&gt;
    Gumstix runs on C&lt;br /&gt;
&lt;br /&gt;
==Using GDB as a remote debugger in C/C++==&lt;br /&gt;
These instructions will teach you how to download, install, and use the GDB debugger remotely on your Overo COM.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;NOTE:	&lt;br /&gt;
remote system - a device that is being operated remotely (via SSH, USB Serial, etc). This means that it is a device that you are operating from a different system &lt;br /&gt;
(ie: if you are accessing the Overo COM via connection with your PC, then the Overo COM is a remote system).&lt;br /&gt;
For the purpose of this guide, the Overo COM will be the remote system.&lt;br /&gt;
&lt;br /&gt;
local host - the device that is being used to work on (ie: If you are working on your PC, that is the local host. If you then connect to another computer via VNC, &lt;br /&gt;
that is a remote system, and you laptop is still the localhost).&lt;br /&gt;
For the purpose of this guide, your Personal Computer will be the local host.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Before starting, it is important to note there are many different ways to run a remote debugger. The most fundamental choice when debugging remotely is whether you want to:&lt;br /&gt;
:*Run the debugger on the remote system or&lt;br /&gt;
:*Run the debugger on the local host with a cross debugger on the remote system&lt;br /&gt;
&lt;br /&gt;
This guide will teach you how to download, install, and run the debugger on the remote system (choice A). If you wish to learn more about the cross debugger option, use Google. Also the wikipedia article on cross compilers (which operate in a very similar fashion) is very good, albeit a bit complicated. None of this is necessary in understanding the contents of this guide. &lt;br /&gt;
&lt;br /&gt;
For the purposes of this guide, we will be using the GDB: the GNU project debugger. As stated on their website:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;GDB, the GNU Project debugger, allows you to see what is going on `inside' another program while it executes -- or what another program was doing at the moment it &lt;br /&gt;
crashed.&lt;br /&gt;
&lt;br /&gt;
GDB can do four main kinds of things (plus other things in support of these) to help you catch bugs in the act:&lt;br /&gt;
- Start your program, specifying anything that might affect its behavior.&lt;br /&gt;
- Make your program stop on specified conditions.&lt;br /&gt;
- Examine what has happened, when your program has stopped.&lt;br /&gt;
- Change things in your program, so you can experiment with correcting the effects of one bug and go on to learn about another.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While the reasons for using a debugger instead of trying to debug with the ‘brute force’ method of adding print statements throughout the entire program are enumerable, there are a few that stand out:&lt;br /&gt;
# The ability to ‘step’ through a program&lt;br /&gt;
#* The GDB debugger allows you to ‘step’ through a program. This means that instead of just executing the program and then leaving you with a final error message, it will execute one line at a time until the program crashes. This allows the user to see exactly where, and why, the program crashed. &lt;br /&gt;
# The ability to set breakpoints&lt;br /&gt;
#* The GDB debugger allows you to set breakpoints in the program. These are points where the CPU will stop executing the code and allow the user to decide whether to continue. This allows the user to explore what is ‘going on’ at certain points in the execution, something that otherwise is not possible. &lt;br /&gt;
# The ability to look at the Backtrace&lt;br /&gt;
#* This will show you where, and exactly why, your program crashed. Although SEGFAULT isn’t very useful, the backtrace will tell you what caused the SEGFAULT. Everything from what line, what variable, and even the address that variable was at.&lt;br /&gt;
&lt;br /&gt;
===Installing the GDB===&lt;br /&gt;
Once the Overo COM has been connected to the local host, you should have access to the following command line:&lt;br /&gt;
&amp;lt;pre&amp;gt;root@overo:~#	&amp;lt;/pre&amp;gt;&lt;br /&gt;
Although you are working on your local host, this command line is for the remote system. It is the same as if you opened up Terminal (for Mac, Linux) or XTerm (for Windows). You now have access and control of the remote system.&lt;br /&gt;
&lt;br /&gt;
Now there are some packages that must be downloaded and installed onto the Overo so that it can run the GDB environment. To do this issue the following command:&lt;br /&gt;
&amp;lt;pre&amp;gt;opkg update	 	&amp;lt;enter&amp;gt;&lt;br /&gt;
opkg install gdb 	&amp;lt;enter&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
This should spew out a bunch of text such as:&lt;br /&gt;
&amp;lt;pre&amp;gt;Downloading http://www.angstrom...&amp;lt;/pre&amp;gt;&lt;br /&gt;
Just let it run and once its done, you’ll have the GNU GDB debugger installed on your Overo COM.&lt;br /&gt;
&lt;br /&gt;
===Creating a C/C++ Program to Debug===&lt;br /&gt;
Now, your Overo COM has a debugger installed and ready to use. However, this does not mean you are ready to go. There are two more things required before it is possible to use a GDB debugger.&lt;br /&gt;
:* A C/C++ program&lt;br /&gt;
:* A SDK to run the program on&lt;br /&gt;
To see how to install a SDK and write/run a simple program in C/C++, see [[#Install a native C/C++ SDK]]. &lt;br /&gt;
&lt;br /&gt;
Once you have a program ready, you first must create an executable file. Lets use for example the C++ program HelloWorld.cpp. To create the executable file HelloWorld, issue the following command:&lt;br /&gt;
&amp;lt;pre&amp;gt;g++ -o HelloWorld HelloWorld.cpp 	&amp;lt;enter&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now, to run the program:&lt;br /&gt;
&amp;lt;pre&amp;gt;./HelloWorld				&amp;lt;enter&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
To do the same thing with a C program (HelloWorld.c), issue the command&lt;br /&gt;
&amp;lt;pre&amp;gt;gcc -o HelloWorld HelloWorld.c		&amp;lt;enter&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;./HelloWorld				&amp;lt;enter&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
What this command does is uses the GNU compiler (either g++ or gcc) and creates an executable object (HelloWorld) out of the C or C++ program file (either HelloWorld.cpp or HelloWorld.c). You may name the executable whatever you like, but it is considered best practice to name it the same thing as the program file.&lt;br /&gt;
&lt;br /&gt;
===Debugging the Program===&lt;br /&gt;
Now that you have GDB installed and a C/C++ program ready to go, its time to debug. To open to GDB environment, run the following command&lt;br /&gt;
&amp;lt;pre&amp;gt;gdb						&amp;lt;enter&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
Some text should spit out, and the following command line should appear&lt;br /&gt;
&amp;lt;pre&amp;gt;(gdb)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now that the debugger is running, it is time to tell the debugger what program we want to debug. To do this, first we need to declare our HelloWorld file as an executable file. For this run the following command	&lt;br /&gt;
&amp;lt;pre&amp;gt;(gdb) exec-file HelloWorld		&amp;lt;enter&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now that we have an executable file ready to be debugged, its time to run the program&lt;br /&gt;
&amp;lt;pre&amp;gt;(gdb) run HelloWorld			&amp;lt;enter&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
The debugger will now run your program. If the program has no syntax or logic errors, the program should run and end with the line:&lt;br /&gt;
Program exited normally.&lt;br /&gt;
If there are errors, or the program crashed, it is possible to extract the exact details of that crash  by issuing the back trace command.&lt;br /&gt;
&amp;lt;pre&amp;gt;(gdb) bt			&amp;lt;enter&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
Once you are done you can quit by issuing the command:&lt;br /&gt;
&amp;lt;pre&amp;gt;(gdb) quit			&amp;lt;enter&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A complete list of commands in GDB:&lt;br /&gt;
www.yolinux.com/TUTORIALS/GDB-Commands.html&lt;br /&gt;
&lt;br /&gt;
====GDB Debugger Tutorial====&lt;br /&gt;
For a complete GDB Debugger tutorial (very good tutorial, comes with sample code they walk you through and extra errors for you to debug yourself!):&lt;br /&gt;
http://www.cs.cmu.edu/~gilpin/tutorial/&lt;br /&gt;
&lt;br /&gt;
Now you have a debugger up and running! Play around with it by putting errors into your program on purpose to see the powers of having a remote debugger!&lt;br /&gt;
&lt;br /&gt;
==Use a C/C++ cross-compiler==&lt;br /&gt;
In order to do C/C++ development on our host machine, we need to add in a plugin to Eclipse. Also, we need to download an appropriate cross-compilation toolchain. For now, I recommend the lovely instructions from&lt;br /&gt;
&lt;br /&gt;
http://www.designarm.com/quickstart-guide/linux-software/eclipse.html &amp;amp;&lt;br /&gt;
&lt;br /&gt;
http://www.bugcommunity.com/wiki/index.php/BUG_Kernel_Development_with_Eclipse&lt;br /&gt;
&lt;br /&gt;
==Further Reading==&lt;br /&gt;
===Internal===&lt;br /&gt;
[[Gaining Console Connection via Terminal]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[HelloWorld | HelloWorld in Python, C and C++]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Remote Debugging with GDB]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[HelloWorld in Java]]&lt;br /&gt;
&lt;br /&gt;
===External===&lt;br /&gt;
:* Tutorials built into Eclipse&lt;br /&gt;
:* Bitbake commander&lt;br /&gt;
:* OpenEmebedded|Poky docs + Bitbake docs&lt;br /&gt;
:* Eclipse Plugin Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:How_to_-_eclipse]]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Using_Eclipse_to_Write_HelloWorld_in_Java_for_the_Overo&amp;diff=6143</id>
		<title>Using Eclipse to Write HelloWorld in Java for the Overo</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Using_Eclipse_to_Write_HelloWorld_in_Java_for_the_Overo&amp;diff=6143"/>
				<updated>2016-04-01T22:52:47Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page will teach you how to create a simple, graphical, java HelloWorld application in Eclipse, export it to you Overo COM, and subsequently run it. This guide assumes that you have already run through [[Eclipse on Gumstix for new users]] and have Eclipse installed, and your Gumstix properly connected. &lt;br /&gt;
&lt;br /&gt;
==Writing HelloWorld.java in Eclipse==&lt;br /&gt;
First, you need to write your Java program in Eclipse. This section will show you how to write a small graphical HelloWorld program in Eclipse.&lt;br /&gt;
&lt;br /&gt;
:* Navigate to '''File-&amp;gt; New-&amp;gt; Java Project'''&lt;br /&gt;
:* Name the project ''HelloWorld''&lt;br /&gt;
:* Select &amp;quot;Finish&amp;quot;&lt;br /&gt;
Once the project is created,&lt;br /&gt;
:* Select '''File-&amp;gt;New-&amp;gt;Class'''&lt;br /&gt;
:* Name your class ''HelloWorld''&lt;br /&gt;
:* click &amp;quot;Finish&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Add the following code to your class:&lt;br /&gt;
&lt;br /&gt;
    import javax.swing.JFrame;&lt;br /&gt;
    import javax.swing.JLabel;&lt;br /&gt;
    public class Hello {&lt;br /&gt;
    	public static void main(String [] args) {&lt;br /&gt;
    		JFrame frame = new JFrame(&amp;quot;hello&amp;quot;);&lt;br /&gt;
    		final JLabel label = new JLabel(&amp;quot;hello from Gumstix&amp;quot;);&lt;br /&gt;
    		frame.getContentPane().add(label);&lt;br /&gt;
    		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    		frame.pack();&lt;br /&gt;
    		frame.setVisible(true);&lt;br /&gt;
    	}&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
Press the green run button to test drive our application on our host machine.&lt;br /&gt;
Congratulations! You have now written your first graphical program in Java.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Hint:&lt;br /&gt;
Eclipse has many auto-completion features. Simply typing /:*&amp;lt;Enter&amp;gt; before a class creates a standard documentation block. Likewise, pressing &amp;lt;Ctrl&amp;gt;+&amp;lt;Space&amp;gt; provides context specific auto-completion options. Many other hints for speedy development are explained in the tutorials [http://www.eclipse.org/resources/?category=Getting%20Started here].&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Upload your Code onto your Overo COM==&lt;br /&gt;
Now that you have a graphical program on Eclipse, its time to upload it onto your Overo COM. This will show you how to upload your code onto your Overo COM via ethernet connection. First, you will need to discover to IP Address of your Overo. To do this, see [[Eclipse on Gumstix for new users]]: Connect Your Gumstix. Once you have the IP Address of your Gumstix, it is time to export your Java Program onto your Overo COM. &lt;br /&gt;
:*Choose '''File -&amp;gt; Export''' from the drop down menu&lt;br /&gt;
:*Choose '''Remote Systems -&amp;gt; Remote File System''' and press '''Next'''&lt;br /&gt;
:*Expand the drop down for the HelloWorld project&lt;br /&gt;
::*In the '''bin''' folder choose '''HelloWorld.class'''&lt;br /&gt;
----&lt;br /&gt;
Note:&lt;br /&gt;
We want to export the HelloWorld.class file and NOT the HelloWorld.java file. This is because our Overo COM can not compile a .java file. A .class file has already been compiled and is ready to run on a Java Virtual Machine, which our Overo COM will have after some necessary installations. &lt;br /&gt;
----&lt;br /&gt;
:*For Destination Folder, hit the '''Browse''' button&lt;br /&gt;
:*In the Browse For Folder window which will appear:&lt;br /&gt;
:*If you have already added a ethernet connection to your Overo COM, it should be in the drop down menu under Local&lt;br /&gt;
:*If it is not, hit '''New'''&lt;br /&gt;
::*Choose '''SSH Only'''&lt;br /&gt;
::*In the '''HOST Name''', put the IP Address&lt;br /&gt;
::*Hit Finish&lt;br /&gt;
:*Under '''My Home''' choose '''Desktop''' and hit OK&lt;br /&gt;
:*Back in the Export window, hit '''Finish''' and Eclipse will export your program to your Overo!&lt;br /&gt;
&lt;br /&gt;
==Installing Necessary Software==&lt;br /&gt;
Before we can run our program on the Overo COM, there are some opkg we need installed so that we can run a Java Virtual Machine. To do this issue the following commands:&lt;br /&gt;
 opkg update&lt;br /&gt;
 opkg install cacao&lt;br /&gt;
 opkg install classpath-gtk&lt;br /&gt;
This installs the Java Library cacao and the GTK which allows you to run graphical JARs. &lt;br /&gt;
&lt;br /&gt;
Next, we need to set our Display to be correct. In the Console window for the Overo COM issue the following command&lt;br /&gt;
 export DISPLAY=:0.0&lt;br /&gt;
This enables the Overo to be able to display onto the monitor correctly. Without setting the display correctly our graphical program will not work. &lt;br /&gt;
&lt;br /&gt;
==Running our Program==&lt;br /&gt;
Now that our Overo COM has the program on it and the necessary software to run it, it is time to run our graphical HelloWorld!&lt;br /&gt;
----&lt;br /&gt;
Note:&lt;br /&gt;
You will need a Monitor connected to your Overo COM to run this program. This does not include the local host.&lt;br /&gt;
----&lt;br /&gt;
To do this you first must go into the '''Remote System Explorer''' Perspective in Eclipse. &lt;br /&gt;
:*From the '''Window''' drop down menu, choose '''Open Perspective -&amp;gt; Other -&amp;gt; Remote System Explorer'''&lt;br /&gt;
:*Find the Overo's IP address&lt;br /&gt;
::*Expand '''(The IP Address) -&amp;gt; My Home -&amp;gt; Desktop -&amp;gt; bin'''&lt;br /&gt;
::*Right click on HelloWorld.class, and choose '''User Action -&amp;gt; java''' &lt;br /&gt;
::*Hit Enter&lt;br /&gt;
:*A Box should appear on your monitor with the text: Hello from Gumstix&lt;br /&gt;
&lt;br /&gt;
==Minesweeper==&lt;br /&gt;
If you wish to move on to something more complex, see the page for [[Minesweeper in Java]]. All the code in provided to make a cool, graphically Minesweeper game that can be run on an Overo with a monitor!&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Gallop43&amp;diff=6142</id>
		<title>Gallop43</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Gallop43&amp;diff=6142"/>
				<updated>2016-04-01T22:51:22Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Gallop43}}&lt;br /&gt;
== Gallop43 Expansion Board ==&lt;br /&gt;
&lt;br /&gt;
[[Category:How_to_-_expansion_boards]]&lt;br /&gt;
&lt;br /&gt;
=== LCD Side of Board ===&lt;br /&gt;
The Gallop43 expansion board offers numerous features to help you make the most of your Overo COM. This discussion will begin with closeup photos of various parts of the Gallop43. Because many users buy an LCD to go with their Gallop43, we will begin with a tour of the buttons found on the right side of the LCD surface of the board, which is the surface you will normally see if you use the LCD a lot. Also shown in this photo are the connectors populating the right edge of Overo COM side of the board -- that is, what connectors are on the other side of those user buttons.&lt;br /&gt;
==== Corner Holes ====&lt;br /&gt;
The holes on each corner of the Gallop43 appear to be sized for 2-56 screws. Screws and nuts of this size tend to loosen easily without locking washers. &lt;br /&gt;
&lt;br /&gt;
==== User Buttons ====&lt;br /&gt;
&lt;br /&gt;
The buttons are marked, from top to bottom: &lt;br /&gt;
&lt;br /&gt;
:::  ''Reset''&lt;br /&gt;
:::  ''GPIO23''&lt;br /&gt;
:::  ''GPIO14''&lt;br /&gt;
:::  ''Power On''&lt;br /&gt;
&lt;br /&gt;
==== LEDs ====&lt;br /&gt;
&lt;br /&gt;
LED's are marked, from top to bottom:&lt;br /&gt;
&lt;br /&gt;
::: ''GPIO21 (D2)''&lt;br /&gt;
::: ''D9''&lt;br /&gt;
::: ''D10''&lt;br /&gt;
::: ''D8''&lt;br /&gt;
::: ''D3 (GPIO22)''&lt;br /&gt;
&lt;br /&gt;
The purpose and colors of some of these LEDs are unknown. D10 possibly turns on, glowing red, to indicate the external battery is charging.&lt;br /&gt;
&lt;br /&gt;
=== Connectors Under User Buttons ===&lt;br /&gt;
&lt;br /&gt;
When looking at the LCD, one might wonder where a particular connector on the right edge, under the user buttons, is. This section identifies the connectors.&lt;br /&gt;
&lt;br /&gt;
# The topmost connector, positioned above the Reset button, is the USB OTG connector. &lt;br /&gt;
# Directly under the Reset button is the audio connector.&lt;br /&gt;
# Directly under GPIO21 and (D2) is the USB Console connector.&lt;br /&gt;
# Directly under D9, D10, and D8 is the external battery connector. &lt;br /&gt;
# Just under the &amp;quot;Power On&amp;quot; button is the external power (wall wart) connector.&lt;br /&gt;
&lt;br /&gt;
=== LCD Connector Area ===&lt;br /&gt;
&lt;br /&gt;
You can click the image on the right to enlarge it and see a view of the LCD connector area. The labeling of IC4 and U$2 are given. Pins 40 (marked &amp;quot;V_IN&amp;quot; on the board and &amp;quot;V_BATT&amp;quot; on website documentation) and 39 (&amp;quot;ADCIN4&amp;quot;) of the 40-pin header are located.&lt;br /&gt;
=== Overo COM Side of Board ===&lt;br /&gt;
Now for an examination of the exciting Overo COM side of the Gallop43. Here is where you plug in your Overo and gain access to the board's special features.&lt;br /&gt;
&lt;br /&gt;
==== U-Blox GPS Details ====&lt;br /&gt;
&lt;br /&gt;
With the white silkscreen printing on the board &amp;quot;right side up&amp;quot; and readable, the U-Blox module and its MCX antenna connector is tucked into the top right corner of the Gallop43. In this photo, you can see that a U-Blox GPS antenna cable is seated into the gold-colored MCX antenna connector. The cable connector on the antenna sold by U-blox seats quite snugly into the board's connector. It is high quality, as is the Gallop43 connector. The result is a cable that is fairly stiff at the connector end. There is about 2 inches of very noticeable stiffness, then the cable becomes more flexible. This may or may not make a difference to your cable routing. To the right of the MCX connector is a hex aluminum standoff. This is user-supplied and does not come with the purchase of the Gallop43 board. The circled area on the board is quite interesting -- does documentation exist for how to use GPS_V_BCKP? Also of interest is the scannable bar code on the U-blox module's label.&lt;br /&gt;
&lt;br /&gt;
===== U-blox GPS Antenna =====&lt;br /&gt;
This antenna has a quite long cable of approximately 10 feet in length. The magnetic mount is very convenient to use. The author put the antenna unit magnetic mount side down on an empty tin used for tea samples, and wedged the tin and antenna onto the crank of a window. This was enough for the antenna to pick up satellites and reporting information via the cgps utility. To the left of the antenna, in this photo, an American quarter coin is shown to provide scale.&lt;br /&gt;
&lt;br /&gt;
===Connectors for NiMH Battery pack ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1/ Connector provided on Gallop43 for NiMH battery pack:&lt;br /&gt;
- Molex 5268 series #22-05-7025&lt;br /&gt;
&lt;br /&gt;
2/ Mating connector required on NiMH battery pack:&lt;br /&gt;
- Molex 5264 series #50-37-5023 &lt;br /&gt;
&lt;br /&gt;
===Coin Cell and NiMH Batteries===&lt;br /&gt;
&lt;br /&gt;
Coin cell and NiMH battery solutions have been posted [http://wiki.gumstix.org/index.php?title=Category:How_to_-_batteries here].&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Build_Environment_Ubuntu_8.10&amp;diff=6141</id>
		<title>Build Environment Ubuntu 8.10</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Build_Environment_Ubuntu_8.10&amp;diff=6141"/>
				<updated>2016-04-01T21:39:46Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This the current set-up for Ubuntu 8.10 with file modifications as described [http://gumstix.8.x6.nabble.com/Ubuntu-8-10-and-Open-Embeded-td645061.html on this thread]. gumstix-oe version is 318.&lt;br /&gt;
&lt;br /&gt;
== Setup Build Environment ==&lt;br /&gt;
1) Get Ubuntu linux 8.10, and install it on your computer; you can install a vmware version of Ubuntu too, but it will be slow during the building process.&lt;br /&gt;
&lt;br /&gt;
Reconfigure sh to point to bash, not dash:&lt;br /&gt;
&lt;br /&gt;
  sudo dpkg-reconfigure dash&lt;br /&gt;
&lt;br /&gt;
Answer no when asked whether you want to install dash as /bin/sh. &lt;br /&gt;
&lt;br /&gt;
2) Install (build-essential, help2man, diffstat, texi2html, texinfo, libncurses5-dev, cvs, gawk, python-dev, python-pysqlite2, python-psyco, ckermit, lrzsz, subversion) by using apt-get. i.e:&lt;br /&gt;
 sudo apt-get install build-essential help2man diffstat texi2html texinfo libncurses5-dev cvs gawk python-dev python-pysqlite2 python-psyco ckermit lrzsz subversion&lt;br /&gt;
&lt;br /&gt;
3) Download the source from svn, caching the source code&lt;br /&gt;
 mkdir ~/gumstix &lt;br /&gt;
 cd ~/gumstix &lt;br /&gt;
 &amp;lt;nowiki&amp;gt;svn co https://gumstix.svn.sourceforge.net/svnroot/gumstix/trunk gumstix-oe&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 cat gumstix-oe/extras/profile &amp;gt;&amp;gt; ~/.bashrc&lt;br /&gt;
 sudo groupadd oe&lt;br /&gt;
 sudo usermod -a -G oe YOUR_CURRENT_USERNAME&lt;br /&gt;
 sudo mkdir /usr/share/sources&lt;br /&gt;
 sudo chgrp oe /usr/share/sources&lt;br /&gt;
 sudo chmod 0775 /usr/share/sources&lt;br /&gt;
 sudo chmod ug+s /usr/share/sources&lt;br /&gt;
&lt;br /&gt;
4) Downgrade to gcc-4.1 and g++-4.1 and change the links:&lt;br /&gt;
&lt;br /&gt;
 sudo aptitude install gcc-4.1 g++-4.1&lt;br /&gt;
 sudo ln -sf /usr/bin/gcc-4.1 /usr/bin/gcc&lt;br /&gt;
 sudo ln -sf /usr/bin/g++-4.1 /usr/bin/g++&lt;br /&gt;
&lt;br /&gt;
Check the links are correct using:&lt;br /&gt;
&lt;br /&gt;
 ls -l /usr/bin/gcc&lt;br /&gt;
 ls -l /usr/bin/g++&lt;br /&gt;
&lt;br /&gt;
5) Log out and log in again.&lt;br /&gt;
&lt;br /&gt;
6) Build the basic image, it will fail with an error in dbus:&lt;br /&gt;
&lt;br /&gt;
 bitbake gumstix-basic-image&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;gumstix/gumstix-oe/tmp/work/i686-linux/dbus-native-1.0.1-r0/dbus-1.0.1/dbus/dbus-sysdeps-unix.c&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this struct,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
struct ucred { &lt;br /&gt;
   unsigned int pid; &lt;br /&gt;
   unsigned int uid; &lt;br /&gt;
   unsigned int gid; &lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after the macros.&lt;br /&gt;
&lt;br /&gt;
7) Build the basic image, it will fail with an error in sumversion:&lt;br /&gt;
&lt;br /&gt;
 bitbake gumstix-basic-image&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;gumstix/gumstix-oe/tmp/work/gumstix-custom-verdex-angstrom-linux-gnueabi/gumstix-kernel-2.6.21-r1/linux-2.6.21/scripts/mod/sumversion.c&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this line, &lt;br /&gt;
&lt;br /&gt;
  #include &amp;lt;limits.h&amp;gt; &lt;br /&gt;
&lt;br /&gt;
after all of the other includes.&lt;br /&gt;
&lt;br /&gt;
8) Build the basic image again, this time it should work:&lt;br /&gt;
&lt;br /&gt;
 bitbake gumstix-basic-image&lt;br /&gt;
&lt;br /&gt;
9) If everything builds ok, it could be a good idea to modify the dbus-sysdeps-unix.c and sumversion.c files is their respective packages in /usr/share/sources as otherwise everytime you do a rebuild they will be wiped.&lt;br /&gt;
&lt;br /&gt;
[[Category:How_to_-_general]]&lt;br /&gt;
[[Category:How_to_-_Ubuntu]]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Xenomai_-_Mini_Howto&amp;diff=6140</id>
		<title>Xenomai - Mini Howto</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Xenomai_-_Mini_Howto&amp;diff=6140"/>
				<updated>2016-04-01T21:38:48Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Xenomai ===&lt;br /&gt;
&lt;br /&gt;
The following quick guide gives a rough overview how I got Adeos &amp;amp; Xenomai (real-time extension for Linux) running on the verdex.&lt;br /&gt;
&lt;br /&gt;
=== Quick Install Guide ===&lt;br /&gt;
&lt;br /&gt;
==== Step 1: Gumstix OE setup ====&lt;br /&gt;
&lt;br /&gt;
At first, [https://github.com/gumstix/yocto-manifest/wiki setup the build environment].&lt;br /&gt;
&lt;br /&gt;
==== Step 2: Custom Configuration ====&lt;br /&gt;
&lt;br /&gt;
Download the [http://bitmux.org/downloads user.collection to build Xenomai for Gumstix OE]. Unpacking the file in the Gumstix OE root directory will give the following structure:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
user.collection&lt;br /&gt;
user.collection/conf&lt;br /&gt;
user.collection/conf/machine&lt;br /&gt;
user.collection/conf/machine/include&lt;br /&gt;
user.collection/packages&lt;br /&gt;
user.collection/packages/xenomai&lt;br /&gt;
user.collection/packages/xenomai/xenomai-2.4.6&lt;br /&gt;
user.collection/packages/linux&lt;br /&gt;
user.collection/packages/linux/gumstix-xenomai-kernel-2.6.24&lt;br /&gt;
user.collection/packages/linux/gumstix-xenomai-kernel-2.6.24/gumstix-custom-verdex&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Step 3: (Re-)build the kernel and system ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ bitbake gumstix-xenomai-kernel&lt;br /&gt;
$ bitbake -c rebuild task-base-gumstix&lt;br /&gt;
$ bitbake -c rebuild gumstix-basic-image&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Step 4: Images ====&lt;br /&gt;
&lt;br /&gt;
The kernel and root filesystem image can be found in &amp;lt;i&amp;gt;tmp/deploy/glibc/images&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Xenomai for verdex with Qemu ===&lt;br /&gt;
&lt;br /&gt;
It is also possible to run the real-time kernel within Qemu. However, it might be necessary to slow down the clock of the emulated system (Probably, as your host computer is too slow).&lt;br /&gt;
&lt;br /&gt;
The following steps can help:&lt;br /&gt;
&lt;br /&gt;
Alter the file &amp;lt;tt&amp;gt;hw/pxa2xx_timer.c&amp;lt;/tt&amp;gt; in the Qemu sources:&lt;br /&gt;
&lt;br /&gt;
1. Change all occurences of &amp;lt;tt&amp;gt;qemu_get_clock(vm_clock)&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;PXA2XX_QEMU_GET_CLOCK()&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Define the macro &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#define PXA2XX_QEMU_GET_CLOCK()     (qemu_get_clock(vm_clock) &amp;gt;&amp;gt; 4) /* also try 2,3 or use a divider */&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:How_to_-_general]]&lt;br /&gt;
[[Category:How_to_-_qemu]]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_Build_helloworld&amp;diff=6139</id>
		<title>Category:How to - Build helloworld</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_Build_helloworld&amp;diff=6139"/>
				<updated>2016-04-01T21:37:59Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
&lt;br /&gt;
What follows is a description for building C programs on a workstation using the cross-build tools of Yocto, but NOT USING the bitbake/recipe framework.&lt;br /&gt;
&lt;br /&gt;
For an alternative method USING the bitbake/recipe framework, a series of sample recipes can be found [[HelloWorld Examples | here]].&lt;br /&gt;
&lt;br /&gt;
==Setup==&lt;br /&gt;
&lt;br /&gt;
Follow the instructions for [https://github.com/gumstix/yocto-manifest/wiki setting up a build environment] to get the cross-build tools correctly installed.&lt;br /&gt;
&lt;br /&gt;
The tools are built under the TMPDIR directory declared in ${OVEROTOP}/build/conf/site.conf.&lt;br /&gt;
&lt;br /&gt;
TMPDIR defaults to ${OVEROTOP}/tmp, but you can point it somewhere else.&lt;br /&gt;
 &lt;br /&gt;
==Makefile==&lt;br /&gt;
&lt;br /&gt;
After you have built an image, the cross-tools will be installed on your workstation.&lt;br /&gt;
&lt;br /&gt;
You can now create a standard makefile for your project pointing to this cross-build toolchain.&lt;br /&gt;
&lt;br /&gt;
Here is a simple example for helloworld.&lt;br /&gt;
&lt;br /&gt;
 # Makefile for building with the OE cross tools &lt;br /&gt;
 #&lt;br /&gt;
 # OVEROTOP is normally ${HOME}/overo-oe &lt;br /&gt;
 #&lt;br /&gt;
 # OETMP is the same as TMPDIR as defined in ${OVEROTOP}/build/conf/site.conf&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 OETMP = ${OVEROTOP}/tmp&lt;br /&gt;
 &lt;br /&gt;
 # There were some OE toolchain path changes recently&lt;br /&gt;
    &lt;br /&gt;
 # OE prior to around 30July2010 &lt;br /&gt;
 # TOOLDIR = ${OETMP}/cross/armv7a/bin&lt;br /&gt;
 # STAGEDIR = ${OETMP}/staging/armv7a-angstrom-linux-gnueabi/usr&lt;br /&gt;
    &lt;br /&gt;
 # OE after 30July2010&lt;br /&gt;
 TOOLDIR = ${OETMP}/sysroots/`uname -m`-linux/usr/armv7a/bin&lt;br /&gt;
 STAGEDIR = ${OETMP}/sysroots/armv7a-angstrom-linux-gnueabi/usr&lt;br /&gt;
 &lt;br /&gt;
 CC = ${TOOLDIR}/arm-angstrom-linux-gnueabi-gcc&lt;br /&gt;
 &lt;br /&gt;
 CFLAGS = -Wall  &lt;br /&gt;
 &lt;br /&gt;
 LIBDIR = ${STAGEDIR}/lib&lt;br /&gt;
 &lt;br /&gt;
 INCDIR = ${STAGEDIR}/include      &lt;br /&gt;
  &lt;br /&gt;
 TARGET = helloworld&lt;br /&gt;
 &lt;br /&gt;
 OBJS = helloworld.o &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 ${TARGET} : $(OBJS)&lt;br /&gt;
         ${CC} ${CFLAGS} ${OBJS} -L ${LIBDIR} -o ${TARGET}&lt;br /&gt;
 &lt;br /&gt;
 helloworld.o: helloworld.c &lt;br /&gt;
         ${CC} ${CFLAGS} -I ${INCDIR} -c helloworld.c  &lt;br /&gt;
 &lt;br /&gt;
 clean:&lt;br /&gt;
         rm -f ${TARGET} ${OBJS} *~&lt;br /&gt;
&lt;br /&gt;
==Distribute==&lt;br /&gt;
&lt;br /&gt;
After building with make, copy the resulting target executable to the overo.&lt;br /&gt;
&lt;br /&gt;
Here are some alternatives.&lt;br /&gt;
&lt;br /&gt;
1. If you are using [http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Creating-a-bootable-microSD-card/111.html a microSD card], copy your executable to the rootfs before you unmount it in the final step.&lt;br /&gt;
&lt;br /&gt;
2. If you have a network connection to the overo, use scp.&lt;br /&gt;
&lt;br /&gt;
==Only the Tools==&lt;br /&gt;
&lt;br /&gt;
You don't need to build a complete image to get the cross-tools.&lt;br /&gt;
&lt;br /&gt;
If you only want to cross compile a C program without third-party dependencies, then you can build just the gcc-cross recipe.&lt;br /&gt;
&lt;br /&gt;
 bitbake gcc-cross&lt;br /&gt;
&lt;br /&gt;
You can use OE to selectively build additional cross-compiled libraries as needed. Look around in the OE recipes folder.&lt;br /&gt;
&lt;br /&gt;
If you build a complete image, then most of the cross-build tools and libraries will get installed as as side-effect. That is probably the easiest way to setup your workstation the first time.&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=I%C2%B2C&amp;diff=6138</id>
		<title>I²C</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=I%C2%B2C&amp;diff=6138"/>
				<updated>2016-04-01T21:35:24Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;I2C on Verdex Pro and earlier COMs&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:100px;background:darkgoldenrod;&amp;quot; | I2C_SDA || I²C Data (Serial data/address bus)&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background:darkgoldenrod;&amp;quot; | I2C_SCL || I²C Clock (Serial clock)&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background:grey;&amp;quot; | GND || Ground&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Logic level (3.3V) signals&lt;br /&gt;
* 400 kbps Fast mode&lt;br /&gt;
* 100 kbps Standard mode&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The I²C bus uses 3 signals, '''I2C_SDA''', '''I2C_SCL''', and '''GND''' (ground), all of which are present on the [http://www.gumstix.net/Hardware/view/I/O-connectors-cabling/Gumstix-Verdex-Pro-Verdex-Connex-Basix-60-pin-connector/112.html 60-pin Hirose], [http://www.gumstix.net/Hardware/view/I/O-connectors-cabling/Gumstix-Verdex-120-pin-connector/112.html 120-pin MOLEX] (Verdex COMs only) and [http://www.gumstix.net/Hardware/view/I/O-connectors-cabling/Gumstix-Verdex-Pro-24-pin-flex-connector/112.html 24-pin flex ribbon] (Verdex Pro only) connectors. Some daughter cards allow the I²C signals to be accessed directly.&lt;br /&gt;
&lt;br /&gt;
Note that some older versions of the Breakout board have pins labeled incorrectly. See the [http://docwiki.gumstix.org/Breakout breakout page] for more details.&lt;br /&gt;
&lt;br /&gt;
On the robostix board, pin 12 on the UARTS connector is SDA, and pin 16 is SCL. These are both 5v signals and have pullup resistors.&lt;br /&gt;
&lt;br /&gt;
On the Tweener, pin 19 on the hirose connector is SDA, and pin 20 is SCL. The [[JTAG]] connector page has a photo of the hirose connector. The TDO pin shown in the photo is pin 22. The via to the left under the T is pin 21, the one under the O is pin 20, and the one under the D is 19. These are all 3.3v signals and don't have any pullup resistors. &lt;br /&gt;
&lt;br /&gt;
On the back of the waysmall board, amongst the set of 20 pads, the pad closest to the edge of the board and the power connector is the SDA signal, and the one next to it (also by the edge of the board) is the SCL signal. These are both 3.3v signals and don't have any pullup resistors. The waysmall board has a 3.3v regulator on it, just to the left of the power connector. It has LW33 stamped on it. The pin below the 3 (in LW33) is the 3.3v output (see the [[JTAG]] connector page which identifies the Vcc pin on the same type of regulator used on the Tweener).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Pullup resistors ==&lt;br /&gt;
&lt;br /&gt;
The I2C bus requires pullup resistors on the '''I2C_SDA''' and '''I2C_SCL''' lines. The [http://www.semiconductors.philips.com/acrobat/literature/9398/39340011.pdf I2C specification] gives some charts for min and max values (see page 39 and 40). For a 5v or 3.3v bus, the minimum pullup resistance should be around 2k ohms. A typical value to use would be 4.7k ohms.&lt;br /&gt;
&lt;br /&gt;
All of the current daughter cards (except the robostix), need to have pullup resistors added, which pullup the SDA and SCL lines to 3.3v levels.&lt;br /&gt;
&lt;br /&gt;
If you use a robostix, the 3.3v pullup resistors are already included. The SDA and SCL lines on the UARTS connector are at 5v levels, and also have pullup resistors on the robostix board.&lt;br /&gt;
&lt;br /&gt;
== Related ==&lt;br /&gt;
&lt;br /&gt;
[http://www.nxp.com/acrobat_download/literature/9398/39340011.pdf The I²C Bus Specification V.2.1, Philips Semiconductors]&lt;br /&gt;
&lt;br /&gt;
-----------------------------&lt;br /&gt;
[[Category:Literature]]&lt;br /&gt;
&lt;br /&gt;
[[Category:How_to_-_i2c]]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_DSP&amp;diff=6137</id>
		<title>Category:How to - DSP</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_DSP&amp;diff=6137"/>
				<updated>2016-04-01T21:34:33Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 2009 ==&lt;br /&gt;
&lt;br /&gt;
===Pixhawk DSP code for Overo Water COM===&lt;br /&gt;
&lt;br /&gt;
A student team supported by the [http://www.cvg.ethz.ch/ Computer Vision and Geometry Lab] at the Computer Science Department of ETH Zurich is developing an autonomous micro helicopter named [http://pixhawk.ethz.ch PIXHAWK]. &lt;br /&gt;
The PIXHAWK Gumstix Computer Vision system is leveraging the DSP of the OMAP3530 Gumstix Overo Water computer-on-module. &lt;br /&gt;
&lt;br /&gt;
This led to the [http://pixhawk.ethz.ch/blog/dsp_running_on_gumstix_overo_water first DSP code ever running on a Gumstix] single board computer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Pixhawk Tutorials for DSP====&lt;br /&gt;
&lt;br /&gt;
1. [http://pixhawk.ethz.ch/tutorials/omap/dsplink DSP Link]&lt;br /&gt;
&lt;br /&gt;
2. [http://pixhawk.ethz.ch/tutorials/omap/dsp_toolchain DSP Toolchain]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=How_to_connect_Palo35&amp;diff=6136</id>
		<title>How to connect Palo35</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=How_to_connect_Palo35&amp;diff=6136"/>
				<updated>2016-04-01T21:34:04Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: /* The Palo35 LCD Connector */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==The Palo35 LCD Connector==&lt;br /&gt;
Pull up the black lock mechanism of the LCD connector on the Palo35 (it rotates up), insert the flexible printed circuit from the LCD display into the connector, and finally push the black mechanism down to lock connector.  The orientation of the display relative to the board during installation is the same as shown in the Palo43 LCD installation.&lt;br /&gt;
&lt;br /&gt;
The lock is on the opposite side, and the mechanism is different from the Palo43.  Instead of &amp;quot;pulling it out&amp;quot; like in the palo43, you have to pull the lock away from the board (i.e., up if the board is laying flat on a table).  The lock hinges on the sides and rotates up.  Once it is up you can insert the FPC cable on the other side of the connector, and it does require some force to get it in.  Try holding the FPC cable against the board while pushing it in to prevent it from flexing.  Pushing the lock down once the FPC cable is in requires some force.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Connect_hardware]]&lt;br /&gt;
[[Category:How_to_-_LCD]]&lt;br /&gt;
[[Category:How_to_-_displays]]&lt;br /&gt;
[[Category:How_to_-_expansion_boards]]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=How_to_connect_Palo43&amp;diff=6135</id>
		<title>How to connect Palo43</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=How_to_connect_Palo43&amp;diff=6135"/>
				<updated>2016-04-01T21:33:17Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Gumstix has made a set of videos about the Overo series as [[https://www.gumstix.com/applications/product-videos/ posted here]]. Look for a video explaining the features of the Palo43 board and another video showing how to connect a flex connector to the Palo43 board.&lt;br /&gt;
&lt;br /&gt;
Beatcraft has posted [[http://labs.beatcraft.com/en/index.php?DIY%20Electronics%20/%20overo%20%2B%207inch%20TFT-LCD this article]] that explains how to connect a Gumstix Overo COM to Samsung's 7-inch TFT-LCD (800 x 480 x 24bit color). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Connect_hardware]]&lt;br /&gt;
[[Category:How_to_-_LCD]]&lt;br /&gt;
[[Category:How_to_-_displays]]&lt;br /&gt;
[[Category:How_to_-_expansion_boards]]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Verdex_Git_Repository&amp;diff=6134</id>
		<title>Verdex Git Repository</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Verdex_Git_Repository&amp;diff=6134"/>
				<updated>2016-04-01T21:32:26Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: /* Problems? Improvements? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;An experimental version of the OpenEmbedded (OE) repository is available for the Verdex.  This repository brings a more recent Linux kernel (2.6.31) to Verdex compared with those available in the older Subversion (SVN) repository.  As well, the most recent code from the OE repository is now available for Verdex-Pro COMs and the building process reflects that used on the Overo boards.&lt;br /&gt;
&lt;br /&gt;
'''Disclaimers''':&lt;br /&gt;
# This repository is unstable and the kernel may be missing features---use at your own risk.&lt;br /&gt;
# U-Boot has not yet been updated and the default kernels are larger than 1MB so flashing them to memory won't work.  You'll need to run off a microSD card.&lt;br /&gt;
#* The point above is no longer strictly true.  U-Boot 1.2.0 has been moved from the old gumstix-buildroot repository so it is possible to build and test. See [http://old.nabble.com/Buildable-U-boot-available-for-VerdexPRO-td28298831.html this thread] for more information.&lt;br /&gt;
&lt;br /&gt;
==The Straight Dope==&lt;br /&gt;
Follow the basic instructions for setting up an [http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Setting-up-a-build-environment/111.html OE repository for Overo] but replace this instruction:&lt;br /&gt;
 $ git checkout --track -b overo origin/overo&lt;br /&gt;
 $ git checkout --track -b verdex origin/verdex&lt;br /&gt;
&lt;br /&gt;
Your repository will now be tracking the Verdex branch of the Gumstix OE Git repository.&lt;br /&gt;
Your machine type should be &amp;lt;tt&amp;gt;gumstix-verdex&amp;lt;/tt&amp;gt; set in ''build/conf/auto.conf''&lt;br /&gt;
&lt;br /&gt;
Four images are available:&lt;br /&gt;
* verdex-console-image&lt;br /&gt;
* verdex-palmtop-image&lt;br /&gt;
* verdex-desktop-image&lt;br /&gt;
* verdex-gnome-image&lt;br /&gt;
&lt;br /&gt;
==Step by Step==&lt;br /&gt;
These instructions assume you are using a recent release of Ubuntu where you have ''sudo'' permissions.  For information about installing OpenEmbedded on other distributions, see [http://wiki.openembedded.net/index.php?title=OEandYourDistro here].&lt;br /&gt;
&lt;br /&gt;
# Configure your system and get required and recommended software packages.&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ sudo apt-get update&amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ sudo apt-get install -y git-core subversion build-essential help2man diffstat texi2html texinfo libncurses5-dev cvs gawk python-dev python-pysqlite2 unzip python-psyco&amp;lt;/pre&amp;gt; &lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ sudo ln -sf bash /bin/sh &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ sudo sh -c 'echo -e &amp;quot;vm.vdso_enabled=0\nvm.mmap_min_addr=0&amp;quot; &amp;gt;&amp;gt; /etc/sysctl.conf' &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ sudo sysctl -p &amp;lt;/pre&amp;gt;&lt;br /&gt;
# Download the Verdex repository and the bitbake tool into a ''verdex-oe'' directory in your home folder.&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ mkdir -p ~/verdex-oe &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ cd ~/verdex-oe &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ git clone git://gitorious.org/gumstix-oe/mainline.git org.openembedded.dev &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ cd org.openembedded.dev &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ git checkout --track -b verdex origin/verdex &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ cd ~/verdex-oe &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ git clone git://git.openembedded.org/bitbake bitbake &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ cd bitbake &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ git checkout 1.8.18 &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ cd ~/verdex-oe &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ cp -r org.openembedded.dev/contrib/gumstix/build . &amp;lt;/pre&amp;gt;&lt;br /&gt;
# Set up the environment variables.  You can do this manually each time you open a terminal:&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ source ~/verdex-oe/build/profile&amp;lt;/pre&amp;gt;&lt;br /&gt;
#:Or set your ''.bash_profile'' to load them automatically every time you open a console.&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ cat ~/verdex-oe/build/profile &amp;gt;&amp;gt; ~/.bash_profile &amp;lt;/pre&amp;gt;&lt;br /&gt;
#(Optional) Some tweaks...&lt;br /&gt;
#* If you are building on a multi-core machine, uncomment the &amp;lt;tt&amp;gt;PARALLEL_MAKE&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;BB_NUMBER_THREADS&amp;lt;/tt&amp;gt; variables in the ''~/verdex-oe/build/conf/site.conf'' file.  Some people recommend setting these variables to &amp;lt;tt&amp;gt;n-1&amp;lt;/tt&amp;gt; where &amp;lt;tt&amp;gt;n&amp;lt;/tt&amp;gt; is the number of threads contexts or cores you have.&lt;br /&gt;
#* If you have already downloaded much of the required source code for OE (i.e. you use OpenEmbedded already for another machine like Overo or via the older SVN repository), point bitbake to your old sources directory by editing the &amp;lt;tt&amp;gt;DL_DIR&amp;lt;/tt&amp;gt; in the ''~/verdex-oe/build/conf/site.conf''&lt;br /&gt;
#* Create a symbolic link into the directory where the verdex images will be built for easy access.&lt;br /&gt;
#*:&amp;lt;pre&amp;gt;$ ln -sf ~/verdex-oe/tmp/deploy/glibc/images/gumstix-verdex/ ~/verdex-oe/images&amp;lt;/pre&amp;gt;&lt;br /&gt;
#* Get rid of a warning about a missing user.collection directory.  Either make a user.collections/recipes directory&lt;br /&gt;
#*:&amp;lt;pre&amp;gt;$ mkdir -p ~/verdex-oe/user.collection/recipes&amp;lt;/pre&amp;gt;&lt;br /&gt;
#*:Or, untar the Open Embedded 'helloworld' tutorial [[HelloWorld Examples| tutorial]] which may be useful if you want to learn more about OE.  See [http://docs.openembedded.org/usermanual/usermanual.html#recipes_helloworld_example this page] for more details.&lt;br /&gt;
#*:&amp;lt;pre&amp;gt;$ tar -xzf myhelloworld.tar.gz -C ~/verdex-oe&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now you are set to build a new kernel and root file system. Note, this step may take up to 6 hours depending on your internet connection and your machine. This build will stop if there are any errors. This could be useful for build debugging as well.&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ bitbake verdex-console-image&amp;lt;/pre&amp;gt;&lt;br /&gt;
#: Note: The ''-k'' argument can be used to tell bitbake to continue building despite errors; it is useful for long, unattended builds.&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ bitbake -k verdex-console-image&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Create a microSD card with a small (50MB is more than large enough) FAT partition and an Ext3 partition large enough to hold your untarred root file system. See [http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Creating-a-bootable-microSD-card/111.html this page] for instructions.  Note: It isn't necessary to follow the '''Installing the Boot Files''' instructions.&lt;br /&gt;
# Remount the card. This assumes ''/dev/sde1'' is the FAT partition and ''/dev/sde2'' is the Ext3 partition.&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ sudo mkdir /media/card_fat &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ sudo mkdir /media/card_ext &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ sudo mount /dev/sde1 /media/card_fat &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ sudo mount /dev/sde2 /media/card_ext &amp;lt;/pre&amp;gt;&lt;br /&gt;
#Copy your kernel to the FAT partition of the microSD and untar your rootfs to the Ext3 partition. Also, we've assumed you've created a symbolic link to called images to the directory where the images are located as described in the optional steps above.&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ sudo cp ~/verdex-oe/images/uImage-gumstix-verdex-bin /media/card_fat/uimage &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;$ sudo tar -xzf ~/verdex-oe/images/verdex-console-image-verdex.tar.gz -C /media/card_ext/ &amp;lt;/pre&amp;gt;&lt;br /&gt;
# Insert your microSD into your Verdex and boot it.  By default, the ''gumstix-factory-script'' will try to boot from a microSD card but if your new kernel isn't loading, interrupt U-Boot on startup and issue the following commands.&lt;br /&gt;
#:&amp;lt;pre&amp;gt;&amp;gt; mmcinit &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;&amp;gt; fatload mmc 0 a2000000 uimage &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;&amp;gt; setenv bootargs console=ttyS0,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1 &amp;lt;/pre&amp;gt;&lt;br /&gt;
#:&amp;lt;pre&amp;gt;&amp;gt; bootm a2000000&amp;lt;/pre&amp;gt;&lt;br /&gt;
#:Note, unless you &amp;lt;tt&amp;gt;saveenv&amp;lt;/tt&amp;gt;, you'll need to do this each time you boot.&lt;br /&gt;
&lt;br /&gt;
==Future Plans==&lt;br /&gt;
Once this repository has become more stable, it will supersede the older SVN repository as the main source of code for the Verdex COMs.  This should include updated kernels and U-Boot as well as updated OE code pulled from (and eventually merged into) the Overo branch. Documentation will be refined based on this wiki page.&lt;br /&gt;
&lt;br /&gt;
==Problems? Improvements?==&lt;br /&gt;
* bug reports and, better yet, bug fixes are always welcome.  Send mail to the Gumstix users mailing list.&lt;br /&gt;
* make changes to this wiki page to highlight known issues and suggest improvements.&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=VerdexPro_U-Boot_Flashing_Fix&amp;diff=6133</id>
		<title>VerdexPro U-Boot Flashing Fix</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=VerdexPro_U-Boot_Flashing_Fix&amp;diff=6133"/>
				<updated>2016-04-01T21:31:50Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: /* Notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Q3 2011 UPDATE ==&lt;br /&gt;
As of August 29th 2011, newly patched version of u-boot for Verdex XL6P has been created; this version works around the Block Lock Protection silicon errata while still using 'buffered write' mode hence it doesn't exhibit the same slowdowns.  The discussion below, excepting the notes about slow write speed, still applies.  The code has been pushed to the git source link and the binary file is available [http://dl.dropbox.com/u/211887/u-boot-verdex-600.1604G.bin here].&lt;br /&gt;
 MD5sum: c6e9042f090818534646f6779277f583&lt;br /&gt;
&lt;br /&gt;
== PKI 2010-3 (Product Known Issue) ==&lt;br /&gt;
Gumstix created Known Issue PKI 2010-3 in September 2010 because the Numonyx NOR flash memory that Gumstix installed on a small quantity of Verdex Pro XL6P COMs in August 2010 showed errors when written from u-boot.&lt;br /&gt;
&lt;br /&gt;
See Gumstix PKI 2010-3 posted [http://www.gumstix.net/Hardware/cat/Known-issues/112.html#faq206 here].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Symptoms ===&lt;br /&gt;
This faulty Numonyx NOR flash memory report errors when written from u-boot; this is due to an error in the Numonyx NOR flash memory itself.&lt;br /&gt;
&lt;br /&gt;
Usually, users discover this problem when trying to replace the [http://www.gumstix.net/Setup-and-Programming/view/Getting-started/Replacing-the-file-system-image/111.html file system image].  U-boot might report any or all of these message after a copy to flash command:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 GUM&amp;gt; '''cp.b a2000000 40000 ${filesize}'''&lt;br /&gt;
 Flash buffer write error at address 40000&lt;br /&gt;
 Command Sequence Error.&lt;br /&gt;
 Block locked.&lt;br /&gt;
 Vpp Low Error.&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Affected Parts ===&lt;br /&gt;
Verdex Pro XL6P COMs of build R2635 with Numonyx NOR flash memory (U$2) marked 256PF30TF as opposed to 256PF30T likely have this fault.  Note, not all memory pages in the flash memory are necessarily affected.  More details about affected parts can be found [http://www.gumstix.net/Hardware/cat/Known-issues/112.html#faq206 here].  &lt;br /&gt;
&lt;br /&gt;
While any software that modifies the block protection status of the Numonyx NOR flash memory is potentially susceptible to this hardware bug, we have only noticed the issue in u-boot.&lt;br /&gt;
&lt;br /&gt;
===Resolution===&lt;br /&gt;
&lt;br /&gt;
Gumstix Engineering developed a software fix so that the Verdex Pro XL6P COMs built with this NOR flash memory can become functional. &lt;br /&gt;
&lt;br /&gt;
All verdex pro XL6P COMs shipped by Gumstix have this U-boot flashing fix, at this time. &lt;br /&gt;
&lt;br /&gt;
Note that a customer planning to reflash u-boot on the NOR flash of a Verdex Pro XL6P COM with a different root file system must apply this flashing fix.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
By following the information below, a user can install a new version of u-boot to the NOR Flash memory.&lt;br /&gt;
&lt;br /&gt;
Please note that this fix &amp;lt;b&amp;gt;slows down writes to flash within u-boot by a factor of 20&amp;lt;/b&amp;gt;  Note that this fix does NOT affect write performance in Linux.&lt;br /&gt;
&lt;br /&gt;
Until further testing and customer feedback is received, this resolution is NOT considered to be a final answer to PKI 2010-3 by Gumstix.&lt;br /&gt;
&lt;br /&gt;
=== Fix Details ===&lt;br /&gt;
&lt;br /&gt;
The manufacturer [http://www.numonyx.com/Documents/Specification%20Updates/509003_P3X_65nm_3V_256Mbit_Discrete.pdf notes] that the block protection status is incorrectly set when software tries to unlock a flash block.  By changing the block locking command sequence as shown in this [http://git.denx.de/?p=u-boot/u-boot-cfi-flash.git;a=commit;h=54652991caedc39b2ec2e5b49e750669bfcd1e2e fix], the silicon behaves correctly.  In addition, it is necessary to disable the buffered write mode; '''this slows down writes to flash within u-boot by a factor of 20.'''&lt;br /&gt;
This [http://dl.dropbox.com/u/211887/numonyx-256P30TF.patch patch] applies against Verdex Pro u-boot revision 1.2.0.&lt;br /&gt;
&lt;br /&gt;
As an FYI, unless you need to change the software running in flash memory, it is not necessary to apply this fix---it only affects re-flashing code in u-boot.&lt;br /&gt;
&lt;br /&gt;
=== Usage ===&lt;br /&gt;
Caveats:&lt;br /&gt;
* Installing a new version of u-boot to your Flash memory is risky and, if not done correctly, can result in your Verdex Pro XL6P COM being bricked. Proceed with caution.&lt;br /&gt;
* This fix will slow down writes to flash within u-boot by a factor of 20&lt;br /&gt;
&lt;br /&gt;
Download a patched version of u-boot. Most users will want the standard u-boot; for those using the git repository or having a kernel larger than 1MB might want the large kernel version ([http://old.nabble.com/Buildable-U-boot-available-for-VerdexPRO-td28298831.html see] for more details).&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
! Note !! File !! MD5 &lt;br /&gt;
|-&lt;br /&gt;
| Standard (katload 100000) || [http://dl.dropbox.com/u/211887/u-boot-verdex600-256P30TF-standard.bin u-boot.bin] || 8f7f905549cd3ba7f2e6a755395e7e16&lt;br /&gt;
|-&lt;br /&gt;
| Large Kernel (katload 160000) || [http://dl.dropbox.com/u/211887/u-boot-verdex600-256P30TF.bin u-boot.bin] || 55e999c2bb21a5b963473f213c3911cc&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Follow the instructions [http://www.gumstix.net/Setup-and-Programming/view/Developer-how-to-s/Reflashing-using-a-serial-connection/111.html here] to get a serial connection to your Verdex Pro XL6P COM.&lt;br /&gt;
&lt;br /&gt;
Type these commands to load the new u-boot to RAM and jump to it.  This new u-boot will allow you to write to NAND:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 GUM&amp;gt; '''loadb a2000000'''&lt;br /&gt;
 '''CTRL+\, c'''&lt;br /&gt;
 C-Kermit&amp;gt; '''send u-boot.bin''' (this should be the file you downloaded)&lt;br /&gt;
 ...tranfer for about 20 seconds...&lt;br /&gt;
 C-Kermit&amp;gt; '''connect'''&lt;br /&gt;
 GUM&amp;gt; '''go a2000000'''&lt;br /&gt;
 U-Boot 1.2.0 (Oct  6 2010 - 00:42:27) - PXA270@600 MHz - &lt;br /&gt;
 &lt;br /&gt;
 *** Welcome to Gumstix ***&lt;br /&gt;
 &lt;br /&gt;
 DRAM:  128 MB&lt;br /&gt;
 Flash: 32 MB&lt;br /&gt;
 Using default environment&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Hit a key to interrupt u-boot and then proceed by testing that your new u-boot is working correctly by writing to a non-boot partitions. For example,&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 GUM&amp;gt; '''protect off 1:2-3'''&lt;br /&gt;
 Un-Protect Flash Sectors 2-3 in Bank # 1&lt;br /&gt;
 .. done&lt;br /&gt;
 GUM&amp;gt; '''erase 1:2-3'''&lt;br /&gt;
 Erase Flash Sectors 2-3 in Bank # 1 &lt;br /&gt;
 .. done&lt;br /&gt;
 GUM&amp;gt; '''loadb a2000000'''&lt;br /&gt;
 '''CTRL+\, c'''&lt;br /&gt;
 C-Kermit&amp;gt; '''send u-boot.bin''' (this should be the file you downloaded)&lt;br /&gt;
 ...tranfer for about 20 seconds...&lt;br /&gt;
 C-Kermit&amp;gt; '''connect'''&lt;br /&gt;
 GUM&amp;gt; '''cp.b a2000000 40000 ${filesize}'''&lt;br /&gt;
 Copy to Flash... done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
If everything went smoothly in the previous step, the new uboot is working.  Let's ''carefully'' reflash the boot partition with the same steps but for sector 1:0-1 (0x0) rather than sector 1:2-3 (0x00040000):&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 GUM&amp;gt; '''protect off 1:0-1'''&lt;br /&gt;
 Un-Protect Flash Sectors 0-1 in Bank # 1&lt;br /&gt;
 .. done&lt;br /&gt;
 GUM&amp;gt; '''erase 1:0-1'''&lt;br /&gt;
 Erase Flash Sectors 0-1 in Bank # 1 &lt;br /&gt;
 .. done&lt;br /&gt;
 GUM&amp;gt; '''loadb a2000000'''&lt;br /&gt;
 '''CTRL+\, c'''&lt;br /&gt;
 C-Kermit&amp;gt; '''send u-boot.bin''' (this should be the file you downloaded)&lt;br /&gt;
 ...tranfer for about 20 seconds...&lt;br /&gt;
 C-Kermit&amp;gt; '''connect'''&lt;br /&gt;
 GUM&amp;gt; '''cp.b a2000000 0 ${filesize}'''&lt;br /&gt;
 Copy to Flash... done&lt;br /&gt;
 GUM&amp;gt; '''reset'''&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
The Verdex Pro XL6P COM should now boot into the new u-boot and the ''protect'', ''erase'', and ''cp.b'' commands should behave correctly albeit slowly.&lt;br /&gt;
&lt;br /&gt;
== Source ==&lt;br /&gt;
A git repository containing the modified Verdex u-boot source code is available on GitHub. You would fetch and compile u-boot using these commands:&lt;br /&gt;
 $ git clone git://github.com/ashcharles/verdex-uboot.git&lt;br /&gt;
 $ cd verdex-uboot&lt;br /&gt;
(assuming you are using the OE cross-compiler. Change the path as&lt;br /&gt;
appropriate.  Note: some gcc-4.5 arm cross-compilers (gnuarm, linaro&lt;br /&gt;
and Android in my case) fail with this bug&lt;br /&gt;
https://bugs.launchpad.net/ubuntu/+source/gcc-4.5-armel-cross/+bug/662887)&lt;br /&gt;
 $ export PATH=/home/openembedded/tmp/sysroots/i686-linux/usr/armv5te/bin/:$PATH&lt;br /&gt;
 $ export ARCH=arm&lt;br /&gt;
 $ export CROSS_COMPILE=arm-angstrom-linux-gnueabi-&lt;br /&gt;
 $ make gumstix_config&lt;br /&gt;
 $ make -j8&lt;br /&gt;
&lt;br /&gt;
You should now have u-boot.bin available.&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_Low_Power&amp;diff=6132</id>
		<title>Category:How to - Low Power</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_Low_Power&amp;diff=6132"/>
				<updated>2016-04-01T21:31:24Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: /* Relevant Community Mailing List Threads */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Status==&lt;br /&gt;
This page is a work in progress. Many users are running Gumstix COMs in power sensitive applications and need to reduce power consumption as much as possible. This page is being developed by the Gumstix community as the steps are learned for reducing power.&lt;br /&gt;
&lt;br /&gt;
===Relevant Community Mailing List Threads===&lt;br /&gt;
[http://gumstix.8.x6.nabble.com/sample-numbers-for-Overo-Earth-power-consumption-td661334.html sample numbers for Overo Earth COM power consumption]&lt;br /&gt;
&lt;br /&gt;
[http://gumstix.8.x6.nabble.com/Building-a-linux-omap3-pm-for-Overo-td641140.html Building a linux omap3 pm for Overo]&lt;br /&gt;
&lt;br /&gt;
[http://gumstix.8.x6.nabble.com/cpufreq-on-the-Overo-td593942.html cpufreq on the Overo]&lt;br /&gt;
&lt;br /&gt;
==Background==&lt;br /&gt;
The default omap3 openembedded build does not provide an optimal setup for power reduction on Gumstix Overo COMS.  In order to achieve the lowest power possible for your application, you have to perform a combination of the following:&lt;br /&gt;
&lt;br /&gt;
* Use the latest OMAP Power Management (pm) kernel branch&lt;br /&gt;
* Enable power saving features such as sleep when idle, off mode, and dvfs&lt;br /&gt;
* Disable internal OMAP devices&lt;br /&gt;
* Hold unused external chips such as USB, Wifi, Bluetooth, etc. in reset&lt;br /&gt;
* Turn off unused LEDs&lt;br /&gt;
&lt;br /&gt;
==PM Kernel==&lt;br /&gt;
The [http://elinux.org/OMAP_Power_Management PM kernel] is a development branch of the linux-omap kernel focused on developing the power management features of OMAP.  By default, openembedded does not use the PM kernel, but instead uses the mainstream linux-omap kernel. Some of the changes of the PM branch have been merged to the mainstream linux-omap branch.  However, not all changes have been merged so you must manually configure openembedded to use the PM kernel to get the most power savings possible.&lt;br /&gt;
&lt;br /&gt;
===2.6.39 PM Kernel===&lt;br /&gt;
Steve Sakoman has recently provided the 2.6.39 PM kernel with gumstix specific patches.  This is the preferred kernel to use although no future PM changes will be back ported to this kernel.  Steve will only maintain gumstix specific fixes for this kernel.&lt;br /&gt;
&lt;br /&gt;
First download the custom PM recipes from [http://iconux.org/files/oe/user.collection.tar.gz here] and extract the archive to your over-oe directory.&lt;br /&gt;
&lt;br /&gt;
'''Note:'''  If you have an existing user.collection in your overo-oe directory, you may want to back it up before extracting this archive.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If you plan to use USB, then you will need to comment out the usb_off patch in the linux-omap-pm_2.6.39.bb recipe.&lt;br /&gt;
&lt;br /&gt;
To enable the PM kernel edit the file&lt;br /&gt;
 org.openembedded.dev/conf/machine/overo.conf&lt;br /&gt;
and change the line &lt;br /&gt;
 PREFERRED_PROVIDER_virtual/kernel = &amp;quot;linux-omap3&amp;quot;&lt;br /&gt;
to&lt;br /&gt;
 PREFERRED_PROVIDER_virtual/kernel = &amp;quot;linux-omap-pm&amp;quot;&lt;br /&gt;
Save the changes and then run bitbake to build the kernel.&lt;br /&gt;
&lt;br /&gt;
 $ bitbake -b user.collection/recipes/linux/linux-omap-pm_2.6.39.bb&lt;br /&gt;
Or simply run&lt;br /&gt;
 $ bitbake virtual/kernel&lt;br /&gt;
and bitbake should use the new linux-omap-pm_2.6.39.bb recipe automatically.&lt;br /&gt;
&lt;br /&gt;
You may get an error saying it can't download the tar archive but it should fallback to pulling the source using git.  This step will take a while since the pm git is over 400 MB.&lt;br /&gt;
&lt;br /&gt;
If the kernel builds fine, you can build your image normally.&lt;br /&gt;
 $ bitbake omap3-console-image&lt;br /&gt;
&lt;br /&gt;
Once you install the new build to your micro sd card, you need to make changes for the new kernel. The new kernel uses ttyO2 as the serial port instead of ttyS2. To make the changes,cd to the Gumstix os partition on your micro sd, and do the following:&lt;br /&gt;
* Edit &amp;lt;path to mcirosd rootfs&amp;gt;/etc/inittab and change ttyS2 to ttyO2&lt;br /&gt;
* Make a &amp;quot;node&amp;quot; in dev for ttyO2&lt;br /&gt;
 $ mknod -m 660 &amp;lt;path to mcirosd rootfs&amp;gt;/dev/ttyO2 c 4 66&lt;br /&gt;
* On bootup, execute these commands from the uboot command line (assumes your uboot and xload are setup previously)&lt;br /&gt;
 mmc init&lt;br /&gt;
 setenv console ttyO2,115200n8&lt;br /&gt;
 saveenv (run only if you want to save the new console setting)&lt;br /&gt;
 run loaduimage&lt;br /&gt;
 run mmcboot&lt;br /&gt;
&lt;br /&gt;
You should now boot into your new kernel. Follow the instructions in the sections below to use PM features.&lt;br /&gt;
 &lt;br /&gt;
==PM Features==&lt;br /&gt;
For a full list of PM features see [http://elinux.org/OMAP_Power_Management OMAP Power Management].  The features listed here are the most common needed to reduce power.&lt;br /&gt;
&lt;br /&gt;
===Setup Debug FS===&lt;br /&gt;
If you are using any kernel higher than 2.6.29 (PM or standard kernel), then before you can enable PM features, you need to setup the debug file system for manipulating pm configuration.&lt;br /&gt;
 mkdir /debug&lt;br /&gt;
 mount -t debugfs debugfs /debug&lt;br /&gt;
&lt;br /&gt;
===Sleep While Idle===&lt;br /&gt;
Next, enable &amp;quot;sleep while idle&amp;quot;. This will allow the processor to attempt deeper sleep states when idle. You must also enable sleep timeouts for the serial ports, otherwise this will result in '''increased''' power consumption.&lt;br /&gt;
&lt;br /&gt;
 # echo 5 &amp;gt; /sys/devices/platform/omap/omap_uart.0/sleep_timeout&lt;br /&gt;
 # echo 5 &amp;gt; /sys/devices/platform/omap/omap_uart.1/sleep_timeout&lt;br /&gt;
 # echo 5 &amp;gt; /sys/devices/platform/omap/omap_uart.2/sleep_timeout&lt;br /&gt;
 # echo 1 &amp;gt; /debug/pm_debug/sleep_while_idle&lt;br /&gt;
&lt;br /&gt;
You can also enable &amp;quot;off mode&amp;quot; after enabling &amp;quot;sleep while idle&amp;quot;.&lt;br /&gt;
 # echo 1 &amp;gt; /debug/pm_debug/enable_off_mode&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
'''NOTE:'''  Enabling sleep when idle will cause the device to &amp;quot;miss&amp;quot; the first character or two from the serial console (and most likely all UARTS).  Since the UART is asleep, a character must be sent to wake it up. This character will be missed as well as subsequent characters until the UART is fully awake.&lt;br /&gt;
&lt;br /&gt;
===DVFS===&lt;br /&gt;
Dynamic frequency and voltage scaling dynamically reduces clock frequency and voltage for further power savings. You must be running the PM kernel for DVFS functionality.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' DVFS may not work with the 2.6.39 PM kernel.  DVFS was going through a rewrite and may not be stable enough to be used.&lt;br /&gt;
&lt;br /&gt;
The cpufreq utils and daemon are needed to enable and configure DVFS. Use bitbake to manually build cpufreqd and cpufrequtils.&lt;br /&gt;
&lt;br /&gt;
 $ bitbake cpufreqd&lt;br /&gt;
 $ bitbake cpufrequtils&lt;br /&gt;
&lt;br /&gt;
'''Note:''' You can also copy the omap3-console-image.bb recipe over to your user.collection and add cpufreqd and cpufrequtils to the recipe.  Doing so will automatically include the cpufreqd and cpufrequtils in your image.&lt;br /&gt;
&lt;br /&gt;
Once the cpufreqd and cpufrequtils are built, you can build your image as normal, or you can simply copy the ipk files to your SD card and install them.&lt;br /&gt;
&lt;br /&gt;
 $ cp tmp/deploy/glibc/ipk/armv7a/cpufreqd_* tmp/deploy/glib/ipk/armv7a/cpufrequtils_* /media/SD_CARD/home/root/&lt;br /&gt;
&lt;br /&gt;
To install, run the following command from your Overo COM:&lt;br /&gt;
 # opkg install /home/root/cpufreq*.ipk&lt;br /&gt;
&lt;br /&gt;
You may see some errors about a &amp;quot;hicolor-icon-theme&amp;quot; which can be ignored.&lt;br /&gt;
&lt;br /&gt;
Now that you have cpufreq tools setup, run cpufreq-info and you will see output describing the cpu frequency modes for your cpu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@overo:~#cpufreq-info&lt;br /&gt;
cpufrequtils 006: cpufreq-info (C) Dominik Brodowski 2004-2009&lt;br /&gt;
Report errors and bugs to cpufreq@vger.kernel.org, please.&lt;br /&gt;
analyzing CPU 0:&lt;br /&gt;
  driver: omap&lt;br /&gt;
  CPUs which run at the same hardware frequency: 0&lt;br /&gt;
  CPUs which need to have their frequency coordinated by software: 0&lt;br /&gt;
  maximum transition latency: 0.00 ms.&lt;br /&gt;
  hardware limits: 125 MHz - 600 MHz&lt;br /&gt;
  available frequency steps: 600 MHz, 550 MHz, 500 MHz, 250 MHz, 125 MHz&lt;br /&gt;
  available cpufreq governors: conservative, ondemand, userspace, powersave, performance&lt;br /&gt;
  current policy: frequency should be within 125 MHz and 600 MHz.&lt;br /&gt;
                  The governor &amp;quot;performance&amp;quot; may decide which speed to use&lt;br /&gt;
                  within this range.&lt;br /&gt;
  current CPU frequency is 600 MHz (asserted by call to hardware).&lt;br /&gt;
  cpufreq stats: 600 MHz:100.00%, 550 MHz:0.00%, 500 MHz:0.00%, 250 MHz:0.00%, 125 MHz:0.00%  (1)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see from the cpufreq stats line, we have run at full speed 600 MHz for 100% of the time.  In order to reduce cpu frequency automatically, we have to change to a different &amp;quot;governor&amp;quot;. For example, switching to the powersave governor will limit cpu frequency to between 0% and 33% of max speed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@overo:~# cpufreq-set -g powersave&lt;br /&gt;
root@overo:~# cpufreq-info&lt;br /&gt;
cpufrequtils 006: cpufreq-info (C) Dominik Brodowski 2004-2009&lt;br /&gt;
Report errors and bugs to cpufreq@vger.kernel.org, please.&lt;br /&gt;
analyzing CPU 0:&lt;br /&gt;
  driver: omap&lt;br /&gt;
  CPUs which run at the same hardware frequency: 0&lt;br /&gt;
  CPUs which need to have their frequency coordinated by software: 0&lt;br /&gt;
  maximum transition latency: 0.00 ms.&lt;br /&gt;
  hardware limits: 125 MHz - 600 MHz&lt;br /&gt;
  available frequency steps: 600 MHz, 550 MHz, 500 MHz, 250 MHz, 125 MHz&lt;br /&gt;
  available cpufreq governors: conservative, ondemand, userspace, powersave, performance&lt;br /&gt;
  current policy: frequency should be within 125 MHz and 600 MHz.&lt;br /&gt;
                  The governor &amp;quot;powersave&amp;quot; may decide which speed to use&lt;br /&gt;
                  within this range.&lt;br /&gt;
  current CPU frequency is 125 MHz (asserted by call to hardware).&lt;br /&gt;
  cpufreq stats: 600 MHz:86.17%, 550 MHz:0.00%, 500 MHz:0.00%, 250 MHz:0.00%, 125 MHz:13.83%  (2)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The cpufreq daemon automatically switches governors based on rules defined in&lt;br /&gt;
 /etc/cpufreqd.conf&lt;br /&gt;
&lt;br /&gt;
'''TODO:''' Examine how to use cpufreqd to manage the active governor.&lt;br /&gt;
&lt;br /&gt;
==Disable Internal Devices==&lt;br /&gt;
The internal peripherals and devices such as the DSP and GPU consume power if not being used. All unused peripherals, DSP, and GPU should be turned off.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' All peripherals, DSP, and GPU are turned off when sleep while idle and off mode are enabled.  Turning off peripherals, will only reduce power while the Gumstix is awake and processing, it won't allow for a lower power draw while sleeping.&lt;br /&gt;
&lt;br /&gt;
===Turn Off Peripherals===&lt;br /&gt;
&lt;br /&gt;
 TBD&lt;br /&gt;
&lt;br /&gt;
===Turn Off DSP===&lt;br /&gt;
This section applies only to the OMAP3530-based Overo COMs, as the OMAP3530 has both a DSP and Graphics engine.&lt;br /&gt;
&lt;br /&gt;
 TBD&lt;br /&gt;
&lt;br /&gt;
===Turn Off GPU===&lt;br /&gt;
This section applies only to the OMAP3530-based Overo COMs, as the OMAP3530 has both a DSP and Graphics engine.&lt;br /&gt;
&lt;br /&gt;
 TBD&lt;br /&gt;
&lt;br /&gt;
==Disable External Chipsets==&lt;br /&gt;
Several external chipsets on the Gumstix COM consume power even if not being used.  Their power consumption can be reduced (although not completely eliminated) by holding the chips in reset.&lt;br /&gt;
&lt;br /&gt;
===USB===&lt;br /&gt;
If you're running the Custom PM Kernel listed above, the kernel is already patched to disable power to USB. Otherwise, you can hold the USB chip in reset with the following commands:&lt;br /&gt;
&lt;br /&gt;
 $ echo 183 &amp;gt; /sys/class/gpio/export&lt;br /&gt;
 $ echo out &amp;gt; /sys/class/gpio/gpio183/direction&lt;br /&gt;
 $ echo 0 &amp;gt; /sys/class/gpio/gpio183/value &lt;br /&gt;
&lt;br /&gt;
These commands will export GPIO 183 for access through the sys interface, set the GPIO to output, and drive &amp;quot;0&amp;quot; to the reset line on the USB chip.&lt;br /&gt;
&lt;br /&gt;
You can also turn off power to the USB chip.&lt;br /&gt;
&lt;br /&gt;
 If someone wanted to try the same nasty kernel hack, I added this two lines:&lt;br /&gt;
        twl_i2c_write_u8(TWL4030_MODULE_USB, 0x08 /* value */, 0xBB /* register (CARKIT_ANA_CTRL) */);&lt;br /&gt;
        twl_i2c_write_u8(TWL4030_MODULE_USB, 0x01 /* value */, 0xFD /*register (PHY_PWR_CTRL) */);&lt;br /&gt;
 in the function &amp;quot;twl_probe&amp;quot; in /drivers/mfd/twl-core.c just prior to the comment &amp;quot;load power event scripts&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Disable Wifi===&lt;br /&gt;
To disable Wifi &lt;br /&gt;
&lt;br /&gt;
 $ echo 0 &amp;gt; /sys/class/gpio/gpio16/value &lt;br /&gt;
&lt;br /&gt;
This will hold the Wifi chip in reset and reduce its power consumption to the absolute minimum.  However, once disabled, you can't reenable the chip without powering down the gumstix.  &lt;br /&gt;
&lt;br /&gt;
If you wish to disable and enable the Wifi without powering off the gumstix, you'll have to use rfkill. Rfkill will do a software power down of the Wifi radio.  The defconfig included with the PM recipe above will enable rfkill in the pm kernel.  You can verify rfkill is setup and working as you should see /dev/rfkill on the gumstix.&lt;br /&gt;
&lt;br /&gt;
 $ bitbake rfkill&lt;br /&gt;
&lt;br /&gt;
Will build rfkill, after which you can copy the binary over to your gumstix.&lt;br /&gt;
&lt;br /&gt;
To disable the wifi using rfkill simply execute&lt;br /&gt;
&lt;br /&gt;
 $ rfkill block wlan&lt;br /&gt;
&lt;br /&gt;
To bring it back up run&lt;br /&gt;
&lt;br /&gt;
 $ rfkill unblock wlan&lt;br /&gt;
&lt;br /&gt;
===Disable Bluetooth===&lt;br /&gt;
&lt;br /&gt;
To disable bluetooth&lt;br /&gt;
&lt;br /&gt;
 $ echo 0 &amp;gt; /sys/class/gpio/gpio164/value&lt;br /&gt;
&lt;br /&gt;
This will hold the bluetooth in reset.  &lt;br /&gt;
&lt;br /&gt;
TBD: Does rfkill work for bluetooth???&lt;br /&gt;
&lt;br /&gt;
==Disable LEDs==&lt;br /&gt;
The on-board blue LED can be disabled with the following commands.&lt;br /&gt;
&lt;br /&gt;
 $ echo 211 &amp;gt; /sys/class/gpio/export&lt;br /&gt;
 $ echo out &amp;gt; /sys/class/gpio/gpio211/direction&lt;br /&gt;
 $ echo 1 &amp;gt; /sys/class/gpio/gpio211/value &lt;br /&gt;
&lt;br /&gt;
'''Note:''' You must be running the 2.6.39 PM kernel to have access to GPIO 211.&lt;br /&gt;
&lt;br /&gt;
==Legacy PM Kernels==&lt;br /&gt;
&lt;br /&gt;
The instructions here are for legacy PM kernels.  These should no longer be used since Steve Sakoman has provided a 2.6.39 PM kernel for gumstix.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are three methods for compiling a PM kernel.&lt;br /&gt;
* Use the PM recipe included with the current OpenEmbedded build.&lt;br /&gt;
* Use a custom recipe with the latest PM kernel and patches for Overo COM's&lt;br /&gt;
* Perform a manual build with CodeSourcery&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===OpenEmbedded PM Kernel===&lt;br /&gt;
'''NOTE:'''  The linux-omap-pm bitbake recipe is setup to use the 2.6.29 PM kernel.  For a newer PM kernel with better power savings, see the next method.&lt;br /&gt;
&lt;br /&gt;
To enable the PM kernel edit the file&lt;br /&gt;
 org.openembedded.dev/conf/machine/overo.conf&lt;br /&gt;
and change the line &lt;br /&gt;
 PREFERRED_PROVIDER_virtual/kernel = &amp;quot;linux-omap3&amp;quot;&lt;br /&gt;
to&lt;br /&gt;
 PREFERRED_PROVIDER_virtual/kernel = &amp;quot;linux-omap-pm&amp;quot;&lt;br /&gt;
Save the changes and then run bitbake as usual e.g.&lt;br /&gt;
 $ bitbake omap3-console-image&lt;br /&gt;
The pm branch will be downloaded and compiled.&lt;br /&gt;
&lt;br /&gt;
Once you have the PM kernel built, follow the instructions for copying the new image and filesystem to your microSD card.&lt;br /&gt;
&lt;br /&gt;
===Custom PM Kernel===&lt;br /&gt;
The &amp;quot;custom&amp;quot; PM kernel described here uses the 2.6.38-rc? PM kernel which at the time of this writing offers the best power saving features.&lt;br /&gt;
&lt;br /&gt;
First download the custom PM recipes from [http://iconux.org/files/oe/user.collection_overo_pm.tar.gz here] and extract the archive to your over-oe directory.&lt;br /&gt;
&lt;br /&gt;
'''Note:'''  If you have an existing user.collection in your overo-oe directory, you may want to back it up before extracting this archive.&lt;br /&gt;
&lt;br /&gt;
Bitbake the new kernel and make sure it builds correctly.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If you plan to use USB, then you will need to comment out the usb_off patch in the linux-omap-pm_2.6.38.bb recipe.&lt;br /&gt;
&lt;br /&gt;
 $ bitbake -b user.collection/recipes/linux/linux-omap-pm_2.6.38.bb&lt;br /&gt;
Or simply run&lt;br /&gt;
 $ bitbake virtual/kernel&lt;br /&gt;
and bitbake should use the new linux-omap-pm_2.6.38.bb recipe automatically.&lt;br /&gt;
&lt;br /&gt;
You may get an error saying it can't download the tar archive but it should fallback to pulling the source using git.  This step will take a while since the pm git is over 400 MB.&lt;br /&gt;
&lt;br /&gt;
If the kernel builds fine, you can build your image normally.&lt;br /&gt;
 $ bitbake omap3-console-image&lt;br /&gt;
&lt;br /&gt;
Once you install the new build to your micro sd card, you need to make changes for the new kernel. The new kernel uses ttyO2 as the serial port instead of ttyS2. To make the changes,cd to the Gumstix os partition on your micro sd, and do the following:&lt;br /&gt;
* Edit &amp;lt;path to mcirosd rootfs&amp;gt;/etc/inittab and change ttyS2 to ttyO2&lt;br /&gt;
* Make a &amp;quot;node&amp;quot; in dev for ttyO2&lt;br /&gt;
 $ mknod -m 660 &amp;lt;path to mcirosd rootfs&amp;gt;/dev/ttyO2 c 4 66&lt;br /&gt;
* On bootup, execute these commands from the uboot command line (assumes your uboot and xload are setup previously)&lt;br /&gt;
 mmc init&lt;br /&gt;
 setenv console ttyO2,115200n8&lt;br /&gt;
 saveenv (run only if you want to save the new console setting)&lt;br /&gt;
 run loaduimage&lt;br /&gt;
 run mmcboot&lt;br /&gt;
&lt;br /&gt;
You should now boot into your new kernel. Follow the instructions in the sections below to use PM features.&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' Some things have changed in the sections below for the new kernel such as the path to set the serial timeout.  Its now &lt;br /&gt;
 /sys/devices/platform/omap/omap_uart.#/sleep_timeout&lt;br /&gt;
&lt;br /&gt;
===PM Kernel Alternate CodeSourcery Method===&lt;br /&gt;
If you do not already have an openembedded build setup, then follow these step taken from Peter Lawrence on the Gumstix mailing list.&lt;br /&gt;
&lt;br /&gt;
'''NOTE:'''  As per the comments below, this method disables nand and microSD access. Use the Custom PM method above for best results.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here are steps to build the kernel &amp;quot;the traditional way&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
1) Download and install cross-compiler tools:&lt;br /&gt;
&lt;br /&gt;
The easiest solution is to download the CodeSourcery binaries:&lt;br /&gt;
&lt;br /&gt;
http://www.codesourcery.com/sgpp/lite/arm&lt;br /&gt;
&lt;br /&gt;
CodeSourcery provides an install program.  (You'll have to set the &lt;br /&gt;
executable bit on the file to run it.)&lt;br /&gt;
&lt;br /&gt;
Note that the CodeSourcery install modifies .bash_profile to add the&lt;br /&gt;
path, but this file does not run automatically in Ubuntu.  To fix&lt;br /&gt;
this, refer to:&lt;br /&gt;
&lt;br /&gt;
http://www.linuxquestions.org/questions/linux-general-1/do-i-put-path-in-bash_profile-or-bashrc-or-both-540288/&lt;br /&gt;
&lt;br /&gt;
which says:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;You can change the second by opening a gnome-terminal window and&lt;br /&gt;
going to Edit / Profiles - select the Default profile and click the&lt;br /&gt;
Edit button. On the Title and Command tab, click the check box for Run&lt;br /&gt;
command as a login shell. Your .bash_profile file should be sourced&lt;br /&gt;
the next time you open a gnome-terminal.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
2) Get latest Linux OMAP PM code&lt;br /&gt;
&lt;br /&gt;
&amp;quot;git&amp;quot; the latest code:&lt;br /&gt;
&lt;br /&gt;
git clone git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm.git;branch=pm&lt;br /&gt;
&lt;br /&gt;
The result will be in the subdirectory &amp;quot;linux-omap-pm&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
3) Build the OMAP3_PM Linux Kernel&lt;br /&gt;
&lt;br /&gt;
Extract the download Linux kernel code and cd to that directory.  The&lt;br /&gt;
command sequence is:&lt;br /&gt;
&lt;br /&gt;
export ARCH=arm&lt;br /&gt;
make omap3_pm_defconfig&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
'''Update:'''  The omap3_pm_defconfig is no longer available. Use omap2plus_defconfig instead.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
This creates a .config file suitable for Linux OMAP3 PM.&lt;br /&gt;
&lt;br /&gt;
TBD: patch the .config file for JFFS2 and SD card&lt;br /&gt;
&lt;br /&gt;
export CROSS_COMPILE=arm-none-eabi-&lt;br /&gt;
make uImage [this takes a very long while]&lt;br /&gt;
&lt;br /&gt;
The resultant kernel file will be in: ./arch/arm/boot/uImage&lt;br /&gt;
&lt;br /&gt;
4) Download the initramfs filesystem&lt;br /&gt;
&lt;br /&gt;
Obtain &amp;quot;rd-ext2-8M.bin&amp;quot; from:&lt;br /&gt;
&lt;br /&gt;
http://code.google.com/p/beagleboard/downloads/list&lt;br /&gt;
&lt;br /&gt;
5) Create a bootable MicroSD card&lt;br /&gt;
&lt;br /&gt;
Follow the [http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Creating-a-bootable-microSD-card/111.html instructions here].&lt;br /&gt;
&lt;br /&gt;
However, one can omit the &amp;quot;MLO&amp;quot; and the &amp;quot;u-boot.bin&amp;quot; files.&lt;br /&gt;
&lt;br /&gt;
One should, however, copy over the &amp;quot;uImage&amp;quot; file created in step #3,&lt;br /&gt;
and the &amp;quot;rd-ext2-8M.bin&amp;quot; (as &amp;quot;rd-ext2.bin&amp;quot;) created in step #4.&lt;br /&gt;
&lt;br /&gt;
6) Boot the Overo&lt;br /&gt;
&lt;br /&gt;
Use the &amp;quot;Press any key&amp;quot; prompt at boot to operate the U-Boot app.&lt;br /&gt;
&lt;br /&gt;
Enter the following commands: (these commands must be done individually,&lt;br /&gt;
as U-Boot does not have a large enough buffer for the entire quantity&lt;br /&gt;
to be pasted at once)&lt;br /&gt;
&lt;br /&gt;
mmc init&lt;br /&gt;
fatload mmc 1:1 0x80300000 uImage.pm&lt;br /&gt;
fatload mmc 1:1 0x81600000 rd-ext2-8M.bin&lt;br /&gt;
setenv bootargs console=ttyO2,115200n8 ramdisk_size=8192 root=/dev/ram0 rw rootfstype=ext2 initrd=0x81600000,8M&lt;br /&gt;
bootm 0x80300000&lt;br /&gt;
&lt;br /&gt;
 TBD: change u-boot parameters to perform this automatically&lt;br /&gt;
&lt;br /&gt;
 Linux should boot to a BusyBox console prompt.&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:How_to_-_general]]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=GPS&amp;diff=6131</id>
		<title>GPS</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=GPS&amp;diff=6131"/>
				<updated>2016-04-01T21:27:39Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: /* Offline Install */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Testing GPS can be done using a daemon, gpsd, and console application, cgps, which is included in the gps-utils package.&lt;br /&gt;
&lt;br /&gt;
== Installing Packages ==&lt;br /&gt;
&lt;br /&gt;
Here are two methods for installing gpsd and gps-utils.&lt;br /&gt;
&lt;br /&gt;
=== Network Install ===&lt;br /&gt;
&lt;br /&gt;
If your Overo is connected to the Internet installation is very simple. Very simple.&lt;br /&gt;
&lt;br /&gt;
 # opkg update&lt;br /&gt;
 # opkg download gpsd&lt;br /&gt;
 # opkg download gps-utils&lt;br /&gt;
 # opkg install gpsd&lt;br /&gt;
 # opkg install gps-utils&lt;br /&gt;
&lt;br /&gt;
=== Offline Install ===&lt;br /&gt;
&lt;br /&gt;
If your Overo doesn't have an Internet connection, the easiest way to install the required GPS packages is by including them in an image.&lt;br /&gt;
&lt;br /&gt;
 $ cd ~/overo-oe/org.openembedded.dev/recipes/images/&lt;br /&gt;
 $ cp omap3-console-image.bb omap3-gps-image.bb&lt;br /&gt;
 $ nano omap3-gps-image.bb&lt;br /&gt;
&lt;br /&gt;
Add the packages gpsd and gps-utils to the TOOLS_INSTALL section.&lt;br /&gt;
&lt;br /&gt;
 $ bitbake omap3-gps-image&lt;br /&gt;
&lt;br /&gt;
Create a [http://gumstix.org/create-a-bootable-microsd-card.html bootable microSD] with the resulting image.&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
'''gpsd''' will start automatically when you boot, however you will need to tell it what serial port the device is connected to.&lt;br /&gt;
&lt;br /&gt;
 # killall gpsd&lt;br /&gt;
 # gpsd /dev/ttyS0&lt;br /&gt;
&lt;br /&gt;
You can change the ${GPS_DEV} variable in the /etc/default/gpsd to /dev/ttyS0 so it will work automatically on boot.&lt;br /&gt;
&lt;br /&gt;
== Test ==&lt;br /&gt;
&lt;br /&gt;
 # cgps&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=GPIO&amp;diff=6130</id>
		<title>GPIO</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=GPIO&amp;diff=6130"/>
				<updated>2016-04-01T21:24:32Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Overo GPIO ==&lt;br /&gt;
&lt;br /&gt;
The Overo kernels support the sysfs gpio implementation for accessing GPIO from userspace. &lt;br /&gt;
&lt;br /&gt;
This allows you to control GPIO from the command line this way&lt;br /&gt;
&lt;br /&gt;
 root@overo# echo 146 &amp;gt; /sys/class/gpio/export&lt;br /&gt;
 root@overo:/sys/class/gpio# cat gpio146/direction&lt;br /&gt;
 in&lt;br /&gt;
 root@overo# echo out &amp;gt; /sys/class/gpio/gpio146/direction&lt;br /&gt;
 root@overo:/sys/class/gpio# cat gpio146/direction&lt;br /&gt;
 out&lt;br /&gt;
 root@overo# cat /sys/class/gpio/gpio146/value&lt;br /&gt;
 0&lt;br /&gt;
 root@overo# echo 1 &amp;gt; /sys/class/gpio/gpio146/value&lt;br /&gt;
 root@overo# cat /sys/class/gpio/gpio146/value&lt;br /&gt;
 1&lt;br /&gt;
&lt;br /&gt;
If you have an expansion card with a 40 pin header, then this will be controlling pin 27. You can use pin 1 for a ground. (If you don't have a meter, a p/n 276-0330 1.8V Red LED from Radio Shack works for testing.) &lt;br /&gt;
&lt;br /&gt;
Schematics and pin-outs for the Gumstix expansion boards can be found [http://pubs.gumstix.com/boards/ here.]&lt;br /&gt;
&lt;br /&gt;
=== How It Works ===&lt;br /&gt;
&lt;br /&gt;
See the kernel docs [http://www.kernel.org/doc/Documentation/gpio.txt gpio.txt] for an overview of gpio and the userspace sysfs interface. The &amp;quot;Sysfs Interface for Userspace (OPTIONAL)&amp;quot; section near the end discusses the userspace implementation.&lt;br /&gt;
&lt;br /&gt;
See the [http://www-s.ti.com/sc/techlit/spruf98 OMAP35X Technical Reference Manual] Section 7.6.3 PADCONFS Register Description and Table 7.5 Core Control Module PadConf Register Field in Section 7.4.4.3 Pad Multiplexing Register Fields for identifying the possible MUX configuration for each GPIO. For OVERO DM3730 see the [http://www.ti.com/lit/ug/sprugn4r/sprugn4r.pdf Technical Reference Manual] Section 13.6.3.2 PADCONFS Register Description.&lt;br /&gt;
&lt;br /&gt;
Then see the U-Boot source code, board/overo/overo.h for how the pins on the Overo are actually being muxed. See include/asm-arm/arch-omap3/mux.h in the U-Boot tree for the definitions used in overo.h. The pins in mux mode M4 are already configured for GPIO.&lt;br /&gt;
&lt;br /&gt;
=== Making Modifications ===&lt;br /&gt;
&lt;br /&gt;
Currently all the GPIO multiplexing for the Overo's is being done by the bootloader U-Boot, so the conventional way to modify the pin muxing is to edit overo.h and rebuild U-Boot.&lt;br /&gt;
&lt;br /&gt;
You can also change the mux configuration from within Linux. One simple approach is to do it from userspace accessing /dev/mem. A program devmem2 is part of the omap3-console-image and will work. See the remuxing example below.&lt;br /&gt;
&lt;br /&gt;
If you are writing your own kernel module, you can also read/write the PADCONF registers the way you normally would after an ioremap.&lt;br /&gt;
&lt;br /&gt;
Third, there is a Linux build config option CONFIG_OMAP_MUX, not normally enabled in the Overo configs, that will give you some additional utility functions to simplify mux changes within kernel or module code (see arch/arm/plat-omap/mux.c).&lt;br /&gt;
&lt;br /&gt;
Finally, it looks like the Linux OMAP34xx pin muxing code is getting a complete overhaul. See this [http://www.mail-archive.com/linux-omap@vger.kernel.org/msg18474.html thread] on the Linux OMAP mailing list. Judging from some posts on the Gumstix lists, it sounds like this will be available in 2.6.33.&lt;br /&gt;
&lt;br /&gt;
=== Overo Kernel Usage ===&lt;br /&gt;
&lt;br /&gt;
Just because pins are configured as GPIO in u-boot, doesn't necessarily mean you can use them. If you look at /sys/class/gpio on a default Overo, you'll get something like this.&lt;br /&gt;
&lt;br /&gt;
 root@overo:~# ls /sys/class/gpio&lt;br /&gt;
 export	gpio164  gpio65       gpiochip160  gpiochip64&lt;br /&gt;
 gpio15	gpio168  gpiochip0    gpiochip192  gpiochip96&lt;br /&gt;
 gpio16	gpio176  gpiochip128  gpiochip32   unexport&lt;br /&gt;
&lt;br /&gt;
The reason you see some GPIO already exported is because the linux code in arch/arm/mach-omap2/board-overo.c is explicitly exporting these pins for another use. Whether they are being used depends on the hardware you have attached. The kernel also uses pins configured as GPIO that it doesn't export. These depend on the board configuration and the kernel drivers being used.&lt;br /&gt;
&lt;br /&gt;
To be more explicit, look inside board-overo.c, you'll see these definitions&lt;br /&gt;
&lt;br /&gt;
 #define OVERO_GPIO_BT_XGATE     15&lt;br /&gt;
 #define OVERO_GPIO_W2W_NRESET   16&lt;br /&gt;
 #define OVERO_GPIO_PENDOWN      114&lt;br /&gt;
 #define OVERO_GPIO_BT_NRESET    164&lt;br /&gt;
 #define OVERO_GPIO_USBH_CPEN    168&lt;br /&gt;
 #define OVERO_GPIO_USBH_NRESET  183&lt;br /&gt;
 ...&lt;br /&gt;
 #define OVERO_SMSC911X_GPIO    176&lt;br /&gt;
 #define OVERO_SMSC911X2_GPIO   65&lt;br /&gt;
 ...&lt;br /&gt;
 #define OVERO_GPIO_LCD_EN 144&lt;br /&gt;
 #define OVERO_GPIO_LCD_BL 145&lt;br /&gt;
&lt;br /&gt;
Follow their usage inside the file and you will be able to explain the /sys/class/gpio output you see above.&lt;br /&gt;
&lt;br /&gt;
=== Input or Output ===&lt;br /&gt;
&lt;br /&gt;
Pins configured as GPIO are sometimes also specified as being strictly input or output. &lt;br /&gt;
&lt;br /&gt;
This can happen when they are mux'd or when they are explicitly exported by the kernel. &lt;br /&gt;
&lt;br /&gt;
In either of those cases you won't be able to change the I/O direction from userspace.&lt;br /&gt;
&lt;br /&gt;
=== Electrical Specifications ===&lt;br /&gt;
&lt;br /&gt;
Voltage is 1.8v &lt;br /&gt;
&lt;br /&gt;
Current specifications &amp;lt;TODO ???&amp;gt; &lt;br /&gt;
&lt;br /&gt;
=== Usable Pins ===&lt;br /&gt;
&lt;br /&gt;
Here's a few GPIO you can use immediately from userspace without any u-boot or kernel changes.&lt;br /&gt;
It will however require that the specific GPIO isn't used by the attached expansion board. &lt;br /&gt;
&lt;br /&gt;
==== 40 Pin Expansion Header ==== &lt;br /&gt;
&lt;br /&gt;
Pin 4 - gpio114&amp;lt;br /&amp;gt;&lt;br /&gt;
It's the pendown signal on the touchscreen controller but it's available if you aren't using a expansion board with touchscreen support.&amp;lt;br /&amp;gt;&lt;br /&gt;
This pin can not be configured as output, it is input only (see [http://www-s.ti.com/sc/techlit/spruf98 OMAP35X Technical Reference Manual] p. 3389).&lt;br /&gt;
Pulled-low, reads 0 with no input, reads 1 with an input applied&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pin 19 - gpio170&amp;lt;br /&amp;gt;&lt;br /&gt;
The HDQ/1-Wire output. Not used unless you explicitly enable the 1-wire module.&amp;lt;br /&amp;gt;&lt;br /&gt;
User exportable&amp;lt;br /&amp;gt;&lt;br /&gt;
Output only - configured this way in the u-boot muxing&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pin 27 - gpio146&amp;lt;br /&amp;gt;&lt;br /&gt;
Pin 29 - gpio147&amp;lt;br /&amp;gt;&lt;br /&gt;
User exportable&amp;lt;br /&amp;gt;&lt;br /&gt;
Direction can be changed&amp;lt;br /&amp;gt;&lt;br /&gt;
Floating state&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pin 28 - gpio145&amp;lt;br /&amp;gt;&lt;br /&gt;
Pin 30 - gpio144&amp;lt;br /&amp;gt;&lt;br /&gt;
Used with LCD, but available if not using an LCD&amp;lt;br /&amp;gt;&lt;br /&gt;
Configured as output only when exported by the kernel in board-overo.h. Can't change direction from userspace without modifying kernel.&amp;lt;br /&amp;gt;&lt;br /&gt;
Set to ON by kernel during init (not all configs, see board-overo.c). This could be a problem for real use, but okay for testing.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Palo43 Board ====&lt;br /&gt;
&lt;br /&gt;
LED D2 - gpio21&amp;lt;br /&amp;gt;&lt;br /&gt;
LED D3 - gpio22&amp;lt;br /&amp;gt;&lt;br /&gt;
Userspace exportable, set the direction as out&amp;lt;br /&amp;gt;&lt;br /&gt;
echo 0 &amp;gt; gpioxx/value to turn on, echo 1 &amp;gt; gpioxx/value to turn off&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Switch - gpio14&amp;lt;br /&amp;gt;&lt;br /&gt;
Switch - gpio23&amp;lt;br /&amp;gt;&lt;br /&gt;
Userspace exportable, leave direction as in&amp;lt;br /&amp;gt;&lt;br /&gt;
With the switch open (not pushed) will register a value of 1&amp;lt;br /&amp;gt;&lt;br /&gt;
Push the switch and the value will be 0&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example: Changing the multiplexing for a pin ===&lt;br /&gt;
&lt;br /&gt;
If you aren't using the first SPI bus, then there are 5 pins on the 40-pin expansion header that you could repurpose for GPIO.&lt;br /&gt;
&lt;br /&gt;
Pin 3 - gpio171(spi1_clk)&amp;lt;br /&amp;gt;&lt;br /&gt;
Pin 5 - gpio172 (spi1_mosi)&amp;lt;br /&amp;gt;&lt;br /&gt;
Pin 6 - gpio174 (spi1_cs0)&amp;lt;br /&amp;gt;&lt;br /&gt;
Pin 7 - gpio173 (spi1_miso)&amp;lt;br /&amp;gt;&lt;br /&gt;
Pin 8 - gpio175 (spi1_cs1)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The first step is to find the appropriate PADCONF register address for each gpio from Table 7.5 of the TRM. Pay attention to whether it is the low or high order 16 bits for each gpio. You should come up with these values.&lt;br /&gt;
&lt;br /&gt;
gpio171 : 0x4800 21C8&amp;lt;br /&amp;gt;&lt;br /&gt;
gpio172 : 0x4800 21CA&amp;lt;br /&amp;gt;&lt;br /&gt;
gpio173 : 0x4800 21CC&amp;lt;br /&amp;gt;&lt;br /&gt;
gpio174 : 0x4800 21CE&amp;lt;br /&amp;gt;&lt;br /&gt;
gpio175 : 0x4800 21D0&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Using devmem2, here is how you could read the current PADCONF value for what could be gpio171&lt;br /&gt;
&lt;br /&gt;
 root@overo# devmem2 0x480021c8 h&lt;br /&gt;
 ...&lt;br /&gt;
 Value at address 0x480021C8 (0x400201c8): 0x100&lt;br /&gt;
&lt;br /&gt;
Which corresponds to a mux value of (IEN | PTD | DIS | M0) using the U-Boot mux.h definitions. Mux mode 0 for this pin is the spi1_clk configuration found by looking in Table 7.5 of the TRM.&lt;br /&gt;
&lt;br /&gt;
To reconfigure pin 3 to be gpio171, as input or output with inputs pulled low, write 0x010C to the controlling PADCONF register. This would correspond to (IEN | PTD | EN | M4). The bit fields are defined in the TRM Section 7.6.3.&lt;br /&gt;
&lt;br /&gt;
 root@overo# devmem2 0x480021c8 h 0x10c&lt;br /&gt;
&lt;br /&gt;
Now you can export and configure gpio171 from userspace like the example with gpio146 at the beginning.  To make it visible in sysfs:&lt;br /&gt;
&lt;br /&gt;
 echo 172 &amp;gt; /sys/class/gpio/export&lt;br /&gt;
&lt;br /&gt;
If you want this multiplexing to be permanent, then you would modify the U-Boot file board/overo/overo.h and rebuild U-Boot. If you are using OE, then you'll want to generate a patch file to be used in the u-boot-omap3 recipe.&lt;br /&gt;
&lt;br /&gt;
There are additional pins on the header that can be reconfigured this way.&lt;br /&gt;
&lt;br /&gt;
To reconfigure pins from within a kernel module the following code can be used:&lt;br /&gt;
 &lt;br /&gt;
 void *addr = ioremap(spi1_clk, 4);&lt;br /&gt;
 if (!addr)&lt;br /&gt;
 {&lt;br /&gt;
  printk(&amp;quot;Cannot ioremap 0x%lx\n&amp;quot;, spi1_clk);&lt;br /&gt;
 } else {&lt;br /&gt;
  printk(&amp;quot;ioremap OK:  0x%lx\n&amp;quot;, spi1_clk);&lt;br /&gt;
  iowrite32( 0x010C | (0x010C &amp;lt;&amp;lt; 16), addr);&lt;br /&gt;
  iounmap(addr);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
This will make both gpio171 and gpio172 input or output with inputs pulled low.&lt;br /&gt;
&lt;br /&gt;
=== Interrupts on GPIO pins ===&lt;br /&gt;
&lt;br /&gt;
Here is an example on setting up an interrupt on GPIO pin 23 from within a kernel module:&lt;br /&gt;
&lt;br /&gt;
 irqreturn_t gpio_irq_handler(int irq, void *dev_id) {&lt;br /&gt;
  static int cnt=0;&lt;br /&gt;
  printk(&amp;quot;gpio_irq_handler %i\n&amp;quot;, cnt++);&lt;br /&gt;
  return IRQ_HANDLED;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 int gpio_irq= gpio_to_irq(23);&lt;br /&gt;
 int ret = request_irq(gpio_irq, gpio_irq_handler, IRQF_TRIGGER_FALLING, &amp;quot;gpio irq handler&amp;quot;, gpio_irq_handler);&lt;br /&gt;
 if (ret)&lt;br /&gt;
  printk(&amp;quot;gpio interrupt request failed\n&amp;quot;);&lt;br /&gt;
 else&lt;br /&gt;
  printk(&amp;quot;gpio interrupt request succeeded\n&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
=== GPIO Software for the Overo ===&lt;br /&gt;
&lt;br /&gt;
Dave Hylands has written several software packages to facilitate GPIO programming on the Overos.&lt;br /&gt;
&lt;br /&gt;
[[GPIO Event Driver]] allows multiple GPIO lines to be monitored from user-space.&lt;br /&gt;
&lt;br /&gt;
[[User GPIO Driver]] is a reflection of the kernel's gpiolib API into user space.&lt;br /&gt;
&lt;br /&gt;
=== More Links ===&lt;br /&gt;
&lt;br /&gt;
Here is another article [http://elinux.org/BeagleBoardPinMux BeagleBoardPinMux] talking about OMAP3 pin muxing.&lt;br /&gt;
&lt;br /&gt;
== Verdex GPIO ==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;width:100px&amp;quot;&lt;br /&gt;
| style=&amp;quot;background:yellow;&amp;quot; | GPIO(&amp;lt;i&amp;gt; n &amp;lt;/i&amp;gt;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Logic level (3.3V) signals &lt;br /&gt;
* 3-4mA max&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
all GPIO's information and examples should go here&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
todo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
According to the PXA270 datasheet:&lt;br /&gt;
http://pubs.gumstix.com/documents/PXA%20Documentation/PXA270/PXA270%20Electrical,%20Mechanical,%20and%20Thermal%20Specification%20%5b280002-005%5d.pdf&lt;br /&gt;
most of the pins are limited to 3mA, and a few can go upto 4 mA (see page 5-9) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Accessing GPIO's from userland ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If proc-gpio is a module, add it to /etc/modules or do a modprobe proc-gpio.&lt;br /&gt;
&lt;br /&gt;
A number of files exist under /proc/gpio, one for each GPIO on the PXA processor.&lt;br /&gt;
&lt;br /&gt;
If you cat one of these files, you get, eg:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# cat /proc/gpio/GPIO12&lt;br /&gt;
12 GPIO in set&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
That tells you — GPIO number, function (either GPIO, AF 1, AF 2, or AF 3), in|out, set|clear.&lt;br /&gt;
&lt;br /&gt;
You can change any of those values, by writing to the file, eg:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# echo &amp;quot;AF1 out&amp;quot; &amp;gt; /proc/gpio/GPIO12&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This sets GPIO12 to AF1, out mode. (In the case of GPIO12, the PXA defines this function as putting out the 32kHz clock signal.) this is currently case-sensitive&lt;br /&gt;
&lt;br /&gt;
If you have the GPIO set to an output, and GPIO mode, you can set or clear the signal:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# echo &amp;quot;GPIO out set&amp;quot; &amp;gt; /proc/gpio/GPIO12&lt;br /&gt;
# echo &amp;quot;GPIO out clear&amp;quot; &amp;gt; /proc/gpio/GPIO12&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The alternative functions are described in the PXA255 Developer's Manual (link should be found in the Featured links-box) section 4.1.2.&lt;br /&gt;
&lt;br /&gt;
=== Alternative method to access GPIO's from userland ===&lt;br /&gt;
&lt;br /&gt;
The [[User GPIO Driver]] provides a reflection of the kernel's gpiolib library into userspace.&lt;br /&gt;
&lt;br /&gt;
=== gpio-event driver ===&lt;br /&gt;
&lt;br /&gt;
The [[GPIO Event Driver]] allows gpio changes to be captured from user-space.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-----------------------------&lt;br /&gt;
&lt;br /&gt;
[[Category:Literature]]&lt;br /&gt;
[[Category:GPIO]]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_git&amp;diff=6129</id>
		<title>Category:How to - git</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_git&amp;diff=6129"/>
				<updated>2016-04-01T21:23:07Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Gumstix Github ==&lt;br /&gt;
Gumstix maintains [https://github.com/gumstix github repositories] for open-soruce projects.&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_JAVA&amp;diff=6127</id>
		<title>Category:How to - JAVA</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_JAVA&amp;diff=6127"/>
				<updated>2016-04-01T21:11:31Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;1. [http://code.google.com/p/netbeams/wiki/GumstixOESystem This link] has instructions for installing classpath and JamVM.&lt;br /&gt;
The instructions are based on outdated version numbers. Just substitute the current OE versions.&lt;br /&gt;
&lt;br /&gt;
2. Onboard java compiler [[Onboard_Java_Compiler]]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_Known_Issues&amp;diff=6126</id>
		<title>Category:How to - Known Issues</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_Known_Issues&amp;diff=6126"/>
				<updated>2016-04-01T21:10:59Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: /* Issues with prebuild overo images */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you have fixed a problem while setting up your gumstix board that you feel other people are likely to encounter, please document your solution here.&lt;br /&gt;
&lt;br /&gt;
== Network Problems ==&lt;br /&gt;
&lt;br /&gt;
===Network Services Do Not Come Up===&lt;br /&gt;
&lt;br /&gt;
'''Symptom:''' Network services do not come up. LAN link lights blink for a couple of seconds during bootup, but then remain out. This has been observed with the connex board with the netCF expansion module running a fresh install of OpenEmbedded.&lt;br /&gt;
&lt;br /&gt;
'''Solution:''' The file /etc/network/interfaces contains network interface definitions for several classes of devices. If you are not using the wireless ethernet expansion module, comment out the wlan0 interface section and reboot the unit.&lt;br /&gt;
&lt;br /&gt;
===Wired Ethernet Does Not Come Up===&lt;br /&gt;
'''Symptom:''' When booting an Overo with Tobi expansion board, the wired Ethernet eth0 interface does not come up. No IP address is acquired via DHCP, even though eth0 is configured to use DHCP.&lt;br /&gt;
&lt;br /&gt;
'''Solution:''' The solution is documented here: [[Overo Tobi Ethernet]].&lt;br /&gt;
&lt;br /&gt;
== Issues with prebuilt DuoVero images ==&lt;br /&gt;
&lt;br /&gt;
The serial port on Uart2 is /dev/ttyO1. This is interfered with by the Bluetooth systemd service which isn't necessary on this board. Disable this systemd service to get proper access to /dev/ttyO1.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;systemctl disable bluetooth&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and rebooting is a good start.&lt;br /&gt;
&lt;br /&gt;
== Issues with prebuild overo images ==&lt;br /&gt;
&lt;br /&gt;
Images are here: https://www.gumstix.com/software/software-downloads/&lt;br /&gt;
&lt;br /&gt;
=== Overo fire with Palo35 ===&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;1&amp;quot; style=&amp;quot;background:#e2e2e2;&amp;quot; class=&amp;quot;sortable wikitable&amp;quot;&lt;br /&gt;
!  Version      || Bootup  || Login   || LCD     || Touchscreen&lt;br /&gt;
|- bgcolor=&amp;quot;#f8f8ff&amp;quot;&lt;br /&gt;
|  201004220807 || {{Yes}} || {{Yes}} || {{Yes}}  || {{Yes}}&lt;br /&gt;
|- bgcolor=&amp;quot;#f8f8ff&amp;quot;&lt;br /&gt;
|  201004141106 || {{Yes}} || {{Yes}} || {{No}}  || {{No}}&lt;br /&gt;
|- bgcolor=&amp;quot;#f8f8ff&amp;quot;&lt;br /&gt;
|  201002031857 || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=MicroSd&amp;diff=6125</id>
		<title>MicroSd</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=MicroSd&amp;diff=6125"/>
				<updated>2016-04-01T21:09:49Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: /* Creating a compressed image */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;It is possible to duplicate a microSD using a few simple tools in Linux.  This can be useful once you have a known good image that you want to replicate for a bunch of Gumstix COMs.&lt;br /&gt;
&lt;br /&gt;
The Use-Cases below assume a source card found at /dev/sourcecard and a destination card at /dev/destcard.  Note, you can use 'dmesg' or 'mount' to confirm the actual mounting location; they are probably something like /dev/sde.  Also, we are interested in the actual card device (e.g. /dev/sde) rather than the block devices representing any partitions it may have (e.g. /dev/sde0, /dev/sde1).&lt;br /&gt;
&lt;br /&gt;
===Creating a Basic Card Image===&lt;br /&gt;
'''Note 1:''' before executing the commands below you will need to &amp;quot;umount&amp;quot; the partitions of the card that has been inserted in your computer (you may want to insert more than one card). For example, if your partitions are located in /dev/sde0 and /dev/sde1, the first thing you would have to do is:&lt;br /&gt;
 sudo umount /dev/sde0&lt;br /&gt;
 sudo umount /dev/sde1&lt;br /&gt;
'''Note 2:''' super user access (sudo) may be required to execute the following commands.&lt;br /&gt;
&lt;br /&gt;
'''Commands to create a Basic Card Image:'''&lt;br /&gt;
 dd if=/dev/sourcecard of=/home/user/masterimage.img bs=1M&lt;br /&gt;
 dd if=/home/user/masterimage.img of=/dev/destcard bs=1M&lt;br /&gt;
Specifying a block size of 1MB should speed up the transfer.&lt;br /&gt;
&lt;br /&gt;
If you happen to have two microSD slots so both cards are simultaneously available, you can do a direct copy:&lt;br /&gt;
 dd if=/dev/sourcecard of=/dev/destcard bs=1M&lt;br /&gt;
&lt;br /&gt;
For touchscreen boards, you'll redo the calibration for each board.  Be sure to remove the /etc/pointercal file from the master image.&lt;br /&gt;
&lt;br /&gt;
===Creating a compressed image===&lt;br /&gt;
You can also compress the image on disk but be warned that you need to do this as the root user.&lt;br /&gt;
 dd if=/dev/sourcecard bs=1M | gzip -c &amp;gt; somefile.gz&lt;br /&gt;
 gunzip -c somefile.gz | dd of=/dev/destcard bs=1M&lt;br /&gt;
To make even smaller image files, zero out all remaining space on your microSD card partitions before doing the two steps above. For example, let's say your Ext3 partition is mostly empty and is mounted at /mnt/card_ext/.&lt;br /&gt;
 dd if=/dev/zero of=/mnt/card_ext/mybigfile&lt;br /&gt;
 rm /mnt/card_ext/mybigfile&lt;br /&gt;
&lt;br /&gt;
Note for large cards, it may be faster to create a script to format the card (see [http://www.gumstix.org/create-a-bootable-microsd-card.html] for hints) and copy over the required files.&lt;br /&gt;
&lt;br /&gt;
Thanks to Dave Hylands, Ananth and Coderone for their mailing list replies and to Doug Gibbs who posed the original question. See [http://gumstix.8.x6.nabble.com/Duplicating-SD-cards-td569365.html this thread] for the full discussion.&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_robotics&amp;diff=6124</id>
		<title>Category:How to - robotics</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_robotics&amp;diff=6124"/>
				<updated>2016-04-01T21:06:47Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: Blanked the page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_OpenEmbedded&amp;diff=6123</id>
		<title>Category:How to - OpenEmbedded</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_OpenEmbedded&amp;diff=6123"/>
				<updated>2016-04-01T21:06:24Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: /* Verdex Pro */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Gumstix uses the OpenEmbedded build environment so developers can create a complete Linux Distribution for embedded systems.&lt;br /&gt;
&lt;br /&gt;
== Overo ==&lt;br /&gt;
Instructions for setting up an OE build environment for the Overo series have been posted on www.gumstix.org [http://gumstix.org/software-development/open-embedded/61-using-the-open-embedded-build-system.html here].&lt;br /&gt;
&lt;br /&gt;
== Verdex Pro ==&lt;br /&gt;
Instructions for setting up an OE build environment for the Verdex Pro series have been posted in various places at various times.  The current instructions are [http://gumstix.org/software-development/yocto-project/190-verdex-svn-repository.html here].&lt;br /&gt;
'''Kernel'''&lt;br /&gt;
There are numerous methods of kernel development; some consider Buildroot the most straightforward. Those using OE may find these links offer useful workflows for kernel development:&lt;br /&gt;
* http://ao2.it/en/blog/2010/05/27/neat-compilerun-cycle-git-and-openembedded&lt;br /&gt;
* http://bec-systems.com/site/521/best-practices-for-kernel-development-with-openembedded&lt;br /&gt;
* http://blogs.elphel.com/2009/12/openembeddedangstrom-kernel-workflow/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To directly cross-compile the 2.6.21 kernel from the OE/SVN tree try these commands:&lt;br /&gt;
   source ${GUMSTIX_TOP}/extras/profile&lt;br /&gt;
   cd ${GUMSTIX_TOP}/tmp/work/gumstix-custom-verdex-angstrom-linux-gnueabi/gumstix-kernel-2.6.21-r1/linux-2.6.21&lt;br /&gt;
   make ARCH=arm CROSS_COMPILE=${GUMSTIX_TOP}/tmp/cross/bin/arm-angstrom-linux-gnueabi-&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:How_to_-_Network_Boot&amp;diff=6122</id>
		<title>Category:How to - Network Boot</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:How_to_-_Network_Boot&amp;diff=6122"/>
				<updated>2016-04-01T21:03:37Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: /* Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
&lt;br /&gt;
Network booting can be very convenient during the development cycle &lt;br /&gt;
for an embedded device. Current Gumstix Overos have a bootloader &lt;br /&gt;
and kernel ready for network booting if you have an expansion board &lt;br /&gt;
with an ethernet connector. Older Gumstix Overos can upgrade their &lt;br /&gt;
version of u-boot to get support for network booting. This procedure&lt;br /&gt;
also works for Verdex-Pro boards although all the text and links&lt;br /&gt;
refer to Overo.&lt;br /&gt;
&lt;br /&gt;
The procedures that follow are for setting up a workstation to act &lt;br /&gt;
as both the tftp server and the nfs server to host the root file &lt;br /&gt;
system. &lt;br /&gt;
&lt;br /&gt;
The procedure described does not require a dhcp server.&lt;br /&gt;
&lt;br /&gt;
==Setup==&lt;br /&gt;
&lt;br /&gt;
A workstation running Ubuntu 9.10 is used for the example.&lt;br /&gt;
&lt;br /&gt;
The names of the packages will be different if you are using another &lt;br /&gt;
distribution.&lt;br /&gt;
&lt;br /&gt;
There are multiple ways to configure the nfs server and the tftpd &lt;br /&gt;
server. This is just one method.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is the network configuration.&lt;br /&gt;
&lt;br /&gt;
 Workstation IP: 192.168.4.4&lt;br /&gt;
 &lt;br /&gt;
 Gumstix IP: 192.168.4.50&lt;br /&gt;
&lt;br /&gt;
You will also need a Gumstix Overo rootfs on the workstation. &lt;br /&gt;
&lt;br /&gt;
You can either &lt;br /&gt;
[http://gumstix.org/software-development/open-embedded/61-using-the-open-embedded-build-system.html build] &lt;br /&gt;
one yourself or download one &lt;br /&gt;
[https://www.gumstix.com/software/software-downloads/ here.] &lt;br /&gt;
&lt;br /&gt;
I'll assume an omap3-console-image custom built with OE located in the standard location. &lt;br /&gt;
Any image will work though.&lt;br /&gt;
&lt;br /&gt;
==Packages==&lt;br /&gt;
&lt;br /&gt;
Install the following Ubuntu packages on the workstation&lt;br /&gt;
&lt;br /&gt;
tftp-hpa &lt;br /&gt;
&lt;br /&gt;
nfs-common&lt;br /&gt;
&lt;br /&gt;
nfs-kernel-server &lt;br /&gt;
&lt;br /&gt;
portmap&lt;br /&gt;
&lt;br /&gt;
==Create a root filesystem==&lt;br /&gt;
&lt;br /&gt;
Create and populate the /exports directory with a kernel and a root filesystem&lt;br /&gt;
&lt;br /&gt;
 sudo mkdir -p /exports/overo&lt;br /&gt;
 sudo tar -C /exports/overo -xvjf ${OVEROTOP}/tmp/deploy/glibc/images/overo/omap3-console-image-overo.tar.bz2&lt;br /&gt;
&lt;br /&gt;
==Configure the tftp server==&lt;br /&gt;
&lt;br /&gt;
Disable inetd control of tftpd which is the default for Ubuntu. Either comment the line in /etc/inetd.conf that references tftpd by adding a # to the start of the tftp line&lt;br /&gt;
&lt;br /&gt;
 # tftp  dgram  udp  wait  root  /usr/sbin/in.tftpd  /usr/sbin/int.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
or if you don't need inetd for any other service, which a Ubuntu desktop install typically doesn't, disable inetd completely this way&lt;br /&gt;
&lt;br /&gt;
 sudo mv /etc/rc2.d/S20openbsd-inetd /etc/rc2.d/K20openbsd-inetd &lt;br /&gt;
&lt;br /&gt;
See the NOTES(1) section.&lt;br /&gt;
&lt;br /&gt;
The tftpd-hpa configuration file format changed between Ubuntu 9.10 and 10.04.&lt;br /&gt;
&lt;br /&gt;
Edit /etc/default/tftpd-hpa (for 9.10)&lt;br /&gt;
&lt;br /&gt;
 RUN_DAEMON=&amp;quot;yes&amp;quot;&lt;br /&gt;
 OPTIONS=&amp;quot;-l -s /exports/overo/boot&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Edit /etc/default/tftpd-hpa (for 10.04)&lt;br /&gt;
&lt;br /&gt;
 TFTP_USERNAME=&amp;quot;tftp&amp;quot;&lt;br /&gt;
 TFTP_DIRECTORY=&amp;quot;/exports/overo/boot&amp;quot;&lt;br /&gt;
 TFTP_ADDRESS=&amp;quot;192.168.4.4:69&amp;quot;&lt;br /&gt;
 TFTP_OPTIONS=&amp;quot;-s&amp;quot;&lt;br /&gt;
&lt;br /&gt;
What we are doing is pointing the tftp daemon at the Gumstix root filesystem we created above so that it will find the uImage kernel that sits there. &lt;br /&gt;
&lt;br /&gt;
 $ ls -all /exports/overo/boot/*&lt;br /&gt;
 lrwxrwxrwx 1 root root      13 2010-01-13 11:50 /exports/overo/boot/uImage -&amp;gt; uImage-2.6.32&lt;br /&gt;
 -rw-r--r-- 1 root root 3147516 2010-01-10 11:12 /exports/overo/boot/uImage-2.6.32&lt;br /&gt;
&lt;br /&gt;
==Configure the nfs server==&lt;br /&gt;
&lt;br /&gt;
Add the following line to /etc/exports&lt;br /&gt;
&lt;br /&gt;
 /exports/overo	192.168.4.50(rw,no_root_squash,no_subtree_check)&lt;br /&gt;
&lt;br /&gt;
This tells the nfs server what directories to export as an nfs mountpoint and what machines have access to it. &lt;br /&gt;
Use &amp;lt;b&amp;gt;man exports&amp;lt;/b&amp;gt; to get the documentation for /etc/exports.&lt;br /&gt;
&lt;br /&gt;
==Restart the servers==&lt;br /&gt;
&lt;br /&gt;
 sudo /etc/init.d/tftpd-hpa restart&lt;br /&gt;
 sudo service portmap restart&lt;br /&gt;
 sudo /etc/init.d/nfs-kernel-server restart&lt;br /&gt;
&lt;br /&gt;
==Configure u-boot==&lt;br /&gt;
&lt;br /&gt;
Establish a serial console connection with the gumstix.&lt;br /&gt;
&lt;br /&gt;
Power the gumstix unit and hit a key to stop the process in uboot.&lt;br /&gt;
&lt;br /&gt;
Add some environment variables to u-boot.&lt;br /&gt;
&lt;br /&gt;
 Overo # setenv ipaddr 192.168.4.50&lt;br /&gt;
 Overo # setenv netmask 255.255.255.0&lt;br /&gt;
 Overo # setenv serverip 192.168.4.4&lt;br /&gt;
 Overo # setenv gatewayip 192.168.4.1&lt;br /&gt;
 Overo # setenv hostname overo&lt;br /&gt;
 Overo # setenv ip ${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:eth0:none&lt;br /&gt;
 Overo # setenv nfsroot /exports/overo&lt;br /&gt;
 Overo # setenv nfsargs setenv bootargs console=\${console} root=/dev/nfs rootfstype=nfs ip=\${ip} nfsroot=\${nfsroot} rootwait&lt;br /&gt;
 Overo # setenv loadnfskernel tftp \${loadaddr} uImage&lt;br /&gt;
&lt;br /&gt;
Save what you've entered in the u-boot environment so far. None of these variables are used by default, so the boot behavior is still unchanged.&lt;br /&gt;
&lt;br /&gt;
 Overo # saveenv&lt;br /&gt;
&lt;br /&gt;
==Testing==&lt;br /&gt;
&lt;br /&gt;
The next step is to test the network boot by running each step manually.&lt;br /&gt;
Later we will modify u-boot to run this automatically.&lt;br /&gt;
&lt;br /&gt;
1. First tftp load the kernel into the overo memory&lt;br /&gt;
&lt;br /&gt;
 Overo # print loadaddr&lt;br /&gt;
 loadaddr=0x82000000&lt;br /&gt;
&lt;br /&gt;
 Overo # tftp ${loadaddr} uImage&lt;br /&gt;
 smc911x: detected LAN9221 controller&lt;br /&gt;
 smc911x: phy initialized&lt;br /&gt;
 smc911x: MAC 00:15:c9:28:c1:78&lt;br /&gt;
 Using smc911x-0 device&lt;br /&gt;
 TFTP from server 192.168.4.4; our IP address is 192.168.4.50&lt;br /&gt;
 Filename 'uImage'.&lt;br /&gt;
 Load address: 0x82000000&lt;br /&gt;
 Loading: T ######################################################&lt;br /&gt;
            ######################################################&lt;br /&gt;
            ######################################################&lt;br /&gt;
            #####################################################&lt;br /&gt;
 done&lt;br /&gt;
 Bytes transferred = 3147516 (3006fc hex)&lt;br /&gt;
&lt;br /&gt;
If you get the following error&lt;br /&gt;
&lt;br /&gt;
 Overo # tftp ${loadaddr} uImage&lt;br /&gt;
 smc911x: detected LAN9221 controller&lt;br /&gt;
 smc911x: phy initialized&lt;br /&gt;
 smc911x: MAC 00:00:00:00:00:00&lt;br /&gt;
 *** ERROR: `ethaddr' not set&lt;br /&gt;
&lt;br /&gt;
see Note 12 below.&lt;br /&gt;
 &lt;br /&gt;
Okay, if that worked, make sure the loadnfskernel variable we created doesn't &lt;br /&gt;
have a typo by running the same process again using the u-boot run command.&lt;br /&gt;
&lt;br /&gt;
 Overo # run loadnfskernel&lt;br /&gt;
&lt;br /&gt;
You should get the same results, a kernel tftp loaded into memory.&lt;br /&gt;
&lt;br /&gt;
If it did not work, use a network monitoring tool like tcpdump or wireshark to&lt;br /&gt;
see if you are getting any traffic. &lt;br /&gt;
&lt;br /&gt;
See the Notes section for some troubleshooting tips.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2. Test the loading of the boot arguments.&lt;br /&gt;
&lt;br /&gt;
 Overo # print bootargs&lt;br /&gt;
 ## Error: &amp;quot;bootargs&amp;quot; not defined&lt;br /&gt;
 Overo # print nfsargs&lt;br /&gt;
 nfsargs=setenv bootargs console=${console} root=/dev/nfs rootfstype=nfs ip=${ip} nfsroot=${nfsroot} rootwait&lt;br /&gt;
 Overo # run nfsargs&lt;br /&gt;
 Overo # print bootargs&lt;br /&gt;
 bootargs=console=ttyS2,115200n8 root=/dev/nfs rootfstype=nfs ip=192.168.4.50:192.168.4.4:192.168.4.1:255.255.255.0:overo:eth0:none nfsroot=/exports/overo rootwait&lt;br /&gt;
&lt;br /&gt;
Make sure that bootargs looks correct. The format of the &amp;lt;b&amp;gt;ip&amp;lt;/b&amp;gt; kernel command line argument is found in the kernel documentation under  [http://www.kernel.org/pub/linux/kernel/people/marcelo/linux-2.4/Documentation/nfsroot.txt filesystems/nfsroot.txt]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3. Boot the kernel&lt;br /&gt;
&lt;br /&gt;
With a kernel of the correct format loaded into memory, the u-boot command bootm will&lt;br /&gt;
transfer control of the processor to this kernel.&lt;br /&gt;
&lt;br /&gt;
 Overo # bootm ${loadaddr}&lt;br /&gt;
&lt;br /&gt;
 ...normal kernel boot messages here, then...&lt;br /&gt;
 net eth0: SMSC911x/921x identified at 0xd08c8000, IRQ: 336&lt;br /&gt;
 IP-Config: Complete:&lt;br /&gt;
     device=eth0, addr=192.168.4.50, mask=255.255.255.0, gw=192.168.4.1,&lt;br /&gt;
     host=overo, domain=, nis-domain=(none),&lt;br /&gt;
     bootserver=192.168.4.4, rootserver=192.168.4.4, rootpath=&lt;br /&gt;
 Looking up port of RPC 100003/2 on 192.168.4.4&lt;br /&gt;
 Looking up port of RPC 100005/1 on 192.168.4.4&lt;br /&gt;
 VFS: Mounted root (nfs filesystem) on device 0:13.&lt;br /&gt;
 Freeing init memory: 928K&lt;br /&gt;
 INIT: version 2.86 booting&lt;br /&gt;
 ...&lt;br /&gt;
 The Angstrom Distribution overo ttyS2&lt;br /&gt;
 Angstrom 2009.X-test-20100110 overo ttyS2&lt;br /&gt;
 overo login:&lt;br /&gt;
&lt;br /&gt;
==Making it automatic==&lt;br /&gt;
&lt;br /&gt;
So if everything worked and you want to boot this way every time you need to modify the &lt;br /&gt;
bootcmd u-boot variable.&lt;br /&gt;
&lt;br /&gt;
Reboot the gumstix and hit a key to stop it in u-boot again.&lt;br /&gt;
&lt;br /&gt;
 Overo # print bootcmd&lt;br /&gt;
 bootcmd=if mmc init; then if run loadbootscript; then run bootscript; else if run loaduimage; then run mmcboot; else run nandboot; fi; fi; else run nandboot; fi&lt;br /&gt;
&lt;br /&gt;
You may want to save this for the future or see the Notes section for where it is defined in the build. &lt;br /&gt;
&lt;br /&gt;
Make a new bootcmd using the u-boot environment variables that we created. &lt;br /&gt;
&lt;br /&gt;
 Overo # setenv bootcmd echo Booting nfs ...\; run loadnfskernel\; run nfsargs\; bootm \${loadaddr}&lt;br /&gt;
&lt;br /&gt;
 Overo # saveenv&lt;br /&gt;
&lt;br /&gt;
Now reboot and the gumstix should nfsboot by default.&lt;br /&gt;
&lt;br /&gt;
 Overo # reset&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&lt;br /&gt;
1. tftp and inetd. You can use inetd to run tftp if you want. Just edit the -s option for tftp appropriately in  /etc/inetd.conf &lt;br /&gt;
&lt;br /&gt;
 tftp  dgram  udp  wait  root  /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /exports/overo/boot&lt;br /&gt;
&lt;br /&gt;
and instead of this restart command&lt;br /&gt;
&lt;br /&gt;
 sudo /etc/init.d/tftpd-hpa restart&lt;br /&gt;
&lt;br /&gt;
use this one&lt;br /&gt;
&lt;br /&gt;
 sudo /etc/init.d/openbsd-inetd restart&lt;br /&gt;
&lt;br /&gt;
And finally, prevent tftpd-hpa from starting by &lt;br /&gt;
&lt;br /&gt;
 sudo mv /etc/rc2.d/S20tftpd-hpa /etc/rc2.d/s20tftpd-hpa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2. The default u-boot environment variables for the overo are defined in the u-boot source tree under &amp;lt;b&amp;gt;include/configs/omap3-overo.h&amp;lt;/b&amp;gt; if you wanted to customize or go back to defaults.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3. The documentation for linux kernel parameters for nfs booting can be found in the linux source tree under&lt;br /&gt;
[http://www.kernel.org/pub/linux/kernel/people/marcelo/linux-2.4/Documentation/nfsroot.txt Documentation/filesystems/nfsroot.txt]&lt;br /&gt;
and [http://www.kernel.org/doc/Documentation/kernel-parameters.txt Documentation/kernel-parameters.txt.]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4. tftp listens over udp on port 69&lt;br /&gt;
 $ grep tftp /etc/services&lt;br /&gt;
 tftp		69/udp&lt;br /&gt;
&lt;br /&gt;
You can check if it is listening with the following command.&lt;br /&gt;
&lt;br /&gt;
 $ netstat -an | grep udp&lt;br /&gt;
 udp        0      0 0.0.0.0:111             0.0.0.0:*                          &lt;br /&gt;
 udp        0      0 0.0.0.0:880             0.0.0.0:*                          &lt;br /&gt;
 udp        0      0 0.0.0.0:39921           0.0.0.0:*                          &lt;br /&gt;
 udp        0      0 0.0.0.0:56957           0.0.0.0:*                          &lt;br /&gt;
 udp        0      0 0.0.0.0:2049            0.0.0.0:*                          &lt;br /&gt;
 udp        0      0 0.0.0.0:59435           0.0.0.0:*                          &lt;br /&gt;
 udp        0      0 0.0.0.0:69              0.0.0.0:*                          &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
5. nfs listens on port 2049 both tcp and udp. The nfs root process uses only udp.&lt;br /&gt;
 $ grep nfs /etc/services&lt;br /&gt;
 nfs		2049/tcp			# Network File System&lt;br /&gt;
 nfs		2049/udp			# Network File System&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6. The following is a tcpdump command for watching the gumstix boot traffic. Choose the appropriate &lt;br /&gt;
interface for your workstation.&lt;br /&gt;
&lt;br /&gt;
 $ sudo tcpdump -i eth1 -l -n udp&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
7. A cross-over ethernet cable connected between the workstation and the gumstix works well&lt;br /&gt;
if you can't host services on your regular network. You may want to check before starting a &lt;br /&gt;
tftp server on a shared network. A dedicated switch/hub will also work to keep things isolated.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
8. You can check for running firewall rules with this command&lt;br /&gt;
&lt;br /&gt;
 $ sudo iptables --list&lt;br /&gt;
 Chain INPUT (policy ACCEPT)&lt;br /&gt;
 target     prot opt source               destination         &lt;br /&gt;
 Chain FORWARD (policy ACCEPT)&lt;br /&gt;
 target     prot opt source               destination         &lt;br /&gt;
 Chain OUTPUT (policy ACCEPT)&lt;br /&gt;
 target     prot opt source               destination       &lt;br /&gt;
&lt;br /&gt;
If you get output different then this (nothing running) and you are having problems booting, then &lt;br /&gt;
you should ensure you are not blocking any of the required traffic.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
9. I removed the kernel parameters for the kernel display configuration for wiki formatting reasons.&lt;br /&gt;
You should add the settings you require to the bootcmd variable in the example.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
10. There is a patch to u-boot in the current gumstix overo-oe tree that improves the ethernet&lt;br /&gt;
network speeds on the overos. You can save about 10 seconds on an nfs boot using a u-boot&lt;br /&gt;
built with this patch as well as get better ethernet performance after booting. When you do a &lt;br /&gt;
network boot without a microSD card, you are using the u-boot on the NAND flash which&lt;br /&gt;
was probably built without this patch. &lt;br /&gt;
Build a newer version of u-boot following the standard build procedures. (U-boot is built &lt;br /&gt;
whenever you build an image.) Then copy it to NAND using the instructions &lt;br /&gt;
[http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Writing-images-to-onboard-nand/111.html here.]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
11. If the gumstix seems unwilling to connect to your NFS server, ensure you've enabled NFS options in your kernel.&lt;br /&gt;
You'll need to include (directly, not as modules) CONFIG_NFS_FS, CONFIG_ROOT_NFS, CONFIG_NET_ETHERNET,&lt;br /&gt;
and, the appropriate Ethernet chip driver, in my case, CONFIG_SMC911X.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
12. Older gumstix ethernet boards did not come with an EEPROM specifying a MAC address and so the ethernet controller's reset value of FF:FF:FF:FF:FF:FF was being used by U-Boot. Older versions of U-Boot didn't complain about this, but newer versions do. So if you are in the situation with an older gumstix ethernet board running a newer U-Boot, you must specify an ethaddr U-Boot environment variable manually if you want to tftp boot. Newer U-Boot still allows FF:FF:FF:FF:FF:FF when set from the environment, though that's just an oversight that might get fixed anytime. &lt;br /&gt;
&lt;br /&gt;
This works for now. &lt;br /&gt;
&lt;br /&gt;
 setenv ethaddr FF:FF:FF:FF:FF:FF&lt;br /&gt;
&lt;br /&gt;
If U-Boot starts checking more thoroughly, you may have to use another value. &lt;br /&gt;
&lt;br /&gt;
This is not a problem once Linux is booted. The Linux driver will assign a random MAC if it detects FF:FF:FF:FF:FF:FF.&lt;br /&gt;
&lt;br /&gt;
Again this is a problem that is going away and shouldn't affect any new gumstix owners.&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=ROS&amp;diff=6121</id>
		<title>ROS</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=ROS&amp;diff=6121"/>
				<updated>2016-04-01T21:01:20Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: /* References */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Rob Linsalata of [http://www.willowgarage.com Willow Garage] has posted [http://www.willowgarage.com/blog/2012/12/11/exploring-ros-turtlecore a great demo video] of [http://www.ros.org ROS] running on [https://www.gumstix.com Gumstix Overo COM] and [http://www.irobot.com iRobot Create] platform. Unfortunately it looks like Rob did not get a chance to write up a full tutorial on what it takes to get ROS running on the Gumstix and iRobot setup. So here is how I managed to get ROS Groovy (the latest release as of December 2012) to drive the Create.&lt;br /&gt;
&lt;br /&gt;
== Prebuilt Image ==&lt;br /&gt;
You can download the image resulting from this guide from [https://s3-us-west-2.amazonaws.com/linaro/GumstixLinaroROS_20130204_2.gz here] and its [https://s3-us-west-2.amazonaws.com/linaro/md5sum MD5SUM].&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* 1 Development computer running Ubuntu (I used 12.04)&lt;br /&gt;
* 1 Gumstix Overo COM with WiFi&lt;br /&gt;
* 1 Gumstix Turtlecore Expansion board&lt;br /&gt;
* 1 MicroSD Card (8GB or larger recommended)&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
=== Get an Operating System ===&lt;br /&gt;
&lt;br /&gt;
First thing you probably want to do is to [http://wiki.gumstix.org/index.php?title=Installing_Linaro_Image  install Linaro on an Overo COM]. [http://www.linaro.org/ Linaro] is a variant of Ubuntu and is designed for embedded application. So follow that link and get a Linaro image flashed into your MicroSD. The next part is where the challenge arises. Willow Garage does not provide ARM binaries. They only provide precompiled packages for your everyday computers running Intel or AMD CPUs. So we have to compile ROS from scratch for ARM architecture. Setting up a cross compilation environment is not a simple task, so I decided to do it natively on an Overo (even it means letting it compile over night).&lt;br /&gt;
&lt;br /&gt;
=== ROS Native Compilation ===&lt;br /&gt;
&lt;br /&gt;
# Get all libraries and tools&lt;br /&gt;
#:   $ sudo apt-get install python-pip build-essential python-yaml cmake subversion wget python-setuptools mercurial git-core python-yaml libapr1-dev libaprutil1-dev libbz2-dev python-dev python-empy python-nose libgtest-dev python-paramiko libboost-all-dev liblog4cxx10-dev pkg-config libqt4-dev qt4-qmake&lt;br /&gt;
# Some of the ROS tools need to come from PIP as I wasn't able to get them through Aptitude&lt;br /&gt;
#:   $ pip install rospkg rosdep rosinstall catkin-pkg wstool&lt;br /&gt;
# Initialize dependencies&lt;br /&gt;
#:   $ sudo rosdep init&lt;br /&gt;
#:   $ rosdep update&lt;br /&gt;
# Now we create a catkin workspace and initialize to build core ROS packages&lt;br /&gt;
#:   $ mkdir -p ~/ros_core_ws&lt;br /&gt;
#:   $ cd ~/ros_core_ws&lt;br /&gt;
#:   $ wstool init src https://raw.github.com/gist/4129582/e8889c0fc3af2f95892190e0fabc2bd535208355/base.rosinstall&lt;br /&gt;
# Build catkin and install it. catkin is the low-level build system of ROS&lt;br /&gt;
#:   $ ./src/catkin/bin/catkin_make&lt;br /&gt;
#:   $ ./src/catkin/bin/catkin_make install&lt;br /&gt;
# Setup catkin build environment&lt;br /&gt;
#:   $ source ~/ros_core_ws/install/setup.bash&lt;br /&gt;
# Now we create and initialize a workspace to put all our ROS packages&lt;br /&gt;
#:   $ mkdir ~/ros&lt;br /&gt;
#:   $ cd ~/ros&lt;br /&gt;
#:   $ rosws init . ~/ros_core_ws/install/&lt;br /&gt;
# Current ROS distribution does not recognize Linaro. We have to patch the os detection file.&lt;br /&gt;
#:   $ vim /usr/local/lib/python2.7/dist-packages/rospkg/os_detect.py&lt;br /&gt;
# Add the following bold faced changes &lt;br /&gt;
#:   OS_UBUNTU='ubuntu' &lt;br /&gt;
#:   '''OS_LINARO='linaro'''&lt;br /&gt;
#:   OsDetect.register_default(OS_UBUNTU, LsbDetect(&amp;quot;Ubuntu&amp;quot;)) &lt;br /&gt;
#:   '''OsDetect.register_default(OS_UBUNTU, LsbDetect(&amp;quot;Linaro&amp;quot;))'''&lt;br /&gt;
# There are a couple dependencies required before we can compile iRobot's Create ROS package&lt;br /&gt;
#:   $ roslocate info kdl &amp;gt; kdl.rosinstall&lt;br /&gt;
#:   $ rosws merge kdl.rosinstall&lt;br /&gt;
#:   $ rosws update&lt;br /&gt;
#:   $ rosdep install kdl&lt;br /&gt;
#:   $ rosmake kdl&lt;br /&gt;
#:   $ roslocate info bullet &amp;gt; bullet.rosinstall&lt;br /&gt;
#:   $ rosws merge bullet.rosinstall&lt;br /&gt;
#:   $ rosws update&lt;br /&gt;
#:   $ rosdep install bullet&lt;br /&gt;
#:   $ rosmake bullet&lt;br /&gt;
#If the last step fails indicating that a packaged named bullet was not found, try updating dependency map before running rosmake&lt;br /&gt;
#:   $ rosdep update&lt;br /&gt;
# And build geometry package, the last dependency&lt;br /&gt;
#:   $ roslocate info geometry &amp;gt; geometry.rosinstall&lt;br /&gt;
#In the geometry package's rosinstall file, switch the branch name to fuerte_devel. For some reason the default branch does not work.&lt;br /&gt;
#:   $ vim geometry.rosinstall&lt;br /&gt;
#::      //version: tf_rework&lt;br /&gt;
#::        version: fuerte_devel&lt;br /&gt;
#:   $ rosws merge geometry.rosinstall&lt;br /&gt;
#:   $ rosws update&lt;br /&gt;
#:   $ rosdep install geometry&lt;br /&gt;
#:   $ rosmake geometry&lt;br /&gt;
# Finally we can install iRobot's ROS package&lt;br /&gt;
#:   $ roslocate info irobot_create_2_1 &amp;gt; irobot_create_2_1.rosinstall&lt;br /&gt;
#:   $ vim irobot_create_2_1.rosinstall&lt;br /&gt;
#:   $ rosws merge irobot_create_2_1 &lt;br /&gt;
#:   $ rosws update&lt;br /&gt;
#:   $ rosmake irobot_create_2_1&lt;br /&gt;
&lt;br /&gt;
== Running ROS ==&lt;br /&gt;
&lt;br /&gt;
# We have everything in place to drive the Create around. To start the core services of ROS, do the following:&lt;br /&gt;
#:   $ cd ~/ros&lt;br /&gt;
#:   $ . ./setup.sh&lt;br /&gt;
#:   $ roscore&lt;br /&gt;
# The iRobot Create is connected to ttyO0 on Gumstix Turtlecore. So make the change: &lt;br /&gt;
#:   $ rosparam set /brown/irobot_create_2_1/port /dev/ttyO0 &lt;br /&gt;
# Now we can start the driver program in another terminal:&lt;br /&gt;
#:   $ rosrun irobot_create_2_1 driver.py&lt;br /&gt;
# Again, in a new terminal while roscore and the driver program are running, you can do the following to make the Create roll forward!!:&lt;br /&gt;
#:   $ rosservice call /tank 1 100 100 &amp;amp;amp;&amp;amp;amp; sleep 0.5 &amp;amp;amp;&amp;amp;amp; rosservice call /brake 1&lt;br /&gt;
&lt;br /&gt;
== Issues and Workarounds ==&lt;br /&gt;
&lt;br /&gt;
It is discovered that the original image released (in Jan. 2013) cannot bring-up WiFi when used with expansion boards with an Ethernet port. Here is the workaround if you are already using the image:&lt;br /&gt;
#  Remove network-manager.conf and networking.conf from /etc/init directory, and 70-persistent-net.rules from /etc/udev/rules.d &lt;br /&gt;
#  Follow [[Overo_Wifi]]&lt;br /&gt;
#  This will disable the GUI network manager. However you can easily bring up your wireless interface with command 'ifup wlan0'.&lt;br /&gt;
#  Additionally if you would like to auto-connect on boot, configure the interface in /etc/wpa_supplicant.conf as 'auto' as below:&lt;br /&gt;
 auto wlan0&lt;br /&gt;
 iface wlan0 inet dhcp&lt;br /&gt;
 pre-up wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant.conf -B&lt;br /&gt;
 down killall wpa_supplicant&lt;br /&gt;
The Prebuilt Image section of this article already contains the updated image as well (published Feb. 2013).&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
*[http://pharos.ece.utexas.edu/wiki/index.php/Writing_A_Simple_Node_that_Moves_the_iRobot_Create_Robot Writing A Simple Node that Moves the iRobot Create Robot - Pharos Testbed Wiki]&lt;br /&gt;
*[http://pharos.ece.utexas.edu/wiki/index.php/Using_ROS_Electric_to_Tele-Operate_an_iRobot_Create_Robot Using ROS Electric to Tele-Operate an iRobot Create Robot - Pharos Testbed Wiki]&lt;br /&gt;
*[http://ros.org/wiki/groovy/Installation/Source Installing on Ubuntu from source - ROS.org]&lt;br /&gt;
*[http://ros.org/wiki/TurtleCore Turtlecore - ROS.org]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Category:SPI&amp;diff=6120</id>
		<title>Category:SPI</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Category:SPI&amp;diff=6120"/>
				<updated>2016-04-01T21:01:00Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: /* Additional Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Overo SPI ==&lt;br /&gt;
&lt;br /&gt;
Kernel documentation for the SPI framework can be found in the Documentation directory of your linux source tree or here [http://www.kernel.org/doc/Documentation/spi/spi-summary Documentation/spi/spi-summary].&lt;br /&gt;
&lt;br /&gt;
Linux SPI drivers are broken into two parts. A controller driver that handles direct communication with the hardware and a protocol driver to handle the details of the data for a particular device. The interface defined in spi.c/spi.h is the bridge between the two.&lt;br /&gt;
&lt;br /&gt;
For the OMAP3's, the controller driver is omap2_mcspi.c. The OMAP3's have 4 SPI busses which the omap2_mcspi driver handles. The kernel config option to include the omap2_mcspi driver is CONFIG_SPI_OMAP24XX and is already built into standard Gumstix Overo kernels.&lt;br /&gt;
&lt;br /&gt;
The OMAP3 SPI controller has the ability to act as either a SPI master or SPI slave, but the current kernel code only supports the SPI master configuration.&lt;br /&gt;
&lt;br /&gt;
Gumstix brings out SPI bus 1 chip select pins 0 and 1 on most of the Overo expansion boards.&lt;br /&gt;
&lt;br /&gt;
SPI pins for the OMAP3 are multi-functional and need to be multiplexed for SPI use. The SPI bus 1 MOSI, SIMO, CLK, CS0 and CS1 brought out on the Overo expansion boards are correctly setup for SPI use. This configuration is done in the bootloader U-Boot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Protocol Drivers ===&lt;br /&gt;
&lt;br /&gt;
A protocol driver is what you need to use the SPI system on Linux.&lt;br /&gt;
&lt;br /&gt;
There are a couple of steps that need to happen.&lt;br /&gt;
&lt;br /&gt;
# Slave devices must be registered for each SPI bus and chip select position used.&lt;br /&gt;
# A protocol driver needs to be registered with the system using the same name as the devices it will be handling so the kernel can link the two. &lt;br /&gt;
&lt;br /&gt;
It doesn't matter which order these steps are performed. Most existing SPI drivers do the device registration completely outside the driver code in a board file. If you are writing your own driver, it is probably more convenient to do it in the driver code itself. When both device and driver registration are completed, the probe() function for the protocol driver will be called and SPI communications can start.&lt;br /&gt;
&lt;br /&gt;
SPI data communication happens using I/O queues. One or more SPI transfers are bundled up into SPI messages in the protocol driver. The protocol driver submits the SPI messages to the controller driver's I/O queue. These messages are then processed asynchronously by the controller driver in FIFO order. As each message finishes, the controller notifies the protocol driver via a callback function. &lt;br /&gt;
&lt;br /&gt;
There are some synchronous helper functions exposed by the interface to simplify the asynchronous behaviour of the Linux SPI system for protocol driver writers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spidev ===&lt;br /&gt;
&lt;br /&gt;
Spidev is a standard Linux module that implements a generic SPI protocol driver while exposing a char device interface to userland.&lt;br /&gt;
&lt;br /&gt;
The documentation for spidev can be found here - [http://www.mjmwired.net/kernel/Documentation/spi/spidev Documentation/spi/spidev]. &lt;br /&gt;
&lt;br /&gt;
The spidev driver does not register devices so a board file patch like this one [https://github.com/scottellis/spike/blob/0d633a22da47022073abd9224ec8709c5b9db932/patches/spidev-enable.patch spidev-enable.patch] is required to use spidev with the Overos. You should customize that patch for the particular device(s) you are using. Things you might want to change are the bus speed and the mode.&lt;br /&gt;
&lt;br /&gt;
The spidev driver is already built into the standard Overo kernels. &lt;br /&gt;
&lt;br /&gt;
Only one protocol driver at a time can manage a particular CS line on a given SPI bus.&lt;br /&gt;
&lt;br /&gt;
As you can see from the above patch, the standard Overo kernels already have devices registering for SPI bus 1 CS0 (ADS7846 touchscreen controller) and SPI bus 1 CS1 (LGPHILIPS LB035Q02 display driver). You will have to disable one or both of these drivers in your kernel config if you want to use those respective CS lines.&lt;br /&gt;
&lt;br /&gt;
If you are using OE, apply the board patch by copying it to the org.openembedded.dev/recipes/linux/linux-omap3-2.6.xx/ directory and then adding a line to include the patch in your kernel recipe org.openembedded.dev/recipes/linux/linux-omap3_2.6.xx.bb&lt;br /&gt;
&lt;br /&gt;
There are more detailed instructions for getting spidev working on an Overo at the 'Writing a Linux SPI driver' link below.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Additional Links ===&lt;br /&gt;
&lt;br /&gt;
[http://www.jumpnowtek.com/index.php?option=com_content&amp;amp;view=article&amp;amp;id=57:gumstix-spi-driver-part1&amp;amp;catid=35:gumstix&amp;amp;Itemid=62 Writing a Linux SPI driver] - A series of articles using Gumstix Overo in the examples&lt;br /&gt;
&lt;br /&gt;
[http://elinux.org/BeagleBoard/SPI BeagleBoard/SPI] - Beagleboard SPI section on eLinux.org&lt;br /&gt;
&lt;br /&gt;
[http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus Serial Peripheral Interface Bus] - Wikipedia SPI article&lt;br /&gt;
&lt;br /&gt;
[http://gumstix.8.x6.nabble.com/template/NamlServlet.jtp?macro=search_page&amp;amp;node=558772&amp;amp;query=spidev Gumstix mailing list archives for spidev]&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6119</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6119"/>
				<updated>2016-04-01T21:00:00Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;''Welcome to the Gumstix User Wiki''&amp;lt;/big&amp;gt;     &lt;br /&gt;
&lt;br /&gt;
This site is provided so that Gumstix users can share their knowledge, showcase their Gumstix-based projects, and pass on links to other sources of information and materials.  This information is entirely user generated and supported.  Please contribute your know-how to help your fellow developers.&lt;br /&gt;
&lt;br /&gt;
  '''Community additions and edits are always encouraged, but please read the help page before making any major edits.'''&lt;br /&gt;
  ''You will need to create a new user account if you would like to contribute or edit content on this site.''&lt;br /&gt;
&lt;br /&gt;
Visit the [http://gumstix.org Gumstix Developer Center] for official Gumstix documentation and other information of interest to developers.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;&lt;br /&gt;
''Focus'']]&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;''All Topics'']]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - Android|Android]]&lt;br /&gt;
* [[:Category:how to - eclipse|Eclipse]]&lt;br /&gt;
* [[:Category:How_to_-_Migrate_to_Gumstix|Migrate to Gumstix]]&lt;br /&gt;
* [[Linaro]]&lt;br /&gt;
* [[Installing Linaro Image]]&lt;br /&gt;
* [[LinuxLink]]&lt;br /&gt;
* [[:Category:how to - Ubuntu|Ubuntu]]&lt;br /&gt;
* [[:Category:how to - Debian|Debian]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[1-wire|1-wire]]&lt;br /&gt;
* [[:Category:how to - audio|Audio]]&lt;br /&gt;
* [[:Category:how to - adc|ADC]]&lt;br /&gt;
* [[AutoLogin|Automatic Logins]]&lt;br /&gt;
* [[:Category:how to - batteries|Batteries]]&lt;br /&gt;
* [[:Category:how to - bluetooth|Bluetooth]]&lt;br /&gt;
* [[:Category:how to - Buildroot overo|Buildroot (overo)]]&lt;br /&gt;
* [[:Category:Connect_hardware|Connect Hardware]]&lt;br /&gt;
* [[Caspa_camera_boards|Caspa camera boards]]&lt;br /&gt;
* [[:Category:how to - displays|Displays]]&lt;br /&gt;
* [[:Category:how to - DSP|DSP]]&lt;br /&gt;
* [[:Category:how_to_-_ethernet|Ethernet]]&lt;br /&gt;
* [[:Category:how_to_-_expansion_boards|Expansion Boards]]&lt;br /&gt;
* [[:Category:how to - fedora|Fedora]]&lt;br /&gt;
* [[:Category:how to - Fast Boot|Fast Boot]]&lt;br /&gt;
* [[:Category:how to - Fortran|Fortran]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Gaining Console Connection via Terminal]]&lt;br /&gt;
* [[:Category:how to - git|Git]]&lt;br /&gt;
* [[GPIO|GPIO]]&lt;br /&gt;
* [[GPS|GPS]]&lt;br /&gt;
* [[:Category:how to - gui|GUI]]&lt;br /&gt;
* [[:Category:how to - general|General]]&lt;br /&gt;
* [[:Category:how to - Build helloworld|HelloWorld]]&lt;br /&gt;
* [[HelloWorld|HelloWorld in Python, C, C++]]&lt;br /&gt;
* [[HelloWorld in Java|HelloWorld in Java]]&lt;br /&gt;
* [[:Category:how to - i2c|I2C]]&lt;br /&gt;
* [[:Category:how to - IMU|IMU]]&lt;br /&gt;
* [[:Category:how to - JAVA|JAVA]]&lt;br /&gt;
* [[Kernel Build]]&lt;br /&gt;
* [[Kernel Reconfiguration|Kernel Reconfiguration]]&lt;br /&gt;
* [[:Category:how to - Known Issues|Known Issues]]&lt;br /&gt;
* [[:Category:how to - LCD|LCD]]&lt;br /&gt;
* [[:Category:how to - Low Power|Low Power]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - linux|Linux]]&lt;br /&gt;
* [[AudioIn | Use a microphone]]&lt;br /&gt;
* [[MicroSd |MicroSD Duplication]]&lt;br /&gt;
* [[:Category:how to - Network_Boot|Network Boot]]&lt;br /&gt;
* [[:Category:how to - OpenEmbedded|OpenEmbedded]]&lt;br /&gt;
* [[Overo Bare Metal|Overo Bare Metal]]&lt;br /&gt;
* [[:Category:how to - player|Player]]&lt;br /&gt;
* [[:Category:How to - PWM|PWM]]&lt;br /&gt;
* [[:Category:How_to_-_qemu|Qemu]]&lt;br /&gt;
* [[:Category:How_to_-_Qt|Qt]]&lt;br /&gt;
* [[:Category:how to - robotics|Robotics]]&lt;br /&gt;
* [[ROS|ROS]]&lt;br /&gt;
* [[RoboVero|RoboVero]]&lt;br /&gt;
* [[:Category:how to - security|Security]]&lt;br /&gt;
* [[:Category:SPI|SPI]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:SUSE|SUSE]]&lt;br /&gt;
* [[Remote Debugging with GDB|Remote Debugging with GDB]]&lt;br /&gt;
* [[Toolchain]]&lt;br /&gt;
* [[U-Boot|UBoot]]&lt;br /&gt;
* [[:Category:how to - usb|USB]]&lt;br /&gt;
* [[Verdex Git Repository]]&lt;br /&gt;
* [[Verdex JTAG]]&lt;br /&gt;
* [[VerdexPro U-Boot Flashing Fix]]&lt;br /&gt;
* [[:Category:how to - virtual machine|Virtual Machine]]&lt;br /&gt;
* [[:Category:how to - webcams|Webcams]]&lt;br /&gt;
* [[:Category:how to - wifi|Wifi]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:projects|User Projects]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:User_pics_videos|User Pics &amp;amp; Videos]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:resources|Resources]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:faqs|Questions and Answers]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:projects - audio|Audio]]&lt;br /&gt;
* [[:Category:projects - competitions|Competitions]]&lt;br /&gt;
* [[:Category:projects - displays|Displays]]&lt;br /&gt;
* [[:Category:projects - pdas|PDA's]]&lt;br /&gt;
* [[:Category:Projects_-Research_and_Education|Research &amp;amp; Education]]&lt;br /&gt;
* [[:Category:projects - monitoring and control|Monitoring and Control]]&lt;br /&gt;
* [[:Category:projects - robotics|Robotics &amp;amp; UAV's]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [http://www.youtube.com/results?uploaded=m&amp;amp;search_query=gumstix&amp;amp;search_type=videos&amp;amp;suggested_categories=28&amp;amp;uni=3&amp;amp;search_sort=video_date_uploaded Gumstix on Youtube]&lt;br /&gt;
* [http://www.flickr.com/search/?q=gumstix&amp;amp;s=rec Gumstix in Flickr]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Windows CE solution|Solutions for Windows CE]]&lt;br /&gt;
* [[Qt solution|Solutions for Qt]]&lt;br /&gt;
* [[Manufacturer's specifications|Specifications for Processors &amp;amp; Components]]&lt;br /&gt;
* [[Software information]]&lt;br /&gt;
* [[Verified Peripherals]]&lt;br /&gt;
* [[Third Party Boards]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Gumstix Community Mailing List (no cost)&lt;br /&gt;
* [https://lists.sourceforge.net/lists/listinfo/gumstix-users Sign-up]&lt;br /&gt;
* [http://gumstix.8.x6.nabble.com/ Archives]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6118</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=Main_Page&amp;diff=6118"/>
				<updated>2016-04-01T20:59:28Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;''Welcome to the Gumstix User Wiki''&amp;lt;/big&amp;gt;     &lt;br /&gt;
&lt;br /&gt;
This site is provided so that Gumstix users can share their knowledge, showcase their Gumstix-based projects, and pass on links to other sources of information and materials.  This information is entirely user generated and supported.  Please contribute your know-how to help your fellow developers.&lt;br /&gt;
&lt;br /&gt;
  '''Community additions and edits are always encouraged, but please read the help page before making any major edits.'''&lt;br /&gt;
  ''You will need to create a new user account if you would like to contribute or edit content on this site.''&lt;br /&gt;
&lt;br /&gt;
Visit the [http://gumstix.org Gumstix Developer Center] for official Gumstix documentation and other information of interest to developers.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;&lt;br /&gt;
''Focus'']]&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; |&lt;br /&gt;
[[:Category:How-tos|User How-Tos&amp;lt;br /&amp;gt;''All Topics'']]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - Android|Android]]&lt;br /&gt;
* [[:Category:how to - eclipse|Eclipse]]&lt;br /&gt;
* [[:Category:How_to_-_Migrate_to_Gumstix|Migrate to Gumstix]]&lt;br /&gt;
* [[Linaro]]&lt;br /&gt;
* [[Installing Linaro Image]]&lt;br /&gt;
* [[LinuxLink]]&lt;br /&gt;
* [[:Category:how to - Ubuntu|Ubuntu]]&lt;br /&gt;
* [[:Category:how to - Debian|Debian]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[1-wire|1-wire]]&lt;br /&gt;
* [[:Category:how to - audio|Audio]]&lt;br /&gt;
* [[:Category:how to - adc|ADC]]&lt;br /&gt;
* [[AutoLogin|Automatic Logins]]&lt;br /&gt;
* [[:Category:how to - batteries|Batteries]]&lt;br /&gt;
* [[:Category:how to - bluetooth|Bluetooth]]&lt;br /&gt;
* [[:Category:how to - Buildroot overo|Buildroot (overo)]]&lt;br /&gt;
* [[:Category:Connect_hardware|Connect Hardware]]&lt;br /&gt;
* [[Caspa_camera_boards|Caspa camera boards]]&lt;br /&gt;
* [[:Category:how to - displays|Displays]]&lt;br /&gt;
* [[:Category:how to - DSP|DSP]]&lt;br /&gt;
* [[:Category:how_to_-_ethernet|Ethernet]]&lt;br /&gt;
* [[:Category:how_to_-_expansion_boards|Expansion Boards]]&lt;br /&gt;
* [[:Category:how to - fedora|Fedora]]&lt;br /&gt;
* [[:Category:how to - Fast Boot|Fast Boot]]&lt;br /&gt;
* [[:Category:how to - Fortran|Fortran]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Gaining Console Connection via Terminal]]&lt;br /&gt;
* [[:Category:how to - git|Git]]&lt;br /&gt;
* [[GPIO|GPIO]]&lt;br /&gt;
* [[GPS|GPS]]&lt;br /&gt;
* [[:Category:how to - gui|GUI]]&lt;br /&gt;
* [[:Category:how to - general|General]]&lt;br /&gt;
* [[:Category:how to - Build helloworld|HelloWorld]]&lt;br /&gt;
* [[HelloWorld|HelloWorld in Python, C, C++]]&lt;br /&gt;
* [[HelloWorld in Java|HelloWorld in Java]]&lt;br /&gt;
* [[:Category:how to - i2c|I2C]]&lt;br /&gt;
* [[:Category:how to - IMU|IMU]]&lt;br /&gt;
* [[:Category:how to - JAVA|JAVA]]&lt;br /&gt;
* [[Kernel Build]]&lt;br /&gt;
* [[Kernel Reconfiguration|Kernel Reconfiguration]]&lt;br /&gt;
* [[:Category:how to - Known Issues|Known Issues]]&lt;br /&gt;
* [[:Category:how to - LCD|LCD]]&lt;br /&gt;
* [[:Category:how to - Low Power|Low Power]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:how to - linux|Linux]]&lt;br /&gt;
* [[AudioIn | Use a microphone]]&lt;br /&gt;
* [[MicroSd |MicroSD Duplication]]&lt;br /&gt;
* [[:Category:how to - Network_Boot|Network Boot]]&lt;br /&gt;
* [[:Category:how to - OpenEmbedded|OpenEmbedded]]&lt;br /&gt;
* [[Overo Bare Metal|Overo Bare Metal]]&lt;br /&gt;
* [[:Category:how to - player|Player]]&lt;br /&gt;
* [[:Category:How to - PWM|PWM]]&lt;br /&gt;
* [[:Category:How_to_-_qemu|Qemu]]&lt;br /&gt;
* [[:Category:How_to_-_Qt|Qt]]&lt;br /&gt;
* [[:Category:how to - robotics|Robotics]]&lt;br /&gt;
* [[ROS|ROS]]&lt;br /&gt;
* [[RoboVero|RoboVero]]&lt;br /&gt;
* [[:Category:how to - security|Security]]&lt;br /&gt;
* [[:Category:SPI|SPI]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:SUSE|SUSE]]&lt;br /&gt;
* [[Remote Debugging with GDB|Remote Debugging with GDB]]&lt;br /&gt;
* [[Toolchain]]&lt;br /&gt;
* [[U-Boot|UBoot]]&lt;br /&gt;
* [[:Category:how to - usb|USB]]&lt;br /&gt;
* [[Verdex Git Repository]]&lt;br /&gt;
* [[Verdex JTAG]]&lt;br /&gt;
* [[VerdexPro U-Boot Flashing Fix]]&lt;br /&gt;
* [[:Category:how to - virtual machine|Virtual Machine]]&lt;br /&gt;
* [[:Category:how to - webcams|Webcams]]&lt;br /&gt;
* [[:Category:how to - wifi|Wifi]]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
{|cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top;background-color:#f5fffa;border:1px solid #bcc&amp;quot;&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:projects|User Projects]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:User_pics_videos|User Pics &amp;amp; Videos]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:resources|Resources]]&lt;br /&gt;
! style=&amp;quot;margin:0;background:#cef2e0;font-size:120%;font-weight:bold;border:1px solid #a3b0bf;text-align:left;color:#000;padding:0.2em 0.4em;&amp;quot; | [[:Category:faqs|Questions and Answers]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[:Category:projects - audio|Audio]]&lt;br /&gt;
* [[:Category:projects - competitions|Competitions]]&lt;br /&gt;
* [[:Category:projects - displays|Displays]]&lt;br /&gt;
* [[:Category:projects - pdas|PDA's]]&lt;br /&gt;
* [[:Category:Projects_-Research_and_Education|Research &amp;amp; Education]]&lt;br /&gt;
* [[:Category:projects - monitoring and control|Monitoring and Control]]&lt;br /&gt;
* [[:Category:projects - robotics|Robotics &amp;amp; UAV's]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [http://www.youtube.com/results?uploaded=m&amp;amp;search_query=gumstix&amp;amp;search_type=videos&amp;amp;suggested_categories=28&amp;amp;uni=3&amp;amp;search_sort=video_date_uploaded Gumstix on Youtube]&lt;br /&gt;
* [http://www.flickr.com/search/?q=gumstix&amp;amp;s=rec Gumstix in Flickr]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
* [[Windows CE solution|Solutions for Windows CE]]&lt;br /&gt;
* [[Qt solution|Solutions for Qt]]&lt;br /&gt;
* [[Manufacturer's specifications|Specifications for Processors &amp;amp; Components]]&lt;br /&gt;
* [[Software information]]&lt;br /&gt;
* [[Verified Peripherals]]&lt;br /&gt;
* [[Third Party Boards]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Gumstix Community Mailing List (no cost)&lt;br /&gt;
* [https://lists.sourceforge.net/lists/listinfo/gumstix-users Sign-up]&lt;br /&gt;
* [http://old.nabble.com/Gumstix-f22543.html Archives]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=User_talk:Arun&amp;diff=6117</id>
		<title>User talk:Arun</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=User_talk:Arun&amp;diff=6117"/>
				<updated>2015-10-20T21:50:05Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''Gumstix User Wiki''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [[Help:Contents|help pages]].&lt;br /&gt;
Again, welcome and have fun! [[User:Ashcharles|Ashcharles]] 14:50, 20 October 2015 (PDT)&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	<entry>
		<id>https://wiki.gumstix.com/index.php?title=User:Arun&amp;diff=6116</id>
		<title>User:Arun</title>
		<link rel="alternate" type="text/html" href="https://wiki.gumstix.com/index.php?title=User:Arun&amp;diff=6116"/>
				<updated>2015-10-20T21:50:04Z</updated>
		
		<summary type="html">&lt;p&gt;Ashcharles: Creating user page with biography of new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I have completed my MSc in Computer Science at Simon Fraser University, Burnaby, Canada and working at Gumstix since February 2015.&lt;/div&gt;</summary>
		<author><name>Ashcharles</name></author>	</entry>

	</feed>