Skip to content

mars2860/cicada

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About

The Cicada Project is the flight controller based on ESP8266 Wifi module. You can make it yourself to come in the world of drone developers. Cicada doesn't have a hardware pult with sticks. To control a drone there is desktop application developed on Java and mobile application for Android v7 and higher. You can connect a gamepad to your smartphone or desktop to control a drone. The flight controller can work in WiFi normal mode as WiFi station or WiFi Access Point. Also It can work in WiFi Broadcast mode (WiFi monitor mode). To work in broadcast mode you have to connect the special wifi broadcast serial modem to your smartphone or desktop. The serial modem is easy. You can do it yourself easy. Just ESP-07 module + UART-USB bridge. Flash in ESP-07 the modem firmware which is placed in the folder /firmware/WifiBroadcastModemFw.

cicada-main-v4

cicada-micro-v2

DesktopApp

MobileApp

Features

Min Typ Max
1. Supply voltage 3,4V 5V
2. Update frequency 100 Hz
3. Control from notebook or smartphone through WiFi net. 2.4 GHz
4. Instant telemetry through WiFi net. Charts of all parameters. BlackBox is stored on host. Telemetry packets is sent every 10ms.
5. Control devices:

* Gamepad (supported by desktop and mobile applications)
* Keyboard (supported by desktop application only)
* Virtual keyboard (supported by desktop application only)
* Virtual gamepad (supported by mobile application only)
6. Control range 100 meters
7. Stabilization modes:

* Stabilization of body angular rates
* Stabilization of yaw,pitch,roll angles
* Stabilization of vertical velocity (only if barometer or lidar are available in the system)
* Stabilization of horizontal velocity (only if optical flow sensor or GPS are available in the system)
8. Supported sensors and devices:

* MPU9250 - imu chip
* MPU6500 - imu chip
* MPU6050 - imu chip
* QMC5883L - magnetometer
* BMP280 - barometer
* VL53L1X - lidar
* TFmini Plus (in I2C mode) - lidar
* HCSR04 (in I2C mode) - sonar
* BN180 and other GPS modules with UBX protocol
* Analog 0-3V sensor of battery current
* Servo 500-2400us to control camera pitch angle
* Camera Runcam Split4 (only supported start/stop video commands)
9. Electronic speed controllers:

* DSHOT-300 to control BLDC motors
* All listed below PWM-modesе to direct control coreless dc motors
* PWM 2.5 kHz, resolution 2000
* PWM 5 kHz, resolution 1000
* PWM 10 kHz, resolution 500
* PWM 20 kHz, resolution 250
* PWM 40 kHz, resolution 125
* PWM 50 kHz, resolution 100
10. Dimensions

* cicada-main-v4
* cicada-micro-v2
58,67mm х 41,65mm
26,67mm x 30,98mm
11. Installation dimensions

* cicada-main-v4
* cicada-micro-v2
48,51mm х 31,49mm
21,84mm x 26,16mm
12. Weight

* cicada-main-v4 with cicada-gy91-v3
* cicada-micro-v2
16g
6g

Drones

Examples of drones you can find in drones folder of this project.

Firmware

The firmware is based on PDL. Portable Drone Logic (PDL) is the lightweight pure C library implements a common drone logic. The goal of PDL is to be easy to use and easy to port to your hardware platform. PDL supports only quadcopters at this time.

It provides for you

  • data model
  • application template
  • task scheduler
  • chain of PIDs
  • parser for binary digital commands

PDL is a part of this project. But you can use it to create firmware for your own hardware platform. Documentation is available in /firmware/CicadaFw/libraries/pdl

To build firmware you need

Firmware supports update by the air. It is based on ESP8266HTTPUpdateServer.

Chain of PIDs

Chain of PIDs

Design tools

  • Sloeber IDE
  • FreeCAD
  • KiCAD