Thank you Stefano, first for your feedback and second fort he compliments.

We are doing our best and it feels really good if people see our efforts <3

Julian

Von: Stefano Bossi <[email protected]>
Datum: Montag, 3. August 2020 um 11:49
An: <[email protected]>, Julian Feinauer <[email protected]>, 
Christofer Dutz <[email protected]>
Betreff: Re: Reading Array of Int

Thanks you guys !!!!

I have downloaded and compiled the develop code and now I cloud read the INT 
array without any problem!

You are managing a great project with a great support !!!

Thanks,
Stefano

On 02/08/2020 21:08, Julian Feinauer wrote:

Hi,



sorry for the delayed working on it but I just took a look and think I fixed 
the issue.



It seems that arrays where not properly implemented in the S7 Driver (?).



I opened up a PR (https://github.com/apache/plc4x/pull/175) and hope that 
@Christofer Dutz finds some time to have a quick look (as he did most of the 
work there) and merge it, if he agrees with it.



If you could try out the branch and give your feedback I would be happy.



Thanks for the excellent preparation of work! : )



Julian



Am 02.08.20, 20:40 schrieb "Julian Feinauer" 
<[email protected]><mailto:[email protected]>:



    Hi,



    I'm looking into it : )



    J



    Am 01.08.20, 16:17 schrieb "Christofer Dutz" 
<[email protected]><mailto:[email protected]>:



        Hi Stefano,



        I think such a Jira would be a good idea.



        I’m currently working on the Beckhoff ADS and would try to have a look 
as soon as possible.



        Chris







        Von: Stefano Bossi 
<[email protected]><mailto:[email protected]>

        Antworten an: <[email protected]><mailto:[email protected]>

        Datum: Samstag, 1. August 2020 um 11:25

        An: <[email protected]><mailto:[email protected]>, Julian 
Feinauer <[email protected]><mailto:[email protected]>

        Betreff: Re: Reading Array of Int



        Hi julian,



        if you need or think could simplify the development I could open a jira 
ticket and upload a couple of pcap capture for you.



        As I wrote I am using the 0.7.0 version from Maven and I am talking 
with a real Siemens 1200 with firmware 1.2 (pretty old but I didn't find a way 
to upgrade it ).



        Let me know.



        Thanks for help.



        Regards,

        Stefano



        On 30/07/2020 07:49, Julian Feinauer wrote:



        Hey Stefano, I will try to have a look later today. Are you using plc4x 
version 0.6 or 0.7?







        Thank you!







        Julian







        Holen Sie sich Outlook für 
Android<https://aka.ms/ghei36><https://aka.ms/ghei36><https://aka.ms/ghei36><https://aka.ms/ghei36>







        ________________________________



        Von: Stefano Bossi 
<[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]>



        Gesendet: Mittwoch, 29. Juli 2020, 12:32



        An: 
[email protected]<mailto:[email protected]><mailto:[email protected]><mailto:[email protected]>;
 Christofer Dutz



        Betreff: Re: Reading Array of Int







        Thanks Chris,







        yes definitely this is a workaround, I am experimenting and learning.







        I really appreciate your time on the investigation of the issue.







        Thanks,



        Stefano Bossi















        On 29/07/2020 12:08, Christofer Dutz wrote:







        Well that’s a workaround, but not a fix …







        We should focus on fixing this.







        I’ll investigate the issue as soon as I’m done with the Beckhoff 
ADS/AMS stuff …







        Perhaps Julian could find some time to investigate?







        Chris















        Von: Stefano Bossi 
<[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]>



        Antworten an: 
<[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]>



        Datum: Mittwoch, 29. Juli 2020 um 11:41



        An: 
<[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]><mailto:[email protected]>



        Betreff: Re: Reading Array of Int











        I have adopted a workaround reading all the INT variable separated.







        --connection-string 's7:tcp://192.168.1.192?controller-type=S7_1200' 
--field-addresses '%DB1:274.0:INT' '%DB1:276.0:INT' '%DB1:278.0:INT' 
'%DB1:280.0:INT'







        In this way on the wire you have:



        the query:







        Frame 296: 111 bytes on wire (888 bits), 111 bytes captured (888 bits) 
on interface utun2, id 0







        Null/Loopback







        Internet Protocol Version 4, Src: 192.168.100.4, Dst: 192.168.1.192







        Transmission Control Protocol, Src Port: 57188, Dst Port: 102, Seq: 48, 
Ack: 50, Len: 67







        TPKT, Version: 3, Length: 67







        ISO 8073/X.224 COTP Connection-Oriented Transport Protocol







        S7 Communication







            Header: (Job)







            Parameter: (Read Var)







                Function: Read Var (0x04)







                Item count: 4







                Item [1]: (DB 1.DBX 274.0 INT 1)







                Item [2]: (DB 1.DBX 276.0 INT 1)







                Item [3]: (DB 1.DBX 278.0 INT 1)







                Item [4]: (DB 1.DBX 280.0 INT 1)







        the answer:







        Frame 297: 89 bytes on wire (712 bits), 89 bytes captured (712 bits) on 
interface utun2, id 0







        Null/Loopback







        Internet Protocol Version 4, Src: 192.168.1.192, Dst: 192.168.100.4







        Transmission Control Protocol, Src Port: 102, Dst Port: 57188, Seq: 50, 
Ack: 115, Len: 45







        TPKT, Version: 3, Length: 45







        ISO 8073/X.224 COTP Connection-Oriented Transport Protocol







        S7 Communication







            Header: (Ack_Data)







            Parameter: (Read Var)







                Function: Read Var (0x04)







                Item count: 4







            Data







                Item [1]: (Success)







                Item [2]: (Success)







                Item [3]: (Success)







                Item [4]: (Success)







        [INFO ] 10:15:44.727 it.fox.datapicker.HelloPlc4x.printResponse() - 
Value[value-0]: 10







        [INFO ] 10:15:44.733 it.fox.datapicker.HelloPlc4x.printResponse() - 
Value[value-1]: 11







        [INFO ] 10:15:44.737 it.fox.datapicker.HelloPlc4x.printResponse() - 
Value[value-2]: 12







        [INFO ] 10:15:44.741 it.fox.datapicker.HelloPlc4x.printResponse() - 
Value[value-3]: 13







        Unfortunately my java knowledge are not so advanced to fix the bug in 
reading the array in a single command, anyway there’s a workaround.







        Hope this mail help some newbies like me to find the right way to read 
data from the PLC.







        Regards,



        Stefano







        On 28/07/2020 11:38, Stefano Bossi wrote:







        Dear plc4x forum,







        I have found a possible problem in reading an array of INT.



        I am using the HelloPlc4x app for testing and I am trying to read the 
field address: '%DB1:274.0:INT[3]'







        In the request, captured via wireShark I can see the query:







        Frame 3: 75 bytes on wire (600 bits), 75 bytes captured (600 bits) on 
interface utun2, id 0







        Null/Loopback







        Internet Protocol Version 4, Src: 192.168.100.4, Dst: 192.168.1.192







        Transmission Control Protocol, Src Port: 54543, Dst Port: 102, Seq: 1, 
Ack: 1, Len: 31







        TPKT, Version: 3, Length: 31







        ISO 8073/X.224 COTP Connection-Oriented Transport Protocol







        S7 Communication







            Header: (Job)







            Parameter: (Read Var)







                Function: Read Var (0x04)







                Item count: 1







                Item [1]: (DB 1.DBX 274.0 INT 3)







                    Variable specification: 0x12







                    Length of following address specification: 10







                    Syntax Id: S7ANY (0x10)







                    Transport size: INT (5)







                    Length: 3







                    DB number: 1







                    Area: Data blocks (DB) (0x84)







                    Address: 0x000890







        and the response:







        Frame 4: 75 bytes on wire (600 bits), 75 bytes captured (600 bits) on 
interface utun2, id 0







        Null/Loopback







        Internet Protocol Version 4, Src: 192.168.1.192, Dst: 192.168.100.4







        Transmission Control Protocol, Src Port: 102, Dst Port: 54543, Seq: 1, 
Ack: 32, Len: 31







        TPKT, Version: 3, Length: 31







        ISO 8073/X.224 COTP Connection-Oriented Transport Protocol







        S7 Communication







            Header: (Ack_Data)







            Parameter: (Read Var)







                Function: Read Var (0x04)







                Item count: 1







            Data







                Item [1]: (Success)







                    Return code: Success (0xff)







                    Transport size: INTEGER (0x05)







                    Length: 6







                    Data: 000a000b000c







        The 3 INT I would like to read are there: 000a, 000b, 000c but in the 
response of:







        PlcReadResponse syncResponse = readRequest.execute().get();







        only the first one is present.







        I read in jira that there was a similar bug here 
PLC4X-57<https://issues.apache.org/jira/browse/PLC4X-57><https://issues.apache.org/jira/browse/PLC4X-57><https://issues.apache.org/jira/browse/PLC4X-57><https://issues.apache.org/jira/browse/PLC4X-57><https://issues.apache.org/jira/browse/PLC4X-57><https://issues.apache.org/jira/browse/PLC4X-57><https://issues.apache.org/jira/browse/PLC4X-57><https://issues.apache.org/jira/browse/PLC4X-57>,
 is this the same problem?







        Thanks for your help.







        Regards,



        Steafano Bossi






























Reply via email to