Anyway, now that rant is out of the way, I can rant about the poor packaging. This is my first order directly from the Arduino U.S. store, so I had no prior expectations. What I received was a standard manilla padded envelope with the familiar Arduino box inside. Upon removing the small box, it had been noticeably smashed at least once. I immediately checked to see if the headers were damaged. Thankfully the Zero was fine. However, the lack of protected packaging could have easily made that a different story. The box they use isn't crushed-proof, I believe it is just their standard retail packaging. To top it off, the Zero inside has zero antistatic protection. None, whatsoever. I was in a bit of shock, especially since Arduino.cc is well known. It would cost them less than pennies to at least outfit the Zero with a antistatic bag. Actually, come to think of it, all of their products should be in antistatic bags, in my opinion. (If you've seen this from Dave Jones' EEVblog, then you know what I'm talking about!)
Not all is lost, though! Now down to the good stuff bout what was inside the small box: the Arduino Zero. It is the first Arduino with the Atmel Embedded Debugger (EDBG). Here is a video with a good overview of using the EDBG with the Zero. https://www.youtube.com/watch?v=Bjr6BBHXuDw. This is like the Arduino Due in price and that it gives you a 32bit ARM microcontroller, however, not quite as large - it's much smaller like the UNO and it has the Atmel Embedded Debugger.
|Arduino Zero and Packaging|
Differences vs other Arduino's
- 32-bit core that allows operations on 4 byte wide data within a single CPU clock. (For more information see the int type page).
- CPU Clock at 48MHz
- 12 channels DMA controller that can relieve the CPU from doing memory intensive tasks
- 32 bit Real Time Counter (RTC) with clock/calendar function.
- 32 bit CRC generator
- Two-channel Inter IC Sound (I2S) interface
- Peripheral Touch Controller (PTC)
|Microcontroller||ATSAMD21G18, 32-Bit ARM Cortex M0+|
|General purpose I/O Pins||20, all of which can do digital I/O and all except for 2 and 7 can be used as PWM output|
|Analog Input Pins||6, 12-bit ADC channels|
|Analog Output Pins||1, 10-bit DAC|
|External Interrupts||Available on all pins except pin 4|
|DC Current per I/O Pin||7 mA|
|Flash Memory||256 KB|
|EEPROM||None (part of the Flash memory may be used as a non-volatile storage with some limitations*)|
|Clock Speed||48 MHz|
*Copied from http://www.arduino.cc/en/Main/ArduinoBoardZero
These are some very nice features that I am looking forward to trying out. Before we get to playing, we have too see how much power this thing uses. The Arduino UNO can be setup to consume very little power. Let us find out what the extra processing power will cost us...
Power UsageFor all of my testing, I will be using the USB Tester OLED Backpack. This will allow me to see power usage over the life of a sketch versus instant like all of the cheap meters. Click the above link for more information on a quality meter. ;)
|Arduino Zero and USB Tester|
Blink SketchUsing Debug USB Port - This port only start to draw 100mA+ when D-/+ is connected. Otherwise it is the same power draw as the native USB port.
|Arduino Zero - Blink Sketch - Debug Port|
|Arduino Zero - Blink Sketch - Native USB Port|
Uploading a SketchUploading over debug port. You can see a spike at the beginning but over all doesn't use much more power.
|Arduino Zero - Uploading Blink - Debug USB Port|