Step-by-step guides on modding, soldering, and adding new peripherals to your drone.
Step 1: Use the JST to jumper connector to connect to the sensor
Step 2: Add X-breakout board to Primus X board.
Step 4: We recommend that you use hex spacer to ensure that the breakout does not come out during flight or crash. This step is optional.
Step 5: We strongly recommend reading the datasheet before interfacing the sensor.
Step 6: Using the appropriate jumper wires make the required connections.
Step 7: Please note the pin of UniBus on which I2C is used. Please note that this I2C is used by the MCU as well to communicate with its sensors. Any issue (For ex. shorting) will result in a system error.
Step 1: Ensure that you have Cygnus IDE installed in your system. If not please follow the following tutorial.
PROVIDE LINK FOR CYGNUS DOWNLOAD HERE
Step 2: Using the API documentation, understand how I2C can be interfaced.
PROVIDE LINK FOR API DOCUMENTATION DOWNLOAD HERE
Step 3: Using the APIs read the desired data
VIDEO HERE
There are many analog sensors available. The constraint while choosing a sensor is weight, power and voltage levels. The weight of the sensor depends on the configuration of drone.
Examples of I2C sensors:
EXAMPLES HERE
This section explains how to add an I2C sensor.
Primus X
X-Breakout
SPI sensor
Library files.
Sensor mounting pad.
Step 1: Use the JST to jumper connector to connect to the sensor.
Step 2: Mount X Breakout board on Primus X board.
Step 4: We recommend that you use hex spacer to ensure that the breakout does not come out during flight or crash. This step is optional.
Step 5: We strongly recommend reading the datasheet before interfacing the sensor.
Step 6: Using the appropriate jumper wires make the required connections.
Step 7: Please note the pin of UniBus on which SPI is used. Please note that this I2C is used by the MCU as well to communicate with its sensors. Any issue (For ex. shorting) will result in a system error.
Step 1: Ensure that you have Cygnus IDE installed in your system. If not please follow the following tutorial
PROVIDE CYGNUS LINK DOWNLOAD HERE
Step 2: Using the API documentation, understand how SPI can be interfaced.
PROVIDE API DOCUMENTATION LINK HERE
Step 3: Using the APIs read the desired data.
PROVIDE VIDEO HERE
There are many analog sensors available. The constraint while choosing a sensor is weight, power and voltage levels. The weight of the sensor depends on the configuration of the drone.
Example of analog sensors:
PROVIDE EXAMPLES HERE
This section explains how to add a servo.
Primus X
X Breakout
Servo mounting part
Servo 1.7g - with 1.25mm JST connector
Step 1: Ensure that the pin configuration of the servo matches the pin configuration of PWM port on X-breakout board.
Step 2: Mount the X-breakout board on Primus X board.
Step 3: We recommend that you use hex spacer to ensure that the breakout does not come out during flight or crash. This step is optional.
Step 4: Connect the servo with the PWM on X-breakout board.
Step 5: Please note the pin of UniBus from which the servo input is to be given. In our case we are using PIN 2.
Step 1: Ensure that you have Cygnus IDE installed in your system. If not please follow the following link to download and install Cygnus IDE.
Step 2: Use the API Documentation to understand the APIs associated with PWM port. Check API Documentation here.
Step 3: Using the ‘init’ API, initialize PIN 2 of the UniBus to give the input to the servo.
Step 4: Using the ‘write’ API, set the PWM value for the servo.
Step 5: Build the program and flash it onto Primus X board.
Step 6: Turn the Developer’s Mode ON for the servo to run at the given PWM.
Coming soon.
Let us know if you have done this project and you want to put your video here.
Adding Analog Sensor
USB to UART converter
Multi Strand wires
Solder Iron
Multimeter
Patience
Node MCU
Firmware
Carefully solder wires on your Pluto’s esp as follows.:
TX
RX
ESP_RST
GPIO0
GND
STM_RST
Also solder the VBAT as shown in the figure below.
Ensure those pins are not shorted using a multimeter
Ensure that the Pluto’s switch is in the “ON” position. Not “Charging”.
Prepare your FTDI device
Ensure that its 3.3V mode
You need the following pins
TX pin
RX pin
5V pin
GND pin
Hook up the pins as follows:
Pluto TX pin -> FTDI RX pin
Pluto RX pin -> FTDI TX pin
Pluto STM_RST -> GND (This step ensures that the STM doesn't interfere with the communication)
Pluto GND -> FTDI GND
Pluto VBAT -> 5V (Supply for Pluto) Min voltage 3.5V.
Caution: Do not supply directly 3.3V from FTDI chip, it doesnt have enough source current for your pluto.
Pluto ESP_RST -> Floating
Pluto GPIO0 -> Floating
Load all the files as shown below
Configure the serial port as shown below
Set the ESP in Bootloader mode using the following sequence:
Hold the Pluto GPIO0 pin to GND
Then use the Pluto ESP_RST pin to GND to reset the ESP. Please ensure that the ESP GPIO0 pin is still attached to GND pin, during the reset
Release the GPIO0 pin
Release the ESP_RST pin
You ESP is now in Bootloader mode.
Once your hardware setup is ready you can flash firmware using Flash Download Tool as follows:
Download “Flash Download Tools (ESP8266 & ESP32)” from the Espressif Website.
Open “Flash DownLoad Tools” application and select ESP8266 Tools
You will be presented with SPIdownload screen where you have to load firmware file and configure SPI settings to flash.
Load the firmware in application in the following order:
Firmware File | Address |
blank.bin | 0xfe000 |
blank.bin | 0x3fe000 |
blank.bin | 0x3fb000 |
esp_init_data_default_v05.bin | 0x3fc000 |
boot_v1.6.bin | 0x00000 |
4096_user1.bin | 0x01000 |
Configure the SPI settings to following:
CrystalFreq: 26 M
SPI SPEED : 40 MHz
SPI MODE: QIO
FLASH SIZE: 32Mbit-C1
Load the data logger enabled firmware using either of the options:
Flash the drone with firmware in which flash is enabled. You can get the firmware from create.dronaaviation.com
Build the native firmware using the tutorial. Make necessary changes to enable dataflash log. This is done using uncommenting “#define BLACKBOX” in
PRIMUSX/target.h file in the magis project.
Prepare the drone
Mount the X-basic breakout board on PrimusX unibus
Mount it using the provided plastic spacer for connection integrity.
Switch on the drone
Arm it and fly it.
The data will start logging once we “Arm” the drone
Download the data from dataflash using Cleanflight Pluto configurator
Download the cleanflight software from https://create.dronaaviation.com/assets/downloads/PlutoConfigurator/Pluto_Configurator.zip
We strongly recommend a windows 7 machine for the software
Install this chrome app to your browser.
Switch on the drone and connect to the wifi, using correct SSID and password
Using pluto configurator, connect to the drone.
If the X-break out is connected correctly and the correct firmware is installed, you will see the data flash details (check figure).
You can download the dataflash using the left side bar menu called “Blackbox”. You can save it as “logfile.TXT”
Once downloaded the file, we now have to decode it.
Decode the downloaded file
Download the blackbox_decode tool from
https://github.com/cleanflight/blackbox-tools/releases/tag/v0.4.3
Once extracted, use the command prompt to run blackbox_decode.exe “logfile.TXT”
This will decode all the data and convert it to csv file.
You can now view the CSV file using excel.