Little update…

I have not posted in a while so a little update is overdue.

After completing the first prototype I received some of the little SMD containers from Adafruit and labeled them. I also prepared a simple little PDF file with about 15 sheets outlining which components were to be installed next. While it still was not as fast as I’d hoped I was able to make 4 more prototypes in about 3 hours. Obviously there is still potential for optimization!

So far, so good. Meanwhile several people have voiced interest in purchasing the shield when it becomes available. A guesstimate is that currently about 75 shields are accounted for. We have requested an updated quote for 100 shields from our chosen manufacturer and we are waiting to receive it to determine the price. Once we have received it we will start a fundraiser on Tindie.com.

I also have not just been sitting around but have worked some on the library. The one thing the library is really missing is a good fading algorithm. For my LED lighting system I developed an adapted 3D Bresenham algorithm.
The original algorithm was developed when most computers did not have specialized hardware to support floating point operations but only integer. While calculating floating point was possible, it was very slow. (Anyone remember Fractint ?) Equivalently most Arduino compatible micro controllers do not support floating point operations using specialized CPU operations thus are very slow when compared to integer operations. The initial Bresenham algorithm was developed to draw a line across a rasterized computer screen and uses only integer math, thus is very fast. For a RGB fading algorithm a 3D version of that algorithm was needed and I found an implementation on the Internet that suited our needs. It had to be modified and taken apart to allow fading several RGB LEDs synchronously but it works very nicely. As I recently found out, depending on what Microcontroller it runs on it can also be blistering fast.
In my own projects I have moved away from the original Arduino’s and have toyed around with a Teensy3. It is a fraction of the size of an Arduino UNO, costs only $20, is US made and employs a Freescale Arm Cortex M4 processor running at up to 98MHz. The new I2C library recently written by user nox771 also better supports the faster I2C hardware on the Teensy3 and supports I2C bus speeds of up to 2.4MHz. Ohh…. I forgot to mention, when using Teensyduino a plugin for the Arduino IDE the Teensy3 is fully Arduino compatible and comes with many libraries that one would have to dig around quite a bit somewhere else to find.
The hardware on our shield supports FM+ mode so up to 1MHz bus speed.
At that bus frequency a complete fade from RGB(0, 0, 0) to RGB(255, 255, 255) using the CIElab lightness corrected library function takes 53 ms!

Advertisements

About trippylighting

Mechatronics Engineer

Posted on May 16, 2013, in Uncategorized. Bookmark the permalink. 2 Comments.

  1. Really excited that you guys have picked this up. I’ll be looking forward to the Tindie fundraiser. I think this shield with a new Arduino Yun would be an amazing combination.

    • Christopher,
      Thanks for your interest. I am not so sure the shield will work with the Arduino Yun out of the box. Electrically/Electronically it should, but I am not 100% sure it fits mechanically. I’ll post my concerns on the main page.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: