Sanguinololu

From RepRap
Revision as of 01:25, 14 April 2011 by Joem (talk | contribs) (1.0 Assembly Instructions: added 1.0 instructions and photos)
Jump to: navigation, search
Crystal Clear action run.png
Sanguinololu

Release status: working

Sanguinololu.jpg
Description
Release Version 1.0
License
unknown
Author
Contributors
Based-on
[[]]
Categories
CAD Models
Eagle
External Link


Introduction

Here is a project I've been working on. It started in this forum thread. I would like a nice clean board to control my currently un-born Reprap, and due to its cost and simplicity I've chosen to use the Sanguino Arduino compatible board design paired with a set of Pololus and eventually pololu pin compatible StepStick. In order to keep things tidy, I've mushed all this into one board. Since I like to have the ability to expand later on, all the unused Sanguino pins are broken out into an expansion header supporting I2C, SPI, UART, as well as a few ADC pins.

Latest Updates

Latest revision: 1.0 Updated March 23, 2011

Revision 1.0 is here with only a few tiny changes from 0.7 - the screw terminal pads have been rotated so that they face the closest edge, and the design rules have become more strict to be compliant with more board fab shops. I've included gerber files in git so that you can easily have your own boards fabbed.

Features

Assembled rev 0.1 board
Mostly Assembled rev 0.5 board
Assembled rev 0.6 board with Ad-hoc VREG on Stripboard
  • Small design - board is 100mm x 50mm (4" x 2") - barely an inch longer than a business card!
  • Sanguino clone, Atmel's ATmega644P - ATmega1284 drop-in compatible!!
  • Up to 4 Pololu (or Pololu compatible) on-board (X,Y,Z,Extruder) (A4983 without voltage regulator)
  • Supports multiple power configurations
-- 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-24V (25v if you install larger caps)
-- Logic supplied by USB bus
-- Logic supplied by optional on-board voltage regulator (molex harddrive connector cannot be installed at the same time)
Supports multiple communication configurations
-- FT232RL on-board for USB connectivity
-- USB2TTL header is available for FTDI cable, or BlueSMIRF bluetooth module
  • 2 thermistor connectors with circuitry
  • 2 N-MOSFETs for extruder/bed, or whatever
  • Selectable 12v/5v endstop voltage
  • Edge connectors for all wire connections, for vertical jumpers or right-angle tidyness, with or without polarizing tab
  • Silkscreen for connectors on both sides of the board, facilitating bottom cable connections for even more tidyness
  • 14 Extra pins available for expansion and development - 6 analog and 8 digital, with the following capabilities
-- UART1 (RX and TX)
-- I2C (SDA and SCL)
-- SPI (MOSI, MISO, SCK)
-- PWM pin (1)
-- Analog I/O (6)
  • All through-hole components (except FTDI chip) for easy DIY soldering

Revision 1.0 Schematic & Board Images

EAGLE files, parts list

Schematics, board, images: https://github.com/mosfet/Sanguinololu/tree/master/rev1.0

Parts: https://github.com/mosfet/Sanguinololu/tree/master/rev1.0/parts.txt


You will also need Pololu or Pololu compatible stepper drivers such as StepStick

Mouser part projects

Everything you need except the PCB!

Project Name Project Description Price (as of 4-7-2011)
Sanguino Core (all versions) The base project. Does not include FTDI implementation or power connectors. Chose this and then chose add-ons from below. $21.95 (USD)
ATX power connector kit Vertical plugs for using the ATX power supply's ATX+4 12V connector and 4 pin HDD connector. If you install this, you can't install the Screw terminal & Voltage regulator kit... but why would you want to anyway. $1.86 (USD)
Screw terminal & Voltage regulator kit 5mm Screw terminal and voltage regulator (and supporting parts) for those not wanting to use an ATX power supply, or would rather use a single volt power supply, 7-24V (25v if you install larger caps). If you've been following along, you know that if you install this, you can't install the ATX power connector kit. $1.55 (USD)
FTDI & USB plug kit This kit includes a USB type B connector and a SSOP FTDI FT232RL chip (and supporting parts) commonly used for serial communication over USB. $5.30 (USD)
Polarized Connector Kit Polarized right-angle connectors for the edge, and matching cable housings. Cable side is easy pinch type connectors, so no soldering or crimping is needed. $4.30 (USD)

Before purchasing parts, always export a part list from the EAGLE files to ensure the Mouser projects are at the latest revision.

1.0 Assembly Instructions

Introduction

Gather the tools you will need to perform push through hole soldering, and if you opted for the on-board FTDI kit, some SMT soldering as well. Soldering pencil and/or iron, solder, and most importantly: flux! I can't stress how much easier flux makes soldering the SMT device.

Carefully inspect carefully inspect your board for defects. Look for strange connections between traces. Become familiar with the locations of devices from the back as well as the front.

Gather your components and ensure you have the complete parts list for your selection. This photo shows enough parts for two Sanguinololus - one with ATX connectors and the other with screw terminal and voltage regulator.

Sanguinololu 1.0 Build 0. parts.JPG

Soldering the FTDI

Install the FT232RL FTDI IC. Note the orientation of the silkscreen. Solder using your favorite SMT soldering method. The board pictured was tinned from the fabrication shop. After applying flux to the pads, and carefully placing the chip, it was easily soldered by touching the tip of the soldering pencil to the end of pad to tack the chip down, and then on the pin it self to flow the solder correctly.

Parts: IC100 FT232RL FT232RLSSOP

Sanguinololu 1.0 Build 1. flux the pads.JPG

Sanguinololu 1.0 Build 2. soldered ftdi.JPG

Sanguinololu 1.0 Build 2a. soldered ftdi.JPG



Next install the FTDI components. mind the polarization on the electrolytic (C16).

Parts: J1 USB USBPTH C7 0.1uF CAPPTH2 C8 0.1uF CAPPTH2 C11 0.1uF CAPPTH2 C15 0.1uF CAPPTH2 C16 4.7uF CAP_POLPTH2

Sanguinololu 1.0 Build 3. ftdi components.JPG


Now is a good time to test the FTDI chip. Plug a USB cable into the port. The device should show up as a COM port or a TTY device and allow it to be opened. TODO: Add loopback test info here


Soldering Sanguinololu Core

Next, solder female headers, make sure they're straight and completely seated on the PCB.

Parts: 4x Female Pin Header 16 Pin

[[Image:Sanguinololu_1.0_Build_4._female_sockets.JPG|400px]


Solder ms1 jumper headers. I find that it is easier to solder the 2 pin header if the jumper shunt is installed. Ensure they're completely seated and straight.

Parts: 12x Male Pin Header 2 Pin 12x Jumper Shunt

Sanguinololu 1.0 Build 5. microstepping jumpers.JPG


Install the led current limiting resisitor and the MS1 pulldown resistors.

Parts: R1 1.5k RESISTORPTH1 R2 100k RESISTORPTH1 R3 100k RESISTORPTH1 R4 100k RESISTORPTH1 R5 100k RESISTORPTH1

Sanguinololu 1.0 Build 6. pulldown and led resisitor.JPG


Solder the driver decoupling caps. Before soldering, bend the leads to the side so the capacitor lays down. Mind the polarization!

Parts: C1 100uf CAP_POLPTH1 C2 100uf CAP_POLPTH1 C3 100uf CAP_POLPTH1 C4 100uf CAP_POLPTH1

Sanguinololu 1.0 Build 7. decup caps.JPG


Install the MOSFET pulldown resistors as well as the UART current limiting resistors. Install the thermistor high pass filters. Mind the polarization.

Parts: R6 10k RESISTORPTH1 R11 10k RESISTORPTH1 R7 1k RESISTORPTH1 R8 1k RESISTORPTH1 C9 10uF CAP_POLPTH2 C10 10uF CAP_POLPTH2 R9 4.7k RESISTORPTH1 R10 4.7k RESISTORPTH1

Sanguinololu 1.0 Build 8. mosfet resisitors, highpass filters.JPG


Install the dip socket and resonator. Before soldering, bend the resonator leads so that it lays down in the dip socket.

Parts: DIP-40 SOCKET Y1 16MHz 22pF RESONATORPTH

Sanguinololu 1.0 Build 9. dip socket, resonator.JPG


Install the two ceramic caps for the ATMEGA and the reset pull up resistor.

Parts: C14 0.1uF CAPPTH2 C13 0.1uF CAPPTH2 R11 10k RESISTORPTH1

Sanguinololu 1.0 Build A. resistors & filter caps.JPG


Solder the MOSFET, the large charge capacitor, reset button, and the power led. The power led's negative lead is the flat side, or short lead.

Parts: Q1 RFP30N06LE MOSFET-NCHANNELPTH2 Q2 RFP30N06LE MOSFET-NCHANNELPTH2 C12 1000uF CAP_POLPTH4 S1 RESET TAC_SWITCHPTH LED1 POWER LED3MM

Sanguinololu 1.0 Build B. reset button, led, big cap, mosfets.JPG


ATX Power Supply Source

If you are using the ATX power supply kit, install those connectors.

Parts: ATX1 ATX-4VERTICAL ATX-4VERTICAL HDDPWR 5v/12v DRIVEPWRVERTICAL

Sanguinololu 1.0 Build C. atx connectors.JPG


Voltage Regulator & Screw Terminal

If you are using the voltage regulator and screw terminal kit, install those parts now. Note the orientation of the LM7805. Label the screw terminal with a felt tip marker which side is + and which is -.

Parts: IC1 LM7805 VREG C5 0.33uF CAPPTH2 C6 0.1uF CAPPTH2 JP23 SCREW M025MM

Sanguinololu 1.0 Build D. voltage reg and screw term.JPG


Connectors

Finally, solder your motor, end stop, thermistor, and bed/tip connectors. Optionally solder the 12v connectors on the top of the board, and the ISP 6 pin header (for programming the ATMEGA) Various parts.

Sanguinololu 1.0 Build E. connectors & isp.JPG

Revision 0.5 / 0.6 Info

See Sanguinololu_0.6 for assembly instructions, board files, etc.


Revision History

Rev 1.0 Release revision, tighter DRC rules, and updated screw terminal footprint.

Rev 0.7 Added more pins to the expansion header, made I2C and SPI available for use. Combined all stepper motor enable nets into one pin.

Added footprints for voltage regulator for those wanting to use laptop power brick, etc. The vreg component footprints are hidden under the ATX power supply for space saving and to prevent both from being in use.

Enabled USB bus power for logic side.

Connected the 5v pin on the USB2TTL header so that either a: ftdi cable can power the board, or b: The board can power a bluetooth serial module (bluesmirf).


See Sanguinololu_0.6 for older revision history