New low-cost Zero-compatible board

I have just ordered a Zero compatible board that has the following specs:

Runs at 48MHz
256KB FLASH Memory
32KB RAM
Pin compatible with Arduino Nano but runs at 3.3V
SAMD21 micro-controller same as used on a Arduino Zero's.
Built in USB
Arduino Zero bootloader pre-loaded.
20 I/O pins with 5 extra pins that can be used for I2C/SPI or I/O
6 Analog Pins(ADC) with 12-bit resolution (4096 resolution point vs Arduino Uno's 1024)
1 Digital to Analog(DAC) pin with 10-bit resolution.
Designed and Manufacture in New Zealand

You can see their ad at eBay #282786290858. The board is from New Zealand and costs $10. I'll report back after testing it. I have no financial interest in the company.

I wish Arduino would have made something like that. It seems like the SAMD support is getting really mature and I like the direction they're going with the new breadboard-friendly MKR form factor but none of the official Arduino MKR boards are just a nice basic SAMD21 breakout. I'm attracted to the MKR ZERO but I don't necessarily want the SD card, specialized I2C connector, even the LiPo connector, for every project. I'd rather have the option of a smaller, slightly cheaper board and then only use the boards with the added features when I need them.

I think one of the reasons the AVR Arduino boards have been so successful is that they resisted the temptation to throw a bunch of arbitrary features on the board (as you see with the standard eval boards), which would have only made them less flexible for using on actual projects.

Several of us have been wondering why Atmel doesn't "beef up" its Arduino family with a faster processor and more SRAM, which has been a bottleneck forever. If someone comes out with a fast processor with more flash and SRAM, and a form-factor that can accept Arduino shields, I think it would do pretty well. Backward compatibility would also be desirable. Finally, is there anyone...anywhere...who wouldn't like to see a native symbolic debugger as part of the IDE?

econjack:
Several of us have been wondering why Atmel doesn't "beef up" its Arduino family with a faster processor and more SRAM, which has been a bottleneck forever.

Although there is some limited collaboration, for the most part Atmel (Microchip) just makes the chips. It's up to Arduino to decide which of those chips are put on boards and add Arduino IDE support for those boards.

econjack:
If someone comes out with a fast processor with more flash and SRAM

Compared to what? The Mega or the Zero?

econjack:
Finally, is there anyone...anywhere...who wouldn't like to see a native symbolic debugger as part of the IDE?

I'm interested in this but there is a delicate balance between adding useful features to the Arduino IDE and keeping it beginner friendly. I think this can be done but it will take some care.

I've also previously thought of the cost of AVR debuggers as being prohibitive to their use by the average hobbyist. $130 for an Atmel ICE is nothing to a professional but to a hobbyist that's a big chunk of change when Serial.println() is free. Now I see Atmel throws a debugger on their $8.88 AVR eval boards. Maybe the performance is not great but they're essentially giving the thing away. I see you can get the firmware .hex file from their website. It would be interesting to see whether it is possible to flash that to a Pro Micro and use it as a standalone debugger.

I think this is a place where Atmel could get involved and really make a difference. You have an entire generation of future embedded systems engineers getting started without proper tools. Atmel/Microchip is in the business of selling microcontrollers, not debuggers, so why do they keep this debugger stuff so proprietary? Making it more accessible would only benefit their real business.

I'd be happy just to have an easy path to an open source, lightweight, cross platform AVR debugger software solution (not Atmel Studio!) outside of the Arduino IDE. The parts are already there to some extent but putting them together is a huge nightmare. Just look at this thread:

Here's someone very experienced with computers, programming, and microcontrollers. Someone who owns multiple professional quality debuggers and has used them with Atmel Studio. Someone who received extensive assistance on this project from other professionals. Yet they spent 2 months working on it, apparently without success. And note this was just their latest in multiple attempts. I just don't understand why this is so difficult. Arduino has proven it doesn't need to be this way.

pert:
I think this is a place where Atmel could get involved and really make a difference. You have an entire generation of future embedded systems engineers getting started without proper tools.

As far as I can see most of the Arduino Forum regulars are at the ends of their careers, not the beginning.

Also I suspect the percentage of Atmel (now Microchip) products that go into Arduinos is so small that it would not register in a float variable.

I agree that it seems strange for a hardware manufacturer to put obstacles in the way of wide dissemination of its software and information. IIRC I bought a Microchip technical book a loooong time ago for $30 or $50. But Atmel/Microchip are not the only one with that narrow focus. My other current complaint is about the API for the Silhouette Portrait and Cameo computer cutting machines. Thankfully some Linux folks have reverse engineered enough to make it usable without Windows.

...R

I'm posting this separately to keep things tidy ...

Apart from the obvious things like higher speed and more memory what is different about using a SAMD micro compared to an Atmega? Maybe somebody has a link to an overview comparison.

What I like about the Atmega chips is their simplicity - both in their instruction set and their logical structure. I have the impression (perhaps incorrect) that the newer generations of chips are much more convoluted inside.

Of course the other thing which has discouraged my exploration of the newer chips is that they are only available in surface mount packages which makes them impossible to use without a custom PCB.

...R

I've been "theoretically" been playing with some of the 5V ARM chips. I've spun a board with an Atmel SAMC21, and another with an NXP (Freescale) MKE02Z64. But the SW side is daunting, and I'm really not very fond of the CM0 CPUs. They seem to have all the difficult-to-assemble, peripheral complexities and cycle-performance issues of the CM3 and CM4 brothers, plus some more of their own, and without the high clock rates and huge memories, and with rather ugly instruction-set limitations. (and neither of those chips has native USB...) And I'm not really sure that "5V" is really that important.

I'm looking forward to Adafruit's rumored SAMD5x (CM4!) modules, though. And I'm pretty happy, at least conceptually, with the the Teensy products from PJRC. The real truth is that I haven't really had "need" of anything bigger than an Uno or ATmega32...

Robin2:
As far as I can see most of the Arduino Forum regulars are at the ends of their careers, not the beginning.

Yes, I find it quite interesting since my initial impression of Arduino was something primarily used for learning. Even so, how many forum regulars are there really? 300-400 max? Yet the Arduino IDE is downloaded once every 1.2 seconds. I'd say that at least 90% of people learning electronics are working with Arduino.

Robin2:
Also I suspect the percentage of Atmel (now Microchip) products that go into Arduinos is so small that it would not register in a float variable.

True, but when the time comes for someone who learned on Atmel AVR and SAMD chips to design a mass produced product, which manufacturer's chips are going to have preference?

Robin2:
Apart from the obvious things like higher speed and more memory what is different about using a SAMD micro compared to an Atmega?

Well, lack of 5 V compatibility in the SAMD Arduino boards is a big one in the Arduino world. Despite 5 V logic supposedly being obsolete, in my only venture into 3.3 V with the ESP8266 I found most of the accessories I was working with needed 5 V.

Robin2:
I have the impression (perhaps incorrect) that the newer generations of chips are much more convoluted inside.

Well by only using the length of the datasheet as a metric, I'd say you're right.

Robin2:
Of course the other thing which has discouraged my exploration of the newer chips is that they are only available in surface mount packages which makes them impossible to use without a custom PCB.

Yep, DIP package and good Arduino IDE support have been my requirements for microcontroller choices. I did just solder my first TFQP-64 package without too much difficulty and you can buy cheap breakouts but I still much prefer through hole. It's not so bad when there is availability of reasonably priced compact dev boards in DIL form (such as the one econjack mentioned or the WeMos D1 Mini) but I much prefer to have the option of throwing a bare chip on a piece of stripboard.

The Adafruit ItsyBitsy M0 Express is a $12 SAMD21 board plus a few extras such as 1 5V output for driving WS2812 LEDs, 2 MB SPI Flash (for CircuitPython but usable with Arduino), and 1 RGB LED. I have not received the boards yet so this is unverified. The slight cheaper Trinket M0 is another SAMD21 board but with drastically fewer pins.

westfw:
The real truth is that I haven't really had "need" of anything bigger than an Uno or ATmega32...

That's pretty much where I am as well - though I would include the Mega for its extended I/O capability.

The other issue I have with the more powerful / complex micros is the crossover point between them and a cheap laptop or Raspberry PI.

I can see that for a production run of thousands it is cheaper to build the GUI (for a washing machine, for example) using a microprocessor even if the coding is tedious. But if I only want a single item it is much easier to build and display the GUI on a PC.

...R