Xmega

Do you know if arduino company plans to develop a borad based on ATXmega128A3 which has very enhanced features (multiple DAC, many timers mode, 32MHz, AVR instructions compatible...) http://www.atmel.com/dyn/products/product_card.asp?part_id=4302

Well based on the release style of the Mega board, I would say that any work on the Xmega would most likely not be known until just before they are ready to release such a product.

Lefty

One of my partner is considering to develop a ATXmega128A3 board for our projects but he has PC, I've Macintosh.

Since ATXmega shares same instructions set as AVR family except the ports numbering are different & specific, can you tell me if it would be difficult, feasible for me to modify arduino 15 IDE & associated lib to get TOOLS>BOARD>XMEGA available running on my Mac hence not use AVR Studio ?

Any insights, advices, suggestions, critics would be appreciated !

Porting Arduino to an Xmega chip would be rather easier than porting it to many other processors, and still easier since the MEGA has been done and offers structure for handling the appropriate number of pins.

Don't forget that in between AVR Studio and Arduino is the whole possibility of running "bare" gcc on macos (sometimes called "macavr" - Antipasto Hardware Blog: Mac AVR-GCC part 1 for a starting point.) There are also several Mac AVR assemblers compatible with the standard Atmel syntax (rather than the weird gas syntax.) (though in truth, I'm not sure what the status of Xmega support is in any of these tools.)

hey westfw,

I remember you've a Mac, isn't ?

Maybe you can understand & help me go through Google Code Archive - Long-term storage for Google Code Project Hosting. where it talk about XCode so does this mean I could generate myself an Arduino IDE & slightly modifiy it, add a button to launch my own java application, add submenu to interact with my partner's Xmega board,... via java programming ?

All,

I've discovered lately XCode & java but would appreciate any support if really it is not complex to make a personalized arduino IDE in case you use XCode on Mac.

Thank you in advance, Albert

Maybe you can understand & help me go through Google Code Archive - Long-term storage for Google Code Project Hosting. where it talk about XCode so does this mean I could generate myself an Arduino IDE & slightly modifiy it, add a button to launch my own java application, add submenu to interact with my partner's Xmega board,... via java programming ?

Yep. I was successful in adding a button to the serial monitor to make the text being sent "sticky" and easy to send over and over, for example, without really knowing Java. The Arduino Source for Mac is already an XCode project, and compiled pretty cleanly last time I tried...

I'm not sure why you'd want to use Arduino instead of "your favorite editor" in conjunction with avr-gcc, avr-g++, and avrdude, which are the tools that Arduino IDE uses to do most of the work. (I suppose to make it easier for others to use it, eh?) You could take a look at the style and complexity of the modifications done for Sanguino as a starting point. The most likely roadblock is to find to you need a new version of avr-gcc/etc tools that have other problems withthe rest of the arduino environment.

The Arduino Source for Mac is already an XCode project, and compiled pretty cleanly last time I tried...

Could you give precise link & instructions on how I dowload teh ful XCode project from arduino web server ?

Right now, I've developped a specific java GUI (jar application generated by XCode & ant) which communicate both ways with my Mega board using RXTXcomm.jar for USB management. When I modify my sketch, I compile then download. After, i run from Mac OS the GUI jar application hence outside of IDE context. Do you think it would be easy to slightly modify the arduino IDE so I can from same shell compile & download my sketch but also run my specific GUI ?

I'm not sure why you'd want to use Arduino instead of "your favorite editor" in conjunction with avr-gcc, avr-g++, and avrdude, which are the tools that Arduino IDE uses to do most of the work. (I suppose to make it easier for others to use it, eh?)

My actual strategy is not clear because i'm in steep learning curve, discovering java, XCode, arduino sketch development being the only part i'm more confident but I don't have any experience with AVR studio or other SDK in general even outside of arduino context. I'm really more plug & play in the Mac spirit.

The most likely roadblock is to find to you need a new version of avr-gcc/etc tools that have other problems withthe rest of the arduino environment.

Do you mean i'll run into many problems & issues in trying to get running on my Mac the ATXmega128A3 board being developped by my friend in another country?

The most likely roadblock is to find to you need a new version of avr-gcc/etc tools that have other problems withthe rest of the arduino environment.

Do you mean i'll run into many problems & issues in trying to get running on my Mac the ATXmega128A3 board being developped by my friend in another country?

I mean that you might run into a situation where "atXMega support was added to gcc version 4.5, but gcc versions higher than 4.3 have a bug in the C++ compiler that prevents the Arduino xxx feature from working." For example, the 4.3.2 compiler currently used in arduino seems to have a C++ specific bug in PROGMEM datatypes. In that case, there is an easy workaround and PROGMEM isn't widely used anyway, but it's not hard to imagine a more serious issues (there WAS one that cause some version scrambling; I don't remember the details. I don't think you can currently use gcc 4.4.x with arduino...)

Could you give precise link & instructions on how I dowload teh ful XCode project from arduino web server ?

That part is easy.

Turns out I no longer know how to modify Arduino with XCode. Older versions included an "Arduino.xcodeproj" that you could doubleclick and get everything loaded for you, but the latest source doesn't have that (it uses a standard CLI-based makefile.) :frowning:

I mean that you might run into a situation where "atXMega support was added to gcc version 4.5, but gcc versions higher than 4.3 have a bug in the C++ compiler that prevents the Arduino xxx feature from working." For example, the 4.3.2 compiler currently used in arduino seems to have a C++ specific bug in PROGMEM datatypes. In that case, there is an easy workaround and PROGMEM isn't widely used anyway, but it's not hard to imagine a more serious issues (there WAS one that cause some version scrambling; I don't remember the details. I don't think you can currently use gcc 4.4.x with arduino...)

Do you then recommend I stick for the moment with my mega board + arduino IDE and wait a while before engaging into ATXmega board & associated SDK ?
P.S. Merry Christmas :wink:

I dunno. Twice the speed would be nice, eh? Maybe. Most people don't even need what speed t he arduino already has. SOMEONE has to do something with Xmega eventually...

Merry Christmas!