ottowayi / pycomm3

A Python Ethernet/IP library for communicating with Allen-Bradley PLCs.
MIT License
397 stars 88 forks source link

Is there any way to read user programs out of CompactLogix PLC? #254

Closed wahoyi closed 1 year ago

wahoyi commented 1 year ago

Hi, Is there any way to read user programs out of CompactLogix PLC? I mean binary or other forms of user control logic (e.g. User programs in XML form in .L5X files), not just tags. Thank you for any suggestions or help.

ottowayi commented 1 year ago

I'm not sure if that would be possible, at least reasonably possible. There is no documented way to access the PLC application thru EtherNet/IP. So far from what I've seen, anything regarding the PLC application is custom Rockwell features built on top of enip. Like all of the tag functionality within this library are Rockwell services built on top of the protocol, but they only make public a very limited set of those services (like listing/reading/writing tags all use custom Rockwell services).