This article will show you how to wire and setup the software for a Filament Out Sensor on your M3-SE Rev0
WARNING: This article is for use with the beta version of the MakerGear filament out sensor. Both the sensor and this software are considered experimental. These instructions are meant for advanced users only, and if not executed correctly can render the printer inoperable.
These instructions are only for the M3-SE Rev 0. We currently do not have instructions / firmware for any other MakerGear models.
- Time - 30-60 minutes
- Hardware - MakerGear M3-SE Rev 0.
- Hardware - Switch based Filament Out Sensor
- Software - OctoPrint for MakerGear 1.3.6 or later.
- Software - PuTTY or other SSH client
- An internet connection for your M3
What You'll Learn:
- How to wire your filament out sensor
- How to update your printer's software to work with the Filament Out Sensor.
Before You Begin:
- Follow all "Getting Started" instructions listed in your User Guide.
- Follow all configuration, connection, and login instructions to access your M3's control interface.
- Enable SSH Remote Access on your printer
Step 1 - Wiring
Connect the Filament Out Sensor cable to the ‘S’ and the ‘-’ pins on the Z-Min port of the RAMBo. The port has 3 pins, but the connections are only on the back 2 pins.
Step 2 - Enable SSH
If you have not already, you will need to run an SSH command to update your printer. You can find instructions for turning SSH on and credentials here.
Mac/Linux can use the Terminal Application to connect to SSH. Windows users can download and install PUTTY.
If you need more information on using SSH, please contact us.
Step 3 - Update Printer
Once connected to the printer via SSH, run the following single line. NOTE: The printer will need an internet connection to download the update script and firmware.
wget http://setup.makergear.com/misc/fo-FirmwarePatch.sh -O fo-FirmwarePatch.sh ; chmod 755 fo-FirmwarePatch.sh; ./fo-FirmwarePatch.sh
See the end of this document for technical details on this command and script.
Step 4 - Testing the Sensor
- Load filament into the sensor
- In Octoprint open the ‘Terminal’ Tab
- Check the ‘Suppress temperature messages’ box
- Run the following commands
- Remove filament from the sensor.
- In the terminal you should see
Recv: echo:enqueueing "M118 //action:pause" Recv: //action:pause Pausing on request of the printer...
Step 5 - Use
- Before starting make sure filament is loaded through the sensor
- Start a print normally
- When filament runs out, a pause command will be sent to the printer. This will initiate a pause, park and retract
- Load new filament in through the sensor
- Use the ‘Control’ tab in Octoprint to load the new filament into the hotend
- Click ‘Resume’ to start the print again.
Filament Out Event
This type of sensor will only detect if the filament is out, not if it has stopped moving. This means that if the filament gets tangled, hooked, jammed, or otherwise stops moving, the printer will not detect a problem and it will continue to print.
This software is compatible with a momentary switch set to normally closed - that is when there is no filament present and the switch is unactivated, the circuit is closed. When filament is present and the switch is activated, the circuit is open.
Standard MakerGear slicing profiles use absolute extrusion (M82). By default this setup will set the printer back to absolute extrusion after resuming. If you are using relative extrusion (M83) see below.
Pause Behavior Adjustments
You can edit the Octoprint helper Gcodes to change your pause and restart behavior.
Octoprint -> Settings ->Gcode Scripts
Edit ‘After print job is paused’ to change the park position and the filament retractions
Edit ‘Before print job is resumed’’ to change extra restart. You can also edit the final ‘M82’ into an ‘M83’ if you are using relative extrusion.
The install line has 3 commands in it
- Download an update script
- Make it so the script can be executed
- Execute the script.
The update script will
- Backup the original firmware
- Download the firmware with the filament-out updates
- Install the new firmware
- Backup Octoprint GCODE scripts
- Update Octoprint GCODE scripts to park, unpark, extrude, retract etc. during a pause.
Undoing the Script
If you need to undo the software change, you can run the following script.You should only run this script if you have previously run the firmware patch script in the instructions above.
wget http://setup.makergear.com/misc/fo-FirmwareUnpatch.sh -O fo-FirmwareUnpatch.sh ; chmod 755 fo-FirmwareUnpatch.sh; ./fo-FirmwareUnpatch.sh