Relevant Documentation

Prepare your Linux System

Driver

Aassuming you have a "udev" system you need appropriate udev rule:
Make a file called 'flip.rules' in the folder '/etc/udev/rules.d/' with the following content:
---
# Atmel flip rules
#add support AT89C5132  AT89C51SND1 AT89C51SND2 ATOCDTARGET
ACTION=="add", SUBSYSTEM=="usb_device", SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2fff", GROUP="flip", MODE="0660"
#add support AT89C5130 AT89C5131
ACTION=="add", SUBSYSTEM=="usb_device", SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2ffd", GROUP="flip", MODE="0660"
#add support AT90USB1286 AT90USB1287
ACTION=="add", SUBSYSTEM=="usb_device", SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2ffb", GROUP="flip", MODE="0660"
#add support AT90USB162
ACTION=="add", SUBSYSTEM=="usb_device", SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2ffa", GROUP="flip", MODE="0660"
#add support AT90USB647 AT90USB646
ACTION=="add", SUBSYSTEM=="usb_device", SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2ff9", GROUP="flip", MODE="0660"
#add support AT32UC3A0128 AT32UC3A0256 AT32UC3A0512 AT32UC3A1128 AT32UC3A1256 AT32UC3A1512
ACTION=="add", SUBSYSTEM=="usb_device", SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2ff8", GROUP="flip", MODE="0660"
#add support AT90USB82
ACTION=="add", SUBSYSTEM=="usb_device", SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2ff7", GROUP="flip", MODE="0660"
#add support  AT32UC3B0128 AT32UC3B0256 AT32UC3B064 AT32UC3B1128 AT32UC3B1256 AT32UC3B164
ACTION=="add", SUBSYSTEM=="usb_device", SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2ff6", GROUP="flip", MODE="0660"

---

then you need run
sudo service udev restart
Also add group 'flip' and add necessary users.
sudo groupadd flip
sudo usermod -a -G flip {yourUserName}

installing new firmware

  • sudo apt-get install dfu-programmer
  • compile your firmware as usual with the arduino IDE. (only compile not upload)
  • arduino will create a hex file within the tmp directory.
  • power and connect  printrboard
  • set printrboard into boot mode (remove boot jumper, reps after rev.D add boot jumper)
  • press the reset button
  • lsusb (should say 'Atmel Corp. at90usb AVR DFU bootloader') if lsusb says 'VOTI' your not in bootloader mode
  • sudo dfu-programmer at90usb1286 erase
  • sudo dfu-programmer at90usb1286 flash {path to the hex file}  (e.g. sudo dfu-programmer at90usb1286 flash /tmp/build7750901060806024229.tmp/Repetier.cpp.hex)
  • exit boot mode by add/removing (depends on rev.) the boot jumper and press the reset button
  • lsusb should say 'VOTI'
  • connect with your host software and test if the changes have been applied