EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: drvAsynSerialPort + RS485
From: Mark Rivers <[email protected]>
To: Florian Feldbauer <[email protected]>, EPICS Tech-Talk <[email protected]>
Date: Thu, 25 Feb 2016 13:50:57 +0000
> Should I provide you a patch file, when the code is finished and tested?

Please use the Github pull request mechanism.  Fork https://github.com/epics-modules/asyn into your personal github account, clone that to your local working directory.  When it is finished push everything back to your github account and then issue a pull request to the master branch in https://github.com/epics-modules/asyn.

Mark

________________________________
From: Florian Feldbauer [[email protected]]
Sent: Thursday, February 25, 2016 7:46 AM
To: Mark Rivers; EPICS Tech-Talk
Subject: Re: drvAsynSerialPort + RS485

Dear Mark,

thanks for the quick answer.
I already have a running c code. For the BeagleBone it is a bit different.

Normally the struct serial_port looks like this:

struct serial_rs485 {
  __u32   flags;                  /* RS485 feature flags */
  __u32   delay_rts_before_send;  /* Delay before send (milliseconds) */
  __u32   delay_rts_after_send;   /* Delay after send (milliseconds) */
  __u32   padding[5];             /* Memory is cheap, new structs
                                           are a royal PITA .. */
};

On the BeagleBone Black padding[0] is used to tell the kernel which GPIO is used
for the data direction.
I will have a look on the implementation of the current serial port driver and will
add the asynOption key/value pair needed for RS485.

Should I provide you a patch file, when the code is finished and tested?

  Florian

On 02/25/2016 02:23 PM, Mark Rivers wrote:

I think that adding additional asynOption key/value pairs for RS-485 to the existing driver would be OK.  These can be implemented with ioctl calls after the device is opened, so it does not require changing the syntax of drvAsynSerialPortConfigure.  Here is an example of how to do it:

https://www.kernel.org/doc/Documentation/serial/serial-rs485.txt

Mark
________________________________________
From: Florian Feldbauer [[email protected]<mailto:[email protected]>]
Sent: Thursday, February 25, 2016 7:11 AM
To: EPICS Tech-Talk
Cc: Mark Rivers
Subject: drvAsynSerialPort + RS485

Hey all,

we are using an ADM2682 RS485 transceiver connected to a BeagleBone Black.
Data exchange is done via one of the uart interfaces. Data direction is
set by a GPIO
from kernel space.
Is there currently a driver available for EPICS for RS485?

Most settings could be done over the drvAsynSerialPort driver,
but for RS485 one also needs to set the struct serial_rs485 which is not
implemented in this driver.

Does it make sense to add an option to use RS485 support?
Or would it be better to create a clone of the serial port driver for RS485?

Best regards,
Florian



--
----------------------------------------
| Dr. Florian Feldbauer                |
|                                      |
| Helmholtz-Institut Mainz /           |
| Johannes Gutenberg-Universität Mainz |
| Johann-Joachim-Becher-Weg 36         |
| D-55128 Mainz                        |
|                                      |
| Office: SB1 / 00-213                 |
| Phone:  (+49)6131 / 39-29608         |
----------------------------------------




--
----------------------------------------
| Dr. Florian Feldbauer                |
|                                      |
| Helmholtz-Institut Mainz /           |
| Johannes Gutenberg-Universität Mainz |
| Johann-Joachim-Becher-Weg 36         |
| D-55128 Mainz                        |
|                                      |
| Office: SB1 / 00-213                 |
| Phone:  (+49)6131 / 39-29608         |
----------------------------------------


References:
drvAsynSerialPort + RS485 Florian Feldbauer
RE: drvAsynSerialPort + RS485 Mark Rivers
Re: drvAsynSerialPort + RS485 Florian Feldbauer

Navigate by Date:
Prev: Re: drvAsynSerialPort + RS485 Florian Feldbauer
Next: Write value to a PV using CSS-BOY ishita bhatia
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: drvAsynSerialPort + RS485 Florian Feldbauer
Next: Write value to a PV using CSS-BOY ishita bhatia
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 15 Jul 2016 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·