WiFi SD-карта: удалённый доступ и управление файлами онлайн
WiFi SD-карта — революционный проект для удалённого управления файлами. Подключив microSD-карту к 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
Подготовка
- Отформатируйте SD-карту в FAT32
- Скопируйте index.html из архива на карту
- Установите библиотеки: 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();
}
Создаёт 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 из сети.