Repository navigation
v0.1.0
Date: 2026-10-26
Previous release: none
Summary
The first release of ethernetipctl: an EtherNet/IP and CIP command-line originator, diagnostics tool and adapter simulator, built on go-ethernetip and following the structure and conventions of dnp3ctl (--format text|json|table, a JSON error object, stable exit codes, ETHERNETIPCTL_* environment variables).
Dependencies
- Built on go-ethernetip v0.1.0.
Added
- Discovery and identity:
discover(one ListIdentity datagram to a broadcast address or a device; never a scan),identify(ListIdentity over the session and the Identity object),status(health in one line),services,interfaces. - Explicit messaging:
read(Get_Attribute_Single, Get_Attributes_All with--all; aliasesattribute,get) andwrite(Set_Attribute_Single) of any@class/instance/attribute, raw hex or decoded and encoded as CIP data types;objects(the Message Router's class list),object(class attributes and an instance),reset.--route(Unconnected_Send) and--connected(Class 3) on every explicit command. - Connections and I/O:
session(aliasconnect),forward-open(with--keep),forward-close,connections(Connection Manager counters),io(Class 1 I/O connections streaming the inputs),assembly readandassembly write. - Diagnostics:
diagnose, eight structured checks with outcome and timing (exit 7 when one fails). - Logix tags (Rockwell, vendor specific):
tag read,tag write(also single bits),tag list,tag types,tag decode. - EDS:
eds inspect,eds validate(exit 3 on errors),eds generate(from a device or flags),eds codegen(Go code). - Adapter simulator:
adapter(aliasserver) from flags or a YAML/JSON model (identity, assemblies, echo, Logix templates and tags), streaming its events. - Safety: every command that changes a device needs
--yesand sends nothing without it.
Upgrade notes
- First release.