Skelestruder For Prusa MMU2s And Reverse Bowden 3D Printer Model

Author: @
License: CC BY
File formats: stl
Download type: zip
Size:2.5MB

The file 'Skelestruder For Prusa MMU2s And Reverse Bowden 3D Printer Model' is (stl) file type, size is 2.5MB.

Summary

I moved parts specific for MMU2 and reverse Bowden support to here. See main source at Skelestruder. See also Hairlock for MMU2.

Pcover is for standard filament sensor. Needs one brass heat set nut.
PM6cover is same but has threads for PC4-m6 coupler.

PI-lid is for the indirect filament sensor. Needs one brass heat set nut.
PIM6-lid is same but has threads for PC4-M6 coupler.

Frame bracket is needed to help clear the wiring. I also tilted it up more which helps if you are using hanging spools. Recommend print PETG at 0.2 layer with 20% gyroid.


I updated parts so they are rotated correctly for printing. Fixed scaling on idler. added a bit more thickness to arm.

Here is a beta release of MMU2S IR sensor support. My first test of it printed a complete, unassisted, flawless multi-color print for the first time since I owned MMU2. So this looks promising.
I wanted to test more but some folks were itching to try and I am on vacation and cannot test more right now. So be aware this is not final release quality. I made this as a mostly bolt-on for testing purposes and is quite hacky at this stage. I plan to revise and integrate more later.

Why did I design it so? Back when Prusa announced it I decided I wanted it to require minimal changes and not remove other important functionality. For example, I still want quick access to gears by simple, tool-less open of idler door, which is hallmark of Skelestruder. This feature is even more valuable when MMU printing. I also wanted keep it compact but still amplify the mechanical swing to increase error tolerance and, hopefully, require no adjustments. So I went with dual pivot, but that requires bearings for reliability. However, I figured many have them already from indirect sensor solution. A plastic spring?! Yes, but here it’s flex is almost zero, it is merely assisting gravity, so I expect it to be reliable.

Printing:

Recommend PLA or PETG 0.15 layer
IR_arm requires supports. Make sure you clean off well after removing.
I recommend you print two each of pivot and arm in case you have install issue.

How to assemble (I don’t have access to my printer ATM so this is from memory and some photos I found on my phone)

see nice photos by @panayiotis_3d in comments

You need two 673 bearings, same as used in the indirect and hybrid sensor solutions I posted.
Press one into the pivot and screw the other into the idler side using an M3x10 screw.
Also need a heat-set M5 nut. Install into the lid.

First you need to install the pivot onto EcageB which requires removing the motor and print fan. Next loosen the two M3x10 screws holding EcageB to the carriage. Remove the M3x40 screw and remove the idler (catch and save the nylon washers!). slide whole Ecage up on carriage to allow access for pivot. Press pivot into the triangular hole in EcageB. Make sure it is pressed all the way in and not angled. Slide Ecage back down and tighten two M3x10 screws back into carriage. Re-install new idler (with bearing) using M3x40 and nylon washers as normal.

Remove your current sensor cartridge and set aside. Use M2 screw that came with IR sensor to screw it into the IR cartridge with the slot toward the rear. Slide cable connector onto IR sensor with spring-catch facing left (see Prusa install pictures). Insert cartridge into Ecage and add lid. Screw down using M3x12 or 14 in front (I forget). For rear use M3x12 and add cover first with tab up. Do no tighten fully so you can slide cover open. Pull IR cable up and snake through posts on lid to secure. Press arm into bearing on pivot and make sure it is fully seated and swings parallel to plane. Swing over top and insert end into cartridge making sure it slips easily into IR sensor slot. Swing cover closed making sure arm spring is underneath cover. You make need to press it down slightly.

Reinstall any removed parts of Skelestruder. Plug IR cable into Einsy following Prusa instructions. I strung it on outside of umbilical for quick testing. Change your firmware variant to MK3s and rebuild. Flash printer. Go to support menu / sensors and make sure IR is zero. Lift idler slightly and confirm it changes to 1. Run small test print.

Fine tuning arm for this beta, if needed: if you have to lift idler more than a fraction of mm to trigger IR, wrap one or two piece of scotch tape around arm where the idler roller contacts it. Conversely, if you see trigger while unloaded, shave a tiny sliver off the arm where roller hits (think thickness of tape). After you get it dialed in it should not need further adjustment.

Setting (WIP)

Because Skelestruder has a shorter filament path and distance to gears and sensor is different than stock, there are some settings to optimize for better performance.

shorten parking distance: 75

You will also want to make a simple change to firmware:

diff -Naur stock/Firmware/mmu.cpp skelestruder/Firmware/mmu.cpp--- stock/Firmware/mmu.cpp  2019-06-27 11:32:40.000000000 -0400+++ skelestruder/Firmware/mmu.cpp   2019-09-01 09:43:50.331743451 -0400@@ -1462,9 +1462,9 @@         mmu_command(MmuCmd::C0);         manage_response(true, true, MMU_LOAD_MOVE);     }-    current_position[E_AXIS] += 60;+    current_position[E_AXIS] += 50;     plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], MMU_LOAD_FEEDRATE, active_extruder);-    current_position[E_AXIS] -= 52;+    current_position[E_AXIS] -= 42;     plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], MMU_LOAD_FEEDRATE, active_extruder);     st_synchronize(); }

While you are in the firmware, I also recommend adding '*10' on line 631:

delay_keep_alive(MMU_LOAD_TIME_MS*10);

This delays when the gears start turning to catch the new loading color. I find it dumb to spin the gears for 20 seconds while it unloads and moves the selector.

SP_idler_BETA.stl 534.9KB
SP_IR_arm_BETA2.stl 190.9KB
SP_IR_cartridge_BETA2.stl 799.4KB
SP_IR_cover_BETA2.stl 68.3KB
SP_IR_idler_BETA2.stl 534.9KB
SP_IR_lid_BETA2.stl 376.4KB
SP_IR_pivot_BETA2.stl 116.4KB
SP_MMU2_frame_bracket.stl 243.3KB
SP_Pcover_r1b.stl 572.2KB
SP_PI-lid_r1.stl 492.8KB
SP_PIM6-lid_r1.stl 1.4MB
SP_PM6cover_r1b.stl 1.5MB