{"repo":"cmseaton42/node-ethernet-ip","free":true,"listed":false,"github":"https://github.com/cmseaton42/node-ethernet-ip","clone":"git clone https://github.com/cmseaton42/node-ethernet-ip.git","description":"A Lightweight Ethernet/IP API written to interface with Rockwell ControlLogix/CompactLogix Controllers.","language":"TypeScript","stars":294,"topics":["nodejs","node-ethernet","datatype","ethernet","ethernet-ip","ethernet-protocol","rockwell","allen-bradley","allen","bradley"],"license":"MIT","category":"auth-billing-email","readme_excerpt":"--- Node Ethernet/IP A feature-complete EtherNet/IP client for Rockwell ControlLogix/CompactLogix PLCs. - Full TypeScript with strict types - Dependency injection for testability (MockTransport) - Connected messaging with Forward Open (Large/Small fallback) - Complete data type support (all atomics, STRING, SHORT STRING, STRUCT, arrays) - Lazy tag type discovery with optional full tag list retrieval - Auto-reconnect with exponential backoff - Tag subscriptions with change detection - Typed error hierarchy with human-readable CIP status codes - Injectable logger (noop default) - 383+ unit tests Prerequisites Node.js = 18.0.0 Install The API Connecting to a PLC Connect Options Option Type Default Description --------------- ----------------------------- ------- ------------------------------------------------------------------------------- slot number 0 Controller slot number (0 for CompactLogix) discover boolean false Fetch full tag list on connect connected boolean true Use connected messaging (Forward Open). Set false for unconnected (UCMM) only timeout number 10000 Connection timeout in milliseconds autoReconnect boolean \\ ReconnectOptions false Enable auto-reconnect on disconnect ReconnectOptions Reading Tags Read a single tag — the type is discovered automatically on first read and cached: Read multiple tags — automatically batched into optimal multi-service packets: Read a bit of a word: Read program-scoped tags: Read array elements: Read UDT members: Return Types PLC Ty","default_branch":null,"files":null,"tree":[],"storefront":"/r/cmseaton42","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/cmseaton42/node-ethernet-ip/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}