Re: Improvements to the MMU 2.0 controller firmware
The feed is really fast. Making new sounds, not objectionable but noticable. Much faster.
I'll have to put my blade back in I guess! I'm not sure I've ever had that issue - if it doesn't make that feed, it's typically a misalignment.
===========================
In general, since I got off the "mainline" firmware, WOW. Jams are a curiosity now, no more resetting 5 times because it got confused during a load or lost the drum. Too early to say if it is reliable, but it is definitely MORE reliable.
I haven't see a post on Prusa's GitHub in the better part of a week. I'm not sure how they make their decisions about which pain points to address, but at that pace I guess it doesn't really matter what they are working on.
I maintain an informal list of San Diego, CA 3D printing enthusiasts. PM me for details. If you include a contact email and I can add you to the informal mailing list.
Re: Improvements to the MMU 2.0 controller firmware
You guys are amazing! I was about to cancel my order but reading you all's hard work, I kept it instead. I wish I could contribute in some way, but since I can't...the best I can do is tell you all how appreciative myself and the community are!
Re: Improvements to the MMU 2.0 controller firmware
Not to bash prusa but the mm1and mm2 was released very prematurely. Either their coders are not very good or the effort put into it was very poor. You guys are a great direction, i have been involved in many projects involving coding but this is just plain blah. Any way we can help here get this mm2 printing the way its supposed to i am up to it. let me know how we can help.
Re: Improvements to the MMU 2.0 controller firmware
What's going on these days?
Lots of GitHub stuff is closed, not sure where to post issues.
I still have cases of it getting confused, though rare. I'm not sure where/how/what to document, what's the right development place?
Overall it is night and day, much faster, much more reliable once it gets going. I haven't had a print just hang in the middle since I put the software on - though oftentimes getting through the start up of the print goes nutty.
I maintain an informal list of San Diego, CA 3D printing enthusiasts. PM me for details. If you include a contact email and I can add you to the informal mailing list.
Re: Improvements to the MMU 2.0 controller firmware
Still a lot of work to do with error handling, I haven't had a successful long print as yet on my latest code but due to a different no-handled issue each time.
Last night I had it working great until a colour ran out when loading which has never been handled, slaps face. I now have my code checking that MK3 laser sensor sees filament before continuing so the print didn't continue and could have been manually loaded and keep going but I opted for bed and handling this error state with code tomorrow.
If anyone wants to try this code I have both MK3-FW and MMU2-FW at the following git branches
https://github.com/TheZeroBeast/MM-control-01/tree/MK3-FSensorBuild
https://github.com/TheZeroBeast/Prusa-Firmware/tree/MMU-MK3-FSensorBuild
I am also starting a rework of the USART Serial protocol on the MMU to be Interrupt driven so the MK3-Fsensor can do what chuck is doing with his second sensor. So feed doesn't care about Bowden length it just pushes correct steps from MK3-Fsensor into extruder.
this is also on a branch on my MMU GitHub page.
Re: Improvements to the MMU 2.0 controller firmware
I love what you are doing Rob! I’ve been running a build from your current MMU master branch for the past couple of days. It makes me smile every time it loads, unloads, and changes filament channels.
I had a very strange and expensive failure today. I don’t know if the expensive part is the fault of the MMU side or the MK3 side. I was printing a model with 4 colors plus soluble supports. About 35% of the way through, the printer began printing the entire model in soluble supports. It would finish a layer, do ramming/cooling move, then the extruder would unload and then immediately re-load the same filament, purge, and print the entire next layer. When I found it, it had printed a good amount of BVOH instead of PLA. The MMU was flashing red on all LED’s it appeared. I’m assuming it reset mid print?
Also, I’ve noticed that when calibrating Bowden lengths, hitting the left and right MMU buttons don’t actually move the filament up or down. But if you do a few presses for up or down and retract and re-push the filament through, the length change was indeed updated.
I am anxiously looking forward to your extruder filament sensor integration! I am likely going to install one of the filament sensor mods that don’t require a change in firmware in preparation.
If you need someone to do any testing, I have two MK3 MMU’s currently. Hit me up here or via the prusa community Facebook group.
-Luke
Re: Improvements to the MMU 2.0 controller firmware
Another thumbs up for Rob. My MMU2 should be arriving Friday. With any luck I'll be printing this weekend. I'm a coder with some experience with Marlin so if there's anything I can help with the latest efforts in enabling the optical filament sensor, please let me know.
Re: Improvements to the MMU 2.0 controller firmware
Hey Guys,
Further progress on my MMU2 situation.
I have gotten code working for both MMU2 and MK3(should also work on MK2.5, not tested yet)
Link to MK3 FW is on MMU2 Readme.
Features now active:-
- Selector rehome(left) every move to first filament position
- Motion rewrite with stallguard active where possible
- Selector move prevention if filament detected
- feed to MK3 filament sensor instead of any Bowden lengths
https://github.com/TheZeroBeast/MM-control-01
Hardware changes I've implemented are as follows:-
- Drilled to 2.5mm on all 5 small ~12mm PTFE sections between IDLER and SELECTOR
- Drilled to 2.5mm on all 5 ends of PTFE feeding into MMU2 through the clamp
- Drilled to 2.5mm the top FESTO connector
- Drilled to 3mm the bottom FESTO connector
- Installed NYLON 4mm air hose between MMU2 and Extruder. ID = 2.7mm
I have been having a horrid time with slightly larger tips which this is helping.
Further to come later this week and a video too, hopefully with some successful prints.
TODO:-
- Test runout recovery
- Implement comms for not_ok() state
- Implement joint MMU2-MK3 recover with attempted unload if filament present on MMU2 boot
- W.I.P. Interrupt rework on comms on MMU2 side to tidy up code and execution
- IDLER homing accuracy improvement as rehome from crash doesn't always find home, annoying to be sure, could be over tightened idler spring/bolts
- Rehome after 20 toolChanges
I'm sorry to hear your print failed luketurner, we have all experienced hard filament wastage times with the MMU2, I have burnt through at least 2kg in failed prints. I'll be glad to have this working so I can print and have some trust back in it.
Feel free to test and if you like offer suggestions for improvement.
Re: Improvements to the MMU 2.0 controller firmware
Rob - Thanks for the update!
I’m wondering if doing the following filament sensor reliability mod will negatively impact things with your implementation? (Do you have a fixed length from the sensor to the gears in place, or can you calibrate from the sensor to the gears). I think this moves the sensor up a bit. I have the bearings coming tomorrow to do this one.
Re: Improvements to the MMU 2.0 controller firmware
Hey Luke,
As you say it would only be the length to gears that may need adjusting and no there isn't an adjustment feature implemented, might be handy.
At present that one variable can be modified before build and upload.
Re: Improvements to the MMU 2.0 controller firmware
Rob - What variable would I need to change for length between extruder filament sensor and the bondtech?
I will try and do a diff on the code between yours and prusa’s to help figure it out if I don’t hear back. But I’m sure you know off the top of your head =)
Hey Luke,
As you say it would only be the length to gears that may need adjusting and no there isn't an adjustment feature implemented, might be handy.
At present that one variable can be modified before build and upload.
Re: Improvements to the MMU 2.0 controller firmware
Rob - Thanks for the update!
I’m wondering if doing the following filament sensor reliability mod will negatively impact things with your implementation? (Do you have a fixed length from the sensor to the gears in place, or can you calibrate from the sensor to the gears). I think this moves the sensor up a bit. I have the bearings coming tomorrow to do this one.
https://www.thingiverse.com/thing:3129921
Wow, this guy blatantly ripped off my idea and gave zero accreditation.
Re: Improvements to the MMU 2.0 controller firmware
Hey Guys,
Further progress on my MMU2 situation.
I have gotten code working for both MMU2 and MK3(should also work on MK2.5, not tested yet)
Link to MK3 FW is on MMU2 Readme.
Features now active:-
- Selector rehome(left) every move to first filament position
- Motion rewrite with stallguard active where possible
- Selector move prevention if filament detected
- feed to MK3 filament sensor instead of any Bowden lengths
https://github.com/TheZeroBeast/MM-control-01
Hardware changes I've implemented are as follows:-
- Drilled to 2.5mm on all 5 small ~12mm PTFE sections between IDLER and SELECTOR
- Drilled to 2.5mm on all 5 ends of PTFE feeding into MMU2 through the clamp
- Drilled to 2.5mm the top FESTO connector
- Drilled to 3mm the bottom FESTO connector
- Installed NYLON 4mm air hose between MMU2 and Extruder. ID = 2.7mm
I have been having a horrid time with slightly larger tips which this is helping.
Further to come later this week and a video too, hopefully with some successful prints.
TODO:-
- Test runout recovery
- Implement comms for not_ok() state
- Implement joint MMU2-MK3 recover with attempted unload if filament present on MMU2 boot
- W.I.P. Interrupt rework on comms on MMU2 side to tidy up code and execution
- IDLER homing accuracy improvement as rehome from crash doesn't always find home, annoying to be sure, could be over tightened idler spring/bolts
- Rehome after 20 toolChanges
I'm sorry to hear your print failed luketurner, we have all experienced hard filament wastage times with the MMU2, I have burnt through at least 2kg in failed prints. I'll be glad to have this working so I can print and have some trust back in it.
Feel free to test and if you like offer suggestions for improvement.
great work. Are you looking at getting the blade to work? Just to minimize chance of jam going into bowden.
Re: Improvements to the MMU 2.0 controller firmware
I need to remount my blade - I prevent a lot of jams by taking it out, but since you use it I could easily win from returning it.
Question: How do we know what code to test? There's always new versions, things opening and closing all the time. Is it "just clone Master, that's supposed to always be good"?
I've had some weirdness the last couple days - not helped by the nut rounding out the hole so I couldn't remove the PTFE tube clamp from the MMU - had to cut off off and now reprint the holder. 🙁 I ran AutoDeplete and it was effectively Manual Deplete. 😛
I maintain an informal list of San Diego, CA 3D printing enthusiasts. PM me for details. If you include a contact email and I can add you to the informal mailing list.
Re: Improvements to the MMU 2.0 controller firmware
I hadn’t realized how similar your mod was to the one I linked. On yours I saw that the firmware needed a tweak, and the other didn’t mention it so I decided to go with that one.
But since both work the same way, I’m assuming the firmware edit would need to be done either way. I trust your designs very much, I’ll start printing that out tonight. Once I figure out exactly what to edit for the sensor to gear length and test, I will post an update and my numbers.
Rob - Thanks for the update!
I’m wondering if doing the following filament sensor reliability mod will negatively impact things with your implementation? (Do you have a fixed length from the sensor to the gears in place, or can you calibrate from the sensor to the gears). I think this moves the sensor up a bit. I have the bearings coming tomorrow to do this one.
https://www.thingiverse.com/thing:3129921
Wow, this guy blatantly ripped off my idea and gave zero accreditation.
Re: Improvements to the MMU 2.0 controller firmware
Hey abraham.m,
I would hold off on the blade for a bit, I had the cut function working a treat 99% of the time but as someone touched on my FB page post the square edges would catch going into extruder.
I've opted for having a 2.7mmID Bowden tube.
I need more dev time to get a good stable build but it's not far off and I hope to have a break and watch some successful prints eat filament instead of go in the bin.
Re: Improvements to the MMU 2.0 controller firmware
Hi Rob and Karl,
thank you and everybody else for all your effort to improve the firmware. I just tried your MMU firmware ( https://github.com/TheZeroBeast/MM-control-01/tree/master ). Unfortunately after switching to the version which includes Karls improvements the homing of my MMU on power-on does not seem to work any more. I am not sure if there is an issue with my hardware or if it is something else.
Before merge on commit d11125cef4ed17834f468932d5411ae8932b5275
After the merge on commit 30140cba696f8e1dd73bec6ca4b95d87e92e44d1
Maybe there is too much friction on the selector? It sounds like the motor tries to move way too fast and then skips all the steps?
Edit: I just reduced the speed in homeSelectorSmooth from 8000 to 3000. Now homing seems to work. I wonder why 8000 is working for you, but not for me.
Do you have any ideas what is going on? Thanks!
Re: Improvements to the MMU 2.0 controller firmware
I just loaded up the firmware and mmu controller as well and I'm running into a similar issue on selecting filament.
Looks like the selector tries to home and then gets caught in a homing loop.
Re: Improvements to the MMU 2.0 controller firmware
Hi Joshua,J9,
this is because after home it tries to go to it's designated position but if it stalls it will try again. Protection for an incorrect home. If you loosen your spring tension bolts but to just under the casing this should success in homing and proceed, it can be done while in the loop.
Everyone, I'm trying to get a stable MMU-FW on my master branch at present which talks with my MK3 FW, MMU-MK3-FSensorBuild branch.
I will advise once stable so people are able to test.
I'm doing a test print that is 3 changes in without fault so fingers crossed I didn't stuff up a loop or something.
Re: Improvements to the MMU 2.0 controller firmware
Rob - What variable would I need to change for length between extruder filament sensor and the bondtech?
I will try and do a diff on the code between yours and prusa’s to help figure it out if I don’t hear back. But I’m sure you know off the top of your head =)
Hey Luke,
As you say it would only be the length to gears that may need adjusting and no there isn't an adjustment feature implemented, might be handy.
At present that one variable can be modified before build and upload.
Hey mate,
forgot to let you know about that variable, STEPS_MK3FSensor_To_Bondtech on line 32 of motion.cpp previously just a number within the load_filament_withSensor() method.