Software - cornellmotionstudio/DylanDrone GitHub Wiki
Hardware Required
- 1x Assembled Dylan - remove the propellers for now as they could cut your fingers off
- 1x Charged 4S LiPo Battery (>= 16V)
- 1x RadioMaster Boxer Controller
- 1x USB-C to USB-A or USB-C to USB-C depending on the needs of your computer
Software Required
Please install the latest version of all of the following software:
- EdgeTX Buddy, this is just a link
- To update the radio to the latest version of EdgeTX, the operating system on our radios
- ExpressLRS Configurator
- To update the ELRS transmitter and receiver to the latest version of the ELRS protocol
- Betaflight Configurator
- To update the Flight Controller to the latest version of BetaFlight, the firmware running on the flight controller (FC)
- BLHeliSuite32
- To change motor spin direction
Updating & Configuration
Part 1: Updating the Controller Software
I strongly recommend referencing this guide: https://oscarliang.com/flash-edgetx/#How-to-Update-EdgeTX
Step 1: Open EdgeTX Buddy. Keeping the RadioMaster Boxer turned off, plug the USB-C cable into the top port.
Step 2: Select the latest firmware version and then under the radio model, select RadioMaster Boxer
. Press the Flash via USB
button to start the updating process.
Step 3: After the process is complete, unplug the radio from the computer.
Part 2: Updating the Drone Receiver ELRS
I strongly recommend referencing this guide: https://www.expresslrs.org/software/updating/wifi-updating/
Step 1: Open ExpressLRS Configurator. Select the latest firmware version under the Releases
drop-down. Next, under the Target
section, in the Device category
drop-down select Happymodel 2.4 GHz
, and in Device
, select HappyModel EP1/EP2 2.4GHz RX
. In Flashing Method
, choose WIFI
. Configure Device options
as shown in the image below. Under Flashing Options
, press the BUILD
button and the building will commence.
Step 2: After the build is complete, a finder or file explorer window will pop-up with the resulting firmware.bin file. Keep this tab open.
Step 3: Plug in the battery to the drone, and wait for the lights on the receiver to start blinking rapidly. This should occur after approximately one minute, meaning the receiver is now in WiFi mode. With your computer, connect to the receiver's wifi network called ExpressLRS RX
with network password expresslrs
.
Step 4: Once the connection is successful, a webpage will pop up. Select the update
menu and drag the file into the firmware file attach box. Then, press the Begin Flashing
button. The WiFi will disconnect before the update status reaches 100%, this is normal.
Step 5: Unplug the battery and then plug it back in, waiting another minute to connect to the receiver once more. Once connected, verify that the firmware version matches the one that was just flashed on it by connecting to the website again and checking the 'Firmware Rev.' on the homepage. Its number should match the release you selected on ExpressLRS. If not, repeat Steps 1-4.
Step 6: Under Binding Phrase
, type in the binding phrase you would like to use. In our case, we used Dylan1
for Dylan 1 and Dylan2
for Dylan 2. Press the Save Changes
button and the receiver will reboot. You can now disconnect power, and the receiver updating and configuration are now complete.
Part 3: Updating the Controller Transmitter ELRS
I strongly recommend referencing this guide: https://www.expresslrs.org/quick-start/transmitters/rm-internal/
This is similar to the steps above for the ELRS receiver configuration.
Step 1: Open ExpressLRS Configurator. Select the latest firmware version under the Releases
drop-down. Next, under the Target
section, in the Device category
drop-down select RadioMaster 2.4 GHz
, and in Device
, select RadioMaster Pocket Internal 2.4Ghz TX
. In Flashing Method
, choose WIFI
. Under Flashing Options
, press the BUILD
button and the building will commence.
Step 2: After the build is complete, a finder or file explorer window will pop-up with the resulting firmware.bin file. Keep this tab open.
Step 3: Turn on the controller by holding down the power button for a few seconds. Then, press the SYS
button on the controller and select the first item in the menu by pressing on the scroll wheel. It should contain something along the lines of ExpressLRS Lua
. Once in the menu, scroll down to the Enable WIFI option
. With your computer, connect to the transmitters's wifi network called ExpressLRS TX
using network password expresslrs
.
Step 4: Once the connection is successful, a webpage will popup. Select the update
menu and drag the file into the firmware file attach box. Then, press the Begin Flashing
button. The WiFi will disconnect before the update status reaches 100%, and this is absolutely normal.
Step 5: Enter the ExpressLRS Lua
menu again, and verify that the firmware version matches the one that you built. If not, repeat Steps 1-4.
Step 6: Enable the WiFi once more with the Enable WIFI option
and connect to it. Under Binding Phrase
on the web page, type in the binding phrase you would like to use. In our case, we used Dylan1
for Dylan 1 and Dylan2
for Dylan 2. It is important that the transmitter and receiver's binding phrases match. Press the Save Changes
button and the receiver will reboot. While still in the ExpressLRS Lua
menu, toggle the Model Match
option to ON
.
Part 4: Flight Controller Updating & Configuration
I strongly recommend referencing this guide: https://oscarliang.com/flash-update-betaflight/
Step 1: Open Betaflight Configurator and connect the drone's flight controller to your computer with a USB-C cable. The Betaflight Configurator software should automatically detect the connected flight controller.
Step 2: In the Betaflight Configurator, navigate to the Firmware Flasher
tab on the left. Press the Auto-Detect
button and this should automatically select the correct board for your FC.
Step 3: Next, select the latest firmware version, and click Load Firmware [Online]
to download the firmware. Then, click Flash Firmware
to begin the update, ensuring not to disconnect the USB cable during this process or you could brick the Flight Controller (FC). It should only take a minute or two.
Step 4: After flashing, you should be able to connect by clicking the Connect
button at the top right corner. When connecting for the first time after flashing, Betaflight will prompt you to apply custom defaults. Always select Yes
. These defaults configure critical settings like gyro connection and motor pins specific to your Flight Controller.
Step 5: Under the Ports
, enable the Serial Rx
toggle in the UART2
row. This tells the flight controller that a receiver is connected to the UART 2 RX and TX traces. Press save
in the bottom or top right corner, and the flight controller will reboot to register the settings and then connect again.
Step 6: Go to Receiver
, and select the CRSF
under the Receiver Mode
drop-down. Now, turn on the radio. The transmitter and receiver with the same binding phrase should automatically connect, indicated by a solid light on the receiver and by "reception bars" on the controller's main screen. Try moving one of the sticks or toggling one of the switches, you hsould see the graph on the Receiver
tab change. Once again, press the save
and the flight controller will reboot and reconnect once more.
Step 7: Go to Modes
, and select the first row, and press the toggle button on the top left of the controller. Set the mode to Arm
, ensuring that the drone will arm only when the switch is pressed into the controller. Next, choose the second row and toggle one of the toggle flick switches into the downwards position, and set this to Horizon
. Choose the third row down and toggle the same toggle flick switch into the middle positon, and set this to Angle
.
Step 8: Calibrate the accelerometer under Setup
, it is vital that the drone is placed on a flat surface for accurate calibration.
Step 9: Under Motors, select the DSHOT600
protocol, this is the protocol that our ESC uses. Try arming and testing the motors, ensuring that they spin in the same direction as the QUAD X
motor configuration. If not (most likely), take note of which motors need to be reversed according to the QUAD X
numbering convention and move onto Part 5: Motor Direction Configuration
Part 5: Motor Direction Configuration
I strongly recommend referencing this guide: https://oscarliang.com/change-motor-spin-direction-quadcopter/
What might happen is that the motors won't spin in the right direction as per the diagram in BetaFlight. All motors should be rotating inwards relative to the frame, so opposite motors should have the same spin direction.
Step 1: Being sure to exit Betaflight Configurator, open BLHeliSuite32.
Step 2: Reverse the motors according to what was observed from the Betaflight Configurator. Once done, press save and disconnect the drone.
Step 3: Veriy that the motors are spinning in the right direction by once again doing Part 4: Step 9. If this does not work, repeat Steps 1 & 2
again.
How to Fly
Just send it 🤙
With that being said, it is important to be gentle, especially as these are being flown in an indoors enviornment!
I recommend trying LiftOff, a drone simulator game. Also, Joshua Bardwell's learning how to fly playlist is very good.
Step 1: Securely attach the propellers.
Step 2: Ensure that the battery is still relatively charged, securely mount it and plug it into the drone.
Step 3: Power on the controller, and verify that the drone and it are communicating.
Step 4: Put the toggle switch into either the Horizon
, Angle
, or Acro
(toggle the switch to the up position), depending on which flight mode you would like, as outlined below:
- Acro: Absolute rate input, hardest to initially learn but most precise for serious piloting.
- Horizon: Most forgiving as drone will not roll over as the horizon stays decently level. Letting go, or centering the sticks returns the drone to level.
- Level: A bit more aggressive than Horizon.
Step 5: Press the Arm
switch, which is the one on the top left of the controller and gently increase the throttle until the drone is in a hover, then try to move the other sticks to fly it, and then gnetly reduce the throttle and press the Arm
switch once more to disarm the drone.
Step 6: After landing the drone, ensure that the battery is charged or discharged to an appropriate voltage using the Storage
mode on the charger.