Proof of Concept

FusionCoreEnIP

EtherNet/IP industrial I/O adapter stack for ESP32-P4

Status: This project is a proof-of-concept implementation and requires further development, testing, and validation before production use.

Waveshare ESP32-P4 (Ethernet)

Overview

FusionCoreEnIP is a comprehensive EtherNet/IP adapter device built on the ESP32-P4 platform, providing industrial-grade connectivity for multiple sensors and I/O modules. The device integrates seamlessly with PLCs and industrial automation systems through standard EtherNet/IP protocols, while offering a modern web interface and REST API for configuration and monitoring.

This project combines roles from multiple projects into a single, modular platform: VL53L1X time-of-flight distance sensor, LSM6DS3 IMU, NAU7802 precision scale, MCP230XX GPIO expanders, GP8403 DAC modules, and more. All hardware components are optional and modular—you can configure the device to use none, some, or all of the supported hardware based on your application needs.

Hardware Platform

This project targets the Waveshare ESP32-P4 WiFi6 Dev Kit with the following specifications:

Supported Sensors and Input Devices

All supported devices have been validated and confirmed working:

Supported Output Devices

EtherNet/IP Protocol Support

Core Functionality

Connection Capabilities

Implemented CIP Objects

The device implements comprehensive CIP object support:

LLDP Support

The device includes IEEE 802.1AB compliant Link Layer Discovery Protocol support:

Web Interface and REST API

The device provides a comprehensive web interface and REST API:

Assembly Data Layout

Input Assembly (Instance 100) - 72 Bytes

The input assembly contains sensor readings and device feedback:

Output Assembly (Instance 150) - 40 Bytes

The output assembly contains control data for device outputs:

Software Stack

Modular Architecture

Important: Use of any specific hardware component is entirely optional. The modular component architecture makes it straightforward to add support for custom hardware by implementing additional components following the existing patterns. Additionally, any hardware supported by ESP32/ESP-IDF can be integrated with some development effort.