Jump to: navigation, search

Setting up Replicape for Deltas

Revision as of 19:46, 18 August 2017 by Dancook (talk | contribs)

Under Construction!!!

Before I start this tutorial, one very important detail to know before you start stripping wires and cranking on your Delta is:

Wiring up the steppers/end stops...

             X-axis in the back
             Y-axis to the left
             Z-axis to the right

Get this wrong, and you'll be chasing your tail for a while!

My goal here is to give a quick rundown of how to get your Delta going... If you need help with wiring, WiFi, SSH'ing into your BBB, or generally linking your printer with Octoprint there's plenty of documentation within the Wiki, and we also have plenty of skilled guys over at: Slack and Google+ to offer help.

OK, so you have your towers figured out? Good.. and you've wired everything up to the best of your knowledge? Great! Your printer is connected to Octoprint? Fantastic!

Before we make any moves with the machine, let's wrap our brains around the Profile Configurations which are located in <Settings> <Redeem Plugin> These guys are what tells Redeem (the software) what kind of printer it's dealing with. At the bottom you'll see "Default.cfg"... Click on the little eyeball and check out all of the commands in that file! This configuration contains all of the necessary commands that tells the software the size of the printer, how much power to send to your steppers, how fast it can move, and how slow... Ok, close that window... above that, you'll see Printer.cfg... these particular configurations are tweaked for specific printers, and whatever is written to this configuration will override the Default.cfg... you with me so far? Excellent! Beers for everyone! Wait, we're not finished yet! You may have noticed that you can't make any changes to those configurations, and that's a good thing, let me tell you!

OK... if you have a typical Kossel Mini, you can go ahead and make "kossel_mini.cfg" in the list of Printer.cfg's your default configuration by clicking the star symbol... things should be very close up to this point... but before we go printing, let's talk about that profile up top called "local.cfg"... What? There's nothing in that file? You're right! Something must be wrong... Let me find that toll free hot-line... Just kidding... this is where you, yes you, get to make changes to the configuration... and this local.cfg overrides the printer.cfg, and the default.cfg, so make sure you're not too pickled while you're dealing with this config!

OK... let's get to the fun stuff!

So let's say you're the adventurous type, and you've built yourself an oversized custom delta... 300mm bed, 1M tall...

Before we open up the local.cfg, lets go to "Terminal" tab in Octoprint and make sure your XYZ endstops are wired correctly... Remembering the tower positions of XYZ up above, you should see a notification pop up in the terminal when you manually push the endstops... "X1 Endstop hit" "Y1 Endstop hit" "Z1 Endstop Hit"... if you see this notification for each endstop, then great! We're on the right track. If not, we're going to fix them in the [Endstop] section of your local.cfg... if they don't work after that, then you may have wired them incorrectly!

Let's open up our local.cfg file in Octoprint and start from the top with what you will need to enter initially... Do not copy/paste anything within parentheses... these are only explanations...

axis_config = 3 (The 3 here means that we are using a Delta printer... 0 would be used for normal Cartesian)
microstepping_x = 3 (The 3 here means we are microstepping at 1/4 steps for each stepper...)
microstepping_y = 3 (Microstepping is explained here: http://wiki.thing-printer.com/index.php?title=Redeem#Microstepping )
microstepping_z = 3
microstepping_e = 3
current_x = 0.5 (This setting is 0.5 amps... anything above this will require cooling and the addition of heat sinks...)
current_y = 0.5 (I would highly recommend adding heatsinks to the stepper drivers and a fan for cooling the board...)
current_z = 0.5 (There will probably come a time when you need more current, which requires mandatory cooling...)
current_e = 0.5
steps_pr_mm_x = 5.0 (This should get you in the ballpark with 1.8 degree steppers...)
steps_pr_mm_y = 5.0 (When the time comes, you will need to calibrate your X, Y, and Z for accurate prints)
steps_pr_mm_z = 5.0
steps_pr_mm_e = 6.0 (You will need to calibrate your steps here... see: https://toms3d.org/2014/04/06/3d-printing-guides-calibrating-your-extruder/ )
in_use_x = True (By adding "True" here, it means that you do have a stepper in use for this axis...)
in_use_y = True
in_use_z = True
in_use_e = True
direction_x = 1 (You can change direction of your steppers by entering -1 but I suggest when you)
direction_y = 1 (wire your steppers, have them all connected to the Replicape so that they are all)
direction_z = 1 (wired and connected identically http://wiki.thing-printer.com/index.php?title=Replicape_rev_B#Steppers )
has_x = True (Chances are, you have an endstop for each of these axes... therefore "True"!)
has_y = True
has_z = True
end_stop_x1_stops = x_cw (Most deltas will have the endstop stopping the cw rotation of your stepper...
end_stop_y1_stops = y_cw (but if yours is different, change it to "ccw"... I also suggest having all of your steppers)
end_stop_z1_stops = z_cw (rotating in the same direction... things get confusing otherwise)
soft_end_stop_min_x = -0.150 (Since X0 and Y0 are in the center, you'll use a negative radius for minimum X and Y,)
soft_end_stop_min_y = -0.150
soft_end_stop_max_x = 0.150 (And a positive radius for your maximum X and Y...)
soft_end_stop_max_y = 0.150
invert_x1 = False (Remembering your X,Y,Z tower positions mentioned above... if everything was working, then we can leave)
invert_y1 = False (these as "False... If you weren't receiving the "Endstop hit" notifications, then change this to "True"... save your)
invert_z1 = False (local.cfg, restart Redeem, and check them again manually...)

Ok... back to Endstops... if you had the "Endstop hit" notifications in your Terminal then you can move on to the next step... however, if you didn't get the notifications, change the "invert_x1/y1/z1 =" from "False" to "True" and check the Terminal again for the notifications.

At this point, you should be able to save your changes in the local.cfg, restart Redeem, and at least get movement from your machine... once you're reconnected to Octoprint, go to your Terminal tab and enter M18 (to disengage your steppers). Physically move your printhead so that your carriages are at about half the distance to your endstops. The software is going to think you're Z axis is at "0", so enter G1 Z20 and see if all three motors are raising the carriages. If any of your carriages are moving down, then I suggest physically flipping the plug connecting that stepper to the Replicape. To be safe, power down the machine beforehand... remove the plug, flip it 180°, and plug it back in. Do this for any steppers that were not moving upwards. Once finished, power up your machine and check the movement again just like before.

If your machine was working correctly, then you're ready to move on to the next step!!

OK... if your machine is moving as it should, let's open up the Terminal once more and enter M18 again to disengage the steppers. Physically move the printhead near bottom center and then enter "G92 Z0"... this will zero your Z axis so we can use the next command... now enter "G1 Z75 F1000"... this should be enough movement at a slow enough speed for you to physically press the endstop switches before it stops. Theoretically with our current local.cfg, there shouldn't be a problem, and I need to investigate further before going much further with suggestions if they aren't... I'd say refer to this section of the original wiki: http://wiki.thing-printer.com/index.php?title=Redeem#Steppers ... if your endstops are working correctly, then let's move on!

If you've made it this far, then congratulations! The easy stuff is basically finished... Now we need to get your delta to home properly. Let's start by adding a [Homing] section to your local.cfg

home_x = 0.0 (Home is at center X)
home_y = 0.0 (Home is at center Y)
home_z = 0.200 (This homes Z towards the top... once you have your endstop offsets, we'll change this number to pull off of the endstops)
home_e = 0.0 (Homes extruder to 0)
home_speed_x = 0.08 (This moves your stepper at 80mm/s during the homing routine)
home_speed_y = 0.08 (I suggest homing XYZ at the same speed)
home_speed_z = 0.08 
home_speed_e = 0.01

With this particular [Homing] set up, if you enter "G28" at the Terminal your machine should center the printhead and move up until it hits the endstops. It will think your endstops are at 200mm from the bed until you have your "endstop offsets" set up... we'll get into that later. I've set this number to 0.200 in hopes to keep you from accidentally smashing your hotend into your bed. If you want, try entering "G1 Z100" "G1 Z50" all the way down to "G1 Z0" and see how far your tip is from the bed... if it's a safe distance, you can continue moving down "G1 Z-10" "G1 Z-15" and so on, or a better idea is to use the Octoprint Control Panel to move the tip down by 0.1mm until it's just above the bed by 0.5mm or so. Once it's there, you can go to the Terminal in Octoprint and enter "M114" to get the position of your Z axis... just add that number to 0.200 and you'll know approximately what your total height between your bed and endstops is. You can enter this new number as your "home_z" in the [Homing] section of your local.cfg for now. Don't forget to restart Redeem after making any changes to the local.cfg. If you'd like to check your new "home_z" entry, you can try moving the print head again in small moves towards the bed until you get to "G1 Z0"... if we did it correctly, you should be right above the bed. Now you can hit "G28" and watch your machine move up into your endstops! Good job!

OK, we're doing great, but we're still not ready to print. There are a few more very important steps to take before your delta will be anywhere close to being able to print successfully. At this point we need to get into calibrating your delta. I suggest getting yourself a probing system of some kind if you haven't already... BLTouch, FSR system, a servo with a switch, etc... I won't go into detail with "how-to's" on installing these systems... if you already have a probing system, then great! We can continue! If not, then do some research and come back ;-) I'm using FSR's currently, and have a BLTouch that I plan to start using. I'll add info here in the future. These systems are super cheap, and if you're new to all of this, your chances of successfully printing without one is pretty slim.

FSR's... super easy to use... if you've found a way to mount them below your bed, they work great. Another option is physically holding the FSR and allowing it to get squeezed between your hotend and bed... whatever the case, use caution not to drive your hotend through your bed! We take no responsibilty! One quick note... If you're using a JohnSL FSR system, I'm pretty sure you'll need to use a jumper on the NO pins for it to work properly with the Replicape. Make sure to connect your FSR to the Z2 Endstop connection of your Replicape... Let's open our local.cfg once again and go down to the [Endstop] section. Let's add the following command there:

end_stop_z2_stops = x_ccw,y_ccw,z_ccw

Just like the other endstops, once you've restarted Redeem, let's go to the Terminal within Octoprint and make sure we see the notification "Z2 Endstop Hit" while pressing the FSR... if you see the notification, then hopefully we have everything connected properly. Home your Z-axis to the top, and enter "G1 Z50"... while it's heading down, press on the FSR and see if the printhead stops moving. If it does, then we're in good shape! Theoretically with our configuration so far, it should work. If it's not working, check your wiring, and you can enter "M574" in the Terminal to make sure your endstops are activated.

If your probing system is working properly, then we're ready to Autocalibrate your machine!

Stopping here... I'll be back later!

Author: Dancook (OCD3D) Updated: 08-18-2017