title: ""Limit Too Close to ZM Pulse" Warning / Datum Magnet Placement" date: 2023-03-15 search: boost: 1.0
ISSUE — "Limit Too Close to ZM Pulse" Warning / Datum Magnet Placement¶
Summary¶
The "Limit too close to ZM pulse" warning occurs when the track datum magnet is positioned too close to the motor encoder's internal zero marker pulse, causing the axis to zero a full motor revolution early or late. This is a warning, not an error. The fix is to move the datum magnet approximately 1cm along the rack (or slide the robot 1cm on the track) and re-zero. Best practice is to mount datum magnets at the centre of each track section to avoid this entirely.
Symptoms¶
- Warning message: "Limit too close to ZM pulse" (or similar)
- This is not an error — it is a warning that the zero position may be out by exactly one full motor turn
- Zeroing behaviour becomes unreliable; robot may zero at a slightly wrong position
- Occurs at Zero Home (datum seek) — not during moves
Systems Affected¶
- Bolt on Track (confirmed — most common)
- Bolt Jr on Track (confirmed)
- Any MRMC track system using an incremental encoder (not absolute)
Software Environment¶
This is a hardware/mechanical issue — not software-version dependent.
Root Cause¶
When the track performs Zero Home, it: 1. Drives to the datum magnet to find the rough zero position 2. Uses the motor's internal encoder zero marker pulse (ZM pulse) to fine-tune to an exact position
The problem: If the datum magnet is positioned on the rail such that the magnet detection occurs very close to the motor encoder's ZM pulse, Flair can't reliably determine which side of the ZM pulse it is on — and may zero a full motor turn early or late.
This results in a position error equal to exactly one motor revolution of the track pinion (a consistent, predictable error that can be read from the Flair back screen).
"The zeroing using the datum switch to mark a rough zero and uses the motor zero marker to make it really exact. If the limit transition occurs close to a zero marker pulse then possibly if the datum limit is not that exact you COULD be a turn out." — Simon Wakley
Solutions¶
Solution A — Move the datum magnet ~1cm along the rack¶
Contributor(s): ~ Dig, ~ Jeremy Andrews — 2023-03-15
Steps¶
- Loosen the datum magnet from its current position on the rack.
- Slide it approximately 1cm along the rack in either direction.
- Re-secure the magnet.
- Perform Zero Home again.
- The warning should disappear — the magnet is now far enough from the ZM pulse boundary.
Alternatively (if magnet is not easily moved): 1. Disengage the track pinion from the rack. 2. Slide the robot physically ~1cm along the track. 3. Re-engage the pinion. 4. Perform Zero Home.
"You should move the magnet on the racking by about 1cm from its current position and re-zero the track axis." — Dig
"So either move the zero magnet, OR disengage the track pinion and slide the track forward about 1 centimetre." — Jeremy Andrews
Solution B — Correct position if already out by a motor turn¶
Contributor(s): ~ Simon Wakley (via ~ Niko) — 2022-09-26
Steps¶
- After zeroing, check if the robot is offset from the expected position.
- On the Flair back screen, read how far one motor turn is in cm.
- In Flair, do a GoTo Absolute command equal to exactly one motor turn in the direction that brings the robot to the correct position.
- After repositioning, perform a Direct Zero at the correct position.
- Then move the datum magnet and redo Zero Home (Solution A) to prevent recurrence.
Solution C — Best practice: Mount datum magnet at the centre sleeper¶
Contributor(s): ~ Simon Wakley — 2023-03-15
Steps / Guidance¶
- Mount the datum magnet at the centre sleeper of every track section length (not at the end).
- Set the zero offset in Setups -> Axis Setup -> Track axis so that zero is at the centre of the track section.
- When adding a track extension, simply add the section length to both the Max and Min limits.
- Never need to drive to the end of the track to find limits.
- All track sections of the same length become interchangeable — no per-section calibration needed.
"I mount zero magnets on the centre sleeper of every length of track and set up my zero offset to zero in the middle of that length. Then it's very easy to add a length and you just add 300 to the limit. Never have to drive to the end to find it." — Simon Wakley
"Please be sure to mount the magnet so it doesn't get hit by the pinch wheel." — Simon Wakley
Note: The default MRMC zero offset is 16.013 cm — inherited from the Milo setup. The exact value depends on where you mount your datum magnet relative to the robot's position when the magnet triggers.
Timeline¶
| Event | Date | Contributor |
|---|---|---|
| Technical explanation + fix documented | 2022-09-26 | ~ Simon Wakley (via ~ Niko), ~ Peter Constan-Tatos |
| Forum post confirmed | 2022-09-26 | ~ Niko |
| Fix confirmed in field + datum placement best practice | 2023-03-15 | ~ Dig, ~ Jeremy Andrews, ~ Simon Wakley |
Official Documentation¶
| Document | Section | Notes |
|---|---|---|
| MRMC Talk Forum | Limit Too Close to ZM Pulse | Forum thread |
| Precision Track Quick Start Guide — p.40: Mounting the Limit Switch and Datum Switch magnets | Datum magnet setup | Official magnet placement, clearance, limit/datum distinction. |
WhatsApp Excerpts¶
[26/9/2022, 9:34:59 pm] ~ Niko: [Quoting Simon Wakley] What does this mean and what's the fix? This is mostly for advanced users. Firstly is NOT an error but a warning that your zero might be a motor turn out one way or the other. The zeroing using the datum switch to mark a rough zero and uses the motor zero marker to make it really exact. If the limit transition occurs close to a zero marker pulse then possibly if the datum limit is not that exact you COULD be a turn out. Mostly it shouldn't happen and a service can put it right, but for the track, simply unmesh the pinion and move it one tooth and try again. If your axis IS out by a motor turn, you can read how far a motor turn is on the back screen and do a goto absolute one turn to correct.
[15/3/2023, 2:37:42 am] ~ Dig: You should move the magnet on the racking by about 1cm from its current position and re-zero the track axis.
[15/3/2023, 2:46:52 am] ~ Jeremy Andrews: Dig is right just move the magnet. The reason is that when your track axis 'finds' the zero magnet, the encoder on the track motor is too close to its internal zero marker (most standard encoders have a zero marker pulse), and you could have a full rotation of the motor error, when you zero again. So either move the zero magnet, OR disengage the track pinion and slide the track forward about 1cm.
[15/3/2023, 4:16:41 pm] ~ Simon Wakley: I mount zero magnets on the centre sleeper of every length of track and set up my zero offset to zero in the middle of that length. Then it very easy to add a length and you just add 300 to the limit. Never have to drive to the end to find it (unless I have to eek out every last cm)
Related Issues¶
- See also: Track Axis Trips 1–2 Seconds After Engagement
- See also: Zeroing chapter
- See also: Track Issues chapter
Revision History¶
| Date | Change | Editor |
|---|---|---|
| 2026-05-24 | Initial extraction | Tom D / Claude Code |