Broken Filament Detector
see facebook post
Issue
The filament detector connection broke off
Workaround
As a first workaround a cable binder is in place:
Original part
Geeetech Filament Detector Module
Improvement options
Improved workaround
While waiting for the shipment I designed a part to be attached to the broken Detector.
Instead of glue i simply used a cable binder wrapped around the whole detector:
Geeetech A10 Filament detector fix
The preview below currently only works for older JSCad code using the CSG syntax. See OpenJsCad Issue 448 <jscad>// title : Geeetech A10 Filament detector fix // author : Wolfgang Fahl // license : Apache License // revision : 0.0.1 // tags : Geeetech, A10 // file : FilamentDetectorFix/main.jscad
function fix() {
l=21.4; w=7.85; h=3.5; rout=5; rin=2.5;
hw=3; hl=6; hh=2.5;
var parts=[]; var holes=[]; parts.push(cube({size:[w,l,h],center:true}).translate([0,0,h/2])); parts.push(cylinder({r: rout,h:h,center:true}).translate([0,l/2,h/2])); holes.push(cylinder({r: rin,h:h,center:true}).translate([0,l/2,h/2])); for (fx=-1;fx<=1;fx+=2) { holes.push(cube({size:[hw,hl,hh],center:true}).translate([fx*(hw+3)/2,(l-hl-rout)/2,(h+hh)/2])); } return difference(union(parts),union(holes));
}
function main() {
return fix();
}</jscad>
Source code
Just cut&paste the source code below to https://www.openjscad.org/
// title : Geeetech A10 Filament detector fix
// author : Wolfgang Fahl
// license : Apache License
// revision : 0.0.1
// tags : Geeetech, A10
// file : FilamentDetectorFix/main.jscad
function fix() {
l=21.4;
w=7.85;
h=3.5;
rout=5;
rin=2.5;
hw=3;
hl=6;
hh=2.5;
var parts=[];
var holes=[];
parts.push(cube({size:[w,l,h],center:true}).translate([0,0,h/2]));
parts.push(cylinder({r: rout,h:h,center:true}).translate([0,l/2,h/2]));
holes.push(cylinder({r: rin,h:h,center:true}).translate([0,l/2,h/2]));
for (fx=-1;fx<=1;fx+=2) {
holes.push(cube({size:[hw,hl,hh],center:true}).translate([fx*(hw+3)/2,(l-hl-rout)/2,(h+hh)/2]));
}
return difference(union(parts),union(holes));
}
function main() {
return fix();
}