Thursday, July 2, 2015

New Atmel board for ASF development!

I started off really excited when I first found the new SAMD10 X-Mini development board. http://www.atmel.com/tools/atsamd10-xmini.aspx

The Good News 

  • It includes a Debugger built-in! It uses the meDBG protocol, through an ATMega32U4. Which could be hacked and used as a USB device and restore the firmware if you have a stand-alone hardware programmer. 
  • Supports the ASF
  • It's a 32-bit ARM M0+ based board
  • Has pins in the right place to be Arduino Shield compatible!
  • 16 kB FLASH, 4 kB SRAM
  • 48 MHz operating speed.
  • It has a QTouch button
  • It's less than $10
  • It's less than $10 (Yes it needs to be said twice!)
  • + More http://www.atmel.com/Images/Atmel-42242-SAM-D10_Datasheet.pdf
The main reason for my excitement was the Arduino shield compatiblity w/ ASF support. I've made no secret that I like the readability of the ASF source code, it's great because the source code migrates well between all of the supported Atmel microcontrollers. The Arduino eco-system has so many good shields for prototyping designs that grabbing this SAMD10 XMini board and a shield is a great way to implement the code for a component like a Real-Time Clock or motion sensor IC's, even a classic character LCD. Write some code get it running then add that to your personal code library for larger projects. When you don't have to create the prototype board it's a big savings in time and money. Hint: This is what I'll be working on, I plan to share on Github anything that even kind of works.

Neutral News

A few details that are pretty neutral for me but should be clear.
  • Only supports 3.3V I/O
  • Doesn't include the header pins to attach a shield.
  • Requires the use of Atmel Studio vs. the Arduino IDE.
  • The SAMD10 doesn't have a crystal installed although there is an external clock line from the ATMega32U4 into PA08.
  • The following SAM D10 pins are schematically shared with "Arduino" pins.
    • PA07 w/ QTouch button
    • PA09 w/ LED and w/ SPI Header
    • PA10, PA11 w/ Serial on ATMega32U4 which gets routed to USB connector
    • PA22, PA24 w/ SPI Header
    • PA25 Mechanical button
    • PA30, PA31 Debugger on ATMega32U4
  • The ATMega32U4 isn't routed for much besides debugging, for hacking there is:
    • The USB Device Lines to USB connector
    • An LED
    • 4 Pins on a tiny 10-pin header intended for JTAG use, but could be re-purposed.
    • UART lines to the SAM D10
    • Power Enable for the SAM D10

The Bad News

  1. Digital Pin 8 and 9 are Not Connected (N/C) 
    1. This is because of the limited number of pins available.
  2. There is an issue between Atmel Studio and the documentation 
    • The board silk screen and the schematic show PA27
    • Atmel Studio says PA27 is NOT available with a compiler error.
I was able to address #1 with a couple of small wires and moving pins PA14 and PA15 to the N/C pins. This probably isn't a big deal if you are using Arduino shields that are pre 1.0 shield and many shields made after 1.0 don't use the extra I2C pins.

Issue #2 just needs to be tested it's a nuisance but more disappointing. 

I'm still looking forward to the Arduino Zero which according to the schematic does have all of the shield pins routed. Compared to this boards $10 price tag and "close enough" features against the Zero's approx $50 price, I'll probably order and use the SAM D10 XMini for most of my little projects. 

To be cont'd as I experiment more with the board!

P.S.

If you really like the classic ATMega328 that is in the Arduino UNO I suggest the ATMega328 XMini same chip, same Arduino shield pinout, except it's less than $10 and includes a real debugger. It does use Atmel Studio instead of the Arduino IDE, so you trade more power for a higher learning curve.
http://www.atmel.com/tools/mega328p-xmini.aspx

No comments:

Post a Comment