Edge troubleshooting
Check each connection separately. Preserve the connector/work-center/order identifiers and the time with timezone. Use sanitized logs; exclude credentials, state files, and unrelated production payloads.
Startup or registration fails
| Symptom | Check / recovery |
|---|---|
| Not registered | Working directory and persistent state; obtain a current registration token only for a new authorized registration. |
| Registration rejected | Complete unexpired token, intended deployment, one-time use, hardware identity. |
| Pending approval | Administrator approval, scoped service identity, assignments; restart after approval. |
| Revoked / forbidden | Connector state, current service grants, IP restrictions, correct scope. |
| Invalid credentials | Provisioned key/identity, token expiry, clock, credential rotation. |
| SQLite or file errors | Writable directories, available disk, ownership, existing state. |
Do not delete edge-config.json to repair an approval or credential failure. It holds the host's identity and secrets.
Cloud sync fails or orders are missing
Verify the API and WebSocket URLs separately, DNS, proxy/firewall rules, and TLS. Check last heartbeat and actual sync results. A connected WebSocket does not prove order retrieval.
Check work-center assignments and read authority. The cloud order endpoint selects released and in-progress orders; a planned or completed order can be absent by design. Compare business work-center codes with database references at the relevant interface. Do not assume the cache is current after a reconnect.
PLC reads or writes fail
Verify the actual OPC UA endpoint and port, supported mode/policy, certificate trust, user credentials, node ID, type, and access. Read one known safe value first. Then verify the selected order and a supported write at the PLC. A saved mapping alone does not confirm a write.
A generic production subscription has no populated order number in the current dispatcher. Missing cloud progress may require a tested explicit reporting adapter rather than a different node name.
Local report succeeds but cloud state is unchanged
Local success means buffered input. Inspect cloud connectivity, event-buffer pending/failed/dead-letter state, expiry, order identity, and per-event result. The default age limit is 72 hours; repeated failure can move work out of automatic processing. Reconcile the original cloud state before retrying.
The current cloud production handler treats quantity as a total. A client expecting an additive quantity must not resend or accumulate values without confirming semantics. Scrap and station-progress paths have separate implementation limits; see API reference.
Labels do not appear
Check the print job's assigned connector, printer identity/alias, raw TCP target and port, network access, printer language, copies, media, and physical printer state. An alias can resolve through ENNEA_PRINTER_<ALIAS>; a deployment can supply ENNEA_DEFAULT_LABEL_PRINTER. A reported TCP success is not physical-label proof. Check uncertain or already printed jobs before repeating them.
Escalate
Provide package version, connector ID, scope, time, affected work center/order, failing stage, safe error, and whether local acceptance or cloud application was observed. Preserve local state and original event IDs. Your administrator or implementation contact can arrange reconciliation and a controlled test. See Support.