Hi Chris,

JIRA issue with attachment is created 
https://issues.apache.org/jira/browse/PLC4X-246 
<https://issues.apache.org/jira/browse/PLC4X-246>. I will try to change the 
settings and report back the result.

Thanks a lot and best regards,
Sebastian

> On 31. Aug 2020, at 11:08, Christofer Dutz <[email protected]> wrote:
> 
> Hi Sebastian …
> 
> Unfortunately attachments don’t work on this mailing list. Could you please 
> create a JIRA issue?
> 
> And I think I can help you with that error of yours:
> Go into the settings of your S7 and  enable PUT/GET … the folks from NodeRed 
> made a nice video:
> https://www.youtube.com/watch?v=rTUs-_EiZ3A (Just the first 1,5 minutes)
> 
> But the driver should definitely report this … as it is a known thing and if 
> we reported that it would help a lot of others.
> 
> Chris
> 
> 
> 
> 
> Von: Sebastian Voss <[email protected]>
> Antworten an: "[email protected]" <[email protected]>
> Datum: Montag, 31. August 2020 um 10:49
> An: "[email protected]" <[email protected]>
> Betreff: Re: S7 read issue
> 
> Hi Chris, Hi Stefano,
> 
> Thanks a lot for your valuable feedback. It is highly appreciated.
> 
> I followed Stefanos suggestions and applied the simplifications. In addition 
> I created a Wireshark capture which is attached to this email.
> 
> It seems it replies with “[Error code: This service is not implemented on the 
> module or a frame error was reported (0x8104)]"
> 
> Does this mean the address is wrong or is it something else?
> 
> Best regards,
> Sebastian
> 
> 
>> On 31. Aug 2020, at 09:42, Stefano Bossi <[email protected]> wrote:
>> 
>> Hi Sebastian,
>> 
>> if you need some help in setup the wireshark capture software or open the 
>> jira ticket I could help.
>> 
>> It’s definitely worth to follow the Chris suggestion to help him to spot the 
>> real problem.
>> 
>> In the mean time I think you could simplify the PLC query in this way:
>> 
>> String Url: s7:tcp://172.3.4.5:102?controller-type=S7_1200
>> 
>> String field: %DB20:5.0:BOOL
>> 
>> As far as the address of the Data Block and the bool value are correct, 
>> should work.
>> There were nothing particular wrong in your query but the library is 
>> somewhat “sensible” if something goes wrong in the dialogue with the PLC
>> 
>> An another thing you should pay attention is that the Data Block MUST be NOT 
>> optimized; reading of optimized block is not currently supported. This 
>> shouldn’t be your case because an attempt to read an optimized block raise 
>> an exception or a null value.
>> 
>> Try and let us know.
>> 
>> Regards,
>> Stefano
>> 
>> On 31/08/2020 08:48, Christofer Dutz wrote:
>> 
>> 
>> 
>>> Hi Sebastian,
>>> 
>>> could you possibly do a wireshark recording of this, create an issue in our 
>>> jira and attach the capture there?
>>> I am sure we haven't handled all things that could go wrong and with this 
>>> information I might be able to improve the error handling.
>>> 
>>> Chris
>>> 
>>> 
>>> 
>>> 
>>> Am 30.08.20, 18:28 schrieb "Sebastian Voss"
>>> <[email protected]>
>>> :
>>> 
>>>    Hi,
>>> 
>>>    I’m trying to read a value from an Siemens S7-1200 PLC). This is my 
>>> first project using the S7 protocol and plc4x. When I try to read a value 
>>> the read request is not being executed (I also do not receive an error 
>>> message or timeout). Would this be the normal behaviour when the field 
>>> address is wrong? I’m out of ideas how to trace this down. Any hints would 
>>> be highly appreciated.
>>> 
>>>    This is the simple program I created:
>>> 
>>>    String url = 
>>> "s7://172.3.4.5:102?local-rack=0&local-slot=1&remote-rack=0&remote-slot=1&controller-type=S7_1200
>>>  
>>> <s7://172.3.4.5:102?local-rack=0&local-slot=1&remote-rack=0&remote-slot=1&controller-type=S7_1200>";
>>>    PlcDriverManager manager = new PlcDriverManager();
>>>    PlcConnection connection = manager.getConnection(url);
>>> 
>>>    boolean isConnected = connection.isConnected();
>>>    boolean canRead = connection.getMetadata().canRead();
>>> 
>>>    System.out.println(isConnected);  // prints true
>>>    System.out.println(canRead);  // prints true
>>> 
>>>    String field = "%DB20:DBX05.0:BOOL";
>>>    PlcReadRequest request = connection
>>>           .readRequestBuilder()
>>>           .addItem("value-1", field)
>>>           .build();
>>> 
>>>    PlcReadResponse response = request.execute().get();  // here is hangs 
>>> forever
>>> 
>>>    System.out.println(response.getFieldNames());
>>> 
>>>    connection.close();
>>> 
>>>    Thanks a lot in advance!
>>> 
>>>    Best regards,
>>>    Sebastian
>>> 
>>> 
>> 
>> 

Reply via email to