Making it Rain with Arduino!

Long way to go...

Arduino kits from Maker SHED arrived at my doorstep this week and today I finally had a chance to put it together.  I bought a starter kit which comes with the main Arduino controller and a bunch of parts like buttons, LEDs, resisters, and bread boards.   I ran through all the basic experiments in a day such as making LED’s blink, push button toggles, and performing IO over USB between the Arduino and computer. The Arduino software for creating programs is simple and really easy to use.  In addition to the starter kit, I also purchased some shield kits which are basically expansion kits for the Arduino.  I decided to build the LoL (Lot’s of LEDs) shield which mounts directly to the top of Arduino and provides visual feedback.

Back of Board

The back of the board shows many rows and columns of solder.

The LoL board has 126 LEDs arranged in a 14 x 9 rectangle.  In order to put this thing together, I had to run out to Radio Shack today to buy a 40W solder iron, flush cutters, pliers, and of course solder.   This shield requires soldering almost 300 connections!

My soldering skills were a little weak at first, but after a couple rows it became much easier.  It took me a couple hours, but I finally got every LED soldered and clipped.  Look at the back of the board and all the drops of goo it required.

The connections are very close together so you really have to be careful.  I constantly worried about holding the iron for too long against the board which might change some of the underlying logic or even worse make the board unusable.  I also worried about shorting out pins from using too much solder.  I don’t think I blinked much because I had to get up twice to get eye drops.

There is nothing like finishing up that last row of LEDs.  I did a final inspection to make sure everything looked in order.  I touched up a few places, adding solder where needed, and clipping where there was too much.  The crop of red LEDs were aligned evenly and looked great.

Now came the real test to see if it worked.  I attached the shield to the top of the Arduino controller, plugged it into the USB port of my Mac, and then brought up the Arduino development environment.  I went over to Google code and downloaded the LoL shield library.  It took me a minute to figure out how to install the library but dropping it into your sketches folder under libraries/LoL did the trick.  The compiler was now able to find the library and all the sample code compiled without error.  I ran the basic test and was extremely relieved to see all the LEDs working.

I decided it was time to code something of my own.  I started with the example code for Conway’s Game of Life and stripped it down to the bare essentials.  I ended up creating a rain effect, where dots are placed randomly at the top, and then they fall down until they are off the screen.  Here is a video of the final result:

Building and coding the Arduino Lol Shield has been a lot of fun.  My next goal will be to create a game of some kind.  I know others have created Pong and Space Invaders.  I’d like to come up with something different.  Any ideas?

Download Rain Source Code

Verizon to announce iPhone at CES?

Verizon iPhoneVerizon has never given a keynote speech at CES but will be doing so in a couple days. What’s the big news? Last year, they announced their LTE network for faster speeds and this year it is expected they will unveil new 4G phones that will use it. The rumor mill has been running at full force over what operating system the new phones will use–Android or iOS?

I will add to all the rumors and say one of my friends, who works for CES, has been telling me for months it will be the iPhone. But reports came out early this week that it will be a series of 4G Android phones.

All I know for sure is that I have not upgraded my 3GS iPhone because I want an iPhone4 on Verizon’s network. I think many people are in the same boat. January 6th will be an interesting day with the Mac App Store being released and the Verizon keynote. Buckle up.

WordPress Mods

I have been troubleshooting WordPress today as I have noticed a couple issues:

1. On my first Hello World blog I noticed when using an apostrophe it had a strange behavior. It keeps adding additional apostrophes every time I save. So if I wrote I’m, it would change it into I”m. If I saved the blog again it would change to I””m.

2. Downloading and upgrading plugins would fail with “Could not create Temporary file.”

It turns out that problem #1 is not a WordPress issue but a PHP setting issue. I found this site which explains how to disable Magic Quotes. Just had to add “php_flag magic_quotes_gpc off” to my .htaccess file and no more issues.

The solution to Problem #2 was not as nice. Tried numerous things from the support thread but in the end the only thing that works was changing the permissions for the wp-content folder to 777, perform the updates, and then revert the permissions back to 755. Not ideal but I suppose I won’t be updating and download plugins that often.

I was able to easily add the Twitter integration to pull from @toddmoore using the “Wickett Twitter Widget” Plugin. It was so simple that I highly recommended it. My previous WordPress blog suffered from a lot of SPAM in the comments so I also enabled the Akismet plugin to manage it.

I think WordPress and the various plugins are great.

My name is now in the hands of myself!

This is my first blog posting as I just purchased the domain which is something Ive been trying to do for the last 15 years.  It always seemed another Todd Moore owned it or it was being sold by a cyber-squatter looking to make some easy cash.  That’s who I just bought the domain from, a money hungry cyber-squatter.  Such an awful way to make money but at least I finally own my name.

I’m currently thinking about writing a book on iPhone gaming so it made sense to go ahead, bite the bullet, and pay the ransom for this domain.  I immediately registered it for like 20 years just for good measure.  I’ve installed the latest Word Press and I’ll be expanding it with new content and features.  I think integration with twitter will be the first thing I try.