← Back to journal
Journal — Entry 01 · Concept / Pre-Build

Smart Putting Grip — Concept Design Study

Sensing face angle through the stroke and correcting it before impact — with no phone or companion app required to use it. Nothing here has been built yet; this is the working concept-design record, the way an actual design review would be written.

Date
September 15, 2026
Stage
Concept / pre-build
Read time
~9 min
Status
Datasheet-validated, not hardware-validated

This is an idea, not a project update. It started from a simple annoyance: every putting sensor I've used tells you what your face angle was after the stroke is already over. So I sat down and worked through whether a grip could sense that in real time and just tap your hand when it drifts — the same way a metronome corrects tempo while you're still playing, not afterward. Below is that concept phase, worked through properly: the problem, the architecture that follows from it, component choices backed by datasheet numbers, the mechanical constraints of actually building this into a grip, a rough BOM, and the questions I can't answer yet.

01Why this doesn't exist yet

Every commercial putting sensor on the market today — Blast Motion, Vertex, 3Bays GSA, OnePlane/OnePuttPro — is a clip-on accessory that reports through a phone app after the stroke is finished. That's a coaching-review tool, not a training aid: the data comes back on a screen, you interpret it, and you try to remember it on the next stroke. None of them close the loop in real time, because none of them are built to actuate anything — they're sensing-and-logging devices tethered to Bluetooth and a UI.

The idea here is to move the sensing into the grip itself and pair it with on-grip haptic actuators, so the feedback loop closes during the stroke rather than after it — the device tells your hands "you're opening the face" while you can still do something about it. That's the actual differentiation, and it's also the harder engineering problem: latency, power, and mechanical integration all start to matter in ways they don't for a post-round review gadget.

02Face angle, not path

Face angle at impact is overwhelmingly the dominant driver of a shot's start direction relative to swing path. The clearest published numbers come from full-swing launch-monitor data: face angle accounts for roughly 75–85% of start-line direction with irons and 90–95% with a driver, with path contributing the remainder (Foy Golf Academy). That's a full-swing stat, not a putting-specific one — I couldn't find a citable putting-specific percentage, so I'm flagging that gap rather than repeating a number I can't source. The design conclusion doesn't change; face angle is still the right first target.

The reason face angle is tractable for real-time, on-device sensing while path isn't comes down to what each one requires mathematically:

Face angle only needs one axis of a rate gyro, integrated once, over a window under two seconds. Path needs two integrations of an accelerometer that's already biased — that's not a fair fight, and it's why nobody does path live.

Face angle only requires integrating gyroscope angular rate about the shaft's long axis over the stroke window (roughly 1–1.5s), zeroed at address. Gyro integration error accumulates as a random walk — it grows with √t, not linearly — so it stays small over a short window. Using the ICM-20948's datasheet noise density (0.015 dps/√Hz), the accumulated error over a 1.5s stroke works out to about 0.02° — negligible against a 1–2° feedback threshold. The onboard IMU on the Xiao nRF52840 Sense (LSM6DS3TR-C) is actually better on this spec, pushing that down to roughly 0.006°.

Path requires double-integrating accelerometer data — acceleration → velocity → position. Double integration turns a constant sensor bias into a position error that grows with t²/2, not √t. A bias of a few milli-g, well within normal MEMS spec, produces centimeters of drift inside a 1–2 second window. That's exactly why every commercial device reconstructs path as a post-stroke computation on a phone, using known rest-to-rest constraints to correct the drift after the fact. It's a fusion/compute problem that doesn't fit a live control loop on a coin-cell MCU — so path stays a post-stroke summary metric here, not a live one.

FACE ANGLE (single gyro integration) ≈0.02° 0s 1.5s grows with √t — stays flat PATH (double accel. integration) several cm 0s 1.5s grows with t² — runs away fast
Fig. 1 — Error growth: single gyro integration (face angle) vs. double accelerometer integration (path)Schematic, not to shared scale

03System architecture

At a block level: an IMU samples angular rate continuously → the MCU integrates the shaft-axis component into a running face-angle-from-address value → a threshold check decides if/which haptic motor fires → an I2C driver commands the motor with a specific waveform → separately, an impact detector latches the "official" face-angle-at-impact value for a post-stroke summary. Everything except that final read-out is closed entirely on the device — no radio, no phone.

SLEEP / CARRY ADDRESS / ZERO STROKE TRACKING REAL-TIME FEEDBACK (haptic) IMPACT DETECTION POST- STROKE SUMMARY MOTION STILL 200HZ Δ>THRESH SPIKE motion settles back toward stillness
Fig. 2 — Six-state loop, running entirely on-deviceSensing to actuation, no radio

04Picking the sensor and the haptics

Three IMU options were on the table. The deciding question wasn't noise performance alone — it was whether the extra capability of a 9-axis fusion chip actually buys anything for a relative angle change measured over 1.5 seconds.

OptionTypeGyro noise densityActive currentNotes
ICM-209489-axis, discrete0.015 dps/√Hz1.23–3.11 mANeeds a separate MCU
BNO085 / BNO08x9-axis + fusion coprocessorn/a (fused output)variesOutputs quaternions directly
LSM6DS3TR-C6-axis, onboard Xiao Sense0.005 dps/√Hz0.90 mABest noise spec; already on-board

Sources: ICM-20948, BNO08x, LSM6DS3TR-C datasheets.

Going with the LSM6DS3TR-C already onboard the Xiao nRF52840 Sense. A magnetometer exists to correct long-term yaw drift for absolute orientation — not needed for a relative angle zeroed fresh at every address, and a magnetometer next to a steel putter shaft is a liability, not a benefit. The BNO085's real value, offloading attitude math to a coprocessor, isn't needed either: a single-axis gyro integration is cheap enough to run directly on the nRF52840's Cortex-M4F. That leaves noise and power as the deciding factors, and the onboard part wins both while removing a whole discrete component from the board.

The haptics are a closer call, and it comes down to timing feel rather than raw spec:

SpecERM (308-107, 8mm coin)LRA (C10-100, 10mm coin)
Rise time54 ms37 ms
Stop time81 ms (coast-down)near-instant, closed-loop braking
Vibration amplitude0.75 G pk-pk1.5 G pk-pk
Unit price~$1–3$7.73

Sources: 308-107, C10-100 datasheets.

Going with LRA + a TI DRV2605L driver for the prototype. The faster rise time matters less than the stop time: the DRV2605L's closed-loop braking kills an LRA almost instantly, versus an ERM's 81ms of residual buzz coasting down. For two motors giving directional feedback (toe-side vs. heel-side), a crisp, cleanly-bounded tap matters more than raw amplitude — "a tap" reads as information, "a buzz that lingers" doesn't. One wiring constraint to flag: the DRV2605L has a fixed I2C address (0x5A), so the two drivers need separate I2C buses — the nRF52840 has two TWI peripherals, so that's a pin-assignment problem, not a multiplexer-chip problem. ERM stays the obvious cost-reduction path for a production version once the timing target is validated on hardware.

05Fitting it inside a grip

Standard shaft butt OD runs about 15.2mm. A standard swing grip leaves only ~3.8mm of wall thickness around that — not much to work with. Putter grips run much larger: SuperStroke-style oversize grips sit around 25–33mm OD, leaving 5–9mm of wall thickness on the same shaft. That's a genuinely useful coincidence — oversize, minimal-taper putter grips are already mainstream for stroke-control reasons that have nothing to do with this project, and they happen to leave far more room to build into.

SHAFT (Ø15.2mm core) PCB + IMU BATTERY wire channel LRA — TOE SIDE LRA — HEEL SIDE HAND CONTACT ZONE CAP END SLEEVE — SLA RESIN PRINT
Fig. 3 — Concept layout: 3D-printed inner sleeve replacing the rubber core in a standard re-gripping jobReference dimensions, not measured yet

The build path: a 3D-printed inner sleeve, made as an insert rather than a shaft modification, so it can go through a normal, reversible re-gripping process — solvent, vise, hook blade, fresh wrap. SLA/resin printing over FDM, since the motor pockets and wire channel are sub-millimeter tolerance features where resin's dimensional accuracy actually matters.

06Power and rough cost

Built from datasheet numbers rather than assumed: active stroke-tracking draws roughly 6–8 mA (MCU + IMU + haptic driver quiescent current combined), and standby (carried, not in use) draws under 20 µA. Against a 100mAh, 3.7V LiPo cell, that's on the order of 14 hours of continuous active tracking — real use is a few minutes per session, so this isn't a power-constrained design. The cell's own shelf self-discharge will limit standby life long before the circuit's own leakage does.

ComponentPartLine total
MCU + IMUSeeed Xiao nRF52840 Sense$15.90
Haptic driver ×2TI DRV2605L breakout$15.90
Actuator ×2Precision Microdrives C10-100 LRA$15.46
Battery3.7V 100mAh LiPo$5.95
LED, passives, sleeve print—$4.50
Prototype total~$57.70

That's a hobbyist, breakout-board BOM — right for validating the concept, not for costing a product. At volume, bare-die components and a custom PCB likely bring a realistic per-unit target down to the $12–20 range, but that number isn't more precise than it can be until there's a working prototype to base it on.

~14 hrs
Active tracking life on a 100mAh cell — real sessions run minutes, not hours
$57.70
Breakout-board prototype BOM, priced from datasheets
$12–20
Rough per-unit target at volume — not firm until there's a prototype

07What's next

  1. Breadboard validation. Xiao Sense + one DRV2605L + LRA, no grip involved yet — confirm the gyro-integration math against a phone slow-motion reference, tune the deviation threshold by feel.
  2. Two-motor validation. Add the second driver on the second I2C bus, confirm both fire independently without bus contention.
  3. CAD the sleeve. Measure a real target grip with calipers, model pockets for PCB, battery, and both motors, route the wire channel.
  4. First grip-integrated prototype. Resin-print, install with standard re-gripping tools, and check whether motor placement is actually felt clearly and directionally during a real stroke.
  5. Field testing. Compare against an existing reference device to sanity-check absolute accuracy, not just self-consistency.
  6. Write it up properly. Once there's a working prototype, this becomes a case study next to Shot-Sync — not before.

Open questions I don't have answers to yet:

Where this stands Nothing here has touched a soldering iron yet. This is the paper phase — the architecture and component choices are backed by real datasheet numbers, but none of it has been validated on hardware. If it gets far enough to vibrate correctly on a breadboard, this entry gets an update. If it survives a real stroke, it stops being a journal entry and becomes a case study.

Sources

← All journal entries See finished work →