Teensylu

From RepRap
Revision as of 02:25, 24 October 2011 by Lwalkera (talk | contribs) (Known Variations)
Jump to: navigation, search

This page is a development stub. Please enhance this page by adding information, cad files, nice big images, and well structured data!

Crystal Clear action run.png
Teensylu

Release status: Experimental

Teensylu-Top.jpg
Description
Design Version 0.7
License
unknown
Author
Contributors
Based-on
Categories
CAD Models
Eagle
External Link


Introduction

This is a project that is based on Sanguinololu. The ATmega644P has been replaced with an Atmel AT90USB1286 MCU. This Microcontroller has on-chip USB, removing the need for the FTDI USB UART. All of the through hole resistors and capacitors have been replaced with 0805 SMT components (as of Ver 0.1). Like the Sanguinololu the Teensylu has expansion headers supporting I2C, SPI, UART, and ADC pins. All extra I/O ports of the AT90USB have been broken out to headers for prototyping.

Features

  • Small design - board is 100mm x 60mm (4" x 2.4")
  • Teensylu clone, Atmel's AT90USB1286 - AT90USB1287 drop-in compatible for 20mhz support
  • Up to 4 Pololu (or Pololu compatible) on-board (X,Y,Z,Extruder) (A4983 without voltage regulator)
  • Supports multiple power configurations (Carried from Sanguinololu)
-- Logic & Motors supplied by ATX power supply (needs molex harddrive connector, and optional 4pin atx connector for additional 12v)
-- Motors supplied by 5mm screw terminal 7-35V
-- Logic supplied by USB bus
-- Logic supplied by optional on-board voltage regulator (molex harddrive connector cannot be installed at the same time)
-- on-board USB connectivity
  • 2 thermistor connectors with circuitry
  • 2 N-MOSFETs for extruder/bed heaters
  • 1 N-MOSFET for low power fan or motor
  • Selectable 12v/5v endstop voltage
-- 4 endstops including 4th stop called E-Stop to be used as an emergency stop, or extruder stop (to be added in firmware).
  • Edge connectors enabling right-angle connections
  • Silkscreen for connectors on both sides of the board, facilitating bottom cable connections
  • 14 Extra pins available for expansion and development - 6 analog and 8 digital (Fully compatabile with Sanguinololu), with the following capabilities
-- UART1 (RX and TX)
-- I2C (SDA and SCL)
-- SPI (MOSI, MISO, SCK)
-- PWM pin (1)
-- Analog I/O (6)
  • Additional 14 pin header with 11 I/O for prototyping
  • SMT Components sized at 0805 for easier soldering.

Software

Compatible Firmwares

  • Sprinter Sprinter
  • (Other firmwares are currently untested but any firmware for an arduino mega should work with proper pin setup.)

Building Firmware

Sprinter

teensylu.name=Teensylu
teensylu.upload.protocol=avr109
teensylu.upload.maximum_size=122880
teensylu.upload.speed=115200
teensylu.upload.disable_flushing=true
teensylu.serial.restart_cmd=true
teensylu.serial.safe_baud_rates_only=true
teensylu.upload.avrdude_wrapper=avrdude
teensylu.build.mcu=at90usb1286
teensylu.build.core=teensy
teensylu.build.dependency=true
teensylu.build.serial_number=true
teensylu.menu.usb.serial.name=Serial
teensylu.menu.usb.serial.build.define0=-DUSB_SERIAL
teensylu.menu.speed.16.name=16 MHz
teensylu.menu.speed.16.build.f_cpu=16000000L
teensylu.menu.keys.en-us.name=US English
teensylu.menu.keys.en-us.build.define1=-DLAYOUT_US_ENGLISH
teensylu.menu.keys.fr-ca.name=Canadian French
teensylu.menu.keys.fr-ca.build.define1=-DLAYOUT_CANADIAN_FRENCH
teensylu.menu.keys.da-da.name=Danish
teensylu.menu.keys.da-da.build.define1=-DLAYOUT_DANISH
teensylu.menu.keys.fi-fi.name=Finnish
teensylu.menu.keys.fi-fi.build.define1=-DLAYOUT_FINNISH
teensylu.menu.keys.fr-fr.name=French
teensylu.menu.keys.fr-fr.build.define1=-DLAYOUT_FRENCH
teensylu.menu.keys.fr-be.name=French Belgian
teensylu.menu.keys.fr-be.build.define1=-DLAYOUT_FRENCH_BELGIAN
teensylu.menu.keys.fr-ch.name=French Swiss
teensylu.menu.keys.fr-ch.build.define1=-DLAYOUT_FRENCH_SWISS
teensylu.menu.keys.de-de.name=German
teensylu.menu.keys.de-de.build.define1=-DLAYOUT_GERMAN
teensylu.menu.keys.de-ch.name=German Swiss
teensylu.menu.keys.de-ch.build.define1=-DLAYOUT_GERMAN_SWISS
teensylu.menu.keys.is-is.name=Icelandic
teensylu.menu.keys.is-is.build.define1=-DLAYOUT_ICELANDIC
teensylu.menu.keys.en-ie.name=Irish
teensylu.menu.keys.en-ie.build.define1=-DLAYOUT_IRISH
teensylu.menu.keys.it-it.name=Italian
teensylu.menu.keys.it-it.build.define1=-DLAYOUT_ITALIAN
teensylu.menu.keys.no-no.name=Norwegian
teensylu.menu.keys.no-no.build.define1=-DLAYOUT_NORWEGIAN
teensylu.menu.keys.pt-pt.name=Portuguese
teensylu.menu.keys.pt-pt.build.define1=-DLAYOUT_PORTUGUESE
teensylu.menu.keys.pt-br.name=Portuguese Brazilian
teensylu.menu.keys.pt-br.build.define1=-DLAYOUT_PORTUGUESE_BRAZILIAN
teensylu.menu.keys.es-es.name=Spanish
teensylu.menu.keys.es-es.build.define1=-DLAYOUT_SPANISH
teensylu.menu.keys.es-mx.name=Spanish Latin America
teensylu.menu.keys.es-mx.build.define1=-DLAYOUT_SPANISH_LATIN_AMERICA
teensylu.menu.keys.sv-se.name=Swedish
teensylu.menu.keys.sv-se.build.define1=-DLAYOUT_SWEDISH
teensylu.menu.keys.en-gb.name=United Kingdom
teensylu.menu.keys.en-gb.build.define1=-DLAYOUT_UNITED_KINGDOM
teensylu.menu.keys.usint.name=US International
teensylu.menu.keys.usint.build.define1=-DLAYOUT_US_INTERNATIONAL
  • Download Sprinter firmware. https://github.com/kliment/Sprinter
  • Open Sprinter in arduino and configure configuration.h file.
    • Motherboard should be set to 8: #define MOTHERBOARD 8
    • Turn off endstops if you didn't install endstops: const bool ENDSTOPS_INVERTING = true;
    • Turn comment out SD card support, not working yet: //#define SDSUPPORT
  • Go to Tools menu and set Board to Teensy++ 2.0, or Teensylu if using alternate bootloader.
  • Go to Sketch menu and click "Verify/Compile"
  • A program will popup for the teensy programmer after sprinter is done compiling. We don't use that here. You can exit it.
  • Find the hex file: the compiled hex is in a temporary directory.
    • Windows: Find the hex file in the temp folder. c:\users\{currentuser}\appdata\temp\build1234567890\sprinter.cpp.hex copy this hex file into my documents or somewhere more accessible.

Programming the Firmware

Atmel preloads the AT90USB128 with a bootloader that allows for programming of the firmware using the USB port.

Windows

This requires their software called FLIP to be installed. For more information, read the following documentation: http://www.atmel.com/dyn/resources/prod_documents/doc7618.pdf http://www.atmel.com/dyn/resources/prod_documents/doc7769.pdf

For Windows Users You will need to download FLIP FLIP: http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3886

To start the bootloader:

  • Press the reset button on the board
  • Windows should say "found new hardware". the drivers for this hardware are in the "c:\program files\atmel\flip 3.4.3\usb" folder.

Flashing Firmware

  • Start the FLIP program. select the target device: AT90USB1286. Select Communication medium as USB, and click Open.
  • Open hex file, and choose the Sprinter.cpp.hex
  • Make sure the Erase, Blank Check, Program, and Verify checkboxes are checked.
  • Click the Run button
  • To enter normal operation, unplug and replug the USB cable on the board.
  • Congratulations, you're done!

Mac

For Mac users a customer version of opensource programmer called "dfu-programmer" Information on this software can be found on it's homepage here: http://www.uriahbaalke.com/?p=106 TODO: Add mac instructions here.

Linux

For Linux users an opensource programmer called "dfu-programmer" has been found. Information on this software can be found on it's homepage here: http://dfu-programmer.sourceforge.net/

  • dfu-programmer at90usb1286 erase
  • dfu-programmer at90usb1286 flash sprinter.hex

Alternate Bootloader

If you have an ISP or JTAG cable, you can also program an alternate bootloader from the LUFA project that allows you to potentially program with the standard Arduino software.

  • Download BootloaderCDC.zip
  • Unzip to get BootloaderCDC.hex
  • Program using your favorite ISP/JTAG cable. The command for avrdude is avrdude -p at90usb1286 -c <your programmer here> -U flash:w:BootloaderCDC.hex

Board Images

Teensylu-Top.jpg

Teensylu-Bottom.jpg

Teensylu Assembled.JPG

Schematics

File:Teensylu-0.6.pdf

Mouser project: https://www.mouser.com/ProjectManager/ProjectDetail.aspx?AccessID=360523b45b

Where to get it

Bare PCB

Complete Kit

Assembled Board

Known Variations

  • Printrboard: Somebody is working on building a variation of the board that that integrates the stepper drivers on board and has sd support.