Here is a video I recorded showing GE Color Effects lights installed on/around my house: ColorNode Demo on YouTube It illustrates how different light effects can be synchronized via a central wireless controller and using my ColorNode boards. I used mainly pre-programmed light patterns running independently on each node, with all the strings starting at the same time. The first several cycles use direct commands from the controller, where each change is another wireless payload. The light show isn’t particularly exciting, but it is neat to see everything synchronized so nicely!

I posted my current ColorNode code on the ColorNode project page. I admit it’s not great but it is working well and the lights look great on the house. I’ll have to take a video once the weather is better. I can’t really change anything at this point, so any improvements will have to wait until the lights come back down.

I joined the Element14 engineering community over a year ago after I learned about it at the 2010 Embedded Systems Conference.  It is basically a social network for electrical engineers that is tied to the component distributor Farnell, who owns the US-based distributor Newark.  Element14 conducts what they call Road Tests where a certain evaluation kit or product is offered up for review.  The idea is to get end-user reviews on the Road Test products in order to benefit the Element14 community (and ultimately help drive sales of that device/product).  If selected as a Road Tester (you need to enroll and they decide which members will participate in the Road Test), you receive the item being tested in exchange for a public review of the product on the Element14 website.  A while back a co-worker alerted me to a Road Test in which I may be interested – Arduino Mega 2560.  I enrolled and was one of the lucky few who were selected.  Below is my review of this product as posted on the Element14 Road Test site.


INTRODUCTION

I wanted to begin by thanking Element14 and the sponsors for selecting me to participate in the Arduino Mega 2560 Road Test.  I am really excited to have been chosen to Road Test the Arduino platform, which has dramatically changed the landscape of microcontroller electronics.  The user base has really exploded recently and it seems like I’ve been hearing about it more and more lately, even from major publications (Make Magazine, Wired, New York Times).  Most Element14 members/readers are probably already familiar with the Arduino IDE and boards, but if not I will try to sum it up in as few words as possible: Standardized open-source hardware microcontroller platform based on Atmel ATmega 8-bit devices and a cross-platform open-source software integrated design environment.  In other words, Arduino provides artists, engineers, hobbyists, makers, etc. with an inexpensive community-driven programmable electronics platform with which they can rapidly prototype or realize their designs or use as a basis for learning hardware and software engineering.

BACKGROUND

I have been an Arduino user for about 3 years now, but this is my first opportunity to test out the Mega version of the platform.  In the past I have used the Diecimila, Duemilanove, Pro Mini, and the Uno, as well as creating my own Arduino-compatible PCBs.  The integrated design environment (IDE) software has evolved through several revisions since then and it now provides many great built-in libraries and functions. I already had the latest version of the IDE installed prior to receiving  the Mega for review, so I was up and running immediately. To keep this Road Test review concise, I will focus only on the Arduino Mega 2560 board and not on features/usage of the Arduino IDE.

UNBOXING

The Mega 2560 comes in their new (as of the release of the Uno, previously just a static bag) simple packaging: nicely printed card-stock box folded around the board inside an ant-static bag.  Upon opening the box you find an insert that thanks the user for supporting Arduino (see picture below).  It provides information about how/where the Arduino is built and a warranty statement.  Also included is a small sheet of stickers if you want to advertise your project as having “Arduino Inside.”  Since there are no jumpers to set or any switches on the board, the next step is to just plug it in.

Arduino Mega 2560 Package

Arduino Mega 2560 Package

Arduino Mega 2560 Package

Arduino Mega 2560 Package

Arduino Mega 2560 Unboxed

Arduino Mega 2560 Unboxed

Arduino Mega 2560 Package Contents

Arduino Mega 2560 Package Contents

MEGA-SIZED

The Mega 2560 is significantly larger than its little brother the Uno (4″ x 2.1″ versus 2.7″ x 2.1″, ~50% larger), but in this case Mega is a relative term.  It is still smaller than an iPhone 4 (4.5″ x 2.31″), but it would only be appropriate for projects where you have a lot of room or where you need a lot of I/O.  The Mega has 54 digital I/O pins (14 which support PWM using the Atmel hardware timers), compared to 14 (6 PWM) on the Uno.  You get more of just about everything, actually – here’s a little table for comparison:

Mega 2560 Uno
Digital I/O 54 14
PWM 14 6
Analog In 16 6
Serial 4 1
I2C 1 1
SPI 1 1
Interrupt Pins 5 2
Flash 256 32
RAM 8 2
EEPROM 4 1

Besides that, all the other specs are the same (voltage, current, USB interface, etc.).  The pin numbers and corresponding pin functions from the Uno are mostly the same/in the same place on the Mega 2560, however some things have been moved around (notably I2C).  This spreadsheet does an awesome job of summarizing all the pins and functions between the Uno and the Mega 2560.

INITIAL IMPRESSIONS

There are a lot of pins!  The Mega 2560 may only be 50% larger in size than the Uno but it has almost 4 times the I/O, thanks mainly to the large double row at the back. It’s like an stretch limousine version of an Uno. I like how the pins are grouped by special function – PWM, Communication, Digital, Analog, Power – and that the Arduino Team did their best to keep things in the same place so that shields made for the smaller boards would still work on the Mega.  Speaking of shields, someone needs to make a mini shield to access the back portion of the PCB that extends beyond where normal shields stop. I could see it matching up with the outline that most shields have (to access the ISP pins) like jigsaw puzzle pieces.

Arduino Mega 2560 Top

Arduino Mega 2560 Top

Arduino Mega 2560 Bottom

Arduino Mega 2560 Bottom

With its vast array of I/O and additional memory space, the Mega could be very useful for some projects, such as robotics, LED arrays, or sensor interfaces. However, for those just starting out with microcontrollers or Arduino, it’s probably overkill. The retail price difference, $50-$65 for the Mega versus $30 for the Uno, would also sway people towards the Uno and limit the usage of the Mega to projects that really need the added features. Below I have listed some additional thoughts about the Mega:

Pros:

  • Big – lots of I/O for projects that need it
  • Memory – if your code simply won’t fit in the Uno, you’ve got much more room here
  • Same/Similar shape/layout – many shields made for the smaller boards will still work
  • Nicely organized – I/O grouped by function

Cons:

  • Big – not for your space-constrained project
  • Price – about double the price of the Uno
  • Shield Compatibility – limited support for large I/O expansion header

CONCLUSION

Like its little brother, the Arduino Mega 2560 serves as a great development platform for 8-bit microcontroller projects. The additional I/O and serial ports and plentiful code space in the Mega provide significant advantages over the Uno or other previous-generation Arduino boards.  What is great about the Mega, and the Arduino family as a whole, is the ability to transport your code from one hardware solution to another and even beyond to your own custom PCBs.  Once you run out of resources on one of the smaller boards, and with only minimal code changes and a simple board selection in the Arduino IDE, you can be up and running on the Mega with ease.  I would strongly recommend the Arduino Mega 2560 if you project has outgrown the Uno and you can afford the extra price and board size.

Thanks again to Element-14 for giving me the opportunity to test drive the Arduino Mega 2560!

Low quantities of printed circuit boards and low prices usually don’t go together. However, this Holy Grail of DIY electronics can be found. I have used a couple different manufacturers for low-quantity prototype PCBs (BatchPCB, ExpressPCB) and most recently DorkbotPDX.

BatchPCB is run by SparkFun and has a nice website that checks your files to make sure you aren’t sending them bad Gerber data for manufacturing.  They also let you sell your PCB designs on their site once you get setup as a reseller.  Unfortunately, their turn-around times are fairly long (3 weeks from time of order) since they have to wait until a certain batch size (hence the name) gets submitted and then they farm it out to China somewhere. They also charge a $10 setup fee per order as well as shipping (which is pretty cheap if you just use USPS).

ExpressPCB is also relatively cheap (if you don’t want soldermask or silkscreen) and really fast (2-3 days turn around with another couple days for shipping).  However, you are locked into their closed-source PCB software for creating your designs.  You can get Gerbers from them, but that is an extra $60 on top of the PCB order.  So even for the most basic of boards, you are looking at over $12 per square inch ($51 3xMiniboard +$10 shipping +$60 gerbers).

Enter the DorkbotPDX PCB Service.  Everything from pricing and delivery, submitting design data, and paying via paypal was straightforward and painless.  The pricing (as of this post) is simple: $5 per square inch for three copies of your 2-layer board or $10 per square inch for three copies of a 4-layer design.  Silkscreen and soldermask on both sides are included. Shipping is free and there is no setup fee. This works out to being $1.66 per square inch for 2-layer boards and $3.33 per square inch for 4-layer boards.  Pretty great prices for hobby/prototype uses!  Also, lately there has been a panel going out every week, so if you get your design in early you can be pretty sure they will go out that next Monday. Designs can be submitted as Gerber data or as a CadSoft Eagle .brd file.

I’ve been meaning to test out the DorbotPDX service since I heard great things from others about it.  I’ve been tinkering around with some RFM12B wireless modules recently for a project I am going to document soon and I wanted a breakout board.  SparkFun sells this one for the RFM22B (not the same pin-out and more expensive). Then I found this one on the JeeLabs website (where I found the great Arduino-compatible libraries with which I communicate to the modules).  I literally just downloaded the .brd file and emailed it to the DorkbotPDX pcb-order email and they sent me an email back a few hours later saying everything is OK and that my board was part of the order.  They provided a total and I paid with PayPal to their email address.  That was on a Friday evening.  The panel went out that next Monday and I received my PCBs 14 days after I had submitted the order.  Not exactly fast, but considering that the PCBs had to transit the US twice and that it was so cheap, I’m not complaining.  It was still faster than my experiences with BatchPCB.  At least with DorkbotPDX you know when to expect your boards.

So how did they turn out?  Well see for yourself below.  The PCBs come with little break-away tabs that were used to keep the panel together.  I broke them off and then filed down the remnants with a Dremel tool. These PCBs (and I guess all of them recently?) come with purple soldermask and gold finish.  I am not exactly sure why they are like this but I’m not complaining – they look really nice!  My only complaint about the whole thing is that somehow in the process the text on the silkscreen layer vanished.  It is in the Eagle .brd file and the other outlines are on the boards, but all text is missing.  Maybe DorkbotPDX can explain?

DorkbotPDX RFM12 Board PCBs

Assembled RFM12 Board

In summary I can say that I am very pleased with the level of service and the apparent quality of PCBs I received for my money.  I hope that this group order continues week after week so I can have a quick and easy and affordable way to print off PCBs for my projects.

Additional info on ordering:

The process with the PCB order is as follows.  Generate an email to pcb-order@laen.org with the .brd file (or Gerbers) attached and with a subject like “DorkbotPDX PCB Order for April 18, 2011″ In the email message, include the following:
Can you please add the attached PCB design to the next panel going out?
See attached .brd Eagle PCB file.
I’d like <number> sets of 3
Address:
<name>
<street address>
<city, state zip>
Fill in your information for how many sets of PCBs you want and your address info. They will email you back with a message like “It’s in!  That’s $12.90 worth of PCB, and I’m “paypal@laen.org“.”  Just pay that amount via PayPal (you can use either PayPal funds, bank transfer, or credit card with PayPal) and sit back and wait patiently while your PCBs are made.
© 2012 DigitalMisery.com Suffusion WordPress theme by Sayontan Sinha