View unanswered posts | View active topics It is currently Sat May 25, 2013 6:50 am



Reply to topic  [ 32 posts ]  Go to page 1, 2, 3, 4  Next
Skeinforge 40 setup notes. 
Author Message

Joined: Mon Dec 20, 2010 3:38 pm
Posts: 166
Post Skeinforge 40 setup notes.
I'll start with a repost of one I made on the reprap forum... add pictures to clarify any questions further down the thread.

Ok.. I've got this working.. and I am sold... anyone just starting out with Skeinforge I strongly reccomend you do it with sf40.

To start with, I entered very carefully a measured E steps per mm using ABS, as I mostly print in ABS (this was a small mistake, I'll explain later). I also measured the diameter of feedstock very accurately..

The way I measure the steps per mm of feedstock is make a mark on it more than 100mm up from the top of the extruder block... tell repsnapper to advance 100.. measure how much it moves... take current E-steps per mm, divide by how much it moved... multiply by 100.. this is your new E steps per mm of feedstock.. I recommend you set the firmware to 80% of this and do it again to get better accuracy as the initial movement will be very small...

But... It is best to do this with the hardest PLA if you are using both..

I was getting too much flow initially and it was because I was using ABS and left the Filament Packing Density (ratio) in dimension at the default .85... of course, because I had just measured the actual distance... this ratio needs to be 1 (you just measured it...)

So... start with PLA... and the ratio can be 1 as instructed. Then stick ABS in and make a mark 100 mm up... extrude it 100mm in repsnapper (or whatever host you like) and measure how far it moved.. distance moved/100.. is your Filament Packing Density for that hardness of ABS (and soft PLA)

BTW.. I did this through the heated hot-end.. in case there was any slippage effect from pushing against pressure... I don't collect any plastic on my hobb.. but it's a good practice I think.

So.. Now I have the 3 numbers that describe my filament volume to skeinforge... The amount extruded per step, the diameter.. and a fudge factor to allow you to compensate for different hardness feedstock without changing the E-Steps per mm parameter in the firmware each time...

I STILL had too dense infill on the solid fill layers...but... my perimeter width, as measured on a hollow test cube, was very good on the calculation: Layer Height x Perimeter Width Over Thickness (ratio)

So.. I raised the Infill Width over Thickness Ratio from the default 1.5 to 1.7 (in fill).. this made the solid infill paths further appart... and cured my over-stuffed solid fill layers...

I also changed Additional height over layer thickness in bottom to .7 from .5 and activated it, made sure to activate Limit and set my maximum Z speed and set maximum initial feed rate to equal my feed rate, or slightly lower

I made some other minor changes to suit my preferences, but none that effect the main print geometry... I set my retract to 2mm and speed = 30ish (as fast as possible and as short as necessary is best)

I can report that I now only change the layer height and print... the amount of plastic extruded is indeed calculated by sf40 and just works... I have printed the same objects in .4, .3 and .25mm layers... I need to increase PWOT for the .25 layers, because, as mentioned... my strings on the sparse fill get fragile... This is independent of nozzle size as well.. volume in = volume out.. and sf40 now does all it's calculations on volume.

So.. tuning SF has gone from an art, to engineering, in one version... measure your input parameters accurately and print....

If you have trouble.. things seem too sparse... try again after changing the feed to a lower number ... (say 30 rather than 40) (of course flow equals feed now) If it all cleans up and gets better.. you were overdriving your hot-end... trying to push too much plastic... lower your layer height and you can speed it back up... (less plastic being extruded)


I'm a happy bunny... I used to spend some time tuning my E-steps per mm (I set it with a gcode in tonokip's fw) for every layer height change, and even feed/flow changes put my prints off and needed to be tuned...

Now I have a tuned setting and can change layer height with one or two numbers and print... easy..

Hope this helps some people...

Al...


Sun Mar 13, 2011 12:48 pm
Profile

Joined: Wed Jan 05, 2011 9:27 pm
Posts: 8
Post Re: Skeinforge 40 setup notes.
Can't wait to get to my "lab" to try these instructions... Yesterday i thought that i finally got the sf39 working, but same time couple of nuts became loose, whole hot end thingie twisted, plastics extruded frow every hole... Maybe it's time to move on to sf40 and start tuning, again. :)


Sun Mar 13, 2011 7:17 pm
Profile

Joined: Tue Jan 25, 2011 1:38 am
Posts: 8
Post Re: Skeinforge 40 setup notes.
Fantastic stuff! Thanks very much Araspitfire

Just spent a morning trying to tie down why SK40 was putting out such low E numbers. Took me a while but finally clicked it was steps per MM that needed attention. I've been avoiding the need to understand firmware upgrading so far. But here is your post confirming it. At least I'll get a silent Mendel into the bargain hehe.

Woodsmoke


Mon Mar 14, 2011 2:54 pm
Profile

Joined: Sat Apr 02, 2011 10:00 am
Posts: 4
Post Re: Skeinforge 40 setup notes.
Here's some things I've learned in the process of using my new prusa mendel with skeinforge 40 and repsnapper, from the perspective of a reprapper who is new to all this.

First some "big picture" definitions and overview that's often missing from guides and forum posts I've learned from. Also, There are so many sources of info I've used that I'm not going to try to single out everybody for credit, you probably know who you are. :) Araspitfire and the folks on the freenode #reprap IRC channel are major sources of help for me, so thanks guys!

If I start off too basic, please bear with me.

A recommended workflow for reprap printing commonly goes something like this:

STL file -> Slicer -> GCODE file -> Host Software -> Reprap Firmware

My personal workflow for printing currently goes like this:

STL -> skeinforge40 -> gcode -> repsnapper -> RAMPS

The Reprap Prusa Mendel Hardware
The prusa mendel hardware itself is pretty well explained elsewhere, it's purpose is to provide all the mechanical bits to support the print nozzle and extruder as needed to print a specific object. Wonderful instructions for the Prusa Mendel are at http://garyhodgson.com/reprap/prusa-men ... tructions/

The Electronics
I currently use and recommend RAMPS. This is also pretty well explained elsewhere, it's purpose is to interpret GCODE and drive all the mechanical hardware via motors and heaters. This is done by the firmware loaded on the Arduino connected to the RAMPS board. The firmware receives GCODE from a host program running on a computer. The RAMPS board itself provides some interface components, connectors, and sockets for Pololu stepper motor drivers which are all controlled by the firmware running on the attached Arduino.

The Host Program
I currently use and recommend repsnapper. Although repsnapper can generate GCODE itself to send to the electronics, it's not very good compared to using a dedicated slicer called skeinforge. Instead of loading an STL into repsnapper and having it generate GCODE, you can generate the GCODE with skeinforge and load it into repsnapper for printing.

The Slicer
Here's what this forum thread is about, using a specific version of a slicer called skeinforge, which I'll refer to as sf40. The skeinforge download page at http://fabmetheus.crsndoo.com/ has several versions, as I write this the most recent is number 40. Installing it on your platform of choice is pretty well covered elsewhere as well. What I want to focus on is the details of getting sf40 configured and generally printing with good results. I will mention that for you Windows users a self-contained portable EXE version of sf40 packaged by Kliment available at http://koti.kapsi.fi/~kliment/sfwin/ I'm not a Windows user, but here's how Kliment described it: "It's a slight modification of skeinforge that saves profiles and settings in the skeinforge dir rather than the user dir, and has an exe for windows users that have no python installed. That way you can easily copy your settings over to another machine, or have multiple skeinforge installs with separate settings." It even runs from a thumbdrive! Now on to the configuration...

Skeinforge 40
Ah, the beast. Many of us are a bit overwhelmed at first with the interface for sf40. It's got some rough edges and uses a lot of terms that can be confusing. I'll go through this literally from the top (of the sf40 window) and comment on each item...

Profile Type.
This is set to Extrusion. The reprap is an extrusion printer, enough said.

Profile Selection.
This is a way to save sets of settings. All the settings below are saved under the current profile. You can save your own profiles for different setting to quickly load any set that you previously saved. Beware though, when you actually slice a file, it automatically saves your settings first, so keep that in mind if you mean to do something only temporarily.

Analyze, Craft, Help, Meta, Profile
The Craft button is where all the settings are that we want to work with.
The Help button just offers links to helpful content, and if you have a web browser configured can open the links with it.
The Profile button is where you can add a new profile. I recommend doing this each time you want to experiment without screwing up your current settings. It's pretty simple to do, type a new profile name in the empty field and click the Add Profile button. Then File->Save and select your new profile from the list at the top of the window.

You should now have a new profile selected to experiment with, and have the Craft button selected.

There are several buttons under Craft, starting with Bottom and ending with Wipe. Each one of these buttons represents a plugin installed in sf40, so all the ones you see are the default plugins that come with skeinforge. I'll go through them one by one. There is a question mark button on each plugin section with a link to descriptions of the settings for that plugin. If the link doesn't seem to do anything, look at the console window you started sf40 from and you should see a HTTP URL there that you can copy into a browser. If I don't mention a setting, just leave it set to the default.

Bottom
Activate: yes
Additional Height over Layer Thickness: 0.7

Carve
Activate: yes
Make sure Layer Thickness is set to the default 0.4mm
Set perimeter Width over Thickness to 1.7

Chamber, Clip, Comb, Cool
Activate: no

Dimension
Activate: yes
This plugin is at the core of how we are going to be using sf40. Basically, instead of having to tweak several individual settings to get the plastic to extrude well for a specific object, we tell the Dimension plugin about some properties of the filament we are using and it does calculations based on the actual physical volume of the plastic we're using to get things right. For this to work, we need to make a couple very careful measurements, so lets do that now...

First, we need to know the exact diameter of the filament we're using. The easiest way to get this is with a digital caliper. I measured mine at 2.86mm. That goes in the Filament Diameter field. Even if you usually print with ABS, use PLA for these measurements, it will make things simpler and you shouldn't have to measure this next measurement again once you are done.
Second, we need to know that when we tell the firmware to move the extruder 100 units, it pulls exactly 100mm of filament into the extruder. This is NOT a setting in SF40, it's something you need to set in your firmware. You will need to find the configuration file for your firmware where it specifies steps/mm for the E axis. If it hasn't been set for sf40 before, this may be a low number, something like 16. The number your going to measure is likely going to be a lot bigger, so don't be alarmed. If you are using 1/16 motor stepping, it will take a lot of steps to pull down 100mm of filament! Mine turned out to be 587 steps/mm. Araspifire's method for measuring this works very well. You don't want to try to measure 1mm at a time, there's too much measurement error, so here's how I did it:

Fire up repsnapper and connect to your firmware. Click on the Interactive tab and move the Z axis up 20 or so. Set your Nozzle heat target to a good printing value (I use 185C for PLA) and turn the heat on. Set the Extruder Length slider to 100. (If the slider won't land exactly on 100, use the left/right arrow keys on your keyboard to adjust it to exactly 100.) You want the Extruder Speed to be something that isn't very fast, just a nice relaxed smooth speed and make sure you see no sign of the filament slipping in your hobbed bolt. Now that you have extrusion happening, measure how much filament is pulled into the extruder with the length set to 100. Look at your firmware setting (mine was 16) and divide it by how many mm it moved and multiply by 100. If you measured well enough, this new number will be very close to perfect, but it's hard to measure that well, so lets set the firmware a bit low, so multiply the number by 0.8 and set the number of steps/mm for E to that number in the firmware configuration file. Load the updated firmware to your board and reconnect repsnapper. Make sure the Extruder Length is still set to 100, make a mark on the filament exactly 110mm from the top of the extruder. Lower the Extruder Speed to around 100. (Now that the steps/mm is set larger, the old speed is probably too fast. To be sure we don't miss any steps, slowing it down helps and you'll probably find that 100 is now a lot faster than it used to be.) So, you've got your length set to 100, your speed set to 100ish and a mark very carefully measured at 110mm above the top of the extruder. Now click the Run Extruder button once and wait for the filament to stop. Measure to see how far the filament moved as precisely as you can. Divide the current steps/mm set in your firmware by this number and multiply by 100 to get the new number. Set the steps/mm in your firmware to this new number and reload your firmware again. Now do the same measurement process once more with the mark at 110mm. You should now find that when you extrude 100 in repsnapper, exactly 100mm of filament is pulled into your extruder and your mark is now exactly 10mm above the top of the extruder. If it's still off, divide the current steps/mm by the number it actually moved and multiply by 100, change and reload again, and it should be pretty much dead-on exact if you are measuring carefully enough. Don't move on until you get exactly 100mm movement when you move 100 in repsnapper.

Now you are done with the hardest part, getting the diameter of the filament and calibrating the extruder steps/mm. We are still in the Dimension settings, so lets set them:

Make sure Absolute Extrusion Distance is checked.
Extruder Retraction Speed: You can't use a big number here anymore, since speed is now being based on actual mm, so a good starting value is 30
Filament Diameter: This is what you measured, hopefully with digital calipers. My 3mm PLA actually measured 2.86mm
Filament Packing Density: This has to do with how the density of the plastic changes when it melts. We are using PLA which doesn't expand much, so use 1.0. This is the handy part, to use ABS, you should be able to change this to about 0.85 without much change to other settings or measuring again.
Retraction Distance: I set mine to 3. 2 or 3 seems to be a good number.

OK, we're done with the Dimension settings, now on with some more plugins...

Export
Activate: yes
Make sure Gcode Small is selected.

Fill
Activate: yes
Infill Width over Thickness ratio: 1.7 (This should match the Perimeter Width over Thickness value under Carve.)

Fillet, Home, Hop, Inset, Jitter, Lash
Activate: no

Limit
Activate: yes
Maximum Initial Feed Rate: 30 seems to be good for me, I set this about 10 lower than the feedrate I set in the Speed plugin, up to about 40. Even if you're doing high speeds with firmware acceleration, you don't want to increase this.
Maximum Z Feed Rate: 3.0 seems good for me, not too slow, not too fast. Without this the Z axis motors may be stepped too fast to move.

Multiply
Activate: no
Or... yes. If you want to print closer to the middle of the bed, set the Center X and Y to the middle value for ech axis, and set the number of columns and rows set to 1. This will move your print to the center, but only print a single copy.

Oozebane
Activate: no

Preface
This one is always activated, it lets you specify some gcode defaults. I added gcode to alternatives/end.gcode to move Z up a bit, move X toward home a bit, and turn off the nozzle heat. This is handy if I'm not there when it finished printing! Once thing to be sure NOT to do is have any gcode that changes the extruder steps/mm since you are now depending on the firware setting that you measured so carefully. When I first did this, I had an old start.gcode file left over from sf39 that was resetting my steps/mm to a small value which basically caused my extruder to not extrude while printing!

Raft
Activate: yes
I don't want a raft, but I want to slow down printing the first layer to help it to stick well. The secret is to use the raft plugin with a couple layers set to zero so that the actual raft doesn't print:
Base Layers: 0
Interface Layers: 0

Scale, Skirt
Activate: no

Speed
Activate: yes
This used to be where we would set the speeds and flow rate that had a huge impact in how well an object printed. These settings still have a lot of impact, but not in all the same ways. The big thing to remember here is that now the Feed Rate and Flow Rate are the same thing and should always be set to the same value. I set both to 40, and have had good test prints at 60, for your first test, I recommend 30...
Feed Rate: 30
Flow Rate: 30
Travel Rate: 50

Splodge, Stretch, Temperature, Tower, Unpause, Widen, Wipe
Activate: no

That's all the settings that should be a good starting point for using sf40. Save the settings, and you can slice a STL file by clicking the Skeinforge button at the bottom of the window. Once thing I've noticed is that on my system, if I single-click a STL file in the file browser and click Open, it doesn't necessarily open the selected file and instead opens the last file it sliced. I can only select a different STL file to open if I double-click on it instead of using the Open button. Another thing that may not be obvious is when it's done slicing and opens the sliced file in the skeiniso window, you have to File->Save before closing the window or you will lose the gcode. Even though there is an Export menu choice, you don't use it to export your gcode, you use Save. I have not found a way to Save As with a new name, so if you don't want to save over a previous export, you need to move the previous file first or start with a renamed STL file.

Once you have the exported gcode file from sf40, you can load it into repsnapper from the Simple or GCode tabs which both have a Load Gcode button. Then I use the Print button on the Print tab. If a print goes bad or fails to stick at the start, I use the Pause button then click back to the Interactive tab to move the Z axis up right away.

Here's the gcode I put in alterations/end.gcode to move the axis a bit and shut off the heater: You can change the name of this file in Preface.
G91
G1 F70
G1 Z7 F70
G1 F2300
G1 X-100 F2300
G90
M104 S0

Here's the gcode I have in my alterations/start.gcode file: (From araspitfire's sf39 guide)
G21; metric is good!
G90; absolute positioning
G92 X0 Y0 Z0 E0 ;zero the extruded length axes
G92 E0

And here's what I have in alterations/replace.csv The last 2 lines must have a TAB for whitespace, not spaces.
M101
M103
M108 ;M108
M113 ;M113

A reminder that with feed=flow calibration like this, any other gcode generator will probably try to drive your extruder insanely too fast, either for the motor to step or for the hotend to keep up. So if you want to use other gcode, you'll want to change your steps/mm back to something normal for the old way of doing things.

Well, that's about it for off the top of my head at 1am. My learning curve has been made shallow by others, so I hope some of this rambling helps some other reprappers. Disclaimer: If I'm wrong about something here, let me know so I can learn and so it can get fixed here. I'm not an expert, much of this is my first experience with this stuff. I went from "Hey, I want to build a 3D printer" to a working Prusa in 3 weeks thanks to the help of the community, and have only about 2 weeks of actual printing experience at this point.

-OhmEye


Last edited by OhmEye on Thu Jun 30, 2011 6:44 am, edited 5 times in total.



Sat Apr 02, 2011 1:17 pm
Profile

Joined: Thu Mar 31, 2011 3:08 pm
Posts: 95
Post Re: Skeinforge 40 setup notes.
Hi OhmEye

Thanks for this.

My Prusa is built and I am having problems getting a good print from it. From your procedure I can see a couple of places where I need to set it correctly. I will give it a try.

Cheers
Geoff

_________________
http://apapageek.blogspot.com


Mon Apr 04, 2011 9:01 am
Profile

Joined: Mon Dec 20, 2010 6:55 am
Posts: 87
Location: Nelson New Zealand
Post Re: Skeinforge 40 setup notes.
I'm guessing this will work with a Mendel from Camiel just as well


Sat Apr 16, 2011 12:15 am
Profile

Joined: Thu Mar 31, 2011 3:08 pm
Posts: 95
Post Re: Skeinforge 40 setup notes.
It will :)

_________________
http://apapageek.blogspot.com


Sat Apr 16, 2011 8:42 am
Profile

Joined: Mon Dec 20, 2010 6:55 am
Posts: 87
Location: Nelson New Zealand
Post Re: Skeinforge 40 setup notes.
Where do you type the end/gcode and start/gcode into Skeinforge or into Repsnapper?
If into repsnapper how do you save it?


Mon Apr 18, 2011 6:04 am
Profile

Joined: Sat Apr 02, 2011 10:00 am
Posts: 4
Post Re: Skeinforge 40 setup notes.
The filenames for the start.gcode and end.gcode are set in the Preface plugin. The path is in the "alterations" directory in your skeinforge settings folder. So for example on my linux box there is ~/.skeinforge/alterations/start.gcode


Mon Apr 18, 2011 6:19 am
Profile

Joined: Mon Dec 20, 2010 6:55 am
Posts: 87
Location: Nelson New Zealand
Post Re: Skeinforge 40 setup notes.
Ok thanks

one other question

I downloaded Repsnapper with Camiels settings so when I start Repsnapper it shows a folder called RFO which I assume contains his settings as when I looked in the saved folder that I made in SF it shows individual plugins so I guess I need to put this folder into Repsnapper.

Is it a case of copying the folder into the Repsnapper folder as when I tried to load settings it opened the saved folder I made and tried to get me to put each one in separately which I guess I did something wrong


Mon Apr 18, 2011 8:46 am
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 32 posts ]  Go to page 1, 2, 3, 4  Next

Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.