#include #include byte mac[] = { 0x04, 0xE9, 0xE5, 0x10, 0x00, 0x02 }; IPAddress ip(192, 168, 1, 101); const int localPort = 8888; EthernetServer server(localPort); EthernetClient client; byte packetBuffer[256]; void setup() { Serial.begin(115200); //while (!Serial); Serial.println("Initializing Ethernet..."); Ethernet.begin(mac, ip); if (Ethernet.hardwareStatus() == EthernetNoHardware) { Serial.println("Ethernet hardware not found!"); while (true); } if (Ethernet.linkStatus() == LinkOFF) { Serial.println("Ethernet cable not connected!"); } server.begin(); Serial.println("TCP Server Ready. Waiting for connections..."); } void loop() { if (!client || !client.connected()) { client = server.available(); if (client) { Serial.println("Client connected!"); } return; } static int bytesReceived = 0; while (client.available()) { // Keep reading while data is available int byteRead = client.read(packetBuffer + bytesReceived, 256 - bytesReceived); if (byteRead > 0) { bytesReceived += byteRead; } if (bytesReceived == 256) { // Full packet received Serial.print("Received full 256-byte packet: "); for (int i = 0; i < 256; i++) { Serial.print(packetBuffer[i], DEC); Serial.print(" "); } Serial.println(); bytesReceived = 0; // Reset for the next packet } } }