Blue Gauntlet Fencing Helmet Ear Grommet

Our Larval Engineer practiced fencing for several years, learning the fundamental truth that you should always bring a gun to a knife fight:

Fencing - taking a hit
Fencing – taking a hit

It’s time to pass the gear along to someone who can use it, but we discovered one of the ear grommets inside the helmet had broken:

Blue Gauntlet M003-BG Helmet - broken ear grommet
Blue Gauntlet M003-BG Helmet – broken ear grommet

The cylinder in the middle should be attached to the washer on the left, which goes inside the helmet padding. It’s a tight push fit inside the washer on the right, which goes on the outside of the padding. Ridges along the cylinder hold it in place.

Being an injection-molded polyethylene part, no earthly adhesive or solvent will bother it, soooo… the solid model pretty much reproduces the original design:

Fencing Helmet Ear Grommet - show
Fencing Helmet Ear Grommet – show

The top washer goes inside the padding against your (well, her) ear, so I chamfered the edges sorta-kinda like the original.

There are no deliberate ridges on the central cylinder, but printing the parts in the obvious orientation with no additional clearance makes them a very snug push fit and the usual 3D printing ridges work perfectly; you could apply adhesive if you like. The outside washer has a slight chamfer to orient the post and get it moving along.

The posts keep the whole affair from rotating, but I’m not sure they’re really necessary.

Printing a pair doesn’t take much longer than just one:

Fencing Helmet Ear Grommet - build
Fencing Helmet Ear Grommet – build

It doesn’t look like much inside the helmet:

Blue Gauntlet M003-BG - replacement ear grommet - installed
Blue Gauntlet M003-BG – replacement ear grommet – installed

The OpenSCAD source code as a gist from Github:

// Fencing Helmet Ear Grommet
// Ed Nisley KE4ZNU December 2015
// Layout options
Layout = "Show"; // Base Cap Build Show
//- Extrusion parameters must match reality!
// Print with +1 shells and 3 solid layers
ThreadThick = 0.20;
ThreadWidth = 0.40;
HoleWindage = 0.2;
function IntegerMultiple(Size,Unit) = Unit * ceil(Size / Unit);
Protrusion = 0.1; // make holes end cleanly
// Dimensions
NumSides = 12*4;
$fn = NumSides;
// 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,
// Parts
// Base on outside of liner
PostOD = 15.5;
PostLength = 8.0;
BaseOD = 26.0;
BaseLength = 3.4;
module Base() {
difference() {
union() {
for (i=[0:5])
// PolyCyl(PostOD,4.0,NumSides/4);
translate([0,0,(BaseLength - 4*ThreadThick)])
cylinder(d1=PostOD,d2=(PostOD + 2*ThreadWidth),h=(4*ThreadThick + Protrusion),$fn=NumSides/4);
// Cap inside liner
CapID = 12.0;
CapOD = 28.0;
CapThick = 3.0;
module Cap() {
difference() {
union() {
[CapID/2 + CapThick/3,0.0],
[CapOD/2 - CapThick/3,0.0],
[CapID/2,CapThick - CapThick/3]
translate([0,0,CapThick - Protrusion])
cylinder(d=PostOD,h=(PostLength - (CapThick - Protrusion)),$fn=NumSides/4);
// Build it!
if (Layout == "Base")
if (Layout == "Cap")
BuildSpace = 30/2;
if (Layout == "Build") {
for (j=[-1,1])
translate([j*BuildSpace,0,0]) {
if (Layout == "Show") {
color("LightGreen") Base();
color("LightBlue") Cap();

6 thoughts on “Blue Gauntlet Fencing Helmet Ear Grommet

  1. FYI, 3M Scotchweld DP8005 can bond polyethylene, a fact I learned recently from another blog I visit regularly, Ben Krasnow’s. DP8005, available from McMaster-Carr, is pretty expensive though, and not something you’d keep around the house for small jobs.

    Click to access 3m-scotch-weld-structural-plastic-adhesive-dp-8005.pdf

    I enjoy your blog very much, Ed. Thanks for writing it! And Merry Christmas to you and your family!


    1. The polyethylene substrate fails before the adhesive: now, that’s a glue! And it bonds PTFE, even if not quite that well. Zowie!

      I like this: “Hand mixing is not recommended and may result in unpredictable results”. That would be me, of course.

      Not a bottle I’ll keep on the shelf, but it’s good to know such things exist.

      Thanks for the tip (and the good words)!

      1. You wrote: “…And it bonds PTFE, even if not quite that well. Zowie!”

        I didn’t read the spec very closely, but you’re right – anything that will bond to PTFE (Teflon), even poorly, surely qualifies as the “World’s Stickiest Glue”.

  2. Have you tried any 3D printing firmware other then Marlin?

    I’m customizing tool change commands to support automatic tool changer (but that’s another story Anyway, Marlin code is… well let’s call it “not overly documented”. I took a quick peek at a couple of other firmwares and they all seem to be much better in that respect.

    I’m also pretty sure that the Marlin’s homing procedure is broken, software endstops are not respected when second extruder offset comes into play and it seems there are critical errors which will abort current command, but will not stop program execution.

    With all that, I’m thinking about trying out some other firmware before committing development time to Marlin. Any suggestions?


    1. Nope, it’s been Marlin all the way with the M2. In fact, I’m running a fairly old version that Just Works for the straightforward printing I’m doing, so I have zero motivation to mess around with it.

      I generally try to stay with the current version, but Marlin went through a spectacular period of breakage a while ago and I pretty much lost interest in trying to work through that mess. I think it’s better now, but …

Comments are closed.