This project is an asynchronous web file server created with PlatformIO for ESP8266 using the Arduino framework. Using a web interface, it allows you to upload, download, delete, and manage files and folders on the ESP8266 device.
This project provides a convenient way to manage files on an ESP8266 device using a web interface. It utilizes the ESPAsyncWebServer library to handle asynchronous web requests, allowing for smooth file upload and management operations.
- Upload files to the ESP8266 device.
- Download files from the device.
- Delete files and folders.
- View the list of files and folders on the device.
- Asynchronous handling of web requests for improved performance.
Before connecting to the ESP8266 device, knowing its IP address is essential. You can find this by opening the serial terminal in your PlatformIO IDE or Arduino IDE after uploading the code to the ESP8266. The IP address will be displayed on the serial terminal.
- Connect your ESP8266 development board to your computer using a micro-USB cable.
- PlatformIO IDE
- Clone or download this repository to your local machine.
- Open the project in PlatformIO IDE.
- Configure your Wi-Fi credentials in the
config.h
file. - Insert the SD card into the appropriate slot on the ESP8266 board.
- Upload the code to your ESP8266 board using PlatformIO IDE. The necessary libraries will be automatically downloaded.
- Connect your device to the same Wi-Fi network as your computer.
- Open a web browser and enter the IP address of the ESP8266 device.
- Click the "Upload Files" option.
- Select the file you want to upload and click "Upload."
- The upload progress will be displayed, and the file will be stored on the device.
- Click on the file name you want to download from the main page.
- The file will be downloaded to your computer.
- From the main page, find the file or folder you want to delete.
- Click the "Delete" button to remove the selected item.
- Enter the name of the new folder in the text box "Folder name."
- From the main page, click the "Create" button.
- The new folder will be created on the device.
- Access the main page of the web interface.
- The list of files and folders on the device will be displayed.
I'm tired of waiting for the firmware to be uploaded to the device. So I somehow implemented a Python server to test the code without a device. This server is built for debugging purposes only, so use it at your own risk
Contributions to this project are welcome! If you find any issues or have suggestions for improvements, please create a pull request or open an issue.
This project is licensed under the MIT License. Feel free to use, modify, and distribute the code for your own purposes.