Filament runout sensor for Tevo Tarantula (and others)
thingiverse
Quick and dirty filament runout sensor. I'll be leveraging a Raspberry Pi 3 for this, but there are tutorials on how to wire a runout sensor to the MKS board. This is specifically designed for 1.75mm filaments only. For this project, you will need: - A Raspberry Pi running Octoprint - I am currently using Marlin 1.1.5; your mileage may vary if you are running something else... - Two M4x10 socket head cap screws - Two M4 T-nuts (like the ones that came with your printer) -OR- - Two M4 threaded inserts (I used McMaster-Carr P/N 94510A040) - A microswitch. I used an OMRON SS-5GL2T (https://www.amazon.com/ELECTRONIC-COMPONENTS-SS-5GL2T-MICROSWITCH-ROLLER/dp/B011N9VGV8) - Two pieces of 1.75mm filament cut to approximately 20mm - Two-conductor cable - Heatshrink - A female jumper or some other connector to hook up to the GPIO pins - (Optional) two t-nuts for direct mounting to the frame if desired - (Optional) some sort of connectors for quick disconnection of the cable The physical assembly should be straightforward. If you are not using press inserts, simply drop the T-nuts into the back of the rear clamshell and tighten up. It may be a good idea to do this before mounting to the printer to allow you to tighten the nut in and have it swage into the plastic. I've never used that method so I'm unsure. Solder one conductor of your cable to the relay COM/GND. Solder the other conductor to the NO terminal (you can also use the NC terminal, and just change it in Octoprint). Use heatshrink to protect your connections and offer some strain relief. Place the switch in the housing and secure it with the two pieces of filament. Depending on your printer's performance, you may need to drill it out a tad. After the assembly is complete, you will need to wire it to your RPi. I am using the RPi for remote on/off as well, so I opted to build an enclosure for the relay to live in. Also, I used a breadboard with a GPIO extension board for ease of wiring. This is totally optional and you can get away with wiring directly to the GPIO header on the RPi. Connect one conductor (doesn't matter which) to your switching pin (I used Pin 24 (BCM8/CE0) for signal) and the other to a ground pin (pin 20 or 25, for example). Congratulations, you are now wired. In Octoprint, download and install the "Filament Sensor Reloaded" plugin. After it is installed, change the pin to 24 (or whatever one you used), leave debounce at 250ms, leave switch type to Normally Open (unless you wired your switch NC!), select board mode, and deselect "Pause print when out of filament". In custom g-code, add the following: M600 X0 Y0 Z5 This will start the filament change process (M600) and send the print head to home. Follow the prompts on your LCD to complete the filament change. No more partial rolls!
With this file you will be able to print Filament runout sensor for Tevo Tarantula (and others) 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 runout sensor for Tevo Tarantula (and others).