How does CIUMon respond to errors?

How does CIUMon respond to errors?

Errors affecting CIUMon fall into four basic categories:

  1. Loss of communication with either the CIU or clients.
  2. Responses from the CIU indicating a communication problem.
  3. Responses from the CIU indicating some other type of problem.
  4. Conditions where multiple events happen at effectively the same time.

In CIUMon log files, every error is marked with the word "error". By searching for "error" in the log file, you can find all errors.

Most of these errors are very rare.

Loss of communication

If CIUMon stops getting responses from the CIU, it will attempt an environment fetch every ten seconds until it succeeds. Usually this happens if the CIU is restarted. Once the CIU has finished restarting, it will respond to the next environment fetch, and communication will be reestablished.

If CIUMon is not receiving any requests from one or more connected programs (such as Hyperview), it will perform an environment fetch every thirty seconds (by default) to check that the connection to the CIU is still up. The time between environment fetches is controlled by the setting Elapsed time before connection check.

Responses from the CIU indicating a communication problem

You may find these errors when you are looking at CIUMon logs. They indicate that either some request was not successfully received by the CIU, or some response was not successfully returned to the CIU.

Error code (in hex) Meaning Cause How CIUMon responds
06 Command too long The end of line byte was missed, so that two commands appeared to the CIU to be one long command. This is sometimes caused by CIUMon sending commands too rapidly, which is a known problem that we are currently addressing. If the previous command was a request to fetch data, it may have been executed despite the problem, so CIUMon will cancel it and reissue it. This will work whether the request was executed or not.
0C Host communication error A data transmission error was detected. Common causes are line noise or a speed mismatch on the serial port.
11 Illegal key Usually, this indicates that the key requested is already in use. CIUMon dequeues the key and reissues the command.
17 No message queued / dequeue received The contents of a key were requested but the key is not active. CIUMon reissues the command requesting the data. The key is reused.
1B Time-out between bytes in command Communication problem. CIUMon dequeues the key involved and retries the command.
1F Checksum compare error When communications have been established, this indicates a problem with the transmission from CIUMon. CIUMon re-sends the problem transmission.
23 CIU busy The CIU is busy. CIUMon retries.
28 Destination node busy The destination node is busy. CIUMon retries.
29 Destination ring busy The destination ring is busy. CIUMon retries.
6E Module not responding. This can indicate that the module has gone offline. CIUMon does not retry the request. It notifies the program that requested the data (Hyperview or CIULink) that the data is unavailable.

Responses from the CIU indicating other problems

Like the responses indicating communication problems, you may see these in CIUMon logs.

Error code (in hex) Meaning Cause How CIUMon responds
02 Improper format The command CIUMon sent was formatted wrong. This error is very rare. It may indicate a bug in CIUMon. If you see this error, please contact us.
03 Illegal command CIUMon sent an illegal command. This error is very rare. It may indicate that CIUMon is using a type of request that your CIU does not support. If so, CIUMon will revert to using a different request type. If you see this error more than once, please contact us.
0C Host communication error A data transmission error was detected. Common causes are line noise or a speed mismatch on the serial port.
1F Checksum compare error When communications have not been established yet, this indicates that CIUMon is attempting to connect directly to an ICI03 class CIU. CIUMon cannot connect directly to some types of CIU. It must be connected through RoviSys Turbo. Please see Methods of connecting CIUMon to a CIU for details.
25 Conflict with monitor mode The CIU can't process CIUMon's request for data. This error may indicate that your CIU is not configured correctly. It may also mean that CIUMon is using a type of request that your CIU does not support. If so, CIUMon will revert to using a different request type. If you see this error more than once, please contact us.
27 Destination ring off-line The destination ring is offline. CIUMon cannot communicate with it at this time. CIUMon stops trying to get data until a successful CIU environment fetch indicates that the CIU is online again.
67 Message data out of legal range The request for data might be using parameters that your CIU doesn't support. CIUMon does not retry the request. It notifies the program that requested the data (Hyperview or CIULink) that the data is unavailable.

Conditions where multiple events happen at effectively the same time

Two or more communications events sometimes happen at effectively the same time. This is visible in the log as multiple events at the same timestamp. In older versions of CIUMon, simultaneous events sometimes caused errors. Current versions of CIUMon should not have any problem handling simultaneous events. If you have an error that you believe may have been caused by simultaneous events, please contact us.

Checksum errors

Checksums are used to check whether communications between CIUMon and the CIU have somehow gotten garbled during the transmission. If you are seeing a lot of checksum-related errors, this usually means that there is a communication problem between CIUMon and your CIU. Check the cable that connects the CIUMon computer to your CIU.

Additionally, having CIUMon set to use XON/XOFF flow control can sometimes cause the checksum to be off by exactly 13 during some types of communications. In most cases, you should not use XON/XOFF flow control. To make sure that XON/XOFF flow control is turned off:

  1. On the Options menu, click CIUMon Settings.
  2. Click the Comm and Flow Control Settings tab.
  3. Clear the XON/XOFF Output Control and XON/XOFF Input Control check boxes.