Possible to put Arduino on a ATXMEGA64A1-AU?

Noobduino here. Hey, I have a habit of jumping into things WAY over my head. Does anything think its possible to put the Arduino bootloader on this chip?


Specs for fun:

Manufacturer:   Atmel   
Product Category:   Microcontrollers (MCU)  
RoHS:    Details    
Core:   AVR8    
Processor Series:   ATXMEGA64x  
Data Bus Width: 8 bit, 16 bit   
Maximum Clock Frequency:    32 MHz  
Program Memory Size:    64 KB   
Data RAM Size:  4 KB    
On-Chip ADC:    Yes 
Operating Supply Voltage:   1.6 V to 3.6 V  
Package / Case: TQFP-100    
Mounting Style: SMD/SMT 
A/D Bit Size:   12 bit  
A/D Channels Available: 8   
Data ROM Size:  2 KB    
Height: 1 mm    
Interface Type: SPI, TWI, USART 
Length: 14 mm   
Maximum Operating Temperature:  + 85 C  
Minimum Operating Temperature:  - 40 C  
Number of Programmable I/Os:    78  
Number of Timers:   8   
Packaging:  Tray    
Program Memory Type:    Flash   
Factory Pack Quantity:  90  
Supply Voltage (Max):   3.6 V   
Supply Voltage (Min):   1.6 V   
Width:  14 mm

Check out www.avr-developers.com, see if that is a chip that has been used. How does it really differ from the nonX parts? Just lower operating voltage?

IIRC, the XMEGAs have a lot more going on including an event system, stacked interrupts, some form of DMA (?), a real onboard DAC, higher res ADC... Sounds like a splendid chip, I'd read in the old arduino forum it was hyped up by Atmel but they fell short on producing the chips so nobody could get them (QC issues? plus an actual bug in the DAC output?), I guess that's all overwith now but ARM is eating the lunch of anyone looking for anything >8bit IMO...

Excellent resource Crossroads! With these stats:

Passed count= 40
FAILED count= 0

It looks promising. I might give it a whirl.

Well none of the processors listed are in the XMEGA series...

I'd love to see it happen though! Does the new user-suppliable variants/cores feature make it easier? What are the general "lowest common denominator" features/classes one is required to implement for a new variant or core?

Alas, I hear that the xmegannAm chips are buggy. The nominal replacement is the xmegannAmU (with USB, even if you don't plan to use USB) chips, but they are not very available :-( More info on avrfreaks...

Putting Arduino on it shouldn't be a big problem. Working with (new) peripheral structure might be. It's easy to end up like some of the non-AVR arduino attempts - having a lot working, but not enough to run the various obscure libraries that people want to run...

There seems to be a lot of assumptions in Arduino-land. I looked through all the code the other day for giggles. SOoo much dependence on 8/16MHz clocks, for one. I bet libraries exacerbate that problem.

Additionally, many functions (in order to make them work uniformly across chips even in the same family) are littered with:

#ifdef __SOME_ARCH__
// Do something low-level
// Do something another way
# elif __I_KNOW__
#error "I don't know your chip well enough, sorry."

So there's that stuff you have to contend with, then the fact that a great deal of the capabilities of more advanced chips will never be exposed, due to the lack of corresponding framework. It's lowest-common-denominator indeed.

But, on the bright side, 90% of the code, once a few key functions and includes are rewritten, will just compile. And, you can always take advantage of the other code via direct AVR calls. I'd say this is more of a way to migrate off Arduino code than to make the bigger,better,faster chips into Arduinos, but that's just one way of looking at it.