Есть ли простой open source http-server для Arduino Mega?

Да, существует несколько простых open source HTTP-серверов для Arduino Mega, которые позволяют использовать вашу плату в качестве веб-сервера.

Один из таких серверов - это библиотека EthernetServer, входящая в стандартную библиотеку Arduino Ethernet. Данная библиотека позволяет создавать веб-сервер на основе Ethernet-соединения. Вы можете использовать эту библиотеку для обработки HTTP-запросов и отсылки HTTP-ответов с Arduino Mega. Ваш код может выглядеть следующим образом:

#include <Ethernet.h>

// Укажите MAC-адрес вашего Ethernet-шелда
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

// Укажите IP-адрес вашего Arduino Mega
IPAddress ip(192, 168, 1, 177);

// Укажите порт для прослушивания
EthernetServer server(80);

void setup() {
  // Инициализация Ethernet-соединения
  Ethernet.begin(mac, ip);
  
  // Прослушивание порта 80
  server.begin();
}

void loop() {
  // Ожидание подключения клиента
  EthernetClient client = server.available();
  
  if (client) {
    // Прием HTTP-запроса от клиента
    String request = "";
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        request += c;
        if (c == 'n') {
          // Пустая строка обозначает конец запроса
          break;
        }
      }
    }
    
    // Генерация HTTP-ответа
    String response = "HTTP/1.1 200 OKnContent-Type: text/plainnnHello, World!";
  
    // Отсылка HTTP-ответа клиенту
    client.println(response);
    client.stop();
  }
}

Это пример простого HTTP-сервера, который принимает HTTP-запросы от клиента и отсылает ответ "Hello, World!". Вы можете изменять код, чтобы настроить сервер в соответствии с вашими нуждами, добавлять обработку других HTTP-запросов и отсылать данные, считанные с датчиков или управлять подключенными устройствами.

Эта библиотека и пример являются лишь одним из множества решений, которые могут быть использованы для создания HTTP-сервера на Arduino Mega. Вы также можете рассмотреть другие open source библиотеки, такие как ESPAsyncWebServer или WiFiEsp, в зависимости от ваших потребностей и предпочтений.