Update Printer Firmware

This tutorial is under construction:

Solidoodle Motherboard Rev E - Printrboard Rev E.

The Solidoodle motherboard is a slightly modified version of Printrboard Rev E. The biggest changes include:

  • Addition of two 12V power taps
  • 5.5/2.5 barrel connector for power supply
  • Replaced USB-B micro surface mount with USB-B standard connector with through hole mount for added strength
  • Replaced the resonator with a crystal

Compile firmware for Solidoodle motherboard

  • To compile Marlin firmware for the Solidoodle motherboard (or Printrboard), you will need a modified version of the Arduino IDE which includes support for the AT90USB1286 chip. You can download the reprap version here, which has already been modified by the community.
  • The default Solidoodle firmware files can be downloaded from http://www.solidoodle.com/wp-content/uploads/2013/07/Solidoodle_6142013.zip. Extract the files and use the one that corresponds to your printer.
  • Start arduino.exe and go to Tools, Boards, and select either "[USBtinyISP]Teensylu/Printrboard" or "[BootloaderCDC]Teensylu/Printrboard]"
  • Open the firmware and hold shift and click Verify (looks like a play button) for the verbose output. The last two lines will say something like:
C:\Users\TJ7DF4~1.SAV\AppData\Local\Temp\build6511266106596834075.tmp\Solidoodle3_6142013.cpp.hex 
Binary sketch size: 53114 bytes (of a 130048 byte maximum)
  • Navigate to the folder in the output from the previous step. i.e C:\Users\TJ7DF4~1.SAV\AppData\Local\Temp\build6511266106596834075.tmp (this can be a hidden file, so you may have to change your explorer folder options).

Upload firmware using factory bootloader

The Solidoodle motherboard ships with an HID bootloader installed. If you are using Windows, it is extremely easy and quick to use. If you're not using Windows, or do not wish to use the HID bootloader, scroll down to Upload firmware with ISP programmer.

  • Download Lincomatic's BootloaderHID.zip and extract the files.
  • Move the firmware.cpp.hex file from the previous section into the extracted BootloaderHID folder.
  • Connect your motherboard to your PC via USB. If the board is not powered (green LED should be on), you may also need to connect the power supply.
  • Open a command prompt window as administrator.
  • Navigate to the BootloaderHID folder with the following command, substituting in the location of your BootloaderHID folder:
cd C:\Users\TJ7DF4~1.SAV\Downloads\BootloaderHID
  • Add a jumper to the "BOOT" pins located in the center of the board and press the "RESET" button located in the corner of the board next to the microSD card slot to put the board into bootloader mode. If you do not have a jumper, just short the pins together and press reset.
  • Use the following command to flash the firmware to the board, substituting your file in for "firmware.cpp.hex":
hid_bootloader_cli -mmcu=at90usb1286 -w -v firmware.cpp.hex

You should see the following messages:

Teensy Loader, Command Line, Version 2.0
Read "firmware.cpp.hex": 53114 bytes, 40.5% usage
Programming.........................................................
Booting

The firmware flashing is complete when you see the "Booting" message. Remove the jumper from the board and press the reset button again. Your board is now updated and ready to print!

If you would like to use one of the other available bootloaders, check out this blog post for an in depth walk through.

Upload firmware with ISP programmer

The following tutorial assumes you are using the USBtinyISP programmer. Windows users must download and install both WinAVR and the driver for the ISP programmer. Linux/Mac users can skip these steps.

Download and Install WinAVR and Programmer Driver

The most recent version of WinAVR can always be found here. Download the WinAVR installer by selecting the link shown boxed in red. Once downloaded, run the installer.

Before you can use your programmer, you will also be required to install the appropriate driver.

  1. Download one of the drivers listed below.
  2. Unzip the folder and connect the programmer to your computer.
  3. Open the device manager. The USB tiny should show up under libusb-win32 devices.
  4. Right click USBtiny and select "update Driver Software."
  5. Choose "browse my computer for driver software," and direct the installation to the folder you just unzipped.

If you are having issues installing one driver, follow the same steps with the other.

Windows Vista/7/8 x64 bit
Windows XP/Vista/7 x32 bit

Upload Firmware

  • Insure proper connections on pins (demonstrate)
  • run bootloader script if you want to re-flash the bootloader (generally not necessary)
  • We use the HID bootloader
  • Other bootloaders available, but not supported (DFU (atmel) / CDC (arduino)
  • Once bootloader is flashed, firmware can be uploaded via usb cable without AVR cable
//Set fuses 
avrdude -c usbtiny -p at90usb1286 -U lfuse:w:0xde:m -U hfuse:w:0xdb:m -U efuse:w:0xf0:m
// Flash bootloader
avrdude -c usbtiny -p at90usb1286 -U flash:w:BootloaderHID.hex:i
// flash firmware (not necessary, best done with USB) 
avrdude -D -c usbtiny -p at90usb1286 -U flash:w:Solidoodle2_6142013.cpp.hex:i

http://learn.adafruit.com/usbtinyisp

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License