-
FT82-43 Slit Toroid: Armor
Given the fragility of ferrite toroids in general and slit toroids in particular, a touch of up-armoring seems sensible:

FT82-43 toroid – mounted The solid model includes a toroid shell with roughly the right curves:

Toroid Mount – Show layout That puts a nice rounded shape on the bottom of the armor, not that that makes much difference:

Toroid Mount – Build layout The central hole passes a 4-40 brass, nylon, or stainless steel screw. Most of the magnetic field stays within the ferrite and, heck, this isn’t a crazy-sensitive analog application, so even an ordinary steel screw shouldn’t cause any particular problems.
The rectangular (not pie-wedge) slit barely passes the Hall effect sensor.
I’ll pour some clear epoxy over the toroid, with tape masking the ferrite core and sealing the ends, to immobilize the windings. That sounds like a good idea after calibration and suchlike.
The OpenSCAD source code, which should be sufficiently parametric that I can crank ’em out for all the other toroids large enough to accept a screw:
// Toroid coil mounting bracket // Ed Nisley - KE4ZNU - August 2014 Layout = "Mount"; // Coil Mount Build Show //- Extrusion parameters must match reality! // Print with 4 shells and 3 solid layers ThreadThick = 0.20; ThreadWidth = 0.40; HoleWindage = 0.2; // extra clearance Protrusion = 0.1; // make holes end cleanly AlignPinOD = 1.70; // assembly alignment pins: filament dia function IntegerMultiple(Size,Unit) = Unit * ceil(Size / Unit); //---------------------- // Dimensions ID = 0; // subscripts for cylindrical objects OD = 1; LEN = 2; Coil = [10.25,23.50,8.3]; // wound toroid core SensorThick = 2.0; BaseThick = IntegerMultiple(1.0,ThreadThick); // baseplate under coil WallThick = IntegerMultiple(1.0,ThreadWidth); // walls beside coil ScrewHoleDia = 4.0; // allow alignment slop around 3 mm / #4 screws //---------------------- // Useful routines module PolyCyl(Dia,Height,ForceSides=0) { // based on nophead's polyholes Sides = (ForceSides != 0) ? ForceSides : (ceil(Dia) + 2); FixDia = Dia / cos(180/Sides); cylinder(r=(FixDia + HoleWindage)/2, h=Height, $fn=Sides); } module ShowPegGrid(Space = 10.0,Size = 1.0) { RangeX = floor(100 / Space); RangeY = floor(125 / Space); for (x=[-RangeX:RangeX]) for (y=[-RangeY:RangeY]) translate([x*Space,y*Space,Size/2]) %cube(Size,center=true); } //---------------------- // Basic coil shape module CoilShape() { CornerRadius = min((Coil[LEN] / 2),((Coil[OD] - Coil[ID]) / 2)) / 3; MidRadius = (Coil[ID] + Coil[OD]) / 4; HalfX = (Coil[OD] - Coil[ID]) / 4 - CornerRadius; HalfY = (Coil[LEN] / 2) - CornerRadius; echo(CornerRadius,MidRadius,HalfX,HalfY); color("Goldenrod") render(convexity = 2) rotate(180/20) rotate_extrude(convexity=3,$fn=20) translate([MidRadius,0]) hull() for (i=[-1,1],j=[-1,1]) translate([i*HalfX,j*HalfY]) circle(r=CornerRadius,$fn=24); } //---------------------- // Mount module Mount() { difference() { rotate(180/20) cylinder(h=(BaseThick + Coil[LEN]),d=(Coil[OD] + 2*WallThick),$fn=20); translate([0,0,-Coil[LEN]]) // make screw hole rotate(180/6) PolyCyl(ScrewHoleDia,3*Coil[LEN],$fn=6); translate([0,0,BaseThick + Coil[LEN]/2]) // set bottom curve CoilShape(); translate([0,0,BaseThick + Coil[LEN]]) // clear out top CoilShape(); translate([(Coil[ID]/2 + Coil[OD]/2),0,0]) cube([Coil[OD],SensorThick,3*Coil[LEN]],center=true); } } ShowPegGrid(); if (Layout == "Coil") { CoilShape(); } if (Layout == "Mount") Mount(); if (Layout == "Show") { Mount(); translate([0,0,(BaseThick + Coil[LEN]/2)]) CoilShape(); } if (Layout == "Build") { Mount(); }