Introduction: Zybot - Getting Started Guide and Source Code

The Zybot is quite the project. It requires a lot of steps, multiple Instructables, and lots of hardware. I would highly recommend reading each Instructable to make sure you know what you are getting yourself into before you start.

This Instructable will tell you the correct order to do the Instructables in, as well as links to them and provides a brief summary of each Instructable. Here I will give a brief overview of the project and what it entails.

The outcome:

In the end of this project you will have a via WiFi controlled Robot that has a video stream that is accessible via WiFi. Since everything runs off of WiFi you will need a steady connection under the same WiFi network, otherwise the controller will stop working and the video feed will freeze.

The theory:

The Zybot uses the Zynq chip with a dual core Arm processor, which allows you to run Ubuntu directly on the Zybo. Also running on the Zybo is the server which allows you to access the camera feed, and control the Zybot. The Zybot is controlled by an Xbox controller that attaches to your computer, and runs the software that lets the controller talk, via WiFi, to the Zybot. You can pull up the camera feed on Firefox on any computer connected to the same wireless network. The way we had the most fun with the Zybot was having the controller and video feed on the same computer so we could drive the Zybot around the office only being able to see where it is based on the camera feed.

Step 1: Dual Booting Windows and Ubuntu

For step 2 and step 3 you must have access to a Linux machine. You can either borrow someone's Linux machine, use a virtual machine or my favorite choice, dual boot your Windows machine.

Here is an Instructable on dual booting with Ubuntu.

Step 2: Setting Up the Zybot - Software

The first step is Setting up the Zybot - Software, where you will set up the Linux distribution and put the HDL design for controlling the motors and servos on the Zybo.

Step 3: Setting Up the Zybot - Server

The second step is Setting up the Zybot - Server. This instructable will guide you through setting up the server on the Zybot, and getting the camera and WiFi working.

Step 4: Setting Up the Zybot - Power Considerations

The third step is setting up the Zybot - Power Considerations. This step is VERY important. You won't actually do anything in this step, but it will go through all the power considerations when setting up the Zybot. The voltage regulator I used isn't available for purchase so I will go through everything you need to consider when powering your Zybot. And I will remind you several times to TEST EVERYTHING, before plugging power in. I do not want want anyone using this tutorial to fry any Zybo boards.

Step 5: Setting Up the Zybot - Hardware

The fourth step is to build the hardware of the Zybot. There are two options depending on the base plates you use and design you want. You can either use Setting up the Zybot - Hardware or Setting Up the Zybot Hardware - Round and Tall Edition. That is, putting the actual Zybot together. Here you will find everything you need, hardware wise, to make a fully functional Zybot.

Step 6: Setting Up the Zybot - Controller

The fifth step is Setting up the Zybot - Controller. This tutorial will guide you through downloading the software you need to run the controller as well as tell you how to use it.

Step 7: Setting Up the Zybot - Troubleshooting

The next step is Setting up the Zybot - Troubleshooting. You should go to this tutorial is for some reason your Zybot doesn't work. I will go through all the things that went wrong when we were first creating the Zybot, and some things that could be going wrong as well as indicators of what could be going wrong. I will continue to add to this as I get questions about the Zybot.

Step 8: The Source Files

The file contains the device tree, kernel, uboot, and hardware base design for those that would like to modify any part of the design.