Page 1 of 1

Getting Error 8020 when send RSR-232 messages

Posted: Wed Dec 01, 2010 7:34 am
by maughangl
Hi everyone,

I work at a small comedy theater that has been using SCS for several years to run our tech, and we finally decided that because we have minimal lighting cues we'd like to run those off the computer as well. The setup we decided on was to use SCS sending RSR-232 messages through a RSR-to-DMX converter box out to our DMX dimmers. The box we've got is something made by Engineering Solutions Inc. out of Utah, USA and it appears to be working as advertised. The problem is this: every time I send a RSR cue it goes through the box and activates, but I get an "Error 8020" message from SCS. After a while, the cues stop going through.

Any idea what this means and if I can fix it?

Re: Getting Error 8020 when send RSR-232 messages

Posted: Wed Dec 01, 2010 7:53 am
by maughangl
If it's more helpful, the full error message I get is:


Error 8020 Error reading comm device
SCS 10.7.4
ProcName = MSComm1_OnComm(0)
CueFile = C:\Users\PHIT\SHOW CUE FILES\Test File\DecaBox Test\DecaBox Test.scs

Continue with the program?

Yes No


I should add that if I'm sending more complex RSR commands for things like cross fades I'll get the message popping up more times. For a simple lights up on one channel I get the message 2 times. For something sending to 8 channels with a timed change I get 10 messages. All the messages are the same.

Re: Getting Error 8020 when send RSR-232 messages

Posted: Wed Dec 01, 2010 1:48 pm
by Mike Daniell
The info from Microsoft on Error 8020 is as follows:

Symptoms
When you use the Input method of the MSComm control with some serial ports, the MSComm.Input method may fail, and you may receive the comReadError error (error 8020).

Cause
This problem occurs because MSComm.Input reads only the bytes that are immediately available in the serial driver. By design, MSComm.Input does not return any bytes if the serial driver has not received any bytes. Because the MSComm control does not expect the ReadFile method to return ERROR_IO_PENDING, MSComm returns the comReadError error if this occurs.

Resolution
A serial driver should return SUCCESS synchronously for all read requests that can be immediately fulfilled with data that is currently present.
This problem is only known to occur with some third-party serial drivers. To correct the problem, contact the manufacturer of the serial driver to obtain an updated driver.


As the above info refers to the 'input' method of the MSComm control, do you have 'RS232 In' selected for any of your RS232 Comm Ports? If so, and if you don't need it set, then clear the 'RS232 In' checkboxes.

Also check that the comm port settings in the SCS Options are correct for the device you are interfacing. For example, is the Handshaking setting correct?

Finally, if all the settings are correct, Microsoft's advice is to "contact the manufacturer of the serial driver to obtain an updated driver."

hth