Repetier
or Marlin Firmware for Arduino Mega implement G2 an G3 circular
interpolation so they are good to use for CNC and 3D Printing. However
they have limitations regarding pure CNC instructions such as pecking an
other GCode's.
Download and install Arduino IDE Here: http://arduino.cc/en/main/software
Download and Repetier Firmware here: http://www.repetier.com/download/
Configuring the Repetier Firmware for CNC functionality:
After installing Arduino IDE, open it and use it to open the Repetier Firmware you have just download (repetier.ino file).
- Arduino IDE Tools Tab:
SelectBoard -Arduino Megra 2560 or MEGA ADK
- Navigate to the Configuration.h file and alter the following lines:
#define NUM_EXTRUDER 0
#define MOTHERBOARD 33
#define XAXIS_STEPS_PER_MM 128
#define YAXIS_STEPS_PER_MM 128
#define ZAXIS_STEPS_PER_MM 2560
#define HAVE_HEATED_BED false
#define ENDSTOP_PULLUP_X_MIN false
#define ENDSTOP_PULLUP_Y_MIN false
#define ENDSTOP_PULLUP_Z_MIN false
#define ENDSTOP_PULLUP_X_MAX false
#define ENDSTOP_PULLUP_Y_MAX false
#define ENDSTOP_PULLUP_Z_MAX false
#define ENDSTOP_X_MIN_INVERTING false
#define ENDSTOP_Y_MIN_INVERTING false
#define ENDSTOP_Z_MIN_INVERTING false
#define ENDSTOP_X_MAX_INVERTING false
#define ENDSTOP_Y_MAX_INVERTING false
#define ENDSTOP_Z_MAX_INVERTING true
#define MIN_HARDWARE_ENDSTOP_X true
#define MIN_HARDWARE_ENDSTOP_Y true
#define MIN_HARDWARE_ENDSTOP_Z true
#define MAX_HARDWARE_ENDSTOP_X true
#define MAX_HARDWARE_ENDSTOP_Y true
#define MAX_HARDWARE_ENDSTOP_Z true
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1
#define max_software_endstop_x true
#define max_software_endstop_y true
#define max_software_endstop_z true
#define ENDSTOP_X_BACK_MOVE 5
#define ENDSTOP_Y_BACK_MOVE 5
#define ENDSTOP_Z_BACK_MOVE 0
#define ENDSTOP_Y_RETEST_REDUCTION_FACTOR 2
#define ENDSTOP_Z_RETEST_REDUCTION_FACTOR 2
#define ALWAYS_CHECK_ENDSTOPS true
#define X_MAX_LENGTH 500
#define Y_MAX_LENGTH 700
#define Z_MAX_LENGTH 200
#define MAX_FEEDRATE_X 200
#define MAX_FEEDRATE_Y 200
#define MAX_FEEDRATE_Z 5
#define HOMING_FEEDRATE_X 80
#define HOMING_FEEDRATE_Y 80
#define HOMING_FEEDRATE_Z 3
#define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_X 1500
#define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_Y 1500
#define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_Z 100
#define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_X 3000
#define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_Y 3000
#define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_Z 100
Configuring the Repetier Firmware for 3D printing functionality:
#define NUM_EXTRUDER 1
#define EXT0_STEPS_PER_MM 413
#define HAVE_HEATED_BED true // if ture or else false
Am I able to mill steel with this CNC Milling machine
Hi, I am working on a mendelmax 3d printer and i am looking for the arduino program that is all step up minus some changes
Hey guys, thinking of tackling this project? Should i go with building the original size or try the larger option? What are your guys thoughts on it? Has anyone successfully built the 1000x800?
Hello , me again ,3D printing works fine. What do you use to generate Gcodes for cncing?
Awesome posting on an impressive piece of work. I do have to ask... I was viewing an Igus video on linear bearing design (Video, time = 21:30 minute mark) where they talk about the 2:1 ratio and the use of fixed and floating bearings to support the load. I understand why a cheaper RepRap style 3D printer with inexpensive fixed bearings might require two drive motors for a given axis, I don't understand that in your design. You are using much better ground shaft support systems. If you have one side with fixed bearings and the other with floating bearings the second drive motor seems like a waste of money, time and effort. Have you tested your design with only one Y axis motor (assuming you can float the non-drive side bearings?)
Why did you choose two drive motors for your Y axis? Or perhaps it was a case of two smaller motors are cheaper than a single large one?
Many thanks to you for sharing your efforts, and detailed materials lists, etc... Nicely done!
I make model on SolidWorks. 1000X800 work aria. Model hase more details
Looks great! Do you want to share your CAD file? :)
Nice, do you want to trade your machine with mine :)
Hey , Did you connect thermister and hotend heater to the ramps? where did you connect the 100K resistor?
The thermistors are connected at T0 and T1 in ramps board. The resistor is connected at D10.
Thankyou. Greets and GREAT PROJECT!!
Great build! How did you manage to cut out the 90 degree angles for the Y axis?
Nice question, i did it using a Manual Mill using a 24mm drill bit.
nice work, i want to make one but i don't know where to start :/
Step by step, you can do enything , start with analyzing the 3D model.
Hi,i'm interested in this proyect but i have some doubts.
Why you have not included the cable carriers in the list of materials.
Waht is the fuction of the cable carriers?
The cable carrier serve the purpose of organization and transportation of large amount of wires, in order to avoid a wire getting stuck where it should not.
Amazing and informative post about 3d printer. I also working on an arduino 3d printer project and i prefer this Arduino Starter Kits. This post is very helpful for me. Thanks for sharing a great info.
My pleasuer :)
Hello
i love the whole idea of the printer but i cant understand the wiring diagram please can you tell me what component is what in it
and how is the extruder controled by the arduino?
The filament is pushed through the extruder by another stepper motor (E0 in the wiring diagram). It can be smaller than the drive motors.
Thanks for helping answer the questions ;)
I make model this CNC in SolidWorks 2016
but i change XY size, work platform 800 X 1000
Howdy,
I have some old hardware from a plasma cutter and I am currently building a 3D printer myself. I am curious if it was possible to modify the firmware so that my computer can directly communicate to the hardware without any arduino interface.
Absolutely. Using Mach3 with the 3D print addon discribed here, you can do it all from PC.
This link does a good job with summing it up.
http://www.shapeoko.com/wiki/index.php/3D_Printing...
nice work, i want to make one but i don't know where to start :/
nice work, i want to make one but i don't know where to start :/
nice work, i want to make one but i don't know where to start :/
nice work, i want to make one but i don't know where to start :/
nice work, i want to make one but i don't know where to start :/
nice work, i want to made one but i don't where to start :/
nice work, i want to made one but i don't where to start :/
I dont know, if it will work, you have to test it out.
Hi there great build,
i have been building my own, but i have a problem in that when testing my movement with the manual controls of repetier, y axis forward it moves, then y axis back the z moves? I read some where it might be the firmware is not for my newer board Arduino mega 2560 r3. could this be? that it is controling the incorect out put?
Turn off all endstops in the firmware, this will make all axis move in both directions. If the z motor moves instead of y motor , just change the cables from the motors to ramps (z to y or y to z).
Hi all figured it out,
turns out i needed to add the enable wire from the ramps 1.4 to the DQ542ma"s as well as enable the the enable xyz in config h.
So onto the next step putting it all together.
Cool :)
Hi. May I know if I add a small motor to my 3dprinter. How do I get the gcode for cutting? In 3d printing, I just use simplify 3d to convert stl to gcode. But in cnc cutting, is it I use back simplify 3d software and convert the stl file into g-code for cutting. 3d printing is addictive, cnc cutting is deductive. So I don't think it is the same. Please enlighten me. Thank you.
You need to get a CAM software for CNC. I use cambam.
Out of curiosity what do you do for temperature control did you build your own sensor or is it included in the ramp?
I used a 100K ohm termistor.
@aldricnegrier Great Build, I read all these post paying most attention to your instructions, only question (right now) is how do you control your dremel tool? and what turns it on and off while cutting. I failed to find anything, I have a all metal all acme control printer. and used your nema23 and wiring . I can 3d print and do laser engraving and want to add your dremel tool type motor to do cutting and wood carving ( using the flex cable. my laser engraver runs off the PC fan (where the 2 extruder hot head would normally go. but now I only need to see how you control your dremel tool . any advice would be most grateful
Hello carlsandra,
You turn the spindle on and off by hand, using the button on the spindle.
Before starting a job , start the spindle, when it finishes you just turn it off.
very nice design, thanks for sharing.
i'll make it too, with extra size length XYZ about 100cm.
Nice, i also want one with 100x100cm build area :)
You are a genius!
Thank you, i am just a normal dude with a passion for Building stuff, not a genius, thanks anyway :)
Hey this is a really great instructable! Can this setup be utilized as a CNC mill or would modifications need to take place?