Introduction: Replace Monoprice Select Mini Controller With Arduino Mega & Ramps 1.4

Picture of Replace Monoprice Select Mini Controller With Arduino Mega & Ramps 1.4

The Monoprice Select Mini is an inexpensive solid little printer. I have used mine for many hours and made lots of custom improvements to it. At some point the the controller board failed. I contacted Maylan the original manufacturer of the board for a replacement and was quoted at $66 for a replacement ($45 board, $16 shipping, $5 currency conversion). Rather than buy another board that might fail for a third of the cost of the printer I started researching my options.

Step 1: Parts

Picture of Parts

Many of the kit 3D printers use Marlin on the Arduino Mega and a Ramps 1.4 board to control them. I decided to buy the parts and see if I could set Marlin up to talk to the Monoprice's existing hardware. Marlin is an open source firmware that is easily compiled and deployed to an Arduino compatible board. The configuration in Marlin is well documented and easy to update. You can find many people selling the parts you need in a single kit in the $30 - $40 dollar range on Amazon (http://amzn.to/2kXxSRq) or Ebay and if you part out the individual pieces you need on places like aliexpress.com you can often get it for even less but you will wait since most of these will be shipped to you via China Post.

These are the basic parts you need to do this project:

Step 2: Wiring the Endstops and Thermistors

Picture of Wiring the Endstops and Thermistors

The spacing of the headers on the ramps board matches the spacing of the holes in the connectors for the Monoprice controller. I was able to use the existing connectors on the stepper motors but things were too cramped for the connectors on the endstops and the thermistors. I clipped the connectors off and soldered in some breadboard connectors I had from other projects (http://amzn.to/2kXJeoz). I retained the yellow cable labels and used the same colors for the wires. I used some shrink wrap tubing (http://amzn.to/2kXD5Zp) to keep everything looking nice. Using the longer wires also had the advantage of extending the board out so I can figure out a way to mount it next to the printer.

The ramps board can support having and endstop at the origin and the end of the run. They are arranged on the ramps boards as X-Origin, X-End, Y-Origin, Y-Origin, Y-End, Z-Origin, Z-End. The Monoprice printer only has origin endstops so you will want to put the X,Y,Z endstops at the 1st, 3rd, and 5th positions on the ramps board. The ramps boards supports powered 3 pin normally closed endstops but the Monoprice uses normally open 2 wire endstops. So you will be wiring just the top 2 pins for your endstops.

The thermistors on my board are wired T0 T1 T2. The A thermistor is the hotend thermistor and goes to T0, the B thermistor is the bed thermistor and goes to T1.

Step 3: Wiring the Stepper Drivers

Picture of Wiring the Stepper Drivers

The steps are configurable on the ramps board with jumpers. If you don't set them to match the Monoprice stepper motors you will get scaled prints. You can see how much smaller the raft for the cat print was before I fixed the jumper settings for my DRV8825 stepper drivers.

By trial and error I've determined that the Monoprice board had the steps set to 1/16th steps. Depending on which stepper drivers you picked or got with your kit you will need to adjust the jumpers. The jumpers are located under the where the stepper drivers go. The jumpers are numbered 123 from left to right when the blue and green connectors are on the left. For the A4988 drivers you need all 3 jumpers in for 1/16th steps, and for the DRV8825 stepper drivers I used just the 3rd jumper is set for 1/16th steps.

There is a variable resistor on the drivers (potentiometer). We will use this later to limit the current to the motors. The A4988 potentiometer faces away from the potentiometer and with the DRV8825 they face towards the power supply.

Step 4: Wiring the High Current Bus

Picture of Wiring the High Current Bus

I clipped the connectors off of the fan, heated bed, and the hotend cartridge and they get wired on the blue bus connectors. The top is the hot end, the middle is the fan, and the bottom is the bed. I needed to extend the wires of the heated bed as well. Be sure to splice in some wire with the same gauge or higher if you do that. I also left the yellow labels to help know which is which.

If you want to use the same power supply you can also cut the connector and splice in some longer wires to the ramps board. I didn't trust the cheap power supply that came with the printer so I've been using the 203W Xbox 360 power supply I found at Goodwill for $3.99. (You can also find them at GameStop for about $7 - $15) The green connector is the input power. The bottom and top are paired ground and power. Starting with the bottom as ground it's ground, power, ground, power. With my power supply I have multiple power and ground and have both wired. The Monoprice power supply only has two wires. You maybe be able to only wire the bottom two but if you want to put power on both rails you could wire the bottom two and jumper over the other rail.

Step 5: Wiring the Stepper Motors

Picture of Wiring the Stepper Motors

I just pushed the existing pins into the X,Y,X & EO headers with the green wire facing the power supply side. There was plenty of room for these connectors so I didn't have to clip them.

Step 6: Marlin

Picture of Marlin

To install Marlin on the Arduino board I used a Windows 10 compter. I'm guessing that doing the same on a different OS is going to be similar. The Marlin software is hosted on GitHub and is easily deployed to your Arduino Mega via a free development tool Arduino IDE. Get the Arduino IDE from here https://www.arduino.cc/en/main/software and install it.

You will need to select the Arduino/Genuino Mega or Mega 2560 board from the Tools -> board drop down. You should check mark icon (verify) to verify it compiles. My Ardiono IDE was all setup to do this but you may need to install some things to get to this point. There is plenty of Instructables to help you do that.

Next you will need to get the Marlin code to edit in Arduino IDE. I forked the latest release from Marlin so that I could submit my changes and get them later if I need to. You can do one of 2 things, you can download the source from Marlin and make the same edits that I did or download my copy of the source and use my edits.

My version: https://github.com/JeffInMadison/Marlin

Marlin source repo: https://github.com/MarlinFirmware/Marlin

If you download the latest from Marlin these are my edits. Be aware the line numbers will likely change.

In Configuration.h: (Line numbers are approximate)

  • Ln. 133 Make sure MOTHERBOARD is BOARD_RAMPS_14_EFB
  • Ln. 252 Set TEMP_SENSOR_0 to your extruder sensor type. The stock bead thermister should be 11 (I have an E3D v6 with a cartridge thermistor so mine is set to 5)
  • Ln. 256 Set TEMP_SENSOR_BED to 11 for the stock bed thermister
  • Ln. 289 Set HEATER_0_MAXTEMP to somthings smaller than 275 to not destroy your hotend. I used 250
  • Ln. 293 Set BED_MAXTEMP to something smaller to keep the bed from getting too hot. I used 100
  • Ln. 456 X_MIN_ENDSTOP_INVERTING, Y_MIN_ENDSTOP_INVERTING, Z_MIN_ENDSTOP_INVERTING to true. Leave others false
  • Ln. 489 #define DEFAULT_AXIS_STEPS_PER_UNIT { 93, 93, 1097.5, 97 } from http://mpselectmini.com/extruder_calibration
  • Ln. 690 INVERT_X_DIR false, INVERT_Y_DIR false, INVERT_Z_DIR true Ln. 723 Set X_MAX_POS 120, Y_MAX_POS 120, Z_MAX_POS 120 to match the size of the Monoprice bed size so we don't travel past the limits
  • Ln. 915 uncomment the #define EPROM if you want to be able to update and write to the EPROM.
  • Ln. 1109 uncomment #define SDSUPPORT to enable the SD Card
  • Ln. 1091 uncomment #define DOGLCD if you bought a 128x64 LCD panel
  • Ln. 1267 uncomment #define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER if you bought the same LCD I did

Now to enable the full graphic display you need to add another library to your Marlin sketch to draw to the screen. Download the .zip file on this page: https://bintray.com/olikraus/u8glib/Arduino

In Arduino IDE go to Sketch -> Include Library -> Add Zip Library... and pick the zip file you downloaded.

The high power D9 pin on the Ramps board seems to be intended for a parts fan blowing on the printed part and not an extruder fan in their default setup. If you have a setup with an extruder fan like the stock hotend or the E3d v6 like I have you'll want to change this a little.

In pins_RAMPS.h:

  • Ln. 168, change FAN_PIN to -1 to disable it.

In Configuration_adv.h:

  • Ln. 220 #define E0_AUTO_FAN_PIN 9 instead of -1

This will turn on the fan on D9 when the temperature of the hotend gets to 50c and will turn off when it falls below 50c.I would keep compiling with the verify button as you go to make sure you didn't break anything and can easily back up and check.Now press the upload button to deploy the firmware to the Mega board.

Step 7: PID Auto Tuning

Picture of PID Auto Tuning

Once I got to the point where the firmware was flashed to the board, I wanted to run the M303 command to autotune the PID instead of taking the default Ultimaker settings. I used Pronterface (http://www.pronterface.com/) to connect to the printer and run M303 to auto tune the hotend. After it runs it will output a Kp, Ki, and Kd for you to put in the Configuration.h like this:

  • #define DEFAULT_Kp 26.15
  • #define DEFAULT_Ki 2.74
  • #define DEFAULT_Kd 62.35

Then I ran the "M303 E-1 C8 S60" to auto tune the heat bed. By default the bed was in a bang bang mode that turned it on when it was below the set temp and off when it went above the set temp. In Pronterface you could see a pretty ugly saw wave it made. Once I ran the autotune and used those values it was a nice slope to the value and stayed right on the temp. My stock bed values looked like this:

  • #define DEFAULT_bedKp 231.09
  • #define DEFAULT_bedKi 45.21
  • #define DEFAULT_bedKd 295.34

Step 8: Final Tweaks

Picture of Final Tweaks

After publishing this Instructable and using the setup for a while I have a few more tweaks to post.

First is that to enable the SD Card you have to uncomment the #define SDSUPPORT around ln 1120 in Configuration.h to be able to print from the SDCard. There is also a #define SPEAKER too to use the speaker next to the knob.

I also discovered the default direction and steps of the rotary encoder were kind of wonky. You can still get around but it doesn't exactly behave as you'd expect with respect to direction. For the LCD that I bought I needed to change the direction of the encoder and the menu to get things to move in a logical direction. I also added individual axis homing.

  • uncomment #define REVERSE_ENCODER_DIRECTION

  • uncomment #define REVERSE_MENU_DIRECTION

  • uncomment #define INDIVIDUAL_AXIS_HOMING_MENU

Printing higher temperature filament like ABS would trigger the max temperature fail safe so I had to adjust that to a higher temp. I chose 260 in Configuration.h with this line.

  • #define HEATER_0_MAXTEMP 260

I upgraded my extruder assembly with this all metal one (http://amzn.to/2omeYEI) and the gear was a different size so I had to adjust my extruder steps. I extruded and measured filament several times and did the math to zero in on 99 steps for my extruder and gear and updated this code in Configuration.h to reflect that:

  • #define DEFAULT_AXIS_STEPS_PER_UNIT { 93, 93, 1097.5, 99 }

The heater bed in the Mini isn't the fastest at getting up to speed and I found that Marlin would detect an error happened fairly often so I increased the time it waited to detect a problem a little with this line in Configuration_adv.h

  • #define THERMAL_PROTECTION_BED_PERIOD 45 // Seconds

Lastly I printed the parts for this LCD Cover http://www.thingiverse.com/thing:2133588 and moved the LCD into the machine. The pints on the bottom of the new controller didn't fit the pins of the Monoprice controller so I found some bushings to attach to the bottom of the Arduino Mega to keep the pins off the metal plate and found a enough space to put everything in and re-attach the bottom plate.

I have a Raspberry Pi mounted on the back of the printer that I use Octoprint with to control my printer. I drilled out a hole in the back by the power connector to run the USB cable out of the new controller up to the Pi. If you make the same modification I would disconnect the whole controller and move it away from the printer to make sure you don't drop metal shavings into your new controller.

After all this the printer is back in business. And to be honest I think it prints better prints than before and there are more protections from thermal runaway in the Marlin firmware than the one that shipped with the Mini.

Comments

KanalA1 (author)2017-12-04
Hello,
thanks for the very good instructions.
Which program do you use for the frames, with the explanations below?
Best regards,
Andre
ngwpower made it! (author)2017-11-19

I have a hard time following instrustions so use powerpoint. Would like a review of my powerpoint prsentation to see if it will work before I apply power to the board.

jalex9 (author)ngwpower2017-11-19

sure.

juggler (author)2017-10-23

I have followed the instructables and implemented this update on my mpselect mini, and it works when run manually from pronterface or from octoprint. However when I initiate a print, the Z-axis never seems to rise above zero. that is - I can move the z-axis manually through the web interface of octoprint, and I measured that when I tell it to go 100mm, it does travel the expected distance. The axes all home correctly as far as I can tell, I home the Z-axis and leveled the bed in the same manner that I have before, and when I start a print, the extruder goes to the bed - it looks like the nozzle is now touching the bed rather than being the correct first-layer distance, and then never rises any higher during the print. I am wondering if you have any suggestions for troubleshooting. Thank you very much for your generous contribution to our community!

jalex9 (author)juggler2017-10-24

One thing you could do is to take the .gcode file you are trying to print and open it in a text editor and run the same commands in the file. Or at least examine them. There is possibly a command causing problems. It's also a good exercise to understand what happens during the beginning of the print.
Depending on your slicer it will do a bunch of things like set units to mm, absolute the extruder, turn on the bed and hot end, wait for it to get to temp and a bunch of other stuff.
Do a lookup on all of the code and hopefully something will stand out. If not just start removing some and seeing what happens.
Good luck

juggler (author)jalex92017-10-25

Thanks for the idea. I did remove the leading and ending gcode and discovered that there was no change. I think the z-axis is raising up after homing to zero. I will try telling the z-axis to go to zero with some gcode and see if leveling the bed at that height makes an improvement. Do you know if the default z homing routine in marlin raises the hot end up after homing? I have been googling and have not come to a conclusion.

Thanks again!

jalex9 (author)juggler2017-10-26

Do you have a Z-Probe? One thing you just made me remember is that I had issues with the feedrate of the Z stepper motor when both the bed and hotend were on. Check this link:https://3dprinting.stackexchange.com/questions/379...

I replaced my Z endstop with inductive probe (http://amzn.to/2z8qEAH) And I'm using bed leveling. I can update my github repo with my latest marlin too. Let me know if you'd like to see what I've setup.

juggler (author)jalex92017-10-27

I would very much like to see what you've set up!

My problem turned out to be that when the Z-axis "home"s it hits the limit switch, backs off, goes to the limit again at half(I think) speed and at this point I would expect it to stop at the limit, but it backs off (really fast) several mm. I haven't found in the Marlin config yet where this is set up but what I did to fix it is home Z, then send Z to 0 with G1F20Z0 and then level the bed at that Z position.

Now it is printing ! Thanks so much for your help!

this back off probably happens on all 3 axes but the only one that matters is the Z-axis because the hot end (Z) Must be a certain distance from the bed which does not move.

bitzdv (author)2017-09-17

It's hard to tell from the pictures, but did you attach the leads directly from the xbox power supply directly to the screw mounts on the RAMPS board? And it looks like you attached 2 of the leads to each of the first 2 connections, and 1 to each of the second set?

jalex9 (author)bitzdv2017-09-18

When I pulled apart the xbox connector there was an uneven set of wires (4 yellow 3 black) For the fist bank I paired 2 yellow and 2 black. For the other bank I paired 2 yellow and used one black. I just twisted them together and pushed them into the screw downs.
I'm assuming that the 12v and ground are all on the same rails in the power supply. That might not be the case and I could be combining lines on different rails but I don't think it matters in for this setup.

AuthorJCNelson made it! (author)2017-09-03

Great guide, Thank you!

AuthorJCNelson (author)2017-09-03

For thermistors and endstops, there's no need to clip and rewire:

For endstops, because you're only positioning them in every other slot, these push on just fine.

For thermistors, yes, there's a problem, but there's a simple solution:

Push the hot end thermister onto T0

Push the bed thermister onto T2 (the opposite end).

In PINS_RAMPS.H (the RAMPS pins configuration header), change the bed thermistor setup to be like so:

//

// Temperature Sensors

//

#define TEMP_0_PIN 13 // Analog Input

#define TEMP_1_PIN 14 // Analog Input

#define TEMP_BED_PIN 15 // Analog Input

This swaps the bed thermister on T2.

legoman9509 (author)2017-08-24

Hi there, just tried doing it now and I have gotten three errors so far. The bed wont heat whatsoever (I checked for continuity), the extruder will heat, but marlin displays an error asking to reset the system, and the stepper extruder doesn't work at all, I AB swapped with another axis' hardware and its the pinouts that are not working. Any help appreciated.

mcevanlong (author)2017-07-23

Have you considered doing an auto level set up?

BrianHanifin (author)2017-06-27

Filament width needs to be changed to 1.75.

Find #define DEFAULT_NOMINAL_FILAMENT_DIA 3.00
Replace with #define DEFAULT_NOMINAL_FILAMENT_DIA 1.75

BrianHanifin (author)2017-06-26

I downloaded the latest Marlin and the FAN_PIN variable is now defined by a series of if statements in pins_RAMPS.h. I followed every step in Step 6 except for that one. Please advise, I am prepping for the arrival of my hardware tonight.

Reference: https://github.com/MarlinFirmware/Marlin/blob/1.1.x/Marlin/pins_RAMPS.h#L165-L191

As a result of this, I get an error "#error "You cannot set E0_AUTO_FAN_PIN equal to FAN_PIN.""


Full error: https://gist.github.com/brianhanifin/769d2a8379b28daafd043d909d710e68

Nevermind this. I left that setting alone and setup my single fan on pin9 and am happy with this setup for now.

LuisO2 (author)2017-05-13

I did the modification last night after my
Mini´s board fried during a thermistor swap. I followed the instructions
and everything worked out ok.

Some small issues though:

the printer, after homing axis, just moves up to 60 mm in all axis;

the lcd after a few minutes shifts the picture to the right by about 1 cm (weird).

I
double checked the hardware steps config and i only have jumper 3 in
all axis and extruder (putting the steps at 1/16th on the DRV8825) and the steps
configured in the firmware at (100, 100, 1097,5 , 93) as i did the gt2
belt swap for X and Y. I also used the prusa calculator to verify the
steps for X Y and Z. The Z also only moves 60mm up :( .

Any suggestions on how to fix the issue ?

jalex9 (author)LuisO22017-05-14

I think maybe you are skipping steps because the stepper drivers aren't set right. I need to add a section on tuning the stepper drivers. The adjustable potentiometer on them is what sets the current to the stepper motors. The stepper drivers I got were set high and caused noisy steppers and missed steps. I took my multimeter and connected black to the ground on the power and the red I clipped it to a small metal screwdriver with alligator clips. Then with the motors engaged I used the screwdriver to dial the screw back until I had .6 V on the meter.
This made them work a lot better. I settled on .6v by playing around and it may not be the best voltage/current for you. Do that and see if it works a little better.
However it may be that your stepper drivers are jumpered different. Did you double check the settings by searching for the manufactures info? Or you could put all the jumpers in on one driver and see if it fixes the issue.

LuisO2 (author)jalex92017-05-14

I did tune all the steppers to 0.7V as they were all too hot at around 1.6 and 1.5V. As funny as this may sound, i tried two boards (ramps) and nothing actually changed in terms of movement of the axis. Messing around with the jumper setting on the ramps also did not alter anything at all. Maybe all the 4 drivers are bad?

Btw, i believe that we can select the microstepping we want (ideally, as long as the firmware steps are matched accordingly (double the steps in marlin for 1/32).

I will just order a few more drivers from amazon or i might jump on a mks board. Suggestions :) ?

LuisO2 (author)LuisO22017-05-14

I managed to fix it by updating manually the EEPROM using the M50x commands. All is awesome now, using 1/32 microsteps :) . The printer is significantly quieter also!

For reference, this might help

http://forums.reprap.org/read.php?219,486208,49537...

jiayuancheng (author)2017-04-09

First, jalex9 Thank you so very much for this instructable. I'm not that familiar with Arduino but I managed to follow the instruction closely.

I use this Arduino Mega clone http://a.co/cxgXWYz and this RAMPS 1.4 http://a.co/fSRdADP. The final step I powered it up. A few seconds later I smell something went wrong. The Arduino Mega board was hot and I can no longer communicate with my Arduino Mega anymore. Windows thinks it's a malfunctioned usb device. I checked all the wires again. Everything look fine...

Is it possible the cheap Arduino clone caused this when all wiring on the RAMPS seems correct? I know it's hard to say without diagnosing it carefully. Any thoughts or ideas will be appreciated. Thank you.

jalex9 (author)jiayuancheng2017-04-10

For me I plugged everything in and it worked. The Arduino/Ramps setup is the cheapest controller out there and the clones aren't always the best build quality. It's hard to tell if I got a decent board and you got a lemon or what. If you can initiate a return with Amazon you might want to try that.
If there was some internal issue that allowed power to the wrong componenet's it's the boards fault. However if the ramps pins weren't pushed into the arduino correctly, or the 12v power supply to the Ramps was reversed, you'll potentially fry the replacement.
It's a real bummer that it didn't just work once you wired it up. Feel free to post any pics and maybe something will stand out.

jiayuancheng (author)jalex92017-04-10

Thanks for your reply. I ordered new boards to try again. I will let you know if things are working or not.

hward13 (author)jiayuancheng2017-05-07

Were you able to figure out what happened? Mine did the exact same thing. I haven't dug into the board yet, since you might already have the answer.

jiayuancheng (author)hward132017-05-08

hward13, which issues are you referring to? It took me several days to finally figure out most of the problems I had. Let me know exactly the problems you bump into. Hope I can help.

hward13 (author)jiayuancheng2017-05-08

jiayuancheng, sorry, my question was not very clear. I got to the same point that you did with the power, and the Arduino Mega died. I think it's the same issue with the regulator, because I'm not getting the 5V or 3.3V out on the board. The Ramps shield passes 12V down to the arduino, but nothing powers on.

jiayuancheng (author)hward132017-05-08

I bought some voltage regulators and I replaced the one on Arduino Mega but I think I damage the board more than just the voltage regulator. So I bought another Arduino Mega and it works fine. I plugged the stepper motor driver the wrong way which caused the problem. You may want to do some google search and pay attention to the pins of your RAMPS 1.4 and stepper motor drivers. Double or triple check your wiring before you turn on the power will always be a good idea.

hward13 (author)jiayuancheng2017-05-09

After going through the process again, I found my issue. I plugged the motor drivers in backwards.

jiayuancheng (author)hward132017-05-09

The prints on the board are tiny and sometimes not recognizable. It's always a good idea to double check the pins and do few more google searches as cross reference. I'm glad you found the issue.

jiayuancheng (author)jalex92017-04-16

I ordered new Arduino Mega 2560 and RAMPS 1.4. I can control most of the things. However, I think I might have fried the voltage regulator on Arduino again because the RAMPS is not powering up the Arduino. I replaced the voltage regulator but it is still not working. For now, I can just plug in the USB and it will work. I probably will try to fix the voltage regulator or get a geniune Arduino Mega...

I noticed after I adjust my stepper motor driver's voltage to 0.5v, X and Y stepper motors will work but Z is wobbling. If I turn off the hotend and bed power, the Z stepper motor will work normally. Does that mean I don't have enough power? (I use the stock power brick came with MP Select mini).

anson1l (author)2017-04-13

Do you have link to download the front panel replacement 3D model? You only gave a link to download the mount for the LCD screen.

jalex9 (author)anson1l2017-04-13

This contains the 4 models that I used to replace the LCD.
http://www.thingiverse.com/thing:2133588
I'm not sure what you are looking for?

anson1l (author)jalex92017-04-13

I am looking for the front part that replaces the original front metal panel( the panel that the nob and the screen is placed on.)

jalex9 (author)anson1l2017-04-13

I'm not sure what you are looking for but I only replaced the LCD/Knob face with the 3d printed case and the Ramps compatible LCD.

anson1l (author)2017-04-12

My stepper motor just don't move. Any idea on how I can debug this?

anson1l (author)anson1l2017-04-12

Nevermind, I didn't feed power to the RAMP. Its moving now. Yessss

anson1l (author)2017-04-10

how do you connect the stepper motor? I dont have the same color wire as yours.

jalex9 (author)anson1l2017-04-10

I'm surprised the colors don't match since they almost seem universal on stepper motors that I've seen. That said, just plug that same plug on the stepper motor into the header next to the stepper driver.
Once you have everything setup manually move the extruder to the middle and then you can use Pronterface to move it left or right and make sure it goes the right way. If it doesn't you can either reverse the way you plugged it in or you can invert the direction in the code for Marlin and re-upload it to the Arduino.

anson1l (author)jalex92017-04-10

Hi, Thank you so much. I will give it a try. Unfortunately I just burnt my Arduino by improperly plugging in the screen, had to order another one.

MikeS673 (author)2017-04-09

So I finally found the time to mess with this after blowing up 2 garbage arduinos I bought the real thing. I got the printer FINALLY able to communicate, and I tried to print cat.gcode. It moves everything as advertised (along with some grinding on the X axis for some reason), but it won't extrude filament. It will do so every 10 seconds or so, but it's skipping spots and essentially spitting out garbage.

jalex9 (author)MikeS6732017-04-09

The stepper drivers have a potentiometer on them that controls the voltage through them. I had to turn mine way down to get them to work well. There are a bunch of YouTube videos that show how to adjust them that you should check out. Essentially you use a multimeter to measure the voltage at that pot and turn down the current of the driver.
Your current on the extruder is too high and won't work until you tune it.

MikeS673 (author)jalex92017-04-09

What should the voltage be?

jalex9 (author)MikeS6732017-04-09

It all depends on the stepper drivers you used. You'll have to Google around to find out

MikeS673 (author)jalex92017-04-09

Using DRV8225s. I dialed them all in at ~4.1 and its finally printing! Thank you so much! Might wanna add that to your tutorial. Again, I am incredibly grateful for all your help through all this, and I can't wait to actually get it all back together!

MikeS673 (author)jalex92017-04-09

so I fixed the extruder but it lays down the first layer of cat.gcode and completely shifts it over, not sure how to fix it

jalex9 (author)MikeS6732017-04-09

I'm guessing your other stepper drivers are skipping too. Try setting them all to the same voltage that worked on the extduder

MikeS673 (author)MikeS6732017-04-09

poor kitty :(

MikeS673 (author)MikeS6732017-04-09

Also will add that I have the same all metal extruder set that you do and I made those changes as well.

About This Instructable

10,248views

48favorites

License:

Bio: I'm a technology tinkerer. I like electronics, 3d Printing, woodworking and arcades.
More by jalex9:Replace Monoprice Select Mini Controller With Arduino Mega & Ramps 1.4
Add instructable to: