RoadTest: Arduino Mega 2560
Evaluation Type: Independent Products
Did you receive all parts the manufacturer stated would be included in the package?: True
What other parts do you consider comparable to this product?: Arduino Uno
What were the biggest problems encountered?: N/A Worked fine right out of the box.
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.
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.
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.
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:
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.
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.
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:
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 Element14 for giving me the opportunity to test drive the Arduino Mega 2560!
I recently purchased the Mega, and I love it! It is much easier to program than the Due, as you can program it directly from the Arduino IDE. Great review!
I don't think you would see much speed differences between the UNO and the Mega - they are both running on the same clock and use the same MegaAVR core. I imagine the UNO32 would be quite a bit faster than the Mega or the UNO, if speed is what you are interested in. I am particulary interested in evaluating the DUE when it comes out because it will be ARM-based. I usually work in the 3.3V world, so it would be great for protyping with low-voltage/power sensors, etc.
How do you think it stacks up against the UNO32?
Also, did you do any speed comparisons between the UNO and the Mega? I am curious about how fast the Mega is over the original UNO.