Here in quotes below are the text files for the two most common Rover wheel bearings. Just match up the right one with those on your machine. Generally speaking, the Classic ones fit the old 18" aluminium chassis models from the red era. The Modern ones fit the later steel chassis models and 19"-20" models. The modern ones also fit many modern wheels, such as the Easyroll wheels they sell in Bunnings.
Just cut and paste ONE of these lines of code directly into OpenSCAD (free software). After the image loads up in the viewing frame, click on "Design", select "Render". When it has finished rendering, click "File", select "Export" and save as an STL file.
All 3D printing places will accept these STL files. Get them printed in ABS or PETG.
Enjoy!
// CLASSIC Rover wheel bearing seal.
// Washer Parameters
$fn = 120; // High resolution for a very smooth circular finish
outer_diameter = 40;
hole_diameter = 16;
base_thickness = 1.2;
total_height = 7; // Assumes 7mm total height. Change to 8.2 if the lip is 7mm *above* the base.
lip_thickness = 1.2;
// Bottom Rim Parameters
bottom_rim_od = 18;
bottom_rim_height = 1.2;
difference() {
union() {
// 1. Create the main solid cylinder (Outer boundary)
cylinder(h=total_height, d=outer_diameter);
// 2. Add the raised rim on the bottom surface
translate([0, 0, -bottom_rim_height])
cylinder(h=bottom_rim_height, d=bottom_rim_od);
}
// 3. Subtract the 16mm center hole (extended to cut through the new bottom rim)
translate([0, 0, -(bottom_rim_height + 1)])
cylinder(h=total_height + bottom_rim_height + 2, d=hole_diameter);
// 4. Subtract the inner ring volume to leave the 1.2mm raised lip on the top
translate([0, 0, base_thickness])
cylinder(h=total_height, d=outer_diameter - (2 * lip_thickness));
}
//MODERN Rover wheel bearing seals
// Washer Parameters
$fn = 120;
// High resolution
outer_diameter = 40; //
hole_diameter = 12.7; //
base_thickness = 1.5; // [cite: 9]
total_height = 7; // Main body height [cite: 10]
lip_thickness = 1.5; // [cite: 10]
// Extension Dimensions
bottom_ext_h = 4; // 4mm height [cite: 14]
bottom_ext_w = 3; // 3mm width [cite: 14]
top_ext_h = 5.5; // 5.5mm height [cite: 14]
top_ext_w = 23.3; // 23.3mm width [cite: 14]
// Interior Ring Dimensions
int_ring_h = 1; // 1mm high
int_ring_od = 20; // 20mm Outer Diameter
int_ring_id = 17; // 17mm Inner Diameter (leaves a gap between interior ring and 12.7mm hole)
union() {
difference() {
// 1. Create the main solid structure [cite: 11]
union() {
cylinder(h=total_height, d=outer_diameter);
// Bottom exterior extension [cite: 14]
translate([0, 0, -bottom_ext_h])
cylinder(h=bottom_ext_h, d=hole_diameter + (bottom_ext_w * 2));
}
// 2. Subtract the 16mm center hole through everything [cite: 12]
translate([0, 0, -(bottom_ext_h + 1)])
cylinder(h=total_height + bottom_ext_h + top_ext_h + 2, d=hole_diameter);
// 3. Subtract the cavity to leave the raised lip [cite: 13]
translate([0, 0, base_thickness])
cylinder(h=total_height + top_ext_h, d=outer_diameter - (2 * lip_thickness));
}
// 4. ADD the Interior Ring with 17mm ID and 20mm OD
// This leaves a 4.3mm flat space around the 12.7mm hole
difference() {
translate([0, 0, base_thickness])
cylinder(h=int_ring_h, d=int_ring_od);
// Subtract 17mm from the center of this ring
translate([0, 0, base_thickness - 0.5])
cylinder(h=int_ring_h + 1, d=int_ring_id);
}
}