Solved

Digi Neo Multiport serial card with SCO Openserver 5.07

Posted on 2009-05-18
11
732 Views
Last Modified: 2013-12-05
Hi experts,
I hav a Digi Neo 8 port serial card installed in an HP Proliant ML310, running SCO Openserver 5.07 . Attached to the serial ports are 3 different laboratory instruments . My problem is the following : when sending data to the instruments via the serial port, the instrument only receives the first 56 bytes, rest is discarded. In recieving data from the instruments ther is no limit in the number of recieved bytes. Ports work properly when a teminal is attached to them.
A "cat" of a file to the port shows the same problem : only the first 56 bytes are transmitted.

I've contacted Digi internaitional support, they claim it's a flow control issue.

Anyone out there who has had or heard of such a problem before ?

0
Comment
Question by:hapee
  • 6
  • 3
  • 2
11 Comments
 
LVL 90

Assisted Solution

by:John Hurst
John Hurst earned 60 total points
ID: 24411693
I think Digi could be correct. It has been well over a decade since I have ever looked at this, but if the instrument can send and Digi can receive it all, then the Digi appears to be working properly.

If the instrument cannot receive all the data, it appears that Digi card is sending faster than the instrument can take it. That is, the instrument is slower that the Digi card.

1. Can you set the Digi card serial speed? It has probably defaulted to 115 Kbaud. Try moving it down to 9.6Kbaud or 19.2Kbaud and see it that helps.
2. Is there a character in your file that appears to the instrument to be a flow control character? Characters like CR, LF, XOFF (Ctrl-S), XON (Ctrl-Q) or any other character less than decimal 31.

... Thinkpads_User
0
 

Author Comment

by:hapee
ID: 24411833
Speeds for the serial ports are 9600 for 2 instruments, 2400 for the third one. Until a week ago, communicatoin was running fine with a Digiboard Acceleport Xem. Due to a system crash, I had to change the Unix server, as well as the Digi card (PCI Express card). Software uses the same settings as before, no change in cabling ...

When running the same driver on the tty1a (the computer's own serial port) everything is ok.

There are no special characters in the transmitted strings, besides STX, ETX,CR,LF. Strings start with STX, end with ETX + checksum + CRLF. When the transmitted string length is less then 56 bytes, everything passes normally. (ASTM format for 2 instruments)
0
 
LVL 90

Assisted Solution

by:John Hurst
John Hurst earned 60 total points
ID: 24412062
I have used a couple of name brand cards (I cannot recall if they were Digi)  for serial port communications to radio dispatch gear. They initially worked in old computers, but we had to use new computers for the project and the cards just didn't work in these new computers. I substituted white box generic multiple serial port cards from the local parts store and moved on. Your last post added some information not in your first post, so this may be the problem you have. Sorry I cannot be of more assistance. .... Thinkpads_User
0
 

Author Comment

by:hapee
ID: 24412172
Thanks for your effort anyway

hapee
0
 
LVL 14

Assisted Solution

by:mikelfritz
mikelfritz earned 40 total points
ID: 24442298
What flow control are the digi ports set to?

stty -a < /dev/ttyxxx

compare the settings to /dev/tty1a


Do the devices use hardware or software flow control?

When you say a terminal works fine; do you mean you can cat this file to the terminal and it displays all of the data?
0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 

Author Comment

by:hapee
ID: 24464897
Hi,
Settings for /dev/tty1a and /dev/tty1nx (vi stty -a ...) are the same
I've tried to turn all flow control off, same result
When sending data (cat > /dev/tty...) to a terminal (emulatoin program) only the first 56 bytes are transmitted ...
0
 
LVL 14

Assisted Solution

by:mikelfritz
mikelfritz earned 40 total points
ID: 24472309
So the terminal works if you enable login on the port then?





0
 

Author Comment

by:hapee
ID: 24472424
Yes, the terminal works perfectly on all ports
0
 
LVL 90

Assisted Solution

by:John Hurst
John Hurst earned 60 total points
ID: 24472466
Hello hapee - Is it feasible to try a different serial port card? I suggest this because the range of ideas for a working serial port have been explored and nothing is working for you.
... Thinkpads_User
0
 

Author Comment

by:hapee
ID: 24472783
I'm afraid that is not an option, or at least not immediately. I think I will try to change the cabling (shorcircuit all hardware flow control on the Digi Neo and the instrument side), since the loopback test also works.
I will let you know the results !
0
 

Accepted Solution

by:
hapee earned 0 total points
ID: 24847018
Replaced the Digi Neo by a Moxa Nport Lite, which is working properly.
0

Featured Post

How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

Join & Write a Comment

My previous tech tip, Installing the Solaris OS From the Flash Archive On a Tape (http://www.experts-exchange.com/articles/OS/Unix/Solaris/Installing-the-Solaris-OS-From-the-Flash-Archive-on-a-Tape.html), discussed installing the Solaris Operating S…
Every server (virtual or physical) needs a console: and the console can be provided through hardware directly connected, software for remote connections, local connections, through a KVM, etc. This document explains the different types of consol…
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now