Applies To:
  • CitectSCADA 4.xx, 5.xx
  • CitectHMI 4.xx, 5.xx

After adding an I/O Device for Alarm Properties as Tags, I get a compile error.

The error message is something like this:

Type: FATAL Record: 48
Error: Unknown protocol
Context: Line[1]:{10}

When I click "GoTo" it brings me to my newly created "ALARM_TAGS" I/O device. I have followed the help for setting this up. What am I doing wrong?


The solution to this particular problem was project specific. In this case, the "Context" field of the Error message is the best hint. It states: Line[1]:{10}. So from this you can see that the Protocol field is getting a value of 10 instead of "Alarm".

After closer analysis of the project, it was found a Label was defined as:

Name: Alarm

Expression: 10

So the compiler had substituted the value 10 into the Protocol field. Because the value "10" does not exist in the driver list, the Fatal error was generated.

Citect recommends when using Labels to differentiate them from the Variable tags and other Cicode variables they should have an '_' (underscore) in front of them


Labels, Alarm Properties, Tags, Compile, Error