Introduction: Standby!

About: I am a former avionics technician having worked for a major US airline carrier for 22 years.
This is my Arduino 2560 on standby for my big project!  Not sure yet what that will be.

Step 1: WayneandLayne Blinky Grid Kit...

This was a fun kit to build and easy to solder.  Good kit for anyone needing to practice solder skills.  I bought the kit from wayneandlayne.com  

It is programmed using their website programming page.  It uses 2 light sensors to sense the clock and data signals that are sent by the website.  Just enter program using their entry form and hold the sensors up to your monitor screen and start programming.  The programming time depends on the timing set in ms and the length of the message.  It can take awhile  and some patience to learn how to program it.  But once it's figured out it's a breeze.  One of my messages took 4 minutes to load at a speed of 70ms.  That is rather slow but I don't get errors at that speed.  Generally I can run anywhere between 50 and 70 ms transmission rate.  It's just a trial and error procedure.  Don't give up!  It works real well and a good starter project!  Highly recommend it!  I can't remember the kit price but for the cost the quality of the kit is excellent!  They even threw in some extra LED's in case there was a bad one or I messed one up.  I mounted the project on a piece of plastic with a 9V battery holder attached.  I used hot glue, which I find very handy when doing projects.  It's non corrosive, waterproof, and cools quickly.  Great for electronic work. 

Step 2: Wayneandlayne Blinky POV Kit...

This kit was also fun to build.  It is also programmed using the two photo sensors.  It is basically used for others to see as it is difficult to see the message when looking at it in a mirror.  I guess I could take a video of it if I would take the time to setup my webcam on my laptop.  Too many projects!  : )

Step 3: Adafruit Standalone AVR ISP Programmer Shield for Arduino Uno...

This project took me a little time and some troubleshooting but it was a wiring error on my part.  It is really neat.  I loaded the bootloader sketch into the Arduino IDE and then uploaded to the Arduino.  Then it was just a matter of pushing the button on the programming shield to get it to program my Atmega328P-PU chips.  The shield uses a ZIF chip socket which is very handy.  It only takes about 2 seconds to upload the bootloader to the blank chip.  I have already loaded 3 chips which I am going to use in my Arduino clone projects.  The website is http://www.adafruit.com    Click on Arduino under the product list at left of page.  Then select shields and scroll down page until you find the programmer shield.   It works great!  Note: there is special note in the build instructions about connecting the reset wire to the ZIF pin  on the underside of the board.  Follow the note carefully as this is where I made my error, however it was easy to troubleshoot that.  I used a logic probe on the reset pin and noticed I wasn't getting my ground to the pin on reset.  It was easy street after that.  Great project!

Step 4: My First Circuit Board...

This is my first attempt at making a circuit board.  All traces transferred but they had heavy pitting and undercutting.  My printer is a Brother and they have their own  toner formulation  that is different  from other laser printers.  The toner requires much more heat than can be applied using iron or laminator.   The image transferred but the toner image wasn't heavy enough.  I even tried the highest resolution and density settings. I used the Pulsar system to transfer and they give note about the Brother series printers being a problem with their system.  http://www.pcbfx.com/  Of course I already had the printer!     I am in the process of getting a different printer.  I also use the laminator that Pulsar recommends.  It works real well.  I know that with a different printer I will have better results.  I etched with Ferric Chloride.  Messy but only took about 10 minutes to etch.  The board is 1oz. copper.  The Pulsar board is 1/2 oz. copper so etching will go much quicker with less copper to remove.  I will also be trying the etch method using muriatic acid and hydrogen peroxide to see how that works.  Pulsar recommends the Ferric Chloride. 

Step 5: Led Accelerator Prototype...

This is a project I am working on.  It needs some minor adjustments with the resistor values to equalize the brightness of the LED's as they flash.  Basically, all it does it flash from one side to the other in an accelerated timing.  The first LED lights  and each succeeding LED lights up for only half of the time of the preceding LED thus giving the acceleration effect.  I also have the potentiometer on the shield connected to one of the analog ports so that the acceleration speed can be adjusted.   If it goes top speed the LED's just glow because they are on for such a brief time that there is no time for the LED current to come up to brightness level, if that makes any sense.  I may not be explaining that correctly.  Also at regular speed the last resistor to fire isn't as bright as the first for same reason as above.  I figure if I change my resistor values for each LED that I can balance the brightness a little better without compromising too much of the brightness levels.  Not sure that will work but I am going to give it a try.  Still a work in progress as I have several different ideas for this project.  I am a newbie at programming in C so I am attaching the code for this sketch.  If anyone has suggestions to clean up or make the sketch more efficient please let me know.  Also note that the shield is a MAKERshield.  It is a cool shield.  I also have the 3mm green and red LED's on shield wired up just for kicks.  The acceleration effect is pretty cool.  I have a friend who wants to try and use it for hypnosis as it is pretty mesmerizing to watch.  It's easy to get fixated by it.  Any suggestions at all, feel free to share them.   Thanks, more on the way!    - Richard - 

//variable_accelerator_8_leds - arduino uno prototype.....
//code by avionicskypilot777
//07/08/2012    rev 1.1
/*07/08/2012    rev 1.2 - added potentiometer to vary acceleration
                                          speed */
                    
const int led[] = { 2 ,3, 4, 5, 6, 7, 8, 9 }; /* define pin
                                                                        array */

int sensorPin = A0;  // set potentiometer input to pin A0
int sensorValue = 0; // store variable from potentiometer

void setup()
{
  pinMode( 2, OUTPUT); //assign pins as outputs
  pinMode( 3, OUTPUT);
  pinMode( 4, OUTPUT);
  pinMode( 5, OUTPUT);
  pinMode( 6, OUTPUT);
  pinMode( 7, OUTPUT);
  pinMode( 8, OUTPUT);
  pinMode( 9, OUTPUT);
  Serial.begin(9600);
}
void loop(){                
    sensorValue = analogRead(sensorPin);  //read the potentiometer input value.
   
    for ( int pin = 0; pin < 8; pin = pin++){         //loop through the 8 leds
     
        { sensorValue = sensorValue / 2;}         /* divide potentiometer value by 2 so
                                                                                 each succeeding led flashes
                                                                                at half the rate as the
                                                                                preceding led. */
      //  Serial.println(sensorValue);                   monitor potentiometer input - only used for testing.
                                                                  
    digitalWrite(led[pin], HIGH);                       //turn on led
    delay(sensorValue);                                   /*delay in ms - time is
                                                                              determined by potentiometer
                                                                              setting */

    digitalWrite(led[pin], LOW);                       //turn off led
    delay(sensorValue);                                  //delay for 'off' time is the same as delay for  'on' time
  }
 }