How to modify a standard RAMPS 1.4 to work with Arduino Due? March 05, 2015 03:41PM |
Registered: 9 years ago Posts: 977 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 06, 2015 12:19AM |
Admin Registered: 13 years ago Posts: 7,121 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 06, 2015 01:13AM |
Registered: 9 years ago Posts: 977 |
Quote
Dust
You have to do serious work to do that. thats why people designed new boards. it was easier
Main issue is voltage. Due is 3.3v while ramps and mega are 5v logic levels.
Quote
Dust
so you have to replace the MOSFET, rewire the power and add in a eeprom (if you want to save to real eeprom)
Quote
Dust
Also I wouldnt take a crap on a $7 ramps. bad connetors, tracks two thin for the current, inferior MOSFETS, shorts, open ccts, incorrect compoents you name it. Its a fire risk waiting to happen.
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 06, 2015 02:41AM |
Registered: 14 years ago Posts: 1,092 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 06, 2015 04:11AM |
Registered: 9 years ago Posts: 977 |
I am quite saddened by the fact that you had all these issues despite working for free in the design of the RAMPS-FD. :-(Quote
Cefiar
There are problems with using the Due with the standard RAMPS boards. That was the reason Bob and I were working on RAMPS-FD. Bob and myself just dropped the project after a bunch of issues where we both pretty much decided that the hassle we were getting from various people simply wasn't worth it, and we both ended up quite time-poor to work further on it. The fact that Geeetech simply took the original V1 beta (we were developing this completely open/open source) and decided to start selling it (they don't care if it doesn't work, they're making money off people who don't know better who are/were buying a lemon) was just the icing on the cake.
Quote
Cefiar
For the issues:
For a start, RAMPS is hard-wired to the 5V line, so you'll need to either cut that and run it to 3.3V so the logic levels work, or work out some way of level shifting things (will require a lot of extra circuitry - see below).
Quote
Cefiar
End stops will have to be microswitches. Can't be Optos or Hall-O's, as they require 5V (and put out 5V logic levels). You'll have to provide some sort of logic level buffer between them and the inputs on the Due if you want to use them.
Quote
Cefiar
You can't use servos (so no auto-levelling) as the servo outputs will not do the full 5V swing needed, and simply connecting a servo (as one side is 5V) may fry your Due output(s) from the higher voltage.
LCDs are optional in my setup (I am using Octoprint) but I certainly would prefer to have the option of installing one. I'll have to check into that. The thermistors are actually connected in a voltage divider circuit, so I don't see that as a big problem.Quote
Cefiar
None of the LCD boards are 3.3V compatible, so you either need to do without or provide I/O level buffering (as per the end stops).
You will probably have issues with thermistors as well (once again, 3.3V input).
Quote
Cefiar
But most of all, the big issue will be that the Due itself doesn't provide much current out at 3.3V, and even 5V isn't as capable as what the Mega is usually capable of. So unless you pretty much run all the I/O through logic level shifting circuitry, you may find that you're going to draw way too much current, and the board will just randomly reset. You really need to provide an external voltage source to supply all these values. You can get that out of something like an ATX supply, but you won't be able to use the existing PS ON circuitry with a PC ATX PSU. Once again, problems with 5V into a 3.3V I/O pin on the Due.
Quote
Cefiar
As for the MOSFETs, you can use the 8743's directly with no real issue (it's used on RADDS and was the plan for RAMPS-FDv2), but there is now better components out there with even lower Rds(on) values and suitable Vgs thresholds. However, given the issues with 3.3V current output on the Due, you may as well use level shifting to get that to 5V as well and simply drive it from those outputs (or use a driver).
All in all, without level shifting to/from 5V, I think you'll be heading into the realm of random resets if you put more than 3 x DRV8825's on the 3.3V lines (this is assuming all the other current drain that goes along with the bits of the board). You might be lucky and be able to do 4, but maybe not. It may even fail once the regulator gets warm, which makes it unreliable. And since 4 is the minimum requirement for most 3D printers (3 axes, 1 extruder), it's a problem.
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 06, 2015 07:01AM |
Registered: 10 years ago Posts: 14,684 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 06, 2015 08:45AM |
Registered: 9 years ago Posts: 977 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 06, 2015 09:09AM |
Registered: 10 years ago Posts: 14,684 |
Quote
AndrewBCN
About point 4. that you made above, how long do you think the Due would take during+after reset until it effectively initializes the GPIOs to the MOSFETs? If it is a matter of 100 ~ 500 milliseconds then I am thinking that having the MOSFETs turned on during that time would not be a problem, since neither the heatbed, nor the fans, nor the heat cartridge in the extruder, are particularly sensitive to such transients.
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 06, 2015 02:12PM |
Registered: 9 years ago Posts: 977 |
Quote
dc42
That depends on the firmware you use. I would expect most firmware to initialize the ports early on, ...
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 07, 2015 04:34AM |
Registered: 9 years ago Posts: 977 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 21, 2015 10:11AM |
Registered: 9 years ago Posts: 977 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 22, 2015 09:48AM |
Registered: 10 years ago Posts: 9 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 22, 2015 01:49PM |
Registered: 9 years ago Posts: 977 |
Quote
NickE
@AndrewBCN,
Could you please describe the changes that are depicted in each of the pictures above? I find the pictures are not enough to adequately understand what is being done.
Thank you!
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 23, 2015 03:24AM |
Registered: 10 years ago Posts: 4,977 |
Triffid Hunter's Calibration Guide | --> X <-- Drill for new Monitor | Most important Gcode. |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 23, 2015 05:17AM |
Registered: 9 years ago Posts: 977 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 29, 2015 07:07AM |
Registered: 11 years ago Posts: 469 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? March 29, 2015 07:30AM |
Registered: 9 years ago Posts: 977 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 16, 2015 02:07PM |
Registered: 10 years ago Posts: 590 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 16, 2015 02:49PM |
Registered: 11 years ago Posts: 469 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 16, 2015 04:26PM |
Registered: 9 years ago Posts: 977 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 16, 2015 10:42PM |
Registered: 10 years ago Posts: 814 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 17, 2015 05:46AM |
Registered: 11 years ago Posts: 469 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 17, 2015 10:23AM |
Registered: 10 years ago Posts: 590 |
I completely agree with you, Andrew!Quote
AndrewBCN
I think your demonstration validates my original idea of using a standard RAMPS and Due for small budget 32-bit firmware development, even for a Cartesian printer such as a Prusa i3. The difference in price between a clone Mega 2560 and a clone Due being something like $5, if somebody comes up with a factory-compatible RAMPS 1.5, usage of the Due + RAMPS combo is bound to catch up the traditional Mega 2560 + RAMPS 1.4 in a short time.
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 17, 2015 11:59AM |
Registered: 9 years ago Posts: 977 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 17, 2015 01:16PM |
Registered: 10 years ago Posts: 814 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 17, 2015 02:28PM |
Registered: 11 years ago Posts: 469 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 17, 2015 03:41PM |
Registered: 10 years ago Posts: 590 |
$diff ../Marlin102/pins_RAMPS_13.h pins_RAMPS4DUE.h 14,17d13 < #if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__) < #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. < #endif < 97,98c93,94 < #define TEMP_0_PIN 13 // ANALOG NUMBERING < #define TEMP_1_PIN 15 // ANALOG NUMBERING --- > #define TEMP_0_PIN 9 // ANALOG NUMBERING / WAS 13 - MODIFIED RAMPS4DUE! > #define TEMP_1_PIN -1 // ANALOG NUMBERING / WAS 15 - MODIFIED RAMPS4DUE! 107c103 < #define TEMP_BED_PIN 14 // ANALOG NUMBERING --- > #define TEMP_BED_PIN 10 // ANALOG NUMBERING / WAS 14 - MODIFIED RAMPS4DUE!
#define BOARD_RAMPS4DUE 433 // RAMP4DUE with AndrewBCN's RAMPS modsand defined the board type in Configuration.h as follows
#define MOTHERBOARD BOARD_RAMPS4DUE
$diff pins.h.ori pins.h 26a27,28 > #elif MB(RAMPS4DUE) > #include "pins_RAMPS4DUE.h"
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 17, 2015 05:38PM |
Registered: 10 years ago Posts: 814 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 17, 2015 06:59PM |
Registered: 10 years ago Posts: 14,684 |
Re: How to modify a standard RAMPS 1.4 to work with Arduino Due? April 17, 2015 07:32PM |
Registered: 9 years ago Posts: 977 |