Jump to content

GregValiant

Expert
  • Posts

    5,323
  • Joined

  • Last visited

  • Days Won

    224

Everything posted by GregValiant

  1. I can see where this is difficult to implement. When designing molds I would design the part to it's exact dimensions and then scale the part up by the "shrink factor" of the particular material the production part would be made of. The scaled part would be subtracted from a block, and I'd have my scaled mold cavity. The toolpaths would be generated to cut that cavity. This worked because shrinkage would be consistent throughout the production part in the X, Y, and Z. In FDM since the toolpath is the toolpath, it would seem that shrinkage might only occur within each "line width" rather than being cumulative across the entire model. For some materials (Ex: ABS) the shrink factor may change with height off the build plate. The geometry of the model may well come into play. Consider a 25mm cube that is being injection molded. If the shrink factor is 8% then the walls of the mold cavity would measure 27 x 27 x 27. If I intend to print a mold for that part (using Cura), then that would also need to be the model size. If I intend to produce the same 25mm cube using an FDM printer (at a 0.4 line width) then do I really want the toolpath scaled up to 26.6 x 26.6 x 27(?) or do I just scale the line width to .043? All the line widths or just the Outer Wall? Do I leave the Z alone? Should just the top layer be scaled? Is the Z scale different than the XY? How about around these vertical holes? Then there this is this partial horizontal cavity? Decisions, decisions. In the end, I think it will still boil down to the experience of the operator. "This type of shape requires shrinkage to be applied here, but not there, and with 1/2 as much applied over at this other place.". That pretty much puts it back into CAD. The slicer can then "just print the damn part". Prototyping will never go away.
  2. I'll quote you here "....the problem is probably not in the hardware/firmware/pin assignments." Things like this are why it's always good to put another set of eyeballs on a problem. You then get to lean back and hit yourself in the forehead with the palm of your hand and say "How the #$%^ did I miss that!!!"
  3. I print functional things and I have one settings profile. The first thing I do with Cura is to make sure Setting Visibility is set to "All". I start at the top and go down through the settings and make adjustments for the particular model I've brought in. It's going to be either PLA or PETG and each requires some particular changes for the material. I print some TPU but with the bowden setup I have to limit myself to gaskets and other flat models. I have no interest in moving to Direct Drive (or BLT either). Each model needs it's own particular tweaks and I really don't see a reason to save that a particular settings configuration every time I slice something. If I was more into production work, or if I also printed a lot of statues then I would probably have more profiles. Since just about everything I print is at least somewhat different I give each model it's own love. That's what works for me. Of course at any given time I do have about 10 printers installed in Cura. Pretty much every time I open a 3mf file I get a new one and they have to be cleaned out once in a while. I've attached my basic app for printing from the SD card. It's "Windows Only" so ignore it if you are on Linux or a Mac (you can ignore it if you're on Windows too). After unzipping there is a readme file in there with some sparse instructions. The app moves many of the LCD commands from the knob, to a dialog box on a USB connected computer. It's really handy with a touch-screen laptop. Gregs SD Print Tool.zip
  4. The icons may have changed but the functions didn't. That toolbar on the left (13) has the Move tool at the top and then Scale, Rotate, Mirror, Per Model Settings, and the Support Blocker tool is on the bottom. 12 is the box where you can change the project name. 11 is the View toolbar. Isometric, front, top, left, right. The circled numbers bellow your toolbar 13 are the extruder select buttons. Select a mesh and then you can set the extruder you want to use for it. Do as @gr5 suggests and bring a model in and just play around. It's not like you can hurt anything.
  5. My printer is an Ender 3 Pro. It's about 2 1/2 years old now. It has the 8 bit silent board. It does not have the stock hot end. It does not have the cloned stock replacement for the stock hot end. The first one got dropped in the trash. The second I threw as far as I could. That lead to this saying of mine "If you clone a POS you should not be surprised if the clone is a POS." My problem was constant plugs developing at the bottom of the bowden tube. The printer would start seriously under-extruding about 1 hour into every print. I changed everything. Got the fancy Parker-Hannifin fittings for the bowden. Put in a 4015 ball bearing fan for the hot end. Built a baffle to make sure the fan air was directed at the heat exchanger. Drilled holes in the bracket to let the air out better. Nothing helped. Finally bought the Micro Swiss all-metal hot end. It isn't perfect but it does work. It is NOT a clone. I mentioned the 8 bit silent board. The printer came with the noisy 1.1.4 board. I ordered the 1.1.5 silent board. The first one to show up had a bad E stepper driver and consequently had built-in under-extrusion. There was no way to calibrate it. One day it would be 100 steps/mm and later the same day it would need to be set at 325. It would randomly change. It took 2 months to convince Creality that it was really the board. The replacement has been fine. Post a gcode file that doesn't print correctly. Make it a small one (calibration cube, Benchy, etc) and I'll look at the E numbers and see what is going on. I have a little bit of moist PLA here that I could print it with if it comes to that. The best trouble shooting tool is a project file. Load a model, set up to slice, and then use the "File | Save Project" command and post that file along with your gcode file.
  6. I'll take a stab at this but you need to check with the board manufacturer. You said: Red (P2_03) = Heatsink fan Blue (P2_04) = Parts Cooling (duct) fan But the SKR schematic says FAN 2.3 This one sounds like the Part Cooling blower HE1 2.4 This appears to be the power pins for Hot End 1 (unless you have multiple hot ends this should be unused.) HE0 2.7 This one sounds like the power for Hot End 0 which is what you should have on a single extruder machine. Your pin table appears to bear that out: #ifndef HEATER_0_PIN #define HEATER_0_PIN P2_07 This looks like power for Heater0 #endif #ifndef FAN1_PIN #define FAN1_PIN P2_04 This looks like a second fan but I don't see a connect point on the SKR. #endif //#else // #ifndef HEATER_1_PIN // #define HEATER_1_PIN P2_04 Undefined power for a second extruder (heater1) // #endif //#endif #ifndef FAN_PIN #define FAN_PIN P2_03 this one looks like the layer cooling fan F0? #endif You've likely got something wired wrong. The M106 should only effect the layer cooling fan. There is no gcode command for control of the hot end fan. In some firmware, the hot end fan can be regulated by the temperature setting (it sounds like you have that enabled at 60°) so the fan doesn't run all the time. In Cura Manage Printers / Machine Settings / Extruder 1 the "Cooling Fan Number" should be set to "0". There is often some confusion about this but your hot end on a single extruder machine is called Extruder #1 but its number is Extruder0 and it is related to T0 in gcode and it's fan should be number "0". You can just post the gcode file. There is no reason to do all of that copy and paste work and things are way easier to search for in a text editor than on a webpage.
  7. A fresh cup of coffee, not a cloud in the sky, and an early morning analysis before I go fishing. Things have been worse. There are never circles in an STL file and so any "circular" feature is made up of short line segments as Cura slices the triangles in the STL file. In the case of that gcode file, the line segments are about 0.961mm long. Those are the chords of the approximate circle that constitutes the toolpath of the outer wall in the gcode. The end point of each chord describes the Major Diameter of the toolpath of the outer wall of the model. The midpoint of each chord describes the Minor Diameter of the toolpath of the outer wall of the model. The theoretical toolpath should be "1/2 line width" inside the outer wall of the model and so the theoretical toolpath should be 19.5250 diameter. If the screenshot above I grabbed a couple of random line ends and mid points to dimension. When dealing with a faceted surface (rather than a true diameter) you can only get an average. I dumped the outer wall gcode commands of layer 30 into a spreadsheet for a closer look. The average diameter described by the endpoints of all 66 chords in the toolpath and at a line width of 0.35 is 19.8723. The Outer Wall Deviation is from 19.8599 to 19.8760 or a tolerance of -.0010 to -.0151. The deviation was consistent along both the X and Y axes. I did not plot the midpoints that would describe the minor diameter of the outer wall but I did check a couple. If you measure across the flats of the facets you should get 19.8516mm and if you measure across the high points you should get 19.8760mm. The actual value would vary according to the Flow of the printer as it directly effects the actual extrusion width. Next is the height of the model. The Initial Layer Height is 0.3, the Layer Height is 0.1 and the height of the top extrusion is at 15.0000mm. A diameter in the gcode does not exist. Even if you use the ArcWelder plugin a circle is still a collection of short line segments (but calculated by the firmware rather than in Cura resolution settings). The height of the model is dead-nuts, spot-on, copacetic, exactamundo. There will be some effect from the bed leveling procedure. If your leveling is short by .05mm then you will get a part that is .05mm short of the design height. Conclusions: The gcode is as right as it can probably be. It would seem that the printer is not following the instructions exactly. Time to load up the motorcycle with the fishing gear and head for the beach before the wife gets up and figures out where I went. EDIT: I printed your gcode file. Y dimension = 19.84. X dimension (away from the Z seam) = 19.87. Z height = 15.02. The PLA was absolute crap. The printer is an 8 bit Ender 3 Pro.
  8. Post that gcode file. I can dump it into AutoCad and check it.
  9. Bringing the gcode into AutoCad there are two holes that (if the printer could do it) are 1.00mm diameter. They are 4.00mm apart. With a 0.4mm nozzle the width of the part shows as 8.00mm and the length is 20.00mm. This is your gcode dimensioned. Remember that the gcode describes the PATH of the nozzle, not the outside edge of the extrusion or the inside diameter of a hole. So with a .4 nozzle, you would add .4 to the width and length and subtract .4 from the diameter of the holes. When the printer moves in a circle the liquid filament wants to stay straight and so it pulls into the center of the circle. That phenomenon is technically known as the "Snot Factor". The smaller the hole - the worse the effect. Little holes tend to disappear. If you use the "Hole Horizontal Expansion" setting at about .2 you will see a difference in the diameter of the printed holes. Remember that a hole is any vertical feature that has no openings to the outside. If you were to print a spoked wheel then the axle hole would get bigger, but so would the gaps between the spokes.
  10. That's the way to do it. I had started a response explaining that but it got long and involved in a hurry. We never know how capable someone is when they ask a question.
  11. Another thing you might want to do is raise the Z first. Right now your printer moves in a straight line from point to point. You may want to insert a couple of other moves to make it an up-and-over. G28 G0 Z15 F2000 G0 X.1 Y20 G0 Z.3 G1 X.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first NEW line
  12. Sorry. I forgot about this. I did play with it and I couldn't get the gap to go away. Go over to GITHUB and post a bug report. Do a complete write up and post the project file. As a work-around did you try using a Cutting Mesh set to 100% infill?
  13. Go to the MarketPlace. Install the "Printer Settings" plugin and quit Cura. When you restart Cura make all settings visible. The setting is "Heat Up Speed" and there is also "Cool Down Speed".
  14. There ya go. The filament should work perfect with your printer. My father had to give up tying flies and fishing jigs when his tremors got bad (Parkinson's). I keep waiting for it to start with me but so far I've been fortunate.
  15. It's about time there was something here that the VB guy is good at. When slicing a model with Cura the gcode always starts with: ;FLAVOR:MARLIN ;TIME:9162 ;Filament used: 10.775m You could build a macro in Excel that would: Select multiple gcode files at once. Iterate through those gcode files and open each with Set fs = CreateObject("Scripting.FileSystemObject") Set gcode_file = fs.OpenTextFile(ImportFileName, 1, False) Pull the print times out (and maybe the filament used?) and plug the numbers into a spreadsheet. If you have an idea of a fudge factor for each printer (Printer1 is always takes 10% longer, Printer2 is always 3% quicker, etc.) then that would be noted in columns for each printer. You could add a dialog box for "If I start THIS FILE at THIS TIME on THIS PRINTER then when will it finish?".
  16. That 0.8 profile has the Mesh Fixes "remove all holes" ticked.
  17. The pen I bought came with ABS filament. ABS gives off some noxious fumes and is prone to warping without a "heated build volume" and the bed at 110°. The pen has a temperature adjustment and I can run PLA through it. Just to double check - if it will extrude at 200° then it's probably PLA. If it's ABS it will work but require some adjustments to how you print.
  18. In a case of "Fix one thing and inadvertently break another" a bug was introduced into 4.11.0 that caused this behavior when a model is exactly 1 layer thick. If the model is .2mm thick then changing the Initial Layer Height to .199 will work. This bug has been fixed so upgrading to 4.13.1 is another alternative.
  19. I don't see that when I sliced your file. Can you post a gcode file? I'll look to see if the moves are in it. Without seeing it I'm suspicous that it is a preview problem because the Z is affected. The gcode file should give a clue.
  20. This has been talked about here recently. I think if you search for "shrinkage" or "scale factor" you may come up with something. One of the settings that is "hidden by the active machine" is "Scaling Factor Shrinkage Compensation" which would seem to be what you are looking for. (I think it would need to be a function of the Material you are using?) @nallath of the Cura Team may comment on that. Edit: One of the settings under "Preferences | Configure Cura | General" under "Opening and Saving Files" is "Select Models When Loaded". Checking that should make a tool on the left side popup (probably the last one used?). At least you would have a reminder to set the scale and maybe the Z location.
  21. Did you ask Cubicon if they submitted an M22Z definition to Ultimaker? Some of their printers are included in Cura. If the M22Z is a new model then maybe you have to wait for a future release of Cura for the definition files to be included. Another thing is that my installation of 4.10 doesn't have a definition for the M22Z. Is your version of 4.10 an Ultimaker version or a fork from Cubicon?
  22. This is the first extrusion at the start of the skirt: G1 F600 X293.558 Y133.875 E0.02713 later in the file there is a travel move and then G1 F600 X259.268 Y209.955 E182.36614 So the print speed is 10mm/sec. There are a couple of things to look at. In the cooling section the "Minimum Layer Time" will cause Cura to slow down the print speed in order to allow the layer to cool. In the case of something like a spire, or the smokestack on a Benchy the Minimum Speed will come into play. If there is an M220 in your StartUp Gcode it will affect the speed. M220 S100 will insure that a print always starts at 100% of the speeds dictated by the gcode. M220 S50 would tell the printer to cut all the speeds of the gcode to 50%. To the right of the Setting Search box is the Settings Visibility button. Click on it and set the visibility to "All". Then go down to the speed section and see if something is set low. You can also post a project file here ("File | Save Project") and all your settings will be in the file.
  23. "...but it is thoroughly checked. No errors." You should have a talk with your checker. From https://formware.co/OnlineStlRepair: --> 0 Naked edges (?) --> 0 Planar holes (?) --> 0 Non-planar holes (?) --> 586098 Non-manifold edges (?) --> 390147 Inverted faces (?) --> 0 Degenerate faces (?) --> 780879 Duplicate faces (?) --> 0 Disjoint shells (?) -> Repairing: 100.00% ----- Repair completed in 39429ms ------ -> Vertex count changed from 195368 to 196569 (+1201) -> Triangle count changed from 781464 to 393134 (-388330) After opening the file I checked the model with @ahoeben's Mesh Tools and the "not watertight" warning came up. I exported the model as an STL file and uploaded it. MS 3D Builder also noted defects in the model and was able to repair it (but the formware site gives a report). I've attached a repaired file. CFFFP_Hips_fixed.stl
  24. Sometimes you will set up Cura to have a different temperature for the first layer. That requires a different keyword. Folks who have auto-levelers don't like having the nozzle drool during leveling. Gcode is a simple step-by-step language and so the order that the commands are in is important. This is a variation of my StartUp Gcode for PLA (I don't AutoLevel but I've altered this for an auto-level system). ; ; Greg's Start G-code ; M82 ;Absolute Extrusion G90 ;Absolute Movement M140 S{material_bed_temperature_layer_0} ;Start heating the bed to "Initial Layer Bed Temperature" M109 S165 ;Warm up the hot end and wait for it to hit the temp. G92 E0 ; Reset E G28 ; Home XYZ axes. This would be G28 X Y if you don't home the Z for some reason. G29 ;Auto Level command G0 Z10.0 F3000 ; Move Z G0 X1 Y1 F6000 ;Move back near the left front corner M109 S{material_print_temperature_layer_0} ;Finish heating the hot end to "Initial Layer Print Temperature" M190 S{material_bed_temperature_layer_0} ;Just in case the bed hasn't gotten up to temperature yet. G0 X1.0 Y20 Z0.3 F5000.0 ; Move G1 X1.0 Y200.0 Z0.3 F2400.0 E15 ; First purge line G0 X3.0 Y200.0 Z0.3 F5000.0 ; Move G1 X3.0 Y20 Z0.3 F2400.0 E30 ; Second purge line G1 E28 F1800 ;2mm retraction G92 E0 ; Reset Extruder G0 Z10.0 F3000 ; Move Z Axis up G0 X20 Y35 Z10 F5000.0 ; Move over to prevent blob squish M220 S100 ;reset feedrate to 100% M221 S100 ;reset flowrate to 100% ; ;End of StartUp ; I print PLA fairly quickly, PETG at about 1/2 my PLA speed, and TPU at 12mm/sec. The purge line speeds are hard coded into the startup gcode and are kinda fast for PETG and way to fast for TPU. My fix was to install 2 additional Ender 3 Pro's in Cura. The TPU printer has the purge line speeds at 10mm/sec and the PETG printer has the purge lines at 25mm/sec. The PLA startup gcode is the one above and you can see that the purges go own at 40mm/sec as they are very high flow.
×
×
  • Create New...