• Models
  • Contests
  • Slicer
  • Login
  • Start Here
    thingiverse-iconprintables-iconcults3d-iconmakerworld-iconmyminifactory-icon

    3D GO

    3D ModelsContestsCollectionsSaved ModelsOn a mobile device?

3D GO

Privacy Policy
Filament Motion Sensor Encoder v2 3D Printer File Image 1
Filament Motion Sensor Encoder v2 3D Printer File Image 2
Filament Motion Sensor Encoder v2 3D Printer File Image 3
Filament Motion Sensor Encoder v2 3D Printer File Image 4
Filament Motion Sensor Encoder v2 3D Printer File Image 5
Filament Motion Sensor Encoder v2 3D Printer File Image 6
Filament Motion Sensor Encoder v2 3D Printer File Image 7
Filament Motion Sensor Encoder v2 3D Printer File Image 8
Filament Motion Sensor Encoder v2 3D Printer File Image 9
Filament Motion Sensor Encoder v2 3D Printer File Image 10
Filament Motion Sensor Encoder v2 3D Printer File Thumbnail 1
Filament Motion Sensor Encoder v2 3D Printer File Thumbnail 2
Filament Motion Sensor Encoder v2 3D Printer File Thumbnail 3
Filament Motion Sensor Encoder v2 3D Printer File Thumbnail 4
Filament Motion Sensor Encoder v2 3D Printer File Thumbnail 5
Filament Motion Sensor Encoder v2 3D Printer File Thumbnail 6
Filament Motion Sensor Encoder v2 3D Printer File Thumbnail 7
Filament Motion Sensor Encoder v2 3D Printer File Thumbnail 8
Filament Motion Sensor Encoder v2 3D Printer File Thumbnail 9
Filament Motion Sensor Encoder v2 3D Printer File Thumbnail 10

Filament Motion Sensor Encoder v2

RedWhere2020 avatarRedWhere2020

July 9, 2023

thingiverse-icon
DescriptionCommentsTags

Description

UPDATE 26/10/2023:
I have revised the "Spring Case" to make loading filament much easier. Install filament from the face rather than threading. You can also add a drilled out brass heated insert for durability and then with a dremel cut a slot in the side to match the slot in the part.

UPDATE 13/07/2023:
Have been testing for a week now printing for several hours without issue and I can confirm its works well on 3.3v supply. I am no longer going to develop any other of my motion detection designs... this is it. It's compact enough for me, easily accessible loading filament and accurate. I adjusted the detection setting to 7mm and had a few false postive runout pauses, set to 8mm and I have had no more.

Filament Motion Sensor v2

Currently testing on my Voron 2 using Klipper.

For reliability and accuracy, I went with a rotary encoder to detect filament motion or lack thereof and runout.

Tried to keep it as small as possible as usual. With the mounting ring the encoder can be rotated to be at any angle to accept the filament direction.

The encoder moves on a very light touch and responds very accurately with the TPU Wheel. The TPU Wheel has a ‘V’ groove to keep the filament aligned and having the encoder wheel press the filament to the fixed idler bearing to make the encoder rotate.

This design does not require much spring tension on the filament for the encoder to move therefore does not contribute much resistance to the extruder when pulling the filament through or vice versa.


BOM

1x 4mm DIA pen spring cut in half (approx. 10mm each length)

2x M3x8-10mm FHCS screws (for mounting Encoder Block to the encoder)

4x M3x25mm SHCS bolts (Encoder Block screws)

4x M3x5x4mmØ heat-set inserts

1x M5x16mm BHCS bolt (608Z axel)

2x M5x8x1mm flat washers (608Z spacers)

1x M5x6x5mmØ heat-set insert

1x 608z Bearing (sealed)

1x 8mmOD x 5mm ID x 5mm Aluminium spacer (for 608z axel)

1x Mini rotary photoelectric encoder 200PPR - 25mmOD with 25mm long 6mmOD shaft

https://www.aliexpress.com/item/1005004995222625.html?spm=a2g0o.productlist.main.1.4f2774b0d4SjqJ&algo_pvid=5e5a8ac5-8c1e-4ae3-842d-981f027f7104&algo_exp_id=5e5a8ac5-8c1e-4ae3-842d-981f027f7104-0&pdp_npi=3%40dis%21NZD%212.98%212.2%21%21%211.80%21%21%4021227a0f16888549714203086d077b%2112000031283622714%21sea%21NZ%21842589877&curPageLogUid=43KkfPQeW9gg

https://www.aliexpress.com/item/1005005030680929.html?spm=a2g0o.order_list.order_list_main.86.3d4e1802EotTJ1


Printing

Main parts printed in PLA+ or ABS+ or whatever... 4 walls, 4 surfaces, 30% infill, layer height of 0.2mm.

Wheel printed in TPU, 3 walls, 3 surfaces, 25% infill, layer height of 0.2mm.

No supports required.


Assembly

Install the heated inserts into the parts. Make sure they are inserted plumb and square, any deviation will result in binding screws. M3’s inserts are installed into the Encoder Block. M5 inserts are installed into the Spring Case face for the 608Z bearing.
Carefully without drilling right through using a 4mmDIA drill bit, clear out the Bowden tube holes.
Install the Encoder Block into the Spring Case, making sure there is no binding. Sand if required for a free glide. Add some grease sparingly onto the back face and sides of the Encoder Block if you want.
Screw in all the M3 screws just until the stop and test for a free glide. Again make sure there is no binding of the screws. If any binding occurs, drill out screw holes on the Spring Case. Add a sparing amount of grease to lube the screws in the Spring Case.
Remove the bottom screws to insert the pen springs to push up the Encoder Block and then insert the M3 screws again until just tight.  Installing the springs is fiddly and patients is required to get them installed. I did it so you should be able to as well.
Mount the 608Z bearing onto the Spring Case. Installed as washer, bearing, washer with the axel spacer. Screw in the M5 BHCS just until tight. There is no need to over tighten the screws.
Mount the encoder to the Encoder block
Press on the TPU Wheel onto the encoder axel and you’re done.

Encoder Wiring

Check the encoder wiring!!!

VCC 5v – Red (although I'm only supplying 3.3v)
GND – Black
A (Signal) – Green
B (Signal) – White

Currently this is how I have mine wired up on a BTT Octopus v1.0 MCU board.

VCC, GND & B (Signal). I installed a 3Pin JST connector and plugged it into a free endstop pin e.g. DIAG7 (PG15). Using a keyed JST connector make sure you insert the wire into the correct locations for the VCC, GND and B (Signal) on the MCU board. Check and then double check to be sure.
Edit ‘filament_motion.cfg’ to suit the selected pin on the MCU.
Test by extruding filament and adjust the detection length. I have mine set at 9mm the and you are done.

At the time of uploading this information I am using the 3.3v supplied by DIAG7. I am still testing and will confirm 3.3v is satisfactory for the encoder.

Klipper Macro

Please refer to Klipper documentation for explanation of filament_sensor settings -  https://www.klipper3d.org/Config_Reference.html#filament-sensors

Upload the ‘filament_motion.cfg’ file included into your Klipper configuration.
Add the [include filament_motion.cfg] to your ‘printer.cfg’ file.
Restart Klipper.

Please note this macro is not my work and I cannot recall where I got it from, but it works great. Thanks to the creator.


Works for me.

Please consider supporting my designs when downloading.
PayPal.Me/RedWhere2020

License:

Creative Commons - Attribution - Non-Commercial

Related Models

#3DBenchy - The jolly 3D printing torture-test by CreativeTools.se preview image

#3DBenchy - The jolly 3D printing torture-test by CreativeTools.se

CreativeTools profile image

CreativeTools

90,836

Bambu Lab P1 / X1 / X1C / X1CC Filament Spool Switcher & Winder if you use AMS preview image

Bambu Lab P1 / X1 / X1C / X1CC Filament Spool Switcher & Winder if you use AMS

Miklos Kiszely profile image

Miklos Kiszely

18,648

Filament spool storage box + silica & filament tag preview image

Filament spool storage box + silica & filament tag

Kahany profile image

Kahany

2,009

Modular Mounting System preview image

Modular Mounting System

HeyVye profile image

HeyVye

69,097

Filament Clip | Grandma's Favorite Filament Clip preview image

Filament Clip | Grandma's Favorite Filament Clip

Extrutim profile image

Extrutim

32,336

Filament swatch preview image

Filament swatch

Mr.Brom profile image

Mr.Brom

922

1.75mm Filament Clip preview image

1.75mm Filament Clip

walter profile image

walter

64,833

Pastamatic - Filament Spool Winder for Bambu Lab X1C/P1P AMS (level winder with self reversing leadscrew) preview image

Pastamatic - Filament Spool Winder for Bambu Lab X1C/P1P AMS (level winder with self reversing leadscrew)

GekoPrime profile image

GekoPrime

10,874