esp32s3_drone/readme.md
2025-06-08 15:03:45 +03:00

112 lines
2.3 KiB
Markdown

ESP32-S3 Drone Stabilization Project
This project implements a robust flight stabilization system for a quadcopter drone using the ESP32-S3 Super Mini microcontroller and an MPU6050 IMU. The firmware leverages the dual-core architecture of the ESP32-S3 to separate real-time stabilization from command processing, ensuring smooth and responsive flight control.
Features
Dual-Core Architecture:
Core 0: Dedicated to high-priority, real-time sensor reading and PID-based stabilization.
Core 1: Handles lower-priority tasks such as receiving and processing flight commands.
Autonomous Hover:
Maintains stable hover when no control commands are received.
IMU Integration:
Uses the MPU6050 for accurate attitude estimation and stabilization.
Motor Mixing:
Dynamically adjusts motor outputs for balanced flight.
Command Input:
Supports input via serial, WiFi, or Bluetooth (customizable).
Hardware Requirements
ESP32-S3 Super Mini
MPU6050 IMU
4x ESCs and motors
3.7V LiPo battery (2S-4S)
Optional: WiFi/BLE module for wireless control
Wiring Guide
MPU6050:
SCL → GPIO39
SDA → GPIO40
ESCs:
ESC1 → GPIO4
ESC2 → GPIO5
ESC3 → GPIO6
ESC4 → GPIO7
Software Requirements
Arduino IDE (with ESP32 board support)
Libraries:
Adafruit_MPU6050
ESP32Servo
Wire
Getting Started
Clone the Repository:
bash
git clone https://github.com/yourusername/esp32s3-drone-stabilization.git
Open the project in Arduino IDE.
Install the required libraries.
Connect your hardware as described above.
Upload the firmware to your ESP32-S3.
Calibrate the IMU and test with props removed for safety.
Usage
Serial Commands:
Send flight commands via the serial monitor.
No commands = autonomous hover.
Customization:
Adjust PID constants in the code for optimal flight performance.
Integrate WiFi or Bluetooth for wireless control.
Safety Warning
Always test with props removed and use a safety switch!
PID tuning and calibration are essential for stable flight.
Contributing
Pull requests and feedback are welcome! Please open an issue or submit a PR for any improvements or bug fixes.
License
MIT License
Happy flying! 🚁