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  2016  <20172018  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  2016  <20172018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: IOC Connecting Problem
From: "Jennings, Guy" <[email protected]>
To: Tech Talk <[email protected]>
Date: Thu, 23 Feb 2017 17:02:17 +0000
You can also use nectar (nc) which doesn’t do this negotiation

> On Feb 23, 2017, at 9:00 AM, Rod Nussbaumer <[email protected]> wrote:
> 
> In principle, a telnet connection is the same as a bare socket connection, however the telnet protocol is intended for an interactive session, and there is an exchange of some information between the server and client at the start of the session connection (Telnet Options and Option Negotiation, RFC 845). This is  invisible to the user, and usually silently ignored when you use telnet to talk to a test and measurement instrument. The bare socket interface probably skips this negotiation process, and goes immediately to the basic communication that your IOC uses. Telnet clients are supposed to work correctly with telnet/TCP servers (your instruments) that don't enter this negotiation process, so we generally use telnet clients as a general purpose TCP communications tool.
> 
> My strongest suggestion is to use the asyn layer tools to enable as much diagnostics information as possible. This should reveal why your instrument doesn't want to communicate with the IOC as it does with the telnet client tool. Theses are the asynSetTraceMask() and asynSetTraceIoMask() functions. See the asyn docs for details on their usage. The capabilities these enable can be conveniently turned on and off using the asyn record, and there are some medm (probably other display managers too) screens that allow you to manipulate the port driver debug levels interactively at run time. I strongly recommend that you install these for any asyn based communications.
> 
> Just to be clear, are you using the telnet tests from the same host on whihc your IOC is running? If no, then you should also make sure that there are no firewalls blocking the communication.
> 
>   ---  rod.
> 
> 
> 
> On 02/23/2017 01:29 AM, Pilkyu Jung wrote:
>> Dear Mark,
>> First of all, I appreciate your kind Email. I didn't know about the
>> synApps "delayGen" module. I am going to try to use it.
>> 
>> Yes, I am trying to connect an Agilent oscilloscope to IOC. A DG645 was
>> just an example that I connected with IOC before.
>> I checked there are two parts of connection(port 5024, 5025) in the case
>> of the DG645. also, There are two parts of connection(port 5024, 5025)
>> in the case of the Agilent oscilloscope.
>> So, I have thought that this is similar. However, when I tried to
>> connect the Agilent oscilloscope to IOC, I used port 5024(successful,
>> but when it start, the telnet connection required) and 5025(failed).
>> In the case of delay generator, I have used port 5025 which was
>> successful with nothing telnet connecting first.
>> I am not sure whether I express my opinion properly. Thank you so much
>> to read my Email. If you have any confusing things, would you let me know?
>> 
>> Best Regards,
>> Pilkyu
>> 
>> 
>>    ---------- Original Message ----------
>>    *From:* "Mark Rivers" <[email protected]>
>>    *Date:* 2017-02-23 12:15
>>    *Subject:* RE: Re: IOC Connecting Problem
>>    *To:* "Pilkyu Jung" <[email protected]>,"Rod Nussbaumer"
>>    <[email protected]>
>>    *Cc:* "[email protected]" <[email protected]>
>>    I suspect the difference between the telnet port 5024 and the bare
>>    socket probably has to do with line terminators and perhaps other
>>    things that it does to make the telnet connection easier to use with
>>    an interactive terminal session.
>> 
>>    I am confused what device you are actually trying to talk to.
>>    Earlier today you mentioned an Agilent oscilloscope, but now you are
>>    referring to the DG645 delay generator. Note that there is already
>>    an asyn driver for the DG645 in the synApps "delayGen" module.
>> 
>>    Mark
>> 
>>    ________________________________
>>    From: [email protected] [[email protected]]
>>    on behalf of Pilkyu Jung [[email protected]]
>>    Sent: Wednesday, February 22, 2017 8:01 PM
>>    To: Rod Nussbaumer
>>    Cc: [email protected]
>>    Subject: RE: Re: IOC Connecting Problem
>> 
>>    Rod:
>>    Thanks a lot. Your comment is very helpful.
>>    I have thought that It is different between Telnet and TCP
>>    communication, because there are two kind of communication in case
>>    of delay generator.
>>    I attached delay generator's
>>    manual(http://www.thinksrs.com/downloads/PDFs/Manuals/DG645m.pdf).
>>    As you can see, there are difference in page 44, operation 30, Table
>>    14: NET Menu Options for TCP/IP Configuration.
>>    Could you let me know what is different between Bare socket
>>    interface(port 5025) and Telnet interface(port 5024)?
>>    In my case, I have used only port 5025 for connecting IOC.
>>    I hope you have a nice day.
>> 
>> 
>>    Best Regards,
>>    Pilkyu
>> 
>> 
>> 
>>    ---------- Original Message ----------
>>    From: "Rod Nussbaumer"
>>    Date: 2017-02-23 01:56
>>    Subject: Re: IOC Connecting Problem
>>    To: "Pilkyu Jung"
>> 
>>    Telnet is simply doing the same kinds of TCP communication that the IOC
>>    asynPort does. The connection seen by the oscilloscope is the same for a
>>    telnet session as it is for an EPICS asynPort connection. In telnet, you
>>    send commands interactively. The IOC sends commands as part of the
>>    program algorithm. The data transferred is the same, and the scope
>>    doesn't see any difference.
>> 
>>    The port number is part of the IP address used to make the TCP
>>    connection, so that is why it must be correct in order for the
>>    connection to succeed.
>> 
>>    I don't quite understand your last question. If you don't want to use a
>>    telnet-like connection between the scope and the IOC, then you will need
>>    to use some other kind of interface. Perhaps your scope is equipped with
>>    GPIB or serial ports. These work equally well from the standpoint of
>>    compatibility with EPICS asyn + streamDevice support.
>> 
>>    I hope this helps.
>> 
>>    --- rod.
>> 
>> 
>> 
>>    On 02/21/2017 11:24 PM, Pilkyu Jung wrote:
>>     > Rod:
>>     >
>>     > First of all, I appreciate your advice. It was very helpful.
>>     > By the way, I have tried to use port 5024 and 5025.
>>     > But, now IOC worked with port 5024, not port 5025.
>>     >
>>     > Can I ask you a question one more?
>>     >
>>     > When I use port 5024, the device worked with telnet automatically.
>>     > Like a Image file(16:18:10) that I attached a image file.
>>     > However, I guess it should more fast without connecting telnet.
>>     > At least, when I connect other device, didn't connect telnet.
>>     >
>>     > and when I use port 5025, it doesn't work.
>>     > So, Could you let me know how can I use this oscilloscope on IOC
>>    without
>>     > telnet connecting like other devices?
>>     >
>>     > best regards,
>>     > Pilkyu
>>     >
>>     >
>>     >
>>     > On 02/16/2017 11:15 PM, Rod Nussbaumer wrote:
>>     >> Pilkyu:
>>     >>
>>     >> In your telnet connection, you use port 5024, but in the asyn port
>>     >> connection, you are attempting to use port 5025. This is quite
>>    likely
>>     >> one cause of your problem.
>>     >>
>>     >> Rod Nussbaumer
>>     >> TRIUMF
>>     >> Vancouver, Canada
>>     >>
>>     >> On 02/15/2017 10:29 PM, Pilkyu Jung wrote:
>>     >>> Hi all,
>>     >>>
>>     >>>
>>     >>> First of all, I am trying to connect from a oscilloscope which
>>    name is
>>     >>> Agilent Technologies DSO-X 3052A (500 MHz 4 GSa/s) to IOC.
>>     >>>
>>     >>> As you can see in the
>>     >>>
>>    manual(http://literature.cdn.keysight.com/litweb/pdf/75019-97073.pdf ,
>>     >>>
>>    http://www.keysight.com/upload/cmc_upload/All/3000_series_prog_guide.pdf),
>>     >>>
>>     >>>
>>     >>> this oscilloscope support a few ways (e.g. the IO Library, Telnet
>>     >>> Sockets, and using Browser Web Control) for sending SCPI.
>>     >>>
>>     >>> However, When I connect to IOC, I got a problem. Until now, I just
>>     >>> connected only adjust IP address in st.cmd.
>>     >>>
>>     >>>
>>     >>> Like this,
>>     >>>
>>     >>> drvAsynIPPortConfigure("P1",169.254.90.3:5025,0,0,0)
>>     >>>
>>     >>>
>>     >>> When I connect by telnet, it is done successfully (please check the
>>     >>> Screenshot...image file).
>>     >>>
>>     >>> I don't know why this device can't be connected to IOC in this
>>    case.
>>     >>> Definitely I am done with this way before, but now I can't.
>>     >>>
>>     >>>
>>     >>> Here is my question,
>>     >>>
>>     >>>
>>     >>> 1. Normally, when you connect from device to IOC, what kind of
>>    method
>>     >>> use?
>>     >>>
>>     >>> 2. In my case, How can I connect to IOC?
>>     >>>
>>     >>>
>>     >>> Best Regards,
>>     >>>
>>     >>> Pilkyu Jung
>>     >>>
>>     >>>
>>     >>
>>     >>
>>     >
>> 
>> 
>> 
>> 
> 



References:
RE: RE: Re: IOC Connecting Problem Pilkyu Jung
Re: IOC Connecting Problem Rod Nussbaumer

Navigate by Date:
Prev: Re: IOC Connecting Problem Rod Nussbaumer
Next: Re: memory leak after unloading of ca.lib Michael Davidsaver
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: IOC Connecting Problem Rod Nussbaumer
Next: RE: RE: Re: IOC Connecting Problem Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024 
ANJ, 21 Dec 2017 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·