Xmegaduino fork of Arduino
Clone or download
#43 Compare This branch is 195 commits ahead, 2049 commits behind arduino:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
.settings Update eclipse java-formatter settings Mar 27, 2015
arduino-builder Created 'arduino-builder' project. Nov 13, 2014
arduino-core Command line --get-pref may be used without name of the target pref. May 29, 2015
build Merge remote-tracking branch 'upstream/ide-1.5.x' into xmegaduino May 30, 2015
libraries Merge remote-tracking branch 'upstream/ide-1.5.x' into xmegaduino May 30, 2015
tools Add support for creating package and use new Board Manager in officia… May 30, 2015
.classpath Windows: got rid on JNA, thus no more UnsatisfiedLinkError (at least … May 20, 2015
.project Fix eclipse project files Jan 11, 2012
lib_sync Added lib_sync, utility script Apr 23, 2015
license.txt Replacing Processing's text files with Arduino's (e.g. todo.txt) Jun 1, 2009



Port of the Arduino IDE, core, libraries and bootloader to support the Atmel XMEGA family of chips.

Currently supported boards:

  • AVR xplain board
  • Akafuino X board
  • Sparkfun xmega100 breakout board

The following boards should work with a little tweaking:

  • Magnetovore
  • Megavore
  • Boston Android

This project has replaced the xmegaduino project on Google Code (http://code.google.com/p/xmegaduino/) and has been active since September 2011. It supersedes the earlier xplainduino.


Download from here.

  • Windows
  • OS X
  • Linux 32-bit
  • Linux 64-bit


  • AVR xplain board

The LUFA project provides a replacement USB firmware that can act as a PDI programmer. You can also use a PDI programmer such as the AVR Dragon.

Requires a PDI programmer, such as the AVR Dragon in order to upload sketches and burn bootloaders.

Comes with a bootloader pre-installed and can be used directly from the Xmegaduino IDE.


The Xmegaduino project is beta quality, and not all the features of the Arduino IDE are supported yet.

Working features:

  • digitalRead and digitalWrite
  • millis and delay
  • micros and delayMicroseconds
  • Serial on USB (USARTC0), Serial1 on pins D2/D3 (USARTD0) and Serial2 on D6/D7 (USARTD1).
  • analogRead
  • analogWrite
  • attachInterrupt, detachInterrupt, interrupts, noInterrupts
  • Upload using bootloader over usb port, D2/3, or D6/7.
  • Burning bootloader from arduino IDE
  • DAC (using xmDAC library)
  • Wire
  • shiftOut, shiftIn, pulseIn (not tested)
  • tone
  • SPI library
  • EEPROM library


  • analogReference
  • Ethernet library
  • Servo library
  • Stepper library


Beta5 (based on Arduino 1.5.2-rc2):

  • New avr-gcc 4.8.1, avrdude 6.1
  • Many many updates

Beta4 (based on Arduino 1.0.1-rc2):

  • New avr-gcc 4.5.1, avr-libc 1.7.1 for all platforms (Windows, Mac OS X, Linux 32/64)
  • Linux now comes with bundled avr-gcc and avr-libc
  • Use correct SPI port on Akafuino X (pin 10-13)
  • Upload sketch to XPlain using PDI
  • Translated to 23 different languages (Thanks to Arduino)

Beta3 (based on Arduino 1.0):

Big thanks goes out to Brendan Powers and Russell for their contributions

  • xmDAC now works again
  • EEPROM library fixed
  • All baud rates are now dynamically calculated
  • SPI library ported
  • shiftIn function implemented
  • tone implemented using timer TCC1
  • LEVEL interrupt mode
  • Replicated Arduino's pullup behavior when writing to an input pin