how to fix Mazak SmoothG alarm 102 spindle rotation did not start during M03
| Controller | Manufacturing: CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 |
|---|---|
| Category | Industrial Error Codes |
| Guide type | Procedure |
| Skill level | Beginner to intermediate field service tech |
| Time | 5 - 30 minutes including verification |
Running into how to fix Mazak SmoothG alarm 102 spindle rotation did not start during M03 on Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 is one of the more common 2am callouts I see when the line is in the middle of a hot run and the controller suddenly faults out. My standard pattern for this is to pull the alarm history first, then walk the fix below - here is what actually clears the alarm when the OEM service manual is too generic and you do not have time to wait for a field service engineer to drive in.
What how to fix mazak smoothg alarm 102 spindle rotation did not start during m03 actually involves on Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026
On Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 the first three tools that earn their keep are Fanuc SYSTEM > 5.ALARM > F1.HIST alarm history page, Mazak Smart Sync alarm log export, Haas Operator/Service Manual PDF for alarm 100-series. Each of these surfaces a different layer of the fault - keep at least the first one in your fault-history notebook so the next time this happens you do not start cold.
For verification on Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026, the methods that survive contact with a real second-shift production workload are check Fanuc alarm history via SYSTEM > 5.ALARM > F1.HIST and open Heidenhain TNC640 error window with ERR key and export logs via TNCdiag. Anything less than that and you are shipping on vibes.
Authoritative sources for Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 that I cross-reference before committing to a fix: heidenhain.com/service, fanuc.com/support, haascnc.com/service. OEM marketing brochures and trade-press writeups are signal, not ground truth.
The rest of this page is the structured fix path. Start with diagnose, then remediation, then the automation options so you do not have to do this by hand the next time it surfaces. Verify and safety sections at the end are the discipline that keeps the fix from regressing the next time you open the cabinet.
Diagnose first, fix second
Eighth: diff the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 setup against its last known good state. Ask the obvious question - what changed in the 72 hours before the fault started? Did the controller take a firmware update overnight (check the About panel for the firmware revision vs the previous version you wrote down in your notes)? Did you swap a drive, a motor, an encoder cable, or a fieldbus drop? Did you change a tool offset, a work offset, a vision job, or a recipe? Did the maintenance team push a new PM checklist, swap a lube reservoir, or change a coolant concentration? Use the in-controller audit trail (Fanuc PARAM history, KUKA KRC log, Cognex In-Sight job version) to anchor "before vs after" so you are not guessing. Cross-check the OEM service bulletin and the OEM community forum for the exact firmware revision - if a regression hit a batch of cells in the same week, the community catches it before the official bulletin admits it. Record the suspect ranking, then disprove suspects one at a time with the cheapest test first (parameter restore before drive swap, encoder battery check before encoder swap).
Second pass: open the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 controller diagnostic panel and read the alarm history or fault stack for the failing window. Most modern industrial controllers surface a fault trail (the controller alarm history, the OEM diagnostic interface, the fab MES event log, the cell controller PLC fault table). The alarm history tells you whether the fault was a real condition, a teammate changing a parameter or DI mapping in the same minute, or an OEM-side firmware quirk. Many SRVO or AXIS faults trace to a parameter-level change pushed in the same engineering session in the previous hour - the fault trail makes that obvious without guesswork.
Start by capturing the exact failure signal in writing before you change a single thing on your Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 setup. On the controller HMI that is the alarm code, the alarm message text, the timestamp, the controller hour-meter, and the part-count when the alarm hit. On the OEM diagnostic interface that is the fault-history dump (Fanuc alarm history, KUKA KSS log, Cognex In-Sight event log) plus the running program block number at the moment of fault. Photograph the HMI screen with the alarm panel open. Do not paraphrase. Most OEM service workflows will not even route the warranty case without the controller serial number, the alarm history dump, and the fault timestamp - the field service engineer pastes the alarm code straight into the OEM diagnostic tool and the first response is "we see the fault, here is what the controller logged."
Field notes from real Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 callouts
Last week on a graveyard shift I chased a phantom Manufacturing alarm for two hours before remembering Siemens SinuCom NC and PLC trace for 840D sl would have isolated the bad channel in five minutes. My standing rule on any Manufacturing ticket is to baseline with Siemens NCK Diagnosis in TIA Portal / SinuTrain before touching a single wire, half the "failed" parts I have replaced over the years were not actually failed.
After every Manufacturing repair I run `open Heidenhain TNC640 error window with ERR key and export logs via TNCdiag` to confirm the loop actually held, it takes thirty seconds and has saved me at least one callback per month. On any Manufacturing fault inside Manufacturing, the first three questions I ask are: which firmware rev, which I/O card, and what was the last commissioning change. Defaults drift between releases. The Manufacturing side of Manufacturing evolves slowly on paper and fast in firmware, a vendor manual from two years ago is almost guaranteed to miss the new alarm codes.
Tools I actually reach for
For most Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 faults I start with Fanuc CNC Screen Display Function (CDF) over Ethernet, fall back to Siemens NCK Diagnosis in TIA Portal / SinuTrain, Siemens SinuCom NC and PLC trace for 840D sl, Heidenhain integrated PLC programming station TNCkit, Mazak SmoothG Diagnosis Monitor and PLC ladder trace when Fanuc CNC Screen Display Function (CDF) over Ethernet cannot surface the answer, and keep Fanuc Servo Guide for amplifier waveform capture handy for the cases where neither answers. That ordering is not academic - it matches the layers of the fault as they tend to surface, so the cheapest signal lands first and the heavier tooling only comes out when the simpler answer does not hold up. My muscle-memory shortcut for this is to run the first tool while the alarm screen is still open, not after I have already cycled controller power.
Verification I run before I call it fixed
Before I mark a Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 fault resolved, the verification loop below is what I actually run. Each step proves a different layer is green, and the order matters - the cheaper checks gate the more expensive ones.
check Fanuc alarm history via SYSTEM > 5.ALARM > F1.HISTIf that one comes back clean, move to the next check. If it does not, stop and dig in there before layering more verification on top of a red signal.
read Siemens 840D sl HMI log %_N_ALARM_TXT for alarm 25201 detailsIf that one comes back clean, move to the next check. If it does not, stop and dig in there before layering more verification on top of a red signal.
confirm encoder feedback via Heidenhain PLC operand M4000 axis readyOnly when every line above runs clean do I close the loop and update my fault-history notebook with the timestamps.
Where I check first when the docs disagree
When two sources contradict each other on a Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 detail, the disambiguation order I lean on is stable. I usually check mazakusa.com/service for the ground-truth view on this part of Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026. I usually check support.industry.siemens.com for the ground-truth view on this part of Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026. I usually check fanuc.com/support for the ground-truth view on this part of Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026. OEM marketing brochures and trade-press writeups are signal, not ground truth, and I treat them as such until the references above either confirm or contradict the claim.
Solution-focused remediation path
Before any destructive step on a Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 cell, slow down and stage rollback. Snapshot the current firmware revision, the current parameter set (PARAM PUNCH OUT, KUKA archive, Cognex job export), the current ladder and HMI screens, the current I/O mapping, and the current member-roster of teach pendants registered to the cell to a notes entry first. Capture the failing photo, the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 alarm history dump, and the timestamp window. Photograph the cell from two angles: the controller HMI showing the alarm, and the cabinet showing the drive status LEDs. Then do the destructive step (clear a parameter, swap a drive, remove a teach pendant, restore a backup) inside a maintenance mode or a sister cell first, never the production cell directly. Capture the firmware revision, the safety-PLC permissions, the connected-pendant list, the cell operator roster, and the relevant fieldbus log snapshot to your notes before the destructive step. Decision point: if the cell is under an OEM service contract, the cheapest correct path is almost always to open the OEM hotline in parallel with the rollback - the OEM service engineer can confirm whether an OEM-side firmware push is responsible while you are still staging the change, which avoids a needless parameter edit if the fix is in the next firmware revision.
If the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 symptom started after an overnight firmware update, a drive swap, or a parameter edit, treat firmware and parameter set as the prime suspect. Roll the controller back to the previous firmware if the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 OEM supports rollback (most do via the maintenance bootloader). Restore the saved parameter set from your last known good backup (Fanuc all-parameter PUNCH OUT, KUKA archive, Cognex In-Sight job export) and rerun the program. If both rolled-back firmware and restored parameter set still fault with the same alarm and the same drive, you have a hardware-level or wiring issue. Decision point: if the rolled-back firmware still faults and the cell is under an OEM service contract, open the OEM hotline with the alarm history dump; on an out-of-warranty cell the path is the OEM forum or r/manufacturing with a minimal reproduction. Save the working firmware revision to your notes so the next rollback is a one-line "pin to firmware X."
Start by sorting the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 fault into one of three buckets, because roughly 80% of cases fall here. Bucket one is electrical / drive: instantaneous overcurrent, sustained overload, drive overheat, bus undervoltage, or a phase-loss event. Bucket two is mechanical / motion: encoder battery low, absolute position lost, over-travel, hardstop hit, or a vibrated-loose cable. Bucket three is recipe / parameter / I/O: the program calls a tool that is not loaded, the work offset is wrong, a DI is mapped to a disconnected sensor, or a vision job version has drifted. Pick the bucket first, then act. Before you act, capture a baseline photo of the alarm screen plus the controller hour-meter so you can prove whether the fix actually moved the needle. Decision point: if the alarm is intermittent and the cell is under an OEM service contract, open the OEM hotline first - OEM phone support beats hours of speculative debugging on cost and on liability if the alarm recurs and trips a safety-related shutdown.
Automate this fix so you do not do it twice
Monitor + alert via Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 OEM diagnostic reports, alarm history, and plant dashboard ingestion
For the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026, the most useful long-running telemetry is the OEM diagnostic reports + alarm history shipped to a plant dashboard (Grafana with a CSV source, Ignition with a tag history, the fab MES OEE per SEMI E10, a Notion database via the API) and graphed on a single view. Pair that with synthetic monitoring (a small script that triggers the failing cycle or runs the failing test sequence every 5 minutes from at least two cells) so a fleet-level regression lights up before teammates report it. Subscribe the on-call inbox or a private Teams channel to the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 OEM service bulletin (Atom/RSS or vendor portal webhook) plus the OEM service-status handle so an open bulletin self-correlates with the synthetic failures.
# Tiny synthetic monitor - hit the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 controller health endpoint every 5 minutes
while true; do curl -s -o /dev/null -w "%{http_code} %{time_total} $(date -Iseconds)\n" \ -H "Authorization: Bearer $TOKEN" \ https://controller.plant.local/api/v1/me \ >> /var/log/manufacturing-synth.log sleep 300
doneScrape Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 controller alarm history + fieldbus log via scheduled job
For the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026, cell faults usually surface as drive alarms, fieldbus dropouts, or vision-trigger misses before a full line stoppage. A weekly scheduled job that exports the last 7 days of these events to CSV gives you a paper trail to correlate with firmware updates, parameter edits, and OEM bulletins without staring at the HMI live. Register the task via cron on a plant-floor logger PC (Linux IPC), Windows Task Scheduler (schtasks /create /XML) on an engineering workstation, or a GitHub Actions schedule against a cell-controller API, then write the CSV to a plant file share or the fab MES for retention. Subscribe a simple dashboard (Grafana with a CSV source, Ignition with a tag history, the fab MES OEE report) to the same bucket so alarm events from every Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 controller converge on a single view without per-cell HMI clicking.
# Export the controller alarm history via the OEM API (if supported)
curl -X POST https://controller.plant.local/api/v1/alarm_history \ -H "Authorization: Bearer $CONTROLLER_TOKEN" \ -H "Accept: application/json" \ -d '{"start_date":"2026-05-25","end_date":"2026-06-01"}' \ -o manufacturing-alarm-history.json
# Export the cycle history for the last 7 days
curl -G https://controller.plant.local/api/v1/cycles \ -H "Authorization: Bearer $CONTROLLER_TOKEN" \ --data-urlencode "oldest=$(date -d '7 days ago' +%s)" \ -o manufacturing-cycles.jsonMulti-cell rate-limit + retry policy via shared client wrapper
When the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 integration runs across multiple cells or controller types, every consumer needs the same backoff, jitter, and idempotency behavior or one noisy cell will starve the rest of the MES poller. Wrap the OEM SDK or fetch call in a thin client that reads the rate-limit headers (X-RateLimit-Remaining, Retry-After, x-ratelimit-reset), applies full jitter (base 200ms, cap 30s, max 5 retries), and de-dupes writes by a stable key (the controller cycle id, the fieldbus drop external id, the destination MES record id). Emit simple log lines tagged with the cell id so a fieldbus burst on one cell shows up in the same log as the downstream cascade.
# Python - manufacturing controller API wrapper with full-jitter retry
from tenacity import retry, wait_random_exponential, stop_after_attempt, retry_if_exception_type
import requests class RateLimited(Exception): pass @retry( wait=wait_random_exponential(multiplier=0.2, max=30), stop=stop_after_attempt(5), retry=retry_if_exception_type(RateLimited),
)
def call_manufacturing(method, path, token, payload=None): r = requests.request(method, f"https://controller.plant.local{path}", headers={"Authorization": f"Bearer {token}"}, json=payload, timeout=10) if r.status_code == 429: raise RateLimited(r.headers.get("Retry-After")) r.raise_for_status() return r.json()
Common pitfalls and what to watch for
The deepest trap with Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 cells is treating a recurring class of alarm as a one-off incident. A drive overheat or a vision-trigger miss burst gets papered over with a power-cycle or a parameter reset, the cell runs for two weeks, and the exact same signature returns because the root cause was never identified. Codify every case in a fault-history notebook per machine, save the working firmware revision (the About panel) in the same note, and write the exact parameter set, I/O mapping, and fieldbus drop list into a checklist. After any major firmware update on Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 review the parameter set and the I/O mapping explicitly, since OEMs silently change defaults or add new safety interlocks between major releases.
The second half of this pitfall is confirming the fix on a single cell when the cell is part of a fleet. If you and three teammates run the same Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 controller on the same production line, an OEM-side firmware push tends to bite a whole batch within the same shift. Verify on every cell that runs the failing recipe, log the result and the firmware revision per attempt, and only then declare the class closed.
Verify the fix worked
- Reproduce the original faulting cycle against Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 on the same cell AND a sister cell with the same recipe. If the alarm or fault code still surfaces on any cell, you have not fixed it.
- Watch for 24 to 48 hours via the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 controller alarm history + the fieldbus log + your fault-history notebook. Cached fault states and stale fieldbus link state mask slow-burn drift and intermittent fieldbus issues.
- Smoke-test under realistic load: replay the cycle against a test workpiece for at least 30 minutes at your normal production feedrate, log success / alarm and the timestamp per attempt to a notes file.
- Capture the new state in a fault-history notebook entry so the next time this happens you do not rediscover it. Note firmware revision + parameter set + I/O mapping + failing photo + verbatim alarm string + fix applied. Push to a plant-wide maintenance wiki if your plant uses one.
- If the fix involved a maintenance-token rotation or a parameter set change, commit the new token to your password manager and photograph the parameter dump for archival.
Safety, rollback, blast radius
- Test in a Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 maintenance mode or on a sister cell first before any change that touches the production cell. Snapshot the firmware revision, the parameter set, the I/O mapping, and the safety-PLC permissions before changing anything.
- Apply the principle of least surprise when granting teach-pendant access or safety-PLC permissions. Review the operator roster against the people who actually need access - extra teach pendants are extra blast radius.
- Use idempotent cycles where the Manufacturing, CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 controller supports it (the OEM cycle-id de-dupe, external id keys on MES records) so a re-run cycle does not double-count parts or duplicate scrap records.
- Know your rollback path. Firmware rollback is a one-line OEM utility load; a maintenance-token rotation is reversible if you kept the old token in the password manager during cutover; a parameter set change is reversible only if you saved the previous archive.
- For cell-wide or plant-wide changes, line up a maintenance window with production scheduling before pushing through the OEM utility.
FAQ
References
- OEM service manual for Manufacturing: CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 (official service bulletins, alarm code reference, safety case)
- Controls-community forums (r/PLC, r/Robotics, r/CNC, r/Fanuc, r/KUKA, r/Cognex, r/labview, OEM community)
- In-controller diagnostic help and the Manufacturing. CNC Machine Error Codes (Fanuc, Mazak, Haas NGC, Siemens 840D sl, Heidenhain TNC640), 2026 firmware release notes
- OEM service-status portals and OEM hotline post-mortem reports
Related fixes
Related guides worth a look while you sort this one out:
- how to clear Mazak alarm 200 spindle overload after carbide roughing on Integrex
- how to clear Mazak system alarm 110 servo amp ready signal off on M5 turn-off
- how to interpret Fanuc SP9001 spindle alarm after VFD trip on lathe
- how to interpret Haas alarm 993 short circuit detection on spindle motor lead
- how to recover Mazak ATC alarm 213 magazine pot position not confirmed
- how to clear Fanuc PS0411 servo excess error position deviation alarm on 30i-B