About the Project
ESP Standard Development Environment (std-env-esp) is a ready-to-use framework for ESP boards using MicroPython. It provides comprehensive connectivity management with WiFi connection support, access point configuration, FTP server functionality, BLE connectivity, and system utilities.
This project streamlines ESP development by providing a standardized environment that handles common tasks such as network connectivity, remote access, and device management.
Features
- WiFi Connection Management: Easy connection to WiFi networks with static IP support
- Access Point Configuration: Create and manage WiFi access points
- WebREPL Support: Remote Python REPL via WebSocket connection
- FTP Server: Built-in FTP server for convenient file transfers
- BLE Connectivity: Bluetooth Low Energy UART service
- Command Server: HTTP API for remote command execution and device control
- System Information: Utilities to monitor ESP system information
- CPU Frequency Control: Adjust CPU frequency for power/performance balance
- JSON Configuration: All settings managed through a central config file
Project Structure
Usage Examples
WiFi Connection
Creating an Access Point
ESP-Remote: FTP Tool
An important side project, ESP-Remote, is a tool that provides file transfer to ESP devices via FTP protocol and enables remote management. This tool makes it easy to:
- Push and fetch files to/from ESP devices
- Prevent loading of faulty code with code validation
- Use .ignore files to exclude specific files and directories from transfers
- Automatically restart ESP devices after push operations
- Clean remote files with the .remove file feature
- Use a friendly interface and command-line tool


The ESP-Remote tool can be used both as a graphical interface and a command-line tool, and is designed to work on Linux and Windows platforms. This tool significantly speeds up and simplifies your ESP development process.
Steps needed for installation:
- For Linux: Install dependencies with the
./scripts/install-dependencies.sh
command - For Windows: Install lftp using Chocolatey
- Install Python dependencies:
pip install -r requirements.txt
- Optionally compile the application:
./build-app.sh
or./build-app.ps1
ESP Remote Tool
The included 'app' executable is an ESP Remote application with FTP tool for transferring files to/from your ESP. Source code for this tool is available in a separate repository.
To set up file transfer:
- The ESP must be running the uftpd.py server (included in this project)
- Make sure the ESP is connected to your network or you're connected to its access point
- Ensure the executable has execute permissions (chmod +x app if needed)
- Run ./app to start the FTP client tool