Filament Sensor for Octoprint (Monoprice Select Mini)
prusaprinters
I was jealous that other 3D printer users had their own filament sensor accessories, and I thought it was about time for a Monoprice Select Mini user to have make it happen! So I ordered a Makerbot 1.2 style endstop from China^^, completed a 10 project course on Fusion 360 on Udemy, and waited 5 weeks for the endstop to arrive.Now we have a working filament runout sensor which pauses your prints and waits for you to tell it to resume the print (ideally after you've installed a fresh roll of filament). ;)Please look for the Supplies section below to see what parts you need to make sure you have ready to go before beginning this project. Under Post Printing you can find a brief guide for how to put these supplies together, and in particular how to setup Octoprint to pause your prints when the endstop indicates the filament is not longer present.Print SettingsPrinter: Monoprice Select MiniResolution: .2625Infill: 20%Notes:FilamentSensor1.1.stl has both parts of this model nicely plated right next to each other in a way that I believe will help your mini print with less movement.If you need to replace just one of the two parts, print FilamentSensor1.1-lid-only.stl or FilamentSensor1.1-bottom-only.stl.Post-PrintingQuick Setup GuideWiring a Raspberry Pi, installing, and configuring Octoprint is outside the scope of this guide. However, these are the tasks you will need to complete.Install the Filament Sensor Reloaded.Connect the endstop to the Raspberry Pi. (Might I suggest this printable to assist with this?) On the Raspberry Pi 3 the pins are:Pin 1: 3.3vdcPin 6: GroundPin 7: GPIO4Configure Filament Sensor Reloaded's settings:Pin: 7Debounce Time: 250 msSwitch Type: Normally OpenCopy and paste the code from the Octoprint "GCODE Scripts" section below, into the "GCODE Scripts" section of Octoprint settings.Restart octoprint.^^^Assembly GuideAfter you have gathered your hardware, configured the software, and printed this case you are going to what to know where to put it. Well, I can help you out there.Step 1Remove these two screws, and set them somewhere safe. You will use them to hold the sensor case in place.Figure 1.Step 2Put the case in its place and secure it with the screws you removed in Step 1.Figure 2a.Figure 2b. This screw is designed to go in before the endstop board is installed.Step 3⚠ Note: This is going to be tight! ... and it was designed that way. I wanted to design an accessory that did not require any additional hardware to secure the board in place. Just be gentle when putting the switch arm in place and you will be alright.Start with the board into the case the angle shown in Figure 3a below. Then with your fingers gently pressing on the white plug and closing the switch arm carefully lower the board into place until it is flat on the bottom and the switch arm is inside of the filament slot opening.Figure 3a. Set the board at this angle to begin.Figure 3b. Using two hands here will make this much easier!Step 4Plug your jumper wires into the board.Figure 4. Use the cable that came with your endstop as a guide. For example, mine had red, black, and green wires (which are used for 3.3v, ground, and signal respectively).Step 5Test the endstop with the board plugged into your Octoprint board. If the LED is ON before you insert the filament, the metal switch arm is caught on the case and needs to be adjusted.⚠ Note: Even though these boards are based on an open source design, there are slight variances in size from each manufacturer. I have tried two different boards and they had a 0.1mm difference in dimension in the width and depth of the board.By trying a combination of board placement adjustment and careful bending of the metal switch arm I was able to get both endstop boards to work correctly. Keep at it until the LED stays out when filament is absent from the case.For proper functionality to occur the LED on the endstop should turn off when the filament is removed from the case. (You can test this easily by inserting then removing a piece of filament to make sure the adjustments you performed are working well.)Step 6Attach the handy snap-fit lid. Start with the back side of the case as shown in Figure 5 below, then click in the front side.Congratulations!If you have Octopi configured properly you should be able to insert some filament and get printing!Figure 6. After the filament passes out the other side of the sensor, you should see the right side of the case glow red. This indicates the filament has been sensed.Project StatusChange Log7/23/2017 12pm PSTActually uploaded v1.1 STL files. Thanks for the heads up Mookiefer!7/22/2017 9:15pm PST1.1 Release! Tolerances were relaxed a bit to better accommodate an endstop made by DAOKI. I now have this endstop working on my personal Select Mini.7/16/2017 3pm PST1.0 Release! Major changes since Prototype: 1.) A snap-fit lid has been added to keep the board in place, 2.)Source Files.zip includes Fusion 360 archive format and a STEP file. 3.) a visual assembly guide!7/12/3017 10:00am PSTPrototype 8: 1.) Removed seam where stabilizer model attaches to the case. 2.) Per the recommendation of Patrick Nixon I reduce the stabilizer arm width from 5.5mm to 4mm, and the screw surround from from ~11mm to 9mm. This should help fit around more extruder assemblies.7/11/2017 4:30pm PSTPrototype 7: Improved the filament channel and blocked all escape routes. ;) Also tightened up the overall model. The endstop board fits quite snugly and may not even need a lid to keep it in place.7/10/2017 12:20pm PSTFirst draft of instructional guide.7/10/2017 7:55am PSTPrototype 5B: Added stabilizing arm with a second screw to keep the sensor from rotating.FAQQuestion: Why did you choose this board when a plain switch would work?Answer: Technically, we could use a switch, but I chose this board for three reasons. 1.) it's widely available, 2.) It is easy to plug in with female to female jumpers, 3.) It has an LED to provide instant feedback.Question: I would like to create a remix. Will you share your source files?Answer: I included a Fusion 360 archive file, as well as a STEP file.SuppliesTo order (if you don't have these on hand)Makerbot 1.2 style endstop (open source design)^^^^Jumpers: Female to FemaleYou should already have these setup and workingMonoprice Select Mini 3D Printer.A device with Octoprint installed on it. Might I suggest a Raspberry Pi 3 with Octopi installed?Octoprint "GCODE Scripts"After print job is pausedM117 Print Paused{% if pause_position.x is not none %} ; relative XYZE G91 M83; retract filament, move Z slightly upwards G1 Z+5 E-5 F4500; absolute XYZE M82 G90; move to a safe rest position, adjust as necessary G1 X0 Y100 {% endif %} Before print job is resumedM117 Print Resumed{% if pause_position.x is not none %} ; relative extruder M83; prime nozzle G1 E-5 F4500 G1 E5 F4500 G1 E5 F4500; absolute E M82; absolute XYZ G90; reset E G92 E{{ pause_position.e }}; move back to pause position XYZ G1 X{{ pause_position.x }} Y{{ pause_position.y }} Z{{ pause_position.z }} F4500; reset to feed rate before pause if available {% if pause_position.f is not none %}G1 F{{ pause_position.f }}{% endif %} {% endif %} Footnotes =========^ I uploaded this early prototype per the request of Derek Were-Yeti Mitchell on the wonderfully supportive MP Select Mini Owners Facebook Group.^^ Or you can get and endstop much quicker from Amazon (for example: this one).^^^ Choose "Restart System" on the Power menu on the Octoprint web interface.^^^^ Make sure the one you order looks like the one in the photos. Do not order one with a roller as it won't fit. Category: 3D Printer Accessories
With this file you will be able to print Filament Sensor for Octoprint (Monoprice Select Mini) with your 3D printer. Click on the button and save the file on your computer to work, edit or customize your design. You can also find more 3D designs for printers on Filament Sensor for Octoprint (Monoprice Select Mini).