After fixing that old plate, I just had to do this:

Which pretty much fills up the build platform:

And fits perfectly:

It’s printed with 100% infill to produce a solid plastic plate.
In retrospect, I think it’d work better if I put the notch on the bottom side with a bit of support, so that the glass-smooth surface faced the Zire. Maybe next time?
The OpenSCAD source code:
// Protector plate for Zire 71 PDA // Ed Nisley KE4ZNU - Jan 2012 //------- //- Extrusion parameters must match reality! // Print with +0 shells, 3 solid layers, 0.2 infill ThreadThick = 0.25; ThreadWidth = 2.0 * ThreadThick; Protrusion = 0.1; // make holes end cleanly function IntegerMultiple(Size,Unit) = Unit * ceil(Size / Unit); function IntegerMultipleMin(Size,Unit) = Unit * floor(Size / Unit); //------- // Dimensions $fn=8*4; Length = 110; Width = 73; Thickness = IntegerMultiple(2.0,ThreadThick); CornerRadius = 5.0; NotchLength = 20; PocketWidth = 22; PocketLength = 12; PocketRadius = 3.0; PocketOffsetX = -1; PocketOffsetY = 10; SlotLength = 20; SlotWidth = IntegerMultiple(8.0,ThreadWidth); SlotDepth = IntegerMultiple(0.75,ThreadThick); //------- module ShowPegGrid(Space = 10.0,Size = 1.0) { Range = floor(50 / Space); for (x=[-Range:Range]) for (y=[-Range:Range]) translate([x*Space,y*Space,Size/2]) %cube(Size,center=true); } //------- // Outer section of plate // with nice rounded edges module PlateHalf() { translate([0,0,Thickness/2]) difference() { minkowski(convexity=3) { cube([(Width - SlotWidth)/2 - 2*CornerRadius,(Length - 2*CornerRadius),(Thickness - 2*Protrusion)],center=true); cylinder(r=CornerRadius,h=Protrusion); } translate([PocketOffsetX,PocketOffsetY - Length/2,0]) minkowski() { cube([PocketWidth - 2*PocketRadius,PocketLength - 2*PocketRadius,Thickness],center=true); cylinder(r=PocketRadius,h=Protrusion); } } } //------- ShowPegGrid(); translate([(Width - SlotWidth)/4 + SlotWidth/2,0,0]) PlateHalf(); translate([-(Width - SlotWidth)/4 - SlotWidth/2,0,0]) mirror([1,0,0]) PlateHalf(); difference() { translate([0,0,(Thickness - SlotDepth)/2]) cube([SlotWidth + 2*Protrusion,Length - 2*SlotLength + SlotWidth,(Thickness - SlotDepth)],center=true); for (Index=[-1,1]) translate([0,(Index*(Length/2 - SlotLength + SlotWidth/2)),-Protrusion]) cylinder(r=SlotWidth/2,h=Thickness + 2*Protrusion); }
2 thoughts on “Zire 71 Printed Button Shield”
Comments are closed.