RS-485

Hi…

I tried -unsuccessfully- to communicate via a board with RS 485. Can rtp
handle this? If so, how?

Thanks…

Regards…

Miguel.

Hi Miguel,

Could you explain a little bit wider… Which board? What exactly are you
doing to try communicate? And by the way, what’s connected at other side of
link?

Best regards,
Eduard.

Miguel Simon <simon@ou.edu> wrote in message news:3E3BA27A.8040209@ou.edu

Hi…

I tried -unsuccessfully- to communicate via a board with RS 485. Can rtp
handle this? If so, how?

Thanks…

Regards…

Miguel.

“Miguel Simon” <simon@ou.edu> wrote in message
news:3E3BA27A.8040209@ou.edu

Hi…

I tried -unsuccessfully- to communicate via a board with RS 485. Can rtp
handle this? If so, how?

Not really, for RS 485 a control line need to be set (RTS from memory) to
driver the bus. You could in theory driver the RTS line yourself from you
application but in practice that doesn’t work :wink: From expericence the best
way to do this is to customize the serial driver from your specific
hardware. You just need to activate RTS during transmission :wink:

There are some adapter RS232<->RS-485 that handle driving and releasing the
line automaticaly but I’ve never seen one that 100% reliable.

Thanks…

Regards…

Miguel.

QNX postmaster@127.0.0.1 wrote:

“Miguel Simon” <> simon@ou.edu> > wrote in message
news:> 3E3BA27A.8040209@ou.edu> …
Hi…

I tried -unsuccessfully- to communicate via a board with RS 485. Can rtp
handle this? If so, how?

Not really, for RS 485 a control line need to be set (RTS from memory) to
driver the bus. You could in theory driver the RTS line yourself from you
application but in practice that doesn’t work > :wink: > From expericence the best
way to do this is to customize the serial driver from your specific
hardware. You just need to activate RTS during transmission > :wink:

There are some adapter RS232<->RS-485 that handle driving and releasing the
line automaticaly but I’ve never seen one that 100% reliable.

Are you trying to implement a multi-drop protocol? If not, I have
worked with several RS-485 boards in point-to-point. It works great
when all you want to the longer distance line drivers.

In a multi-drop environment, it will still work OK as the master end
where you can assume that you may always transmit. As the slave end,
now your talking about writing you own serial line driver to turn on RTS,
wait for CTS, (probibly wait an appropriate time for the line to
stableize) transmit your data, turn off RTS, etc.

But really, even if you DO have to do all of that, it isn’t that
much work.

\

Bill Caroselli – Q-TPS Consulting
1-(626) 824-7983
qtps@earthlink.net

It depends on two things some RS232-RS485 handle full-duplex assuming
you are in 4 wires, otherwise you are in half-duplex and you need to
modify a devc-serxxxx to control emit/receive inversion. Mine is
controlled by DTR.

regards,
Alain.

QNX a écrit:

“Miguel Simon” <> simon@ou.edu> > wrote in message
news:> 3E3BA27A.8040209@ou.edu> …


Hi…

I tried -unsuccessfully- to communicate via a board with RS 485. Can rtp
handle this? If so, how?



Not really, for RS 485 a control line need to be set (RTS from memory) to
driver the bus. You could in theory driver the RTS line yourself from you
application but in practice that doesn’t work > :wink: > From expericence the best
way to do this is to customize the serial driver from your specific
hardware. You just need to activate RTS during transmission > :wink:

There are some adapter RS232<->RS-485 that handle driving and releasing the
line automaticaly but I’ve never seen one that 100% reliable.



Thanks…

Regards…

Miguel.



\

Hi Eduard…

ed1k wrote:

Hi Miguel,

Could you explain a little bit wider… Which board? What exactly are you
doing to try communicate? And by the way, what’s connected at other side of
link?

For example, I have a SeaLevel (www.sealevel.com) COMM+2 PCI board, I
can see the board when I do pci -vv. Mount the board, but nothing…

This is what I have in the rc.local file

/sbin/devc-ser8250 -b 19200 -F 3f8,4 -F dfe0,11 -F dfa8,11 &

but it does not work.

Also, have used some Ampro EBC wich have two wire RS-485, but cannot
make it work.

Any suggestions?

regards…

Miguel.


Best regards,
Eduard.

Miguel Simon <> simon@ou.edu> > wrote in message news:> 3E3BA27A.8040209@ou.edu> …

Hi…

I tried -unsuccessfully- to communicate via a board with RS 485. Can rtp
handle this? If so, how?

Thanks…

Regards…

Miguel.
\

Hi…

QNX wrote:

“Miguel Simon” <> simon@ou.edu> > wrote in message
news:> 3E3BA27A.8040209@ou.edu> …

Hi…

I tried -unsuccessfully- to communicate via a board with RS 485. Can rtp
handle this? If so, how?


Not really, for RS 485 a control line need to be set (RTS from memory) to
driver the bus. You could in theory driver the RTS line yourself from you
application but in practice that doesn’t work > :wink: > From expericence the best

I agree that this is a cumbersome way to go about it.

way to do this is to customize the serial driver from your specific
hardware. You just need to activate RTS during transmission > :wink:

Too much work

There are some adapter RS232<->RS-485 that handle driving and releasing the
line automaticaly but I’ve never seen one that 100% reliable.

This is what I have done. Thanks for your reply.

Regards…

Miguel.

Thanks…

Regards…

Miguel.
\

Hi Bill…

Bill Caroselli wrote:

QNX postmaster@127.0.0.1 wrote:

There are some adapter RS232<->RS-485 that handle driving and releasing the
line automaticaly but I’ve never seen one that 100% reliable.


Are you trying to implement a multi-drop protocol? If not, I have

Yes.

worked with several RS-485 boards in point-to-point. It works great
when all you want to the longer distance line drivers.

In a multi-drop environment, it will still work OK as the master end
where you can assume that you may always transmit. As the slave end,
now your talking about writing you own serial line driver to turn on RTS,
wait for CTS, (probibly wait an appropriate time for the line to
stableize) transmit your data, turn off RTS, etc.

But really, even if you DO have to do all of that, it isn’t that
much work.

I agree, but I have more work that what I can handle. I do not have the
time to develop + debug + implement something like that. I was more
curious to see if there was some kind of native support, but in
hindsight, it was dumb to expect something like that in rtp. Oh well.

Thanks.

Regards…

Miguel.

Miguel Simon wrote:

[snip]

worked with several RS-485 boards in point-to-point. It works great
when all you want to the longer distance line drivers.
In a multi-drop environment, it will still work OK as the master end
where you can assume that you may always transmit. As the slave end,
now your talking about writing you own serial line driver to turn on
RTS,
wait for CTS, (probibly wait an appropriate time for the line to
stableize) transmit your data, turn off RTS, etc.

But really, even if you DO have to do all of that, it isn’t that much
work.


I agree, but I have more work that what I can handle. I do not have
the time to develop + debug + implement something like that. I was
more curious to see if there was some kind of native support, but in
hindsight, it was dumb to expect something like that in rtp. Oh well.

Actually, it’s dumb that QNX has no 485 support. 485 is really useful
for a lot of real-time controls. That being said, there is also a strong
argument for using one of the 232 - 485 converters. I’ve had good luck
with Advantech’s ADAM units. The handle line turn around nicely and also
provide pretty good isolation. I’d rather have lightning take out a
converter, than the computer.

In article <3E456D65.9050001@ou.edu>, simon@ou.edu says…

Hi Miguel,

For example, I have a SeaLevel (> www.sealevel.com> ) COMM+2 PCI board, I
can see the board when I do pci -vv. Mount the board, but nothing…

This is what I have in the rc.local file

/sbin/devc-ser8250 -b 19200 -F 3f8,4 -F dfe0,11 -F dfa8,11 &

but it does not work.

I spent a bit of time and have looked at provided link. Good new is that they know about QNX, and
it’s written they provide drivers, utilities, application notes, and technical details to simplify
installations in DOS, QNX, and LINUX. So, if you have no floppy disk with drivers, you might want to
contact them, because bad news is that their ftp seems to be down. Here is the next quote from
the manufacturer’s site: “Our onboard auto-enable hardware automatically handles the RS-485 driver
enable allowing the RS­485 ports to be treated as standard serial ports by the operating system.
This allows the standard COM driver to be utilized for RS­485 communications”. So, your board should
work with standard serial driver (I did not say must :slight_smile:). I can not tell you why it doesn’t work…
If you need help in this particular case, please tell us the output of pci -vvv (part concerning of
your serial board). I worked with the RS232 PCI board and it did work with devc-ser8250 driver under
QNX. I can’t tell you if it worked reliable or fully functional, because our goal was to use
RS232/RS485 external converter (company where I worked manufactures this converters for their
needs). These converters use RTS line to switch directions, so we used DOS software which worked
directly with UART. For evaluation purposes I ported that software to QNX… it worked fine too. Of
course, it would be better to develop driver, but it was not our goal to use QNX or support QNX
based soft PLC in our environment. Usually in that environment the master device is some custom
board (not PC), for example: http://www.triolcorp.com/english/produktion/umka_e.htm
Only few customers are going to use PC as master device so far.
Our PC software used to update firmware (reprogram flash memory) of existing IGBT invertors on RS485
network and we used some own tricks to enter this mode (these conditions are impossible under any
circumstances in normal function), such special so I had to not use FIFO :slight_smile: Of course, there is
hardware protection on IGBT (jumpers), but you know…
And returning to your problem. If you have no time or budget to develop/modify driver it might be
reasonable to look for serial boards’ manufacturer who support QNX, provide drivers and some
assistance. For example, I know Connect Tech provide QNX drivers for some boards…

Also, have used some Ampro EBC wich have two wire RS-485, but cannot
make it work.

Someone has to look at this board, technical papers if they are… and make it working :slight_smile: it won’t
start to work itself.

BTW. We used two wire RS-485 (are there other variants for RS485?) and master/slave protocol
(Modbus).

Best regards,
Eduard.

Any suggestions?

regards…

Miguel.

Hi David…

David Hawley wrote:

Miguel Simon wrote:




Actually, it’s dumb that QNX has no 485 support. 485 is really useful
for a lot of real-time controls. That being said, there is also a strong
argument for using one of the 232 - 485 converters. I’ve had good luck
with Advantech’s ADAM units. The handle line turn around nicely and also
provide pretty good isolation. I’d rather have lightning take out a
converter, than the computer.

Yup. I agree. I did use the ADAM module too. It is actually cheaper to
buy a module than to spend any time developing any driver.

Thanks for your suggestions.

Regards…

Miguel.

Hi Eduard…

Eduard wrote:

In article <> 3E456D65.9050001@ou.edu> >, > simon@ou.edu > says…

Hi Miguel,


For example, I have a SeaLevel (> www.sealevel.com> ) COMM+2 PCI board, I
can see the board when I do pci -vv. Mount the board, but nothing…

This is what I have in the rc.local file

/sbin/devc-ser8250 -b 19200 -F 3f8,4 -F dfe0,11 -F dfa8,11 &

but it does not work.


I spent a bit of time and have looked at provided link. Good new is that they know about QNX, and
it’s written they provide drivers, utilities, application notes, and technical details to simplify
installations in DOS, QNX, and LINUX. So, if you have no floppy disk with drivers, you might want to
contact them, because bad news is that their ftp seems to be down. Here is the next quote from
the manufacturer’s site: “Our onboard auto-enable hardware automatically handles the RS-485 driver
enable allowing the RS­485 ports to be treated as standard serial ports by the operating system.
This allows the standard COM driver to be utilized for RS­485 communications”. So, your board should
work with standard serial driver (I did not say must > :slight_smile:> ). I can not tell you why it doesn’t work…

You are right, it should have worked, but it did not for me.

If you need help in this particular case, please tell us the output of pci -vvv (part concerning of
your serial board). I worked with the RS232 PCI board and it did work with devc-ser8250 driver under
QNX. I can’t tell you if it worked reliable or fully functional, because our goal was to use
RS232/RS485 external converter (company where I worked manufactures this converters for their
needs). These converters use RTS line to switch directions, so we used DOS software which worked
directly with UART. For evaluation purposes I ported that software to QNX… it worked fine too. Of
course, it would be better to develop driver, but it was not our goal to use QNX or support QNX
based soft PLC in our environment. Usually in that environment the master device is some custom
board (not PC), for example: > http://www.triolcorp.com/english/produktion/umka_e.htm
Only few customers are going to use PC as master device so far.
Our PC software used to update firmware (reprogram flash memory) of existing IGBT invertors on RS485
network and we used some own tricks to enter this mode (these conditions are impossible under any
circumstances in normal function), such special so I had to not use FIFO > :slight_smile: > Of course, there is
hardware protection on IGBT (jumpers), but you know…
And returning to your problem. If you have no time or budget to develop/modify driver it might be
reasonable to look for serial boards’ manufacturer who support QNX, provide drivers and some
assistance. For example, I know Connect Tech provide QNX drivers for some boards…

Yes, this is a more reasonable approach. I actually used a RS-232 -
RS-485 converter. This works fine.

Thank you for your suggestions.

Regards…

Miguel.

Also, have used some Ampro EBC wich have two wire RS-485, but cannot
make it work.


Someone has to look at this board, technical papers if they are… and make it working > :slight_smile: > it won’t
start to work itself.

BTW. We used two wire RS-485 (are there other variants for RS485?) and master/slave protocol
(Modbus).

Best regards,
Eduard.


Any suggestions?

regards…

Miguel.

It’s not difficult at all. Ask to your local QNX office to get a ‘Non
Disclosure Aggreement’ for the source of the driver you want. I did that
for devc-ser8250 and devc-serzscc. Then, some minor modifications are
necessary to manage a half duplex communication. You can realise a very
cheap RS232-RS485 converter, just a MAX232 and a 75176.

Alain.

Miguel Simon a écrit:

Hi David…

David Hawley wrote:

Miguel Simon wrote:





Actually, it’s dumb that QNX has no 485 support. 485 is really useful
for a lot of real-time controls. That being said, there is also a
strong argument for using one of the 232 - 485 converters. I’ve had
good luck with Advantech’s ADAM units. The handle line turn around
nicely and also provide pretty good isolation. I’d rather have
lightning take out a converter, than the computer.


Yup. I agree. I did use the ADAM module too. It is actually cheaper to
buy a module than to spend any time developing any driver.

Thanks for your suggestions.

Regards…

Miguel.

Hi Alain…

Thank you for your insight! Will follow through.

regards…

Miguel.

Alain Bonnefoy wrote:

It’s not difficult at all. Ask to your local QNX office to get a ‘Non
Disclosure Aggreement’ for the source of the driver you want. I did that
for devc-ser8250 and devc-serzscc. Then, some minor modifications are
necessary to manage a half duplex communication. You can realise a very
cheap RS232-RS485 converter, just a MAX232 and a 75176.

Alain.