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  2017  2018  2019  2020  2021  2022  2023  2024  <20252026  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  <20252026 
<== Date ==> <== Thread ==>

Subject: Re: Modbus-TCP "authorization"
From: Виталий Балакин via Tech-talk <[email protected]>
To: Abdalla Ahmad <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Tue, 25 Nov 2025 22:38:23 +0700
The problem is not in the sequence, but rather how to *trigger* it upon
connect.  I.e.:

1. Perform Modbus reads and writes *immediately* after connect() success.

2. *Before* any other I/O takes place.

3. Repeat it upon further reconnects (also before any other I/O).

Looking at https://epics-modules.github.io/modbus/ I can't find any way to
achieve this.

With appreciation,
Vitalii

вт, 18 нояб. 2025 г. в 14:25, Abdalla Ahmad <[email protected]>:

You can try writing a record for each authorization step with passive scan (or no SCAN) and then each record process the next with FLNK, with this you can only process the first record and the rest are processed sequentially. We do have a similar situation where a Modbus device requires setting a password for administrator access, we made a record that just writes a value to a certain address and we have admin access to the device.

 

Best Regards,

Abdalla Al-Dalleh

Control Engineer

SESAME

 

From: Tech-talk <[email protected]> On Behalf Of ??????? ??????? via Tech-talk
Sent: Tuesday, November 18, 2025 6:33 AM
To: [email protected]
Subject: Modbus-TCP "authorization"

 

Hi!

I have a Modbus-TCP device which requires a so called "authorization" to
be performed BEFORE any actual I/O can take place; without such an
authorization all register writes and even reads result in exception 2
("illegal data address").

The "authorization" consists of several register reads and writes, in
specific order:

   1. Write INT32_LE:0x89ABCDEF to holding registers 0x2100,0x2101
   2. Write INT32_LE:0x01234567 to holding registers 0x2102,0x2103
   3. Write 0 to holding register 0x2104
   4. Read discrete input 0x2200

Is there some mechanism to perform this sequence immediately upon connect?
Looking at "modbus" module documentation, I see nothing relevant.

Thanks in advance!

Vitalii

 


Replies:
RE: Modbus-TCP "authorization" Mark Rivers via Tech-talk
References:
Modbus-TCP "authorization" Виталий Балакин via Tech-talk
RE: Modbus-TCP "authorization" Abdalla Ahmad via Tech-talk

Navigate by Date:
Prev: Get notified of alarms internally to IOC w/o requiring record fields David Bracey via Tech-talk
Next: RE: Modbus-TCP "authorization" Mark Rivers via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  <20252026 
Navigate by Thread:
Prev: RE: Modbus-TCP "authorization" Abdalla Ahmad via Tech-talk
Next: RE: Modbus-TCP "authorization" Mark Rivers via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  <20252026 
ANJ, 19 Mar 2026 · Home · News · About · Talk · Base · Modules · Extensions ·
· Distributions · Download · Documents · Links · Licensing ·