Docs
/
Troubleshoot
/

Reading Status, Quality & Errors

Reading Status, Quality & Errors

Every device, tag, model, binding, and scan group in Koios reports its health the same way: a status, and — when something goes wrong — three diagnostic error fields. This page is the shared reference for reading those signals and for looking up any error code you see anywhere in the product.

Start here, then follow the link for your specific error code to the article that owns its cause and fix.

The Three Diagnostic Fields

When an entity hits a problem, Koios records three pieces of information:

  • Error Code: a category that identifies what kind of failure occurred (e.g. 1 — Failed to Connect).
  • Error Message: a short, human-readable description of the problem.
  • Error Detail: additional context, typically the underlying exception or system message that caused the failure.

Together they tell you what went wrong, why, and where to start investigating. The error code points you to the right troubleshooting article (see the master lookup below); the error message and error detail give you the specifics for that instance.

Status Legend

Every entity reports one of three stored statuses — Running, Stopped, or Failed. The rest of the states below are derived at display time by combining that status with the entity's enabled flag, its parent's state, and any advisory or test conditions.

StatusColorMeaning
RunningTealEnabled entity operating normally.
StoppedGrayDisabled or cleanly stopped entity.
FailedRedThe entity hit a failure; an error message is shown.
StartingGrayTransitional: enabled but not yet running (spinning up). Shown as an animated spinner.
StoppingGrayTransitional: disabled but still shutting down. Shown as an animated spinner.
WarningAmberRunning, but with an advisory (e.g. overscanning). Behavior is normal; the amber strip flags attention.
TestingVioletA manual test-output override is active (test mode). Overrides the normal status display.
Parent DisabledGrayStopped because the parent device or scan group is disabled. Not a transition — genuinely idle until the parent is enabled.

Data Quality Legend

Each tag also carries a quality value describing how much you can trust its most recent reading. Quality is a free-form string, so the exact text depends on the protocol, but it collapses to a few meanings:

QualityColorMeaning
GoodTealSuccessful read; the value is trustworthy.
BadRedRead failed or the value is not trustworthy. Set on any read exception across every protocol. Drives tag error code 107 — Bad: Read Quality.
UncertainAmberOPC-UA only: the server returned an Uncertain-class status code. A value is present but the source flagged it as questionable.
OPC-UA status code nameGrayFor OPC-UA reads, quality is the raw status code name (e.g. Good, Uncertain, Bad_NodeIdUnknown). Any Bad_* code, or an exception, collapses to Bad.

Where Errors Surface

The same three fields appear in several places across the product:

  • Detail page hero + red strip: a device, tag, model, or binding's Overview tab shows the status hero at the top. In a Failed state, a red error strip appears below it with the error message and detail. Click it to copy.
  • List tooltips: in list tables, each row shows a colored status icon. Hovering a red icon displays that entity's error message as a tooltip.
  • Parameters / Live Data: all three fields (error code, error message, error detail) are visible under the Parameters tab's Live Data section, alongside live values, timestamp, and scan progress.
  • Bindings tab (models): each binding card turns red and expands to show its own error message and detail inline — the most precise view of which input or output failed.

Auto-Clear Behavior

You never manually acknowledge or dismiss an error. Errors clear on their own: once the underlying issue is resolved, the next successful scan or inference cycle resets the error code to None and clears the message and detail.

An error code of 0 (None) means the entity has no active error — you will see this on healthy entities and after a problem resolves.

Stuck-Entity Checklist

If an entity stays failed and does not recover on its own, work through these five steps in order:

  1. Read the error message and detail. They name the specific failure. Look up the error code in the master lookup to find the article that covers its cause and fix.
  2. Review the logs at Debug level. Open the entity's Logs tab and raise the log level for maximum detail. See System Logs for setting the Debug level and streaming logs.
  3. Verify the configuration. Check the connection parameters (devices) or protocol settings (tags) on the Configuration tab.
  4. Use Test. Run a one-time connection or read from the Configuration tab to reproduce the error in isolation, without enabling the entity.
  5. Toggle off and on. Flip the Enabled switch off, then on, to force a fresh start.

Master Error-Code Lookup

Every error code in Koios is listed below, grouped by the entity it belongs to. Each row links to the troubleshooting article that owns the cause and fix for that code. This page is the index — the detailed remediation lives in the linked article.

Error codes are non-contiguous by design (they band by failure stage), so gaps in the numbering are expected.

Device Error Codes

CodeMeaningWhere to go
0None — operating normally
1Failed to ConnectConnection
5Failed to Read from DeviceTag Values
6Failed to Write to DeviceTag Values
7Failed to Read Config from DatabaseConnection
11Failed to InitializeConnection
12Failed to Write to Model HistoryStale Data
13Failed to Write to Long Term HistoryStale Data
14Failed to Update HeartbeatServices & Alarms
15Failed to CleanupServices & Alarms
16Failed to Validate TagsConnection
17Failed to Write ExecutionsServices & Alarms
999UnlicensedLicensing

Tag Error Codes

CodeMeaningWhere to go
0None — value is good
1Parent Device FailedConnection
2Generic ExceptionTag Values
100Bad: GeneralTag Values
101Bad: Failed to WriteTag Values
102Bad: Node Not FoundTag Values
103Bad: Not a NumberTag Values
104Bad: Configuration ErrorTag Values
105Bad: No ValueTag Values
106Bad: Failed to ReadTag Values
107Bad: Read QualityTag Values
108Mapping ErrorExpressions & Mapping
109No Active DeviceConnection
110Bad: ExpressionExpressions & Mapping
200Failed to HistorizeStale Data
999UnlicensedLicensing

Model Error Codes

CodeMeaningWhere to go
0None — operating normally
1No File GivenModels
2No File FoundModels
3Failed to Parse FileModels
4Failed to Get Model DepthModels
5Failed to Get BindingsModels
6Bindings Invalid StateModels
7Failed to Structure HistoryModels
8Failed to Get PredictionsModels
9Binding Prediction Index MissingModels
10Failed to Scale PredictionsModels
11Failed to Write PredictionsModels
12Thread ErrorModels
13Generic ExceptionModels
999UnlicensedLicensing

Binding Error Codes

CodeMeaningWhere to go
0None — operating normally
1Not Enough Historical DepthModels
2Stale History DataModels
3No Range GivenModels
4Invalid Range GivenModels
5Value Out of RangeModels
6Failed to NormalizeModels
7Failed to Structure HistoryModels
8Prediction Index MissingModels
9Failed to Scale PredictionModels
10Failed to Write PredictionModels
11Binding Tag DisabledModels
12Binding Tag Bad QualityModels
13Binding Tag FailedModels
14Binding Tag Not AssignedModels
15Binding Not in DictionaryModels
16Failed to Structure Input DataModels
17Upstream Model FailureModels
18General Model FailureModels
19Rate of Change ExceededModels
20On-Demand Read FailedModels
21Invalid CalibrationModels
999UnlicensedLicensing

Scan Group Error Codes

CodeMeaningWhere to go
0None — running normally
1OverscanServices & Alarms
2On-Demand Read FailedServices & Alarms
3On-Demand Write FailedServices & Alarms
99Generic ExceptionServices & Alarms

What's Next