*** SUGGESTIONS FOR BEST PROCESSOR TO USE FOR NEW ARDUINO BOARD ***

Hey everyone, we are thinking of designing a new Arduino compatible board, but don't want to use the limited ATMega328, so it looks like the other 3 popular processors people are using are:

  1. AVR ATMega32u4
  2. AVR ATMega 2560
  3. ARM SAM3X8E

Personally, I prefer the last one with the ARM since its a vastly more advanced processor, but I am more concerned about compatibility and my intuition tells me more people are probably comfortable with the 32u4 and 2560? Am I right, or is the SAM getting penetration in the marketplace? The magic of Arduino has never been the hardware, its really the tool and the language, so in effect, the processor doesn't matter, but on the other hand ARM is quite a long way from an AVR, and voltage differences, etc. all but make shield incompatible etc. But, the shear processing power takes Arduino to the next level.

What does everything think? Should I go with the ARM which is radically different hardware wise than the AVRs of course, or stick with the more compatible 32u4 or 2560? And if the AVR chips are still the best bet, which seems to be winning the hearts and mind? The 32u4 or the 2560.

This will be a gaming related system :slight_smile: So, I always need more MIPs, but I can work with less if it means more people will prefer to play with it.

Thanks in advance :slight_smile:

Andre'

the 644p is between the 328p and the mega, dual serial ports, comes in a 40 pin dip package, 4k of ram

if thats not enough the 1284p is the same as the 644p but with 16k of ram <- this is my favorite fat chip at the moment and has a nice modern core / bootloader available for it

both are also available as 44 pin surface mount chips if that's your liking

and yes the ARM chips are not compatible with most of what is out there for arduino, so be prepared to make some wheels at this moment

PS notice I keep saying P after the part number, its somewhat important, the 644 non P only has one serial port and both non P versions take some kludging to get them working with AVR dude and get them bootloaded (but once you do they work fine), so just avoid the non P parts

if your talking gaming check out
http://belogic.com/uzebox/index.asp

What I am trying to do though is not use different chips from the Atmel arsenal, but rather choose from those 3 selections that seem to be "officially" most popular of the next generation Arduino's, and pick the one that is most popular among new users. In other words, the chip that has the most penetration is probably the 168/328 since they were the first used in Arduinos'. But, moving forward the question is from a marketing and customer acceptance point of view which chip to use and which is supported the best (boot loaders, etc.).

And yes, the 644 is cool, I used it on my XGS AVR 8-Bit product :slight_smile: Even though I also developed the XGS PIC 16-bit which uses a PIC24 which is about 400-500% faster, bigger than the 644, so it puts the AVR to shame. However, I have a soft spot for the 644, but the PICs in the 16/32 bit category just run circles around the AVR ATMegas.

But, of course on this new product I want to stick to the big 3 (32u4, 2560, or SAM) to be as compatible as possible with what Arduino fans like the most and buy the most.

Andre'

I'd go for a mega chip based design for a now product.

mainly , software compatibility and people familiar with hardware.

ARM is the way forward,
but still lots of software compatibility issues to work through,
3v3 interface
difficulty of getting the chips,

a year from now , might be totaly different,
hope by then they have the ARM on chip ethernet up and running,
even a board with ethernet on it by default.

Right and that's about what I concur with, so given that, then the question is, which of these two processors are more popular for Arduinees:

  1. AVR ATMega32u4
  2. AVR ATMega 2560

Without any hard data on global sales figures and reports, this is really hard to tell. But, what I am looking for are people that are really into the Arduino scene that can comment from personal experience and make a statement like "every I know seems to prefer the 2560 based board". What I will probably do as well as contact some of the larger distros of arduino (sparkfun, ardafruit, etc.), and see if I can get the sales lead to comment on which processor based boards are selling better. They will never give out sales data, but I think general sales performance isn't going to be hard to pry from them.

But, I was hoping to get a lot of people here with years experience in ardunio use that are riding the trends to give insight as another data point in my decision model.

Andre'

32k flash vs 256k flash was a no brainer for me when choosing the Mega 2560 as my first Arduino.
1 uart vs 4 uarts is also a no brainer.

I think it comes back to what your intent with your new board is, but if the price for the basic ICs are similar, bigger is better, imo.

Yes, I think the 256 is still very "ardunio-ish" unlike the ARM which is totally alien, different ASM, different everything. The 32u4's USB serial is nice, but an FTDI is $2, and like you I would much rather have the 256K which allows much higher level coding, sloppy coding for newbies, and higher precision math and floating point library use without worrying you are going to run out of FLASH.

And looking at the support for the 2560 its clear this is a very popular path to take for those that want to grow from the 328p, but not change completely over to the SAM ARM.

So, I think the 256x is the way to go and since this product is TINY, the BGA version of the chip is 8x8mm basically, so should work fine.

Cool, time to hit the schematic capture CAD program and start laying this baby out :slight_smile:

Andre'

I've always thought that it would be good to have some on-board DACs as well as more hardware UARTS, PWM pins, timers and RAM. The atxmega128A4U has all of these, along with RTC and on-chip USB interface. It's a 3.3V chip though.

I think the question is too vague to be answered. Why are you building a new board? What is it with the current Arduino that you want to keep? If you switch processor then there is only wiring and the IDE left, or? Do you want to be compatible with the current Arduino shields?

There are the Beagles and Raspberries. Why not use these?

You will not get any good answers to your question until you get more specific.

What do you want to accomplish? How should it be different from todays Arduino? How should it be just like the Arduino?

Atmel SAM D20 (J or G)

how about STM32F103RE , with 512Kb Flash ,72Mhz cpu and cheaper than Atmel MCU

pito:
Atmel SAM D20 (J or G)

Has anybody made ANY yet made any Arduino compatible board based on any ARM Cortex-M0 or Cortex-M0+ chip and published working code?

Maple, Arduino Due, Teensy3 (I'm the author) and Energia on Stellaris all use the Cortex-M3 or Cortex-M4.

Not quite, I just received parts and PCBs for my dual LPC1227/Mega1284 board and some time ago I started porting the Arduino core libs to the LPC but I'm now waiting for the C++ version of the LPCXpresso IDE so I can continue that work with C++ as it's currently written in C.

To be fair though this is really a 1284 Arduino with an M0 co-processor, not an Arduino board based on the M0.


Rob

The CM0+ is the closest alternative to avr 8bitters, imho. The key factor here is the price and power consumption. CM3 is obsolete, CM4 is expensive..

pito:
The CM0+ is the closest alternative to avr 8bitters, imho.

But in terms of programmer-hours needed to make any of those CM0+ chips (especially SAM D20) implement all the Arduino core library functions, and port the officially included libraries, and port the 20-some very widely used 3rd party libraries, and write/debug an Arduino-paradigm bootloader.... the last word I'd used to describe CM0+ would be "close".

It takes a lot more than shiny new hardware to be Arduino compatible.