RD3D/1.0

From RepRap
Revision as of 23:15, 6 October 2017 by Lkcl (talk | contribs) (RD3D v1.0 - Reprap Due for 3D Printing)
Jump to: navigation, search
Crystal Clear action run.png
RD3D 1.0

Release status: in development

RD3D 1.0 eagle.jpg
Description
RepRap Due 3D Printing shield Arduino DUE based modular RepRap electronics.
License
Author
Contributors
Based-on
Categories
CAD Models
External Link



Note regarding GPLv3 License Compliance

This project is being developed publicly. Manufacturers are welcome to respect and honour the GPLv3 License. They are welcome to utilise the designs on this page in compliance with the GPLv3 License. However please bear in mind that online reports from users will be fully-documented - publicly - on this page, as to the manufacturing quality provided by each Manufacturer, and their compliance and conformance with GPLv3 Hardware and Software Licensing.

RD3D v1.0 - Reprap Due for 3D Printing

This board is derived from Ramps 1.4.2 and has the following features and improvements:

  • Suitable for use with Arduino Due: uses selectable 3.3v or 5.0v supply
  • Suitable for up to 24v on both or either Power inputs
  • Removed all double Stepper connectors (motors should be wired in series)
  • Reorganised all AUX ports (I2C, UART, AUX3 remain same)
  • Removed Thermal Pads to increase power handling capacity between layers
  • Removed screw-holes from PCB (saves space for components)
  • Added SPI connectivity (for supporting 4 TMC2130 or other SPI-based steppers)
  • Added MicroSD Card (for porting RepRapFirmware)
  • Added buffers on MicroSD and 5v to 3.3v regulator (allows Due or 2560 use)
  • Added 3.3v / 5v selector jumper (for either Due or 2560 power)
  • Moved D8, D9 and D10 LEDs next to their respective outputs
  • Increased current capacity of VDD trace to steppers, MicroSD, AUX3 and AUX4
  • Increased Main Power copper pour (inc. to VMOT) widths, added extra VIAs
  • Moved Thermistor jumpers down to end of PCB, linked to closer ADC pins
  • Added 4th ADC next to thermistors, with VCC for use as Z-Probe (no 4.7k res)
  • Added 5th ADC next to thermistors, for filament width detection.
  • Added 5x1 hdr for Z-probe sensor and Filament width detection (and runout).
  • Changed ADC capacitor types to 0805 (saves space)
  • Added 0.1uF Decoupling Capacitors, close to each VMOT Power pin
  • Added MC7808CDTG 1A 8V Power Regulator, to supply Arduino from up to 24v
  • Added extra 6th Stepper Board. Can now do auto-bed levelling (triple Z)
  • Added 4th MOSFET (D11). Can do Bed 2 fans 1 extruder or Bed Fan 2 extruders
  • Added 5th PMV40UN2 MOSFET for use with small fans (controlled by D12)
  • Added Twin Header for 2 always-on fans (connected directly to Power In)
  • Added a SN74HC125 to the MOSFETs to achieve full RDSon (Due is 3.3v)
  • Added an AT24C512 I2C EEPROM
  • Use LED GPIO (with a 100k pullup) to disable MOSFETs on Due startup
  • Added GND Shielding VIAs, significantly reorganised power planes.
  • Significantly adjusted pinouts so that wires do not cross (reduce EMC)
  • Simplified Copper pour: single GND on TOP and BOTTOM with low priority
  • Rotated top 3 stepper boards to give greatly improved GND and VMOT supply
  • Moved (and rotated) bottom 3 stepper boards to lower edge of PCB
  • Added 6x2 AUX pinheader with 7 GPIO plus SPI, supports external steppers
  • Removed reset switch (kept reset header) to increase GND plane integrity
  • Marked +24V (main power) tracks with approximate ampage in 1oz copper

Being based on RAMPS 1.4.2 it also has the following features:

  • Improved current-carrying capacity (2oz copper instead of 1oz)
  • Standard removable Blade fuses
  • Suppresion capacitors on endstops
  • Extra jumper on the reset switch

Design features gallery

Here are some of the design features, with images (in order), below:

  • LEDs next to each power output: Heater, Fans, Extruder
  • Improved copper pour for VMOT power (includes extra VIAs)
  • MicroSD card added with level-protecting buffers; Thermistor terminals moved right next to ADC
  • 6th Stepper Driver added to handle Triple Z-screws.
  • Tri-state Buffer on MOSFETs (3.3v to 5v conversion for Due); D11 disables MOSFETs (defaults to off)
  • LDO with an 8V 800mA output supplies power to Due from input voltage, accepts anywhere between 12v and 24v

GPLv3 PCB Board Source code

Full GPLv3 source code is available at http://hands.com/~lkcl/rd3d

git clone http://hands.com/~lkcl/rd3d/.git

MOSFETs

WARNING: safety is paramount here. You are wholly and entirely responsible for your own safety. Advice is given below however you are entirely and solely responsible for checking it, ignoring it or following it.

The MOSFETs are controlled by D8, D9, D10, D11 and D12. To protect the large MOSFETs, D8 to D12 are disabled until the LED is switched on (which is inverted on RD3D: LED goes on when pulled LOW).

There is a different range of possible power provision: 12v to 24v is supported by all MOSFETs. However the current and maximum power rating is limited either by the connector or by the MOSFETs.

Fan1 is controlled by D12. This is a PVM40UN2 N-MOSFET and it can handle up to 1 watt. Its primary purpose is to control one 40 to 50mm fan. Do not exceed its power rating.

The power capability of the other Heaters and Fans will depend on what MOSFET is used. For up to around 100W the STB55NF06L could be ued used, however the power rating of the tracks on all but the "Heater" is not rated for more than around 5.5A (65 Watts @ 12V, 130 @ 24v). For the Heater, which has its own separate supply, if an IRLB3034PBF is used it could theoretically be possible to go up to 250 Watts @ 12V or even 450W @ 24V as the tracks are connected on both sides of the PCB. However the actual connectors are only rated for 15A and their rating should not be exceeded. This limits the power on 12V to 180W and at 24V 360W. A table of possible power is as follows:

  • D8: with an IRLB3034PBF, power is limited to 360W @ 24v and 180W @ 12v. With a STB55NF06L power is limited to around 100W. Regardless of the choice of MOSFET, in either case do not connect to heated beds which measure less than 1.4 Ohms.
  • D9, D10, D11: use with STB55NF06L MOSFETs. All of these can be used for Fans or Extruders. Power is limited to around 65 Watts @ 12V, and 130W @ 24V). Do not use for a heated bed.

All four large MOSFETs go through a buffer (level-shifter) which is supplied specifically by the 5V rail so that if a Due is used the RDSon of the MOSFETs is met. The smaller fan MOSFET has a very low RDSon of only 2.5v, so may be used with a Due without requiring a buffer.

All MOSFETs should be used with heatsinks and thermal paste. The heatsinks are connected to the DRAIN of the MOSFET, as the metal tab is live, so the heatsink becomes part of the actual circuit. Therefore please heed these warnings

  • DO NOT allow the MOSFET heatsinks to touch any other heatsink, track or connector, as that could potentially cause a short-circuit which could be dangerous.
  • DO NOT use shared heatsinks between the MOSFETs as, likewise, this will connect the DRAIN pins together.

Stepper Boards

RD3D A4988.jpg

The RD3D takes two different types of stepper board (both fitting the exact same footprint):

  • Standard A4988 compatible steppers.
  • TMC2130 SPI-capable, which may also take standard A4988 compatible steppers.

The difference is in the jumper settings. A4988 compatible stepper boards are exactly the same jumper configuration as with RAMPS 1.4 (MS1, MS2, MS3), whereas the TMC2130 capable positions require a slightly different jumper configuration.

Current capacity to VMOT on the RD3D has been designed (even if 1oz copper is used on the PCB) to handle up to 3A per stepper, as long as forced-air cooling on the actual stepper boards is used. However it is not possible to supply a total of 18A to all six steppers at once, so do not exceed the limit of the power supply or the power connectors (which are rated at 15A total and must also have sufficient spare capacity to supply the extruders and fans as well).

Make sure in every case that the stepper boards are orientated so that the potentiometer points UPWARDS (north), when the board is orientated with the power connector facing to the RIGHT (west). Aside from the jumper settings (below) follow standard instructions for installing and configuring stepper boards.


RD3D TMC2130.jpg

To configure the TMC2130 steppers with SPI, connect 4 jumpers between the RIGHT 4-pin header to the MIDDLE set, on the row marked MS0, MS3, MS2 and MS1.

To configure A4988-compatible steppers without SPI:

  • MS0 must always be connected between the top pin of the (middle) 5-pin header to the top of the LEFT-most 4-pin header.
  • MS1 can be connected as NORMALLY connected as with RAMPS 1.4 (left open or connected to the LEFT 4-pin header)
  • MS2 can be connected as NORMALLY connected as with RAMPS 1.4 (left open or connected to the LEFT 4-pin header)
  • MS3 must be connected as normally connected as with RAMPS 1.4 if HIGH is required, but if LOW is required this must be done by connecting pins 1 and 2 of the middle 5-pin header (last two lower pins).


Connectors

Power and Reset

RD3D POW Reset.jpg

These are two headers for reset and Power. Reset is a 2-pin header that shorted to reset the Arduino. Power requires a selector jumper to choose between either 5V (for Arduino) and 3.3v (for Due). Pin 1 of tthe power header is on the left.

  • Pin 1 (left): 3V3 IN
  • Pin 2 (centre): VCC Power
  • Pin 3 (right): 5V0 IN

DO NOT select the wrong power for a Due. Whilst for an Arduino it may simply fail to supply the board proper power (but may actually operate... at least partially) if you connect 5V to a Due it will blow up, i.e. you will irretrievably destroy the ATSAM3 Micro-controller. Don't do that. Only connect Pin 1 and Pin 2 for a Due, and only connect Pin 3 and Pin 2 for an Arduino Mega 2560.

AUX3

RD3D SPI.jpg

AUX3 is for SPI and has two available GPIOs for use as CS (Chip Select) and is intended for use with an extra MicroSD Card, SPI-based LCD (HX8357D), WIFI or Ethernet-based SPI module (W5500 strongly recommended). The SPI lines are connected to the Arduino main SPI interface so may not realistically be used as GPIO. The SPI and GPIO are not buffered (not level-shifted), so if an Arduino is used the SPI devices must be 5V tolerant or come with their own level-shifter. Pin 1 is marked in the bottom left corner.

  • Pin 1: (bottom, column 1): VCC (3.3v for Due, 5.0v for 2560)
  • Pin 2: (top, column 1): D53
  • Pin 3: (bottom, column 2): MISO
  • Pin 4: (top, column 2): MOSI
  • Pin 5: (bottom, column 3): SCK
  • Pin 6: (top, column 3): D52
  • Pin 7: (bottom, column 4): GND
  • Pin 8: (top, column 4): NOT CONNECTED (NC)


Endstops

RD3D Endstops.jpg

Endstops are in the top right corner of the board

  • Order of Endstops is: ZProbe (or ZMax), X-Min, Y-Min, Z-Min, X+ (Max), Y+ (Max)
  • S is for Signal
  • - is to GND
  • + supplies Power (3.3v for Due, 5.0v for 2560)


UART

RD3D UART.jpg

UART (which is also connected to the USB-UART converter IC on an Arduino) is along the top edge of the PCB, towards the right. Pin 1 is marked on the right.

  • Pin 1: VCC (3.3v for Due, 5.0v for 2560)
  • Pin 2: GND
  • Pin 3: RX
  • Pin 4: TX


I2C

RD3D I2C.jpg

I2C is in the top right corner of the board. Pin 1 is marked at the bottom.

  • Pin 4: SCL
  • Pin 3: SDA
  • Pin 2: GND
  • Pin 1: Power (3.3v for Due, 5.0v for 2560)


AUX2

RD3D AUX2.jpg

AUX2 is the 12-pin (2x6) header at the right of the board. Pin 1 is marked (bottom right, row 6). This header has six PWM-capable GPIO and SPI. It is intended for expansion to add extra steppers, including SPI-based ones such as the TMC2130 and TMC2660. Theoretically up to three SPI-driven steppers could be used (if direction is controlled by SPI - see TRAMS firmware from Trinamic) by using 3 sets of EN, SPI-CS. Otherwise, it can support up to two non-SPI-driven steppers (2 sets of EN, DIR, STEP).

  • Pin 12 (row 1, left): D36
  • Pin 11 (row 1, right): D34
  • Pin 10 (row 2, left): SCK
  • Pin 9 (row 2, right): D38
  • Pin 8 (row 3, left): MOSI
  • Pin 7 (row 3, right): D40
  • Pin 6 (row 4, left): MISO
  • Pin 5 (row 4, right): D42
  • Pin 4 (row 5, left): NC (Not Connected)
  • Pin 3 (row 5, right): D44
  • Pin 2 (row 6, left): Power (3.3v for Due, 5.0v for 2560)
  • Pin 1 (row 6, right): GND


ZProbe / Filament Detect

RD3D ZProbe.jpg

This header is intended for use with analog Z-Probes (for example DC42's height sensor board https://miscsolutions.wordpress.com/mini-height-sensor-board/) and for filament width detection and run-out. Pin 1 is marked on the left corner.

  • Pin 5: FILWID
  • Pin 4: ZP
  • Pin 3: ZP_MOD (output) / Filament Detect (input) - shared
  • Pin 2: Power (3.3v for Due, 5.0v for 2560)
  • Pin 1: GND


AUX4

RD3D AUX4.jpg

AUX4 is a 2.54mm 1x18 SIP header identical to the RAMPS 1.4 AUX4, with the exception that a couple of non-critical pins have been routed differently. Primarily this connector is intended for an LCD. With most LCDs being bit-banged this simply requires a firmware change: RAMPS 1.4 LCDs can still be used on this connector.

  • Pin 18: D22
  • Pin 17: D24
  • Pin 16: D23
  • Pin 15: D25
  • Pin 14: D27
  • Pin 13: D29
  • Pin 12: D31
  • Pin 11: D33
  • Pin 10: D35
  • Pin 9: D37
  • Pin 8: D30
  • Pin 7: D41
  • Pin 6: D43
  • Pin 5: D45
  • Pin 4: D47
  • Pin 3: D49
  • Pin 2: GND
  • Pin 1 Power (3.3v for Due, 5.0v for 2560)


BOM, PDFs

Why is the RD3D Board being done? Why not use an existing board?

In the markets in Huaqiang Road, in the Futian District of Shenzhen, RAMPS 1.4 boards can be bought cash for around 27 RMB, which is about $USD 3.50. Adding an Arduino 2560 plus four A4988 cloned stepper drivers brings that total to under $USD 15. The STP55NF06L MOSFETs of course need replacing (for the heatbed to operate without burning out the MOSFET) but IRLB304PBF MOSFETs can be bought in the same market at ridiculously low prices.

However RAMPS is only really suitable for the 2560, which, being an 8-bit controller is really too slow, and it's extremely inconvenient to upgrade a RAMPS to 24v. It's not actually possible to upgrade RAMPS to pure 24v: it's necessary to do hybrid 12v (for powering the 2560) and 24v may be used for the heatbed alone. If you want 24v for the fans, heater and Motors, this is not really possible without cutting tracks in the PCB.

In addition, the hard limit of 5 stepper boards makes it unsuitable for use in auto-bed-levelling scenarios (triple Z screws).

So if you prefer to use 24v all-round, or prefer to use a 32-bit microcontroller, or would like to consider doing auto-bed-levelling, RAMPS 1.4 is not an option.

So in looking around for alternatives, several boards came up. The extremely good Duet 0.6 would be perfect (and a reasonable cost at around $60), except it's no longer made. Likewise the Duet 0.8.5 is no longer manufactured: it was $USD 120 which is almost as much as an entire 3D printer may be sourced for in Shenzhen. The absolutely superb DuetNG is $USD 150, which is simply far too much when you compare it to $USD 15 for a RAMPS 1.4 plus an ATMega 2560 Arduino plus 4 A4988 drivers, in Shenzhen (even if it's not apples-for-apples).

Also investigated was RADDS (because it uses the same RepRapFirmware as the Duets) - unfortunately whilst it would be perfect it's also proprietary: PCB files are "available under request and only for non-commercial personal use". This is not the spirit of the Reprap movement.

Also investigated was Smoothieware boards. The team seems to have a good sense of camaraderie, excellent support and, being based outside of China, take considerable care in manufacturing and QA testing. Unfortunately, their manufacturing and sourcing... takes place outside of China. Basically anything that is sourcing its components in Europe or the USA results in a huge premium.

Also, unfortunately, when boards are typically cloned by Chinese Manufacturers, a number of things tend to happen (which are exactly the reasons why people in Europe and the USA typically don't risk buying China-sourced boards...)

  • They typically "tinker" with the design (adding in EMF and unacceptable noise)
  • They completely forget to label which version they are selling (including their own modifications)
  • They don't honour the GPL license or the spirit of the Reprap movement
  • They don't provide firmware source code
  • Cost-shavings are carried out, such as using 0.5oz copper or replacing critical components, often without consent or clear marking.
  • Actual manufacturing is often not properly QA'd
  • Known-bad boards continue to be sold even after they are informed of this fact.

Clearly this is not the case for absolutely every single Chinese Manufacturer: the difficulty comes for a Westerner in identifying exactly which Manufacturers may be trusted, in order to make reliable, consistent and safe use of the pricing advantage that China has to offer.

So there is this very strange and paradoxical failure to combine the best of a Western mindset with Asian pricing and sourcing. The RD3D therefore endeavours to combine the advantages of Chinese component sourcing and manufacturing with a Western mindset, where GPL licenses will be fully honoured for both software source and hardware designs, and proper QA will be carried out to ensure that the resultant PCBs work 100%.

In short: there are no *low cost* 32-bit, 6 stepper, 4 MOSFET, 24v-capable Reprap 3D printing boards that fully honour the GPL and the spirit of the Reprap community, hence why it has been necessary to create one.

Discussions