Hakko MONITOUCH — 'Error code received' (NAK)
Hakko · intermediate · 20 min
A Hakko MONITOUCH panel showing 'Error code received' means the PLC replied with a NAK/error — usually because a screen references an out-of-range PLC address. When it fires right at startup, the culprit is a global setting address, not a per-screen one.
ℹ️ On a Hakko MONITOUCH, 'Error code received' means the PLC returned a NAK / error code in reply — the panel reached the PLC, but the PLC rejected the request. The usual cause is a PLC address that's out of range or illegal for a device on the screen.
What 'Error code received' actually means
Hakko MONITOUCH panels (V9/V10, made by Hakko Electronics, sold by Fuji Electric) distinguish between no reply and a bad reply. 'Error code received' is the second kind: the PLC answered with a NAK (Negative Acknowledgment) / error code. That's important — it means comms are physically working (the panel reached the PLC), but the PLC rejected the specific request. So don't go chasing cables; chase what you asked the PLC for.
The usual cause: an out-of-range PLC address
The primary cause of 'Error code received' is a PLC device-memory address specified for a screen that is out of range or illegal for that PLC. The panel asks the PLC to read/write an address the PLC doesn't have (or won't allow), and the PLC replies with an error code. Check every PLC address used on the screen where the error appears against what actually exists in the PLC.
The startup case points to a global address
Here's the distinguishing insight for the tricky version: if the error occurs immediately after the V-series starts running, the bad address is almost certainly not on a normal screen — it's in a setting item used on all screens. Check the addresses configured for:
- the read/write control area,
- backlight and buzzer control device memory,
- the alarm server and logging server,
- the scheduler function,
- event timer macros.
These run regardless of which screen is open, so a bad address in any of them throws 'Error code received' the moment the panel starts — a symptom that fools people into suspecting hardware.
Where to fix it
Addresses and connection settings are in V-SFT (Ver. 6) under [Hardware Setting] → [PLC Properties]. Also confirm the basic serial settings (baud, data length, stop bits, parity) and consult the connection manual for your specific PLC model — the valid address ranges differ per PLC.
Step-by-step
- 'Error code received'? The PLC returned a NAK — comms are up, the request was rejected.
- Check the screen's PLC addresses for out-of-range/illegal ones against that PLC's map.
- Error right at startup? Check the global addresses — control area, backlight/buzzer, alarm/logging server, scheduler, event-timer macros.
- Fix the offending address in V-SFT ([Hardware Setting] → [PLC Properties]) and re-transfer.
- Confirm the error is gone on startup and on the affected screen.
Never do this
Don't assume 'Error code received' is a wiring or hardware fault and start swapping cables and panels — the PLC explicitly answered with an error. The fix is almost always a bad address in the project; find it (per-screen or global) and correct it.
Key points
- 'Error code received' means the PLC replied with a NAK/error — comms are working but the PLC rejected the request; don't chase cables.
- The usual cause is a PLC device-memory address on the screen that is out of range or illegal for that PLC.
- If the error appears immediately at startup, the bad address is in a global setting item, not a normal screen.
- Check global addresses: read/write control area, backlight/buzzer control, alarm server, logging server, scheduler, and event-timer macros.
- Fix addresses/settings in V-SFT under [Hardware Setting] → [PLC Properties]; valid ranges differ per PLC — check the connection manual.
Codes and symptoms
- Error code received — PLC returned a NAK
- The PLC answered with a Negative Acknowledgment / error code — comms are up but the request was rejected. Usually an out-of-range or illegal PLC address on the screen.
- Error at startup — Bad global address
- If it fires right after start-up, the bad address is in a global setting: control area, backlight/buzzer, alarm/logging server, scheduler, or an event-timer macro.