July 28, 2023 Flight Test

Make sure to update the Title following the format “Jan 01, 2020 Flight Test”

 Flight Preparation

Requested by:

Required Sub-teams

Mech
Electrical
EFS
CV
Operation
Sys-Int

Requested Date

Jan 25, 2023

Location and Time

A muddy hill close to WREST RC @ 11 - 3

Summary & Goals

Tested ELRS RC and ELRS Airport Throughput and Link Quality

Approved?

Yes / Pending / No

 Required Persons During Test

Name

Phone #

Role

Reason

Name

Phone #

Role

Reason

 

 

Flight Test Lead

  • Creating documentation

  • Booking the test flight

  • Creating a thread in #flight-staging

 

 

 Pilot in Command

  • Aircraft preparation

  • Filling out documentation

 

 

Safety

  • Making sure everyone is safe

  • Bringing Med kit

 

 

Data Collector, Data Analyzer, Secondary Pilot ….

 

 Other Attendees

Name

Role

Name

Role

 

 

 

 

Drivers & Seat Arrangement

Driver

Vehicle Type

Passenger

Driver

Vehicle Type

Passenger

 

 

 

 

 

 

 

 

 


Week-Before To-Do List

Drone Registration

Drone Registration Number:

Flight test location booked
Pilot scheduled
Test Plan (What we are testing)
This should also include the flight path where applicable
Subteam action items (for flight readiness)
Transportation logistics finalized
Booking SDC vehicles
Assigning drivers
Renting any needed equipment (trailer? generator? etc.)

Day-Before To-Do List

SDC Vehicle key collected (if required)
Batteries Planned for (DON'T LEAVE CHARGING OVERNIGHT)
On-site kit together
Airfame assembled
ESCs/flight controller wired
Radio equipment tested
Motors tested
Wiring secured (Harnessing)
End-to-end test (neglecting props)
Check the center of gravity
All components not on the airframe that are required should be in the flight box (e.g. props & prop nuts)
Airframe payload
Spare parts
Flight Code Flashed
Ground station Software updated

Pre-Departure Checklist

Pre-flight Safety Checklist

Post-Flight Checklist

Item

Owner

Item

Owner

ALL MEMBERS PRESENT

 

 

Flight Test Debrief

The goal of this flight test was (originally) to determine the capabilities of ELRS Airport as a low-cost replacement for Xbees. Over the course of the flight test, the object evolved to determine causes for RF interference and how to optimize our setup. All testing stages will be discussed in this document, but the TLDR comes first (for those who don’t want to read through everything).

There were also other issues with Ardupilot setup on houston that will be listed at the very end. These have not yet been addressed but do not impact the core test criteria.

TLDR & Actionable items

  • Use 333hz for airport. This keeps the same maximum air rate as 500hz, but uses LoRa instead of FLRC. This improves the noise floor significantly and allowed an increase of about 20-60% in LQ.

  • Have spatial separation >8m (ideally 10+). Any closer observed significant interference from the RC TX causing LQ issues on the Airport module.

  • Move antennas away from the central frame. This is a much larger point and will be elaborated on later, but all we need to know is that copper, carbon fiber, and other electronics are very bad and we want antennas to be mounted far away from the frame with good orientation (depends on the antenna - no blanket answer here).

  • Airport seems to have a preference for higher transmit powers. we are unsure why.

  • The bay has a lot of interference. RSSI indoors is around -50 dB, outside around -34 dB.

  • Moving the orientation of the moxon antenna on the ranger did not help significantly.

Thanks for reading the TLDR! The next few sections (hopefully) should provide justifiable reasoning for what caused this

Test equipment and setup

Before I get too deep and heavy into this, I’ll give some background of what was used and give you guys some reference for what is what.

Airside:

Airside, our test-bed was the winter-2023 configuration of houston, with the triangle braced landing gear. 2217 motors with 10x4.5” green HQ props were used. The pixhawk 5x was mounted central to the drone, with red/black as left and white/white as right. Initial frame parameters were set as described. A PM02 power module was used as power for the pixhawk, but voltage/current monitoring was not supported. 4 PWM Opto ESC’s were used, configured from 1000-2100 pwm range, calibrated the day of. These were set on the IO MCU in default ordering.

winter-2023 configuration houston, no M9N

Our sensor stack included of an M8N GPS (shown taped on front right arm on above photo), which proved to be unreliable for GPS fix and so an M9N was added. No other sensors were on the drone. The m9N was mounted on a post, using frame screws already on houston. (i.e., screws that go through plate and into the arms). This did not pose any issues during the flight test but … maybe sketchy? idk. I’m not a mechanical engineer. the M9N plugged into GPS1 port, while the M8N plugged into the GPS2 port.

M9N Primary mounted using frame screws for houston

In terms of RC Links, we used a happymodel EP1 for RC Link, and a radiomaster RP1 for Airport. The EP1 was configured to use SBUS and plugged into the RCIN port, while the RP1 was configured as serial airport, and connected to telem1 port. Both receivers had the stock dipole antennas attached (shown in photos). Mounting locations of the receivers will be discussed in our testing procedure/methodology section (next section).

Groundside

Groundside was significantly more simple. We used a tx16 with stock antennas for RC link, and a radiomaster ranger with a moxon antenna.

It’s worth noting that different antennas will have different radiation patterns. Warg commonly uses 3 kinds of linearly-polarized antennas: Monopole, Dipole, and Moxon style antennas. These will all have slightly different radiation patterns, but monopol/dipole antennas are not directional, while a moxon is. Moxons are also linearly polarized, meaning that you want the active element the same direction as the airside antenna.

Note that all dipole/monopole antennas have deadzones along the AXIS of the antenna (the direction the wire is placed). This means that if an antenna is mounted horizontally (flat), then turning the drone 90 degrees may put you in a null zone.

It is worth noting that there are other polarized antennas that warg uses, but this is typically reserved for video (where multipathing is a bigger issue). Thank you for listening to my ted talk. (Note that radiomaster also ships a T-antenna with the ranger. This is not a dipole. Google “marconi” or “t-antenna” if interested).

 

Common Terminology.

This may be boring, but trust me, it’s going to be a bit important. This will be grossly oversimplified (I’m sorry, don’t kill me. TT -anni)

With that out of the way, we can get to testing procedure.

Testing Methodology.

From 10am-3pm, Two outdoor tests and one indoor test was done.

  • Test 1: Determined that we had strong signal quality issues.

  • Test 2 (indoors): Determined ideal antenna placement and established testing procedures for measuring signal quality

  • Test 3 (outdoors): Verified our antenna placement as well as spatial separation and different modulation protocols.

Test #1

Configuration

Test 1 was conducted with both antennas mounted internally, close to the drone, as depicted in the following images:

This antenna configuration was originally chosen in order to protect the antennas, and because (typically), ELRS is able to outperform null zones, where even having a null zone at 1-2km does not pose serious risk to link quality and will not cause a boost in transmit power.

 

The TX16 was set to 250mW max power, dynamic on. The Ranger was originally set to 250mW, dynamic off, but was later changed to 1000mW, dynamic on.

Results

What we noticed was that the TX16 was constantly at 250mW, with link quality 80-100 in close range operations (< 100m). As the drone moved away, the link quality decreased to 40-60% at 1.1km. TPower never lessened below 250mW. Moving away from airport did not help.

Airport was constantly running at max power, either 250 or 1000, and LQ in the GCS was consistently, in both configurations, dropping to as low as 4% at 1.1, when we decided to engage RTL. Average was around 20-40%, with the highest values being around 60-70% in close range operations.

Test #2

Configuration

The drone was placed on the workbench, USB power delivered by the WARG laptop. The ranger and tx16 were placed on the blue bench ~ 1m away, taking measurements for TPower, LQ, and RSSI. This configuration ensured the most free air between the drone and the groundside (no vanny, or other cables in the way - less reflections & alignment issues). The ranger was powered by Hardy Yu’s laptop, while the tx16 was plugged in to charge the low battery (7.2v after test #1). Output power for the tx16 was limited to 10mW , while the ranger was limited to 250mW with dynamic power.

A first reading was taken with the antennas unchanged from internal, we moved the antenna and reciever locations to be further out, as shown in the following two photos:

When changing the orientation of the airside antenna, the orientation of the groundside antenna should change as well

Results

In the internal antenna test, we noticed the TX16 RSSI hovering between -60 and -50 db, while the LQ would go as low as 93%, regardless of whether or not airport was turned on. One bad antenna had a rssi of -66db, but this was replaced

Moving the antenna to the outside of the drone resulted in the RSSI improving to -55 to -44 dB. Turning on airport curiously improved the RSSI to be more steadily close to -44 dB, but not significant enough to justify any concrete action.

Test #3

Configuration

Moving the drone outside, with the reconfigured antenna orientations, yielded significantly better results.

The tx16 was set to 250mW dyn power, while the ranger was set to 1000mW dyn power.

Tests were first conducted with RC beside Airport, using 500hz mode (FLRC) on the radio. We then changed to 333hz (LoRa) and the RC away from airport.

We also tested moving the RC close to/away from airport during the test.

Results

The most immediate results are the improvement in RSSI with the tx16. Throughout the entire test, the TX16 stayed at 10mW transmit power, with LQ consistently above 90%.

In the following photo, you can see the RSSI improving significantly to -34 dB with stock antennas on the tx16, about 1m away (same distance as Test #2 inside).

This improvement is likely due to the fact that there’s lots of things in our bay to cause reflections or interactions between other antennas. Notice how we are at a steady 10mW of transmission power now, with 100% LQ.

Notice how even 1.1km away, at 10mW transmit power, the RSSI is still better than 1m away with badly placed antennas.

 

The second result worth noting is the LQ from different modulation schemes on Airport. Although moving the antennas improved the 500hz LQ marginally (roughly 10% increase), changing to 333hz added another 10-20% LQ increase. This meant that with no spatial separation, 500hz modes (FLRC) had ~ 40% LQ, while 333hz modes (LoRa) had ~ 60-70% LQ. This improved more with spatial separation.

We also noticed a significant drop in transit power from the airport module, although it was still consistently higher than the RC link. 250mW was the standard transmit power, jumping to 500mW occasionally at max range (1.1km).

 

With 333hz modes, moving the TX16 very close ( < 30cm) to the airport module caused significant drops in LQ, but no increase in the output power of the tx16. The ranger jumped to max TPower (1000mW) when this occurred.

Our best GCS LQ was observed with ~ 10m of spatial separation between the RC and Airport, at around 97%, even out to 1.1km. At this point we were concerned with the stability and ability to keep LOS of the drone so we decided to RTL.

With full spatial separation, tpower on airport sometimes dropped to 100mW, but often recovered back to 250mW. The moxon antenna was pointed at the drone by hand.

Ardupilot configuration

There were a few issues with ardupilot configuration, including:

  • Incorrect GPS configuration for GSP2 only.

  • Safety switch not disabled (not present for first flights).

  • Incorrect GPS configuration for GPS1 (could not find compass or safety switch).

  • Incorrect initial frame parameters (setup for Icarus still, not reset for Houston).

  • PWM Calibration not completed (Could not use inbuilt calibration due to safety switch not existing and not being disabled).

  • Compass variance (internal compass high noise, external compass not detected).

  • Power module voltage/current sensing not available (we were flying off of “feels” for battery voltage).

In general, I (anni) noticed a few issues with the drone during flight:

  • Inability to climb in guided modes

  • Inability to hold position in guided modes

  • “toilet bowling” in position guided modes (caused by poor GPS2 performance?)

  • Significant compass variance errors.

All in all though, RTL always worked and we only flew within capabilities of ourselves and the drone

Flight Test Logs

The graph above is the accumulated MAVLink Packet received/sent in the flight controller (PX6) during a flight test

The red line represents the data sent and the green is the data transmitted

  • The key takeaway from this graph is that we know the telemetry RX/TX isn’t proportional. The RX:TX has a 10 times ratio difference shown in the graph

  • The airport uplink/downlink bandwidth ratio is balanced and unchangeable. In the future, if the ELRS airport uplink/downlink bandwidth could be customized, then the telemetry transmission quality could be further optimized.

Hotlinks

Logs (view only - must be signed in to UW account): https://uofwaterloo-my.sharepoint.com/:f:/g/personal/uwarg_uwaterloo_ca/EnmcEWaGxHdEiYuD6xJM7XMB3XnpnPPU6S26vowZ1zjkQQ?e=gwI5j1

Media: (non existent as of rn)

Flight test thread: https://discord.com/channels/776618956638388305/1134564410652885002

Suggestions for future

Here’s some things that we should (probably) do in the future

CRSF instead of SBUS for RC

Using CRSF instead of SBUS means that we can’t use the RCIN port, but instead connect to a serial port (TELEM 1/2/3/4).

This gives us a few advantages, the biggest one being redundant telemetry over RC link. We noticed often that the RC Link was more reliable than the airport link, and having the ability to get telemetry back from ardupilot and running a Yappu script means that if our airport link goes down (more likely than RC), we still have the ability to view telemetry and fly the drone (especially verifying things like correct flight mode - RTL).

True diversity or PA/LNA Equipped RX

A receiver with a PA/LNA will have more telemetry output power (up to 1W), meaning that it’s less likely for airport LQ to degrade (especially since airport is 90% Air → Ground). It is common to run TX modules as RX for airport.

Diversity receivers help protect against null zones and interference that may be caused by the angle/position/rotation of the drone. Highly recommended and not significantly more expensive than existing RX’s.