Ask our Experts
Didn't find what you are looking for? Ask our experts!
This forum is addressing industrial automation design & engineering, operations, asset performance, cyber security and digital transformation for Plants & Machines.
Search in
Link copied. Please paste this link to share this article on your social media post.
Posted: 2024-02-26 04:01 PM
Given that the firmware of the PXM is not available in the supplied DDT (using firmware 1.005 / CE15.2) I have been attempting to pull the firmware version data through to an M580 using the DATA_EXCH function. This is indicating that the object doesn't exist (Response Code 16) in my response. I am attempting to access the CIP object "12.5.1. PXM GENERAL STATUS" from the user manual v1.06. I am using a Request Size 16#04, Service Code 16#0E, Class / Class Segment 16#0301, Instance / Instance Segment 16#0124, Attribute / Attribute Segment 16#0130 using the CPU as the host slot for the transaction '0.1.0' and UNC.CIP protocol. Note that the PXM does not currently have a loaded configuration but I wouldn't think this would be required.
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2025-11-03 06:41 PM
The response from our support case was to use the following:
Size/Service Code 16#030E
- Size of EMIS is 4 Words, 3 indicates inclusion of Class, Instance and Attribute
- Service Code 16#0E indicates CIP Get Single Attribute
Class segment 16#0120
Instance 16#0124
Attribute 16#0430
Information we feel would be helpful to others:
The string to feed into your ADDM should be '0.0.3{IPAddress}UNC.CIP', this initiates the call from the CPU (length of string should be defined if assigning to variable e.g. Data Type = STRING[40]).
Additional to this we set managementParams 3rd element to 4 (400ms) and 4th element to 8 (Bytes in Response)
The Response Array should be a minimum of four (4) INT elements in length.
The firmware value in the response is located in the 3rd Response Array element and will be appear to be an incorrect decimal value.
This occurs as the bytes are swapped, in the form of Minor, Major but are visible in HEX format.
We split the bytes and converted the value to a UINT by multiplying the major value by 100 and adding them together.
We also used the Communications Report non-zero value to filter out responses when the card was removed.
This code was tested against firmware versions 1.003, 1.005 and 1.007.
Link copied. Please paste this link to share this article on your social media post.
You’ve reached the end of your document
Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.