WiFi SD-карта: удалённый доступ и управление файлами онлайн

WiFi SD-карта — революционный проект для удалённого управления файлами. Подключив microSD-карту к ESP8266, вы получите полноценный файловый сервер: загружайте/скачивайте файлы, редактируйте текст, просматривайте фото и создавайте папки — всё это через браузер с телефона или компьютера без проводов.

WiFi SD-карта: удалённый доступ к файлам через ESP8266

Возможности WiFi SD-карты

  • Загрузка файлов (PDF, фото, ZIP, код) с телефона/ПК
  • Скачивание любых файлов с SD-карты
  • Создание папок и файлов онлайн
  • Редактирование текстовых файлов (Arduino скетчи, HTML, CSS)
  • Просмотр изображений в браузере
  • Удаление файлов и папок
  • Работа с ZIP-архивами
  • Полностью адаптивный веб-интерфейс

Необходимые компоненты

  • ESP8266 (NodeMCU / Wemos D1 mini)
  • Модуль microSD-карты (с 3.3В логикой)
  • microSD-карта (FAT32)
  • Провода, макетная плата

Схема подключения

  • SD CS → D4 (GPIO2)
  • SD SCK → D5 (GPIO14)
  • SD MOSI → D6 (GPIO12)
  • SD MISO → D7 (GPIO13)
  • SD VCC → 3.3V
  • SD GND → GND

Подготовка

  1. Отформатируйте SD-карту в FAT32
  2. Скопируйте index.html из архива на карту
  3. Установите библиотеки: ESP8266WiFi, ESP8266WebServer, SD

Основной скетч ESP8266

#include <ESP8266WiFi.h>        
#include <ESP8266WebServer.h>
#include <SD.h>

const char* ssid = "WiFiSD";
ESP8266WebServer server(80);

void setup() {
  Serial.begin(115200);

  if (!SD.begin(D8)) { // проверьте CS-пин вашей платы
    Serial.println("Ошибка инициализации SD-карты!");
  } else {
    Serial.println("SD-карта готова");
  }
  
  WiFi.softAP(ssid);
  Serial.print("AP IP: ");
  Serial.println(WiFi.softAPIP());
  
  server.on("/", HTTP_GET, []() {
    if (SD.exists("/index.html")) {
      File file = SD.open("/index.html");
      server.streamFile(file, "text/html");
      file.close();
    } else {
      server.send(404, "text/plain", "Файл не найден");
    }
  });

  server.begin();
  Serial.println("Сервер запущен");
}

void loop() {
  server.handleClient();
}
Монтирует SD-карту и проверяет успех.
Создаёт Wi-Fi точку доступа с именем WiFiSD.
Запускает веб-сервер на порту 80.
При обращении к / проверяет наличие файла /index.html на SD-карте и отдаёт его как HTML.
Если файла нет, возвращает ошибку 404.
Обрабатывает подключение клиентов в loop().

Как пользоваться

  • Подключитесь к WiFi «WiFiSD»
  • Откройте IP-адрес ESP в браузере
  • Загружайте файлы через форму
  • Редактируйте .txt, .ino, .html файлы
  • Просматривайте .jpg, .png в галерее
  • Создавайте папки для организации файлов

Заключение

WiFi SD-карта превращает ESP8266 в полноценный файловый сервер. Идеально для удалённого редактирования Arduino-скетчей, обмена файлами с дронов, резервного копирования данных с датчиков IoT.

FAQ — WiFi SD-карта

Работает ли с русскими именами файлов?

Нет, только латиница (a-z, 0-9, _, -). Кириллица вызывает ошибки.

Какой максимальный размер файла для загрузки?

До 10–20 МБ на ESP8266, зависит от свободной RAM. Для больших — используйте ESP32.

Можно ли защитить доступ паролем?

Да, добавьте server.on(«/login», …) с проверкой HTTP Basic Auth.

Работает ли с SD-картами 32 ГБ?

Да, если отформатирована в FAT32. ESP8266 видит до 32 ГБ.

Можно редактировать Arduino .ino файлы?

Да, создайте папку «sketches» и редактируйте через встроенный текстовый редактор.

Поддерживает ли ZIP-архивы?

Загрузка ZIP — да, распаковка — нет. Нужна дополнительная библиотека.

Как подключить к домашнему WiFi?

Замените WiFi.softAP() на WiFi.begin(«SSID», «pass») и используйте IP из сети.

📁 Скачать примеры