Jump to content

GregValiant

Expert
  • Posts

    5,188
  • Joined

  • Last visited

  • Days Won

    211

Everything posted by GregValiant

  1. As far as I know the Anet A8 is not WiFi capable. You may have installed a special module to make it so. You can send commands to it through the USB port or via gcode. Cura is not capable of viewing the responses that come back from the printer. Printrun/Pronterface is capable of 2 way communication.
  2. Good call @MariMakes. @BobFrakes what printer are we talking about here? Are you printing via SD card, Octo, USB...?
  3. Hello all, I prefer to use Pause at Height as the settings are right there and (by comparison) using Filament Change turns it over to the firmware. Firmware is not a Creality strongpoint. @dsp is right in that if the first move is to a "support", a "tower" or something else non-critical then that is the best solution, The blob simply ends up someplace that doesn't matter. On a small short model you can just print two. The one with the blob gets discarded. If it's taller then adding something else that ends just above the color change layer is a good idea. The reason for the problem is that whether you use Pause at Height or Filament Change, when you move the filament the printer loses track of exactly where the end of the filament is in relation to the nozzle. When I use Pause at Height I do not use the built in retraction settings but do it all by hand. After the head parks, I pull out the filament and insert the new color and then I advance enough filament by hand to make the color change (going from any color to white requires a lot of purge). After that is done I do a hand retraction of about my "retraction distance" to relieve the pressure in the nozzle. The restart is then pretty clean. It can take a bit of practice but it isn't difficult to figure it out. In my first foray into Python I have made modifications to Pause at Height and when I figure out how to do a proper pull request I'll submit it. It changes the retraction settings so the "prime after pause" occurs at the park position rather than over the print. It also allows for multiple lines to be inserted as "Gcode before pause" and "Gcode after pause" and adds an option to have M104 set the resume temperature instead of M109 as M109 can cause a 10 second delay even if the standby temperature and the resume temperature are the same. When Creality made the switch to the 4.2.x mainboards with TFT displays the display and board didn't play well together. As a consequence, on the early releases of all the Ender 3 models with those boards, the gcode commands that send messages to the display (M0, M1, M117, M600, etc.) didn't work anymore. M0 is the main command for Pause at Height. My bonafides. All the color changes in these was with Pause at Height and were printed on my Ender 3 Pro. (The windows and curtains on the camper sleigh were glued on during assembly.)
  4. You can use Search and Replace. M221 is the global flow rate and the "S" parameter is %. This would change all flows to 100%. Search = ;LAYER:1\n Replace = ;LAYER:1\nM221 S100\n Use regular expressions = Checked That would result in this within the gcode: ;TIME_ELAPSED:43.906829 ;LAYER:1 M221 S100 "backslash+n" is the newline character and is required as shown. Search and Replace accepts multi-line replacements.
  5. The gcode tells the printer "where" to send the print head. It's the printer that determines the "steps" to send to each motor. Since there is no feedback loop to tell the printer/processor where the print head really is, the printer/processor has to use the number of steps as the location. If something like belt slippage happens there isn't any way for the processor to know about it so it merrily keeps sending information to the motor. It assumes that the print head is where it told it to go. Have you opened the Gcode file in Cura? The gcode reader is separate from the slicer and if there are movement errors they will show up in the gcode preview.
  6. Maybe you are telling it to do to much with your Extruder Start and End scripts. Clear that out (maybe install another Ender 5 and start fresh) and see how the gcode looks. This is with the default 16mm retraction for nozzle switch and a T0 retraction distance of 6.5mm. G1 F1500 X25.978 Y17.096 E119.96555 >last extrusion with T1 G0 F7200 X25.218 Y17.096 G1 F1200 E103.96555 >Retract T1 16mm G1 F600 Z0.6 G92 E0 T0 >Switch to T0 G92 E0 M104 T1 S180 >T1 to standby temp M105 M109 S205 >T0 to print temp with the filament 16mm behind the nozzle and wait for temperature G1 F1200 E9.5 >After heating advance the filament up to "retraction distance" behind the nozzle G1 F600 Z0.4 ;MESH:X-Y Ref Block.stl G0 F9000 X180.048 Y123.037 >Travel to the prime tower location G0 X176.445 Y126.445 ;TYPE:PRIME-TOWER G1 F2100 E16 > T0 unretract the last 6.5mm over the prime tower. The filament is right at the nozzle. Since you have gone back to the prime tower maybe everything should go back to default and see how it looks. You have a heavily customized machine and it will require experimentation to get it to work. If your Extruder start Gcodes were to include ONLY this line; G1 X{prime_tower_position_x} Y{prime_tower_position_y} F12000 Then you get this in the gcode: T0 G92 E0 G1 X185 Y115 F12000 >Move to the prime tower location M104 T1 S180 M105 M109 S205 >heat to print temp If there was to be any oozing it would be over the prime tower.
  7. This is from the Artillery definition file for your printer: "overrides": { "machine_name": { "default_value": "Artillery Sidewinder X1" }, "machine_width": { "default_value": 300 }, "machine_depth": { "default_value": 300 }, "machine_height": { "default_value": 400 }, "gantry_height": { "value": 25 } So in Cura "Manage Printers" and "Machine Settings" those should be the values. With "Build Plate Adhesion Type" set to None you should see this (no reserved areas):
  8. Today I made another attempt to get this thing to make chocolate prints. The chocolate doesn't get hard fast enough. Everything is just a pool and walls collapse. The extrusion rate is inconsistent. A lot of air printing is going on. I think the retraction needs work. I wish the material tube would fit into the machine with the silicone plunger already in place on the ram. The ram slides in and out of the silicone and eventually the silicone piece gets cocked in the tube. It's a non-positive displacement situation. Some of this may be user error, but the "won't get firm" thing is really annoying. I'm making puddles instead of prints.
  9. That looks a lot like you have a partial clog where the bowden tube meets the back of the nozzle. If there is a gap between the bowden and the nozzle, plastic can get pulled up there during retractions and cause intermittent under-extrusion. It's a popular problem on Creality hot ends (and is why I replaced mine with an all-metal hot end). You might try removing the bowden and nozzle from the hot end and pushing a piece of correctly sized wire through a warm hot end (180° and a coat hanger will work) and see if a plug of plastic comes out. You can trim 5 or 6mm off the bowden tube (nice square cut). Then put the nozzle back in, snug it up, and back it out 1/4 turn. Re-insert the bowden and the locking clip and then snug the nozzle up. During a print - the bowden tube rotates back and forth within the fitting on top of the hot end. After some time the little knives in the fitting will work their way further into the bowden and allow it to back out a bit. That's why bowden tubes are considered "consumable" items as they need to be trimmed every once in a while. That allows those little knives to bite into fresh plastic. Settings like "Limit Support Retractions", "Connect Infill Lines", and "Connect Support Lines" can help lower the number of retractions. Your retraction distance should be 6.5 or less as long retractions are a contributing factor.
  10. I always use Search and Replace to remove that first retraction (I replace it with G92 E-2.5). My "Build Plate Adhesion" always starts perfect without little beads of plastic that get dragged around. It's what works for me. I have installed alternate Ender 3 Pro's in Cura because I use a different StartUp Gcode and different Search and Replace for PLA, PETG, and TPU. The Ender I select is the one for the material I will be using. Maybe something like that would work for you. The system you were working on seems to be OK except for the initial retractions that must occur within the startup gcode. If your retraction distance and retraction speed were the same for both extruders there wouldn't be a problem. With different values for retraction distance and speed - the first call to the "other" extruder is going to result in either a blob, or an under-extrusion until the filament catches up. After that it would be fine.
  11. 5.x is definitely slower. Part of it is the resolution of the model files. I'm starting to see some with triangle densities that are on the order of 160 triangles in every square mm. That's a lot of vertices to slice through and figure out the line width that is appropriate. Your model is pretty dense at full scale but at a 10x scale factor the density drops to 10% of what it was. The slicing still takes a long time though. I liked 4.13.1 a lot. When 5.0 came out I decided to move to it exclusively as it is the coming thing. All-in-all I've been pleased, but I tend to print industrial type items rather than artsy-crafty stuff. As a consequence my models aren't as "organically" shaped and so aren't as complex. An advantage to 5.x is that when I design objects I no longer have to take into consideration the wall thicknesses. Instead of me designing thin walls that were always an even number of "line widths" I can now design them for function and Cura adjusts so the extruded walls fill the model walls as designed even if there is an odd number of extruded walls required. But that condition only applies to Thin walls. If a wall is 10mm wide then it doesn't matter. I spend time on Github going over bug reports and some of the models involved in the reports are ridiculously complex and seem to take forever to slice in 5.x. That level of resolution in a model is (in my never humble opinion) dumb as there is no way that the FDM process can create a physical object with that level of resolution. It sure affects the slicing process though.
  12. G1 X117.5 Y124.456 E15.93406 > If there is an X and a Y and an E it's an extrusionG0 F6000 X117.5 Y124.896 > If there is an X and a Y (and maybe Z) without an E it's a travel move onlyG1 F1500 E9.43406 > If there is no X and no Y but there is an E it's a retraction or prime. G92 E0 > Resets the extruder to 0. Cura does that about every 10,000mm³ to minimize "rounding" errors.
  13. Yes. No problem setting different retraction distance per extruder and they work correctly during the print. The problem is in describing that in the StartUp Gcode. Example: You have Extruder 1 set to 6.5 retraction at 45mm/sec and Extruder 2 set to 8.5 retraction at 35mm/sec. Your startup gcode might contain something like this: T1 G1 F{retraction_speed} E-{retraction_amount} T0 G1 F{retraction_speed} E-{Retraction_amount} That will result in a gcode: ;generated with Cura 5.2.1 T1 ;begin startup gcode T1 G1 F2700 E-8.5 T0 G1 F2700 E-8.5 I think it's because Cura doesn't actually "read" the startup gcode. It just looks for replacements that need to be made and then pastes the startup code into the file. I haven't been able to change the active extruder (from a Cura viewpoint) within the startup gcode. The printer will see it just fine. But Cura makes the "Initial Extruder" based on the extruder that starts the print and that tool stays active (from a Cura viewpoint) until the print starts. T1 G1 F{retraction_speed} E-{retraction_amount} T0 G1 F{retraction_speed} E-{Retraction_amount} This time T0 starts the print ;generated with Cura 5.2.1 T0 ;begin startup gcode T1 G1 F2100 E-6.5 T0 G1 F2100 E-6.5 One of them is going to be wrong.
  14. There is no confusion during a print as Cura knows which tool is active. It would appear that when doing the StartUp Gcode that isn't the case. Cura considers the "Tool Number" that goes in before the startup gcode to be the active extruder. Within the Replacement Keywords list I have not found a way to say "{retraction_amount_extruder_1}" or {switch_extruder_retraction_amount_extruder_1}. Cura defaults to what it believes to be the active extruder and that's the retraction amount it gets. One of the extruders will be wrong in the startup. It all works correctly elsewhere. The same sort of thing happens with Search and Replace. If you change the retraction distance or speed the Search line needs to change. There is no way to say Search = G1 F{retraction_speed} E-{retraction_amount} because at that point they are treated as text and not replacement keywords.
  15. You can try setting the "Extra Skin Wall Count" to "0". Cura won't apply the overlap to that extra wall but if it isn't there then the overlap works correctly on the inner-walls. There are a couple of bug reports on Github about this behavior (#12294 and #13553).
  16. A fore-and-aft mount. I haven't seen one of those. I had assumed you altered the firmware. That's an interesting approach. Here is a Project File. I played around with the StartUp Gcode. When you open the file in Cura make sure you select "Create New" and NOT "Update Dual" in the printer options. You don't want to over-write your current startup gcode. The main change is initializing both extruders in the Startup so if a print starts with extruder 2 it will be ready. One thing I found out is that there is no "retraction_amount" that can be called for each extruder. Since you have different amounts (6.5 and 8.5) for the extruders the amount must be hard coded into the StarrtUp Gcode. Cura uses the correct amounts when the extruders change. I altered the extruder starts to reflect that. GV_2-circle.3mf
  17. When you get a chance post a picture of the printhead of your printer. This sounds like an interesting setup. What firmware are you running?
  18. Cutting back on that models beer intake might help in the long run.
  19. You can bring in a support blocker, scale it to fit over the area you want to change. With the blocker selected go to the Per Model settings and set it to "Modify Overlaps" and as an Infill Mesh. Use the Select Settings button and go down to the Infill section and select "Infill Density". Now you have a Modifier Mesh. You will get extra top and bottom layers at the intersection of the blocker if you don't set them to zero. You could also add more walls at the overlap area instead of increasing the density of the infill. Here I've done both. The mesh modifier is set to 100% infill and 3 walls.
  20. Have you made a custom "Profile" for your settings? You can't alter a built-in one (Standard, Draft, etc.) but you can make a custom profile based on a built-in and have the infill pattern set to Gyroid. It's likely your printer definition file is based on fdmprinter.def.json and "Grid" is called out as the default in that file. You could add an "override" to your specific definition file and change that to Gyroid but a setting profile is a lot easier and will carry over across a Cura update. Customizing your definition file will not carry over.
  21. The developers check the Github page for bug reports more than they do here. You can go to https://github.com/Ultimaker/Cura/issues and create a bug report. You should include a Cura.log file ("Help | Show Configuration Folder") and a Cura Project file ("File | Save Project"). You must put the two files into a zip folder and post the zip there on the site. (Without the files nothing can really be done.) Some information about your computer system would be helpful as well (operating system, video info, how many monitors you use, etc.). I haven't seen a bug report there that describes the sort of failure you have going on.
  22. I sliced the project. These comments are in regards to the gcode file that was created: Cura always refers to E0 in movements and adjusts the location of E1 by adjusting the gcode so E0 is offset and E1 prints where it should. You have elected to not have Cura offset the gcode. This image is from AutoCad. It's the gcode file I created. You can see the movement off the build plate. In addition, there is no "disallowed" area for either extruder. That means there is no offset between the extruders? This is my "virtual" Ender 3 Pro. There is 25mm between the nozzles in the X (side by side mounted to the print head) so E1 can't make it all the way to the left and E0 can't make it all the way to the right. The way your startup is written - if you have all models set to E1 the print mistakenly starts with E0. Within the Startup gcode you have a beep. Right before the beep I suggest you add T{initial_extruder_nr} M300 That will make sure that a print starts with the correct extruder. Right after the G28 line in the StartUp gcode you are moving the X and Y at Z=0. G28 G1 X236 Y180 F6000 I would move the Z up to make sure it doesn't drag on the bed. With the Z=0 there is no room under the nozzle for the first purges that follow in the gcode. (I see you are off the bed for your purges.) G28 G1 Z{layer_height_0} F600 ;Move the Z up G1 X236 Y180 F6000 ; Go to X240 at 100mm/s The print head is at X236 Y180 when this line comes up ; Cura has just reset the extruder G1 X236 Y-20 F1500.0 E30 ; Go to X243 Y-20 at 100mm/s, extrude 25mm So you are extruding filament down the right side of the printer bed and going to a location (Y-20) that my Ender 3 Pro can't get to. Once the print starts then things should print correctly. The location of the end of the filament in relation to the hole in the nozzle is a key number. When an extruder is done printing the filament must end up "retraction distance" behind the nozzle. Prime towers are pretty easy to use.
  23. Getting a dual extruder to switch correctly does require some experimenting. You seem to be able to read some gcode so you don't actually have to print things, just experiment with settings and read the code. The "Dual Extrusion" settings in Cura can handle most situations without resorting to Start and End gcodes for each extruder. You can simplify some of what you have there by setting the Accel and Jerk the same for both hot ends. Both nozzles are on the same platform/drive system so what is good for one should be good for the other. Load your models into Cura and set everything up the way you like. Use the "File } Save Project" command to create a 3mf project file. Post the 3mf file here and someone will take a look.
  24. "With the cura setting for line width at the first layer I already reached 150% and the flow for the first layer is also set at 150%." The line width increases the "Flow Rate" through the nozzle, but not the ratio of "Volume of Filament IN : Volume of Extrusion OUT. Increasing the Material setting "Initial Layer Flow" does change that. 150% is indicating to me that there is a problem. Calculating the volume of filament required to make an extrusion 100mm long is an easy thing to do. Cura knows your filament diameter so it knows the volume of 1mm of filament. It knows the Layer Height and Line Width so it knows the volume of a 1mm extrusion. A cube 10 x 10 x 10 will require 1000mm³. Having to increase the flow to 150% means you are telling Cura put 1500mm³ into that same cube. Something isn't right. You didn't happen to use one of those "single wall" or "double wall" calibration cubes to calculate your E-steps did you? Load a simple Caliibration Cube into Cura and set Cura up to slice with your regular settings. Use the "File | Save Project" command and post the 3mf file here. This is at .4 line width and 100% flow on my Ender. I level with a piece of parchment paper. E-steps are at 97 and when I ask for 100mm of filament that's exactly how much pushes through the extruder. The filament measures 1.72mm in diameter and that is what I've entered into Cura. There is some "push" in one corner. That's where the z seam happens to be. The extrusions are nicely welded together.
×
×
  • Create New...