ECE597 Fall2014 Ringing Servos

Team members: Mark Morrison, Peter Olejnik,  Randy Turner

Grading Template
I'm using the following template to grade. Each slot is 10 points. 0 = Missing, 5=OK, 10=Wow!

 00 Executive Summary 00 Installation Instructions 00 User Instructions 00 Highlights 00 Theory of Operation 00 Work Breakdown 00 Future Work 00 Conclusions 00 Demo 00 Late Comments: I'm looking forward to seeing this.

Score: 10/100

(Inline Comment)

Executive Summary
The goal of the project at this moment is to use a cape that gives the BeagleBone usage of 32 PWM ports and to attach servo motors to it. The servo motors will then drive a mechanism that will ring bells of sorts. We have successfully used the PWM cape to drive a servo to a specified position using a shell script. This was more difficult than it was originally thought, because the cape uses I2C1 on the board, which is I2C2 in software, and because there were multiple other configurations we needed to change to set up the cape. We use a javascript program to output I2C messages to the cape to control the servos. The servos are connected to a mechanism with two bells, and when the servo rotates the bells ring. The bells do not require a great amount of movement to ring, but need to be oriented correctly to get the best sound, so the program only moves the servo about 15 degrees away from the center in either direction.

Give two sentence intro to the project.

Give two sentences telling what works.

Give two sentences telling what isn't working.

End with a two sentence conclusion.

The sentence count is approximate and only to give an idea of the expected length.

Hardware
Two diffrent types of servos were used.


 * Dynam DY1008 9G Digital Servo
 * Solar Servo D220 0.11@4.8v Digital 9g Micro Servo

To drive all these the following cape was used:


 * PWM Cape

These were provided, courtesy of Dr. Mark Yoder

Packaging
If you have hardware, consider Small Build, Big Execuition for ideas on the final packaging.

Installation Instructions
Give step by step instructions on how to install your project.


 * Include your github path as a link like this to the read-only git site: https://github.com/randman2011/ECE597-RingingBells.
 * Be sure your README.md is includes an up-to-date and clear description of your project so that someone who comes across you git repository can quickly learn what you did and how they can reproduce it.
 * Include a Makefile for you code.
 * Include any additional packages installed via opkg.
 * Include kernel mods.
 * If there is extra hardware needed, include links to where it can be obtained.

User Instructions
Once everything is installed, how do you use the program? Give details here, so if you have a long user manual, link to it here.

Highlights
Here is where you brag about what your project can do.

Include a YouTube demo.

Theory of Operation
Give a high level overview of the structure of your software. Are you using GStreamer? Show a diagram of the pipeline. Are you running multiple tasks? Show what they do and how they interact.

Work Breakdown
List the major tasks in your project and who did what.

Also list here what doesn't work yet and when you think it will be finished and who is finishing it.

Future Work
Suggest addition things that could be done with this project.

Conclusions
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.

Stuff we found (Cause stuff is dumbz)

 * i2c1=i2c2
 * i2c2=i2c1
 * i2c0=???
 * i2cdetect -y -r 2 finds address 0x40 and 0x41
 * need to set mode register (register 0x00) to not sleep mode to use the internal oscillator