I am trying to test the stepper motor and switch mechanism before installation. I think the board may be programmed wrong or is acting up. The first extruder does go to the proper one after 1 second. The quarter second holding does switch between them. When doing the five and a half second holding, it reverses itself on any of the extruders on the next switch hold. When doing the three and a half second holding, the motors just make a jamming sound and don't do anything (it's the one on the right where there are no tubes). I suspect something could be reversed or stuck. I have got it to feed correctly randomly twice the correct direction, only in the first extruder, I have been unable to repeat it,
top of page
bottom of page
Lead Generation for Realtors | Best Seller Leads for Real Estate – SmartZip | real estate leads for sale | Stop trying to find the best realtor leads for sale. SmartZip’s home seller leads are customizable by territory, property, and price point for brokers and agents who want to build their brand.
I could try that. I had started experimenting with doing the temp changes in part of this shaping , with random success.
Question... have you tried just using the unload method and seeing how the tips look? It's possible that you can simply duplicate it since it's the stock Prusa... they've done a good design and maybe you don't need any tip shaping at all.
The ptfe in the hot end is the stock one, it has not been removed or messed with at all.
Ok, two things. 1) The code to warm the nozzle back up can occur as soon as the filament is retracted out of the extruder. So, for example, after it's retracted from the extruder, but before it presses the button would be a good place for the M104... that'll give it a head start on heating it back up... then, after it loads, it can use the M109 to wait for it to finish heating up if necessary. 2) Between the green Y adapter and the extruder can be shortened if needed, like mine is... but it's not entirely necessary. The PTFE I'm talking about is between the drive gears and the hot end... inside the heatbreak. That's the one that will shape the tip.
So you are saying put both those commands back to back or just at some point in the gcode when it looks like it's pulling or pushing the filament? I haven't touched the original ptfe tube that is in the hot end at all. It seems like it sits way too long, but I haven't timed it. I'm assuming that's causing the jamming with the filament staying at a temp too long when it is finally pulled.
You can shortcut it a bit by using both M104 and M109. M104 doesn't wait for the temperature to be reached. So, if it reaches, say the target - 5 degrees, then switches to the M104 command for a little more... but in reality, it seems that the temp is somewhere in between those... You can go to anywhere in between. But that's definitely the right idea. Also, you can also use the M104 command to set the target temp back as soon as you've finished pulling it from the extruder. Then your last M109 might not do anything at all, but will still be there if the target temp hasn't quite been reached. When you say it's "sitting too long at a certain temp"... when is it sitting there and how for long? Lastly, I want to make sure you're using the 1.8mm PTFE inside the hot end, right? That's what will give you the best chance of success.
I got it the way I think it is supposed to be (lowers temp before doing the code and increases temp before feeding), but I think maybe the timing may have to be adjusted as well. It seems like it sits too long at the certain temperature and gets jammed. I've tried 210, 215 (becomes flat on both of these), 220 (too stringy and blocks). When I just print at straight 215, the cone is fine when it pulls out and no jams.
Using this code for the first part (putting previous gcode for context) {if previous_extruder>-1}
M109 R{(first_layer_temperature[previous_extruder]) - (10)}
Then using this to change it back
; load extruder #{next_extruder}
M117 Loading Tool T{next_extruder}
M109 R{first_layer_temperature[next_extruder]} ;Set back to normal temperature
In the tool change gcode, you can add the M109 R{temperature} command to set the proper tool change temperature. You can then return it back to the normal temperature once the change is completed, using the same commands, but using the proper temperature variable. (These variables will be different depending on the slicer you're using.) Here are some samples: Simplify3D: M109 R[extruder0_temperature] ;where the 0 is the tool # PrusaSlicer: M109 R{temperature[0]} ;where the 0 is the tool # Cura: M109 R{print_temperature} ;or R{print_temperature1} where the # is the tool # Note the variable names and the use of either {} or [] is slicer dependent. The R parameter is very important, don't use the S as it won't wait for the proper temperature to be reached when it is set lower than the current temperature... only R will wait for the proper temperature moving both up or down.
So finally had my test two filament print succeed. Reducing length of both the feeding ptfe tubes to the adapter and the tube from adapter to extruder. You had mentioned about changing the change temperature, how does one do that exactly? I printed at 215 successfully but it looks better at 225, but extreme stringing when it pulls at 225. So I think 215 would be ideal to set it to before pulling filament.
So, take a look at my set up... I have the tubes tied in a "heart" shape with two on each side. This allows an even balance which tends to keep it upright. Your tubes are a little long... they only need to be long enough for the extruder to reach the build plate with a smooth curve. When it is at the build plate, the tubes on mine are short enough to pull the Y adapter nearly straight up. Here's a video of it running: https://www.youtube.com/watch?v=LEJIslF33ew
Just incase it's the angle causing it, this is how I have it setup right now.
Can you show me a picture of the notch?
Just to be clear... Printing temperatures and changing temperatures can be different... And can easily fix those issues.
I might try 230, I usually have good success at 225, but it makes such a long string that it blocks the other filament when it retracts. It's kind of a notch in part of the filament, I think it gets caught just before it can go to the hot end on that notch.
When you say you're getting a notch around 195mm... what do you mean by that? (BTW... I print Jessie PLA at 230 on my Ender 3... prints much better for me.)
I have gotten pretty far with just two color changes as tests. On my third filament change, I have been getting a notch around 195 mm or so without fail. If I don't pull the filament out and cut and put it in before the next change, it wont pull it due to the friction. If I cut that piece off and reput it in the tube, it will complete. I have loosened a lot of the tension on the extruder gear, so not sure if that would be causing this, seems to be at about the same point each time. Not sure if the angle of the green switching mechanism and the tubes could be doing it too. It's a fairly glossy filament, using jessie pla at 215 C.
Thanks for your help, I have gotten further along. I'm struggling with jamming, but it seems like it may be a matter of temps impacting too long of strings when it retracts. It either drops pieces in the extrusion or still has bits out when another color comes out and gets stuck. I had to set the extruder offset to zero to remove blobs. For now I ran out of time to mess with it further. I don't know when I'll have time to try again. Seems I'm close though.
That's correct... but the holding position is always 3mm less (than pushing the button) on both the X and Y axis... when it wants to press the button, it always moves 3mm and engages the button... but then backs back off.
Any reason why it removes 3 from it? The prusa location has it as 212 when I dial to it and the gcode works when it is set to 212.
The button location is calculated based on the position you enter into the gcode generator. It always subtracts 3mm from it... so if you enter 212, it will put in 209. But if you put in 215, it'll put in 212.
Bill
Looking in the gcode, I see, makes since, will give it another shot. Might just be my end, but the button location appears to be hard coded to Y209 in the generator. I have just been modifying it manually myself.
For large moves, don't edit the tool change gcode directly, edit the parameter in the gcode generator, that way it will flow through the entire system. By only editing that line (especially down to 0) you're only editing the very last move, but not the entire sum of all the moves. (This parameter is really a fine tuning element, for that last mm of accuracy.) Course adjustment should always be done with the gcode generator parameter so that it both loads and unloads the correct distance.
I even set the E part to zero and still getting blobs, though a lot less (first extruder almost none, but I get blobs of the previous filament after it switches out and loads the new filament). This is the line I'm assuming I am supposed to use to set this: G0 E0 F2000 ; <<<<<----------- EDIT THIS DISTANCE TO FINE TUNE THE FILAMENT LOADING TO STOP BLOBBING OR UNDEREXTRUSION
Blobs at the start of each layer indicate that you're loading the filament too far... reduce the distance between the extruder drive gears and the hotend so it doesn't push it in so far.
I'm still working on this, got it mounted and looking like its doing the switching okay. I have had to reduce my tension on the extruder, was scarring the filament too much to be fed back and forth. I have now had a couple layer changes between two filaments, just doing a simple test for now. Main thing I'm noticing is the start of extruding has a blob with the first extruder filament in the middle and the other in a bigger blob circle. The second layer change just has another blob. I haven't seen a ton or almost no blob volume in subsequent filament changes. I am assuming the filament has to be up to the little black spot just past the coupler, otherwise the filament kind of pulls back out. Is this correct? Just trying to see if there is something I need to modify or change. Also to note, I was initially running into problems in PrusaSlicer 2.4 as well, which slowed down my progress a lot yesterday until I found your post with the python script. It does fix the issue you detailed.
I've added these images to the 3D Chameleon Switch Mount page on Thingiverse: https://www.thingiverse.com/thing:4663605
These should help clear it up.
That makes a whole lot more sense now that I think about it, especially why the trigger mechanism is in place as well. I'm hoping once I am done with setting this up that I can document it and do some lessons learned/tips.
Yes, the flag is on the back "X brace" of the Y axis, not the front one and the switch is about 4" from the front of the printer.
Assuming there is a lot of variables here, possibly how the bottom of the bed frame is, but looks like mine is activating at 182 with the mount flush with the edge of the printer. I did notice that the youtube video on limit switch mounting had a number more in the 200s. Is there something that I may have missed?
Here's a picture of it.
I was able to get it to work on a few of them with increased counting. I am assuming I'm just counting off. So going to just try to get it going since the gcode will be better than my counting abilities. Now I am trying to figure out the Prusa mounting setup, there is really no documentation on what the trigger is supposed to mount to on the board to make the limit switch work. It kind of looks like there is a spot for maybe a tie wrap, but kind of at a loss. Does anyone have a picture of what their Prusa MK3S+ look like under the printer to see how this goes?
Are you sure it's not just going back to the first extruder (the grinding noise indicate that it's trying to rehome.) It sounds like your 3.5 seconds is a littler short. Try for 4 seconds and then try for 6 seconds. You should see it rotate one way or the other depending on the time.