CNC machine down? Speak directly to Keith
Squidex Solutions Ltd · Co. No. 10695481
Programming & Macro
522 Mill & Lathe

HAAS® Alarm 522 — ILLEGAL ASSIGNMENT VAR OR VALUE

What it means

You've tried to assign a value to a system variable that's read-only, or assigned a value type the variable doesn't accept.

Common causes

  • Writing to a system #variable that the control reserves
  • Assigning a non-numeric value somewhere a number is required

What to check first

  • Check the variable in the HAAS®<sup class="reg">®</sup> macro reference — is it read-only?
  • Confirm the value being assigned is the right type

Prevention

Programming alarms are best prevented at the post-processor and verification stages. Always verify a new program in single-block mode with rapid override at 5–10% before committing to a full run. Keep a small library of tested macros rather than rewriting logic each job — and comment your variables clearly so the next person (or future-you) can read them.

If you’re still stuck

If you’ve worked through the checks above and the alarm hasn’t cleared — or if it cleared and came back — that’s the point to call. Persistent alarms after a reset usually mean a real component fault, and pushing through them risks turning a simple repair into a bigger one. Keith covers HAAS® breakdowns across the UK with same-day phone diagnosis.

A note on this guide. Alarm wording and numbering can vary by HAAS® machine model and software revision. The descriptions here are written in plain English to help you understand what the machine is reporting and what to check first — they’re not a substitute for the official HAAS® operator manual or for a qualified service engineer’s diagnosis. Always confirm the exact alarm message on your screen and consult your machine’s documentation before attempting any repair.