build notes · print-oriented rework

The slip gripper as an open frame that prints flat

2026-09-26 · Dan Newcome · design and notes by Astra (Codex), reworking Claude's gripper-finger-post · compared in Two agents, one finger

A print-oriented variation of gripper-finger-post (Claude's design, in our effector library): one rigid post, one root-compliant TPU finger, and an STS3215 cable drive. The enclosure becomes an open, bolted frame made from flat-printing parts. Prototype CAD; not yet printed or bench-tested.

Write-up against the parent design: Two agents, one finger.

Grasp assembly

What changed

Original Astra
Solid housing with a 26 mm bridge above the servo Separate deck, two windowed rails, and wrist plate; no servo-bay ceiling to bridge
Housing + wrist plate: 253.6 cm³ of CAD solid About 126 cm³: approximately 50% less modeled material
84 × 68 × 58 mm housing/mount envelope 78 × 64 × 65 mm; narrower, but 7 mm taller to fit the separate deck
Enclosed cable passage terminating inside the solid flexure foot Accessible diagonal guide exiting beside the foot; nominal lead-in clears the spool taper
One-piece spool with a projecting flange Tapered core plus a separately printed flat flange, clamped by the horn screws
Closed lever pocket and thin pad-recess lips Open tenon saddle and side-open pad seat; one through-bolt and nut
Flexure tenon suspended above its print face Tenon shares the flat back; lever shifts outward 2.79 mm
Thin residual lips at tapered hinge notches Notches cut through the full preceding unit
Post exported standing Post exported on its back, with face recess upward
Plate holes described as countersunk, but cylindrical Actual countersinks in a 2.4 mm face plate

The material comparison uses solid CAD volumes, not slicer filament estimates. This trades three extra printed pieces (11 total instead of 8) and long frame bolts for less bulk, smaller print heights, and access to the servo and cable. Finger reach remains 95 mm; the open pad gap is 39.5 mm. The 10–30 mm object range is checked geometrically. The servo and wrist horn patterns are inherited nominal dimensions, not new measurements of hardware.

Build and inspect

Use Python with build123d, numpy, trimesh, and rtree installed. This design was built using build123d 0.8.0. OpenSCAD and xvfb-run are needed only for PNGs.

make -C effectors/gripper-finger-post-astra all
make -C effectors/gripper-finger-post-astra render

all writes eleven print-oriented STLs, parts.json, open/grasp assembly STLs, an open assembly STEP, colored OpenSCAD scenes, and verification.json to exports/. Each individual part sits on Z=0. Assembly STLs include mating surfaces and are for inspection, not printing. The grasp scene includes the example ball; the dark servo block in the colored scenes is a reference envelope. The print-layout scene is an overview, not a packing for a particular printer bed.

Parts in print orientation

Print

Start with a 0.4 mm nozzle, 0.2 mm layers, and four perimeters on rigid parts. PETG is the default rigid material; PLA is suitable for initial fit prototypes. Use TPU 95A for the root and finger pad. Print the root solid, and inspect both 0.8 mm hinge webs in the slicer before printing.

STL Exported print orientation Detail to inspect in the slicer
deck Flat underside down, sockets up Short 3.4 mm diagonal liner bore; countersinks at the bed
rail_left, rail_right Outer face down, cradle pads up Long M3 bores have 45° roofs; clear them with a drill if needed
arm_mount Horn recess up Bottom-facing wrist screw seats have 45° countersinks
root_flexure Flat back and tenon down, notches up Two intentional 0.8 mm hinge webs; small transverse bores
lever Closed side down, open saddle up 1.85 mm minimum saddle walls; 1.8 mm horn bore
post Back down, friction-plate recess up Small horizontal foot pilots
pad, face_plate Flat, countersinks up where present Pad glues into lever; plate stays replaceable
capstan_core Drum end down, horn recess up 45° expanding taper; small transverse cable anchor
capstan_flange Flat No bridge over a spool groove

Designed to avoid large supports. Small bores still need short bridging, and 45° surfaces depend on cooling and layer settings. Review the slice rather than adding support inside the cable guide or TPU notches. No slicer or physical print has yet verified these settings.

Hardware and assembly

In addition to the STS3215 and its matching metal horn:

Validation and limits

make verify rebuilds and checks all eleven printable meshes for one watertight solid and flat bed contact, the four frame-bolt paths, pairwise rigid-part interference in the open pose and five object grasps, and five intermediate closing poses. It also checks actual contact with the finite pad and face plate, the cable span against the flexure and rigid parts, and the cable guide/approach against the servo, frame, and spool. Adjacent rigid flexure bands are excluded from pairwise collision checks because their shared webs represent deforming TPU. Only the cable's final approach millimetre at the drum and 0.5 mm at the horn are excluded from the corresponding contact check.

These are nominal CAD checks, not deformation, strength, fatigue, or winding simulations. The new cable exit, shifted lever, and revised notches change the mechanics. The original MuJoCo current/grip/slip results have not been carried over as results for Astra. Measure hinge stiffness, servo fit, cable tracking, and grip response on this build before using it for that experiment.

Source is self-contained in this folder; generated exports remain gitignored. params.py is the dimensional source of truth. build.py handles print poses; verify.py and kinematics.py handle checks; view.py makes previews. The root-flexure concept derives from the sibling design's SpiRobs implementation (Wang, Freris & Wei, Device, 2025).