Monday, 19 December 2016

Presenting Drone Racing 101

Friday was our annual staff un-conference where the staff are the speakers, and I did a talk about flying drones entitled 'Drone Racing 101 (with actual live drone racing!)'.

It was really neat getting up in front of a supportive crowd to talk about something that I love doing, getting to demonstrate the flying of drones and answer some basic questions on what you need to get started.

We even did some indoor flying around the conference room which was very cool. It was close-quarters FPV flying between the seats with micro drones, with my video stream also being projected up for people to see.

I've put up the contents here for anyone who wanted to go over the content again or to see what I was talking on if you couldn't make it.

Presentation Notes

Here are my cut-down notes, links, and the videos from my talk.

Links

airshare.co.nz: a great guide for getting to know what you can and can't do in controlled airspace
https://lmgtfy.com/?q=drone+racing: Yes, I actually used this link.
#x-drones on Slack

Example Kit Bundles

Prices and tech will obviously vary over time, but these are my current top picks for the gear to get started with minimal thought and expenditure. Bundle prices are somewhat inflated as you'll want to think about getting extra blades, blade guards, possibly more batteries or some other spares.
Note that: Most video equipment can be mix and matched, but transmitters usually have one language that they speak, so you have to be sure that your quad and your transmitter will use the same protocol.

For those of you who were at the conference - if you need a hand picking something nice out for yourself I'm happy to lend a hand.

NZD$300 Kit

This is a kit that contains the quad we were flying around during the presentation. I think this little quadcopter is the absolute shizzle and think it would be good for anyone who wants to get into it (I have plans to get my 8yr old flying one once he progressed from his current simulator training). The transmitter gets ok ratings, and while cheap it has memory for more than one model and you can use normal receivers in it if you want to get larger multirotors or get into other types of models.

Eachine QX95 and FlySky Transmitter bundle ($160)
Eachine Goggles (no diversity) ($67)

NZD$450 Kit

This quad is better for outdoors and windier environments, and the goggles has a diversity receiver which selects the best of two signals and displays that for optimal reception. These goggles can be used with the QX95 in the selection above.

Eachine Wizard 220 Class Quad and Transmitter bundle ($277)
Eachine Goggles (diversity) ($114)

NZD$1000+ Kit

As with all good hobbies; you can always get more expensive kit - I mentioned the Fat Shark goggles and Taranis transmitter in my talk - these are pretty darn good. I couldn't personally recommend the Fat Sharks (partly because I love my DIY solution, partly because of no direct experience, but they rate well), but the FrSky Taranis transmitter is a good investment if you're keen on RC and want a transmitter that will do pretty much everything you will ever need. (n.b: FrSky isn't FlySky spelt wrong - its a different brand & protocol)

 
FrSky Taranis ($336)
Fat Shark Dominator HD ($730)

Powerpoint

Just in case you need a visual reminder. Please keep in mind that this was done for fun, not profit, and all the images were blatantly pinched from around the 'net.
Drone Racing 101 - Blog Edit (Powerpoint)

Video



Shout-outs

  • Venue staff: You were really helpful getting me the kit I needed to display the video feed to my crowd. Thanks heaps.
  • Unconference organisers: Thanks for the opportunity!
  • Mark: Thanks for coming in and flying with me during the presentation - sorry that we didn't get to fly in a more interesting space like I had originally envisaged!
  • Evan: For watching the door.
  • Trade Me peeps: Public speaking is something I want to be good at, you made it really easy and awesome to give it a go. Thanks for all the positive feedback and for letting me use the video from the presentation on my blog.
A few notes on safety for those that are wondering - before flying I gave a safety briefing about quadcopters having fast moving parts (I actually described them as a flying Galaxy Note 7 with whirling knives attached), and had someone mind the door to prevent people from walking in unexpectedly. A few of my colleagues were a bit enthusiastic and tried to get hands-on, but overall I was pretty happy with the safety of the situation.
~~ ~~

Monday, 12 December 2016

A little night flying (Video)


Mark and I got out and did a little flying at dusk. It was practically dark outside but the stock cameras in the QX95 picked up enough detail to fly. As it got darker and darker the picture got more grainy but it was holding out enough to give us our last FPV fix for the day.

The evening ended with both quads running out of power about 3 stories up and crashing into a tree fern. We figure that this has potential as a high-tech way to install lights in xmas trees.

Music: Feel - SizzleBird

~~ ~~

Friday, 9 December 2016

Broken QX95 frame repaired!

Strange the things you don't notice when you're busy flying. Turns out at some stage over the last lot of flights one of my landings must have been a bit too heavy and I managed to crack the frame back right arm on the frame of my Eachine QX95.

Frames for the QX95 are pretty cheap - about $12 NZD each, so I ordered a couple more when I realised that it was broken.

While this micro quad is pretty darn solid - and certainly has taken some serious punishment at my hands - it isn't indestructible - so if you get one (and you like it after the first few flights) I'd advise getting that spare frame in the post as a part of your next order.

I use prop-guards on my quads wherever I can, especially on the micros. I love them. There are a lot of trees and leaves (and walls) around where I fly and I am constantly surprised at the crashes I can recover from. I recommend the full-surround prop-guards for the QX95 because the partial ones seem to snag on things a little more often.

Another surprising upside of the full-surround prop-guards is that they hold everything together if one of the arms cracks. I can't guarantee that it will work every time, but in this particular instance the only reason I noticed the arm was broken was because it was on a slight angle - the rest of the tension being applied by the prop guard. I guess I should check the quad for damage more often. I initially thought the motor wasn't aligned properly.

The good news is, though, that all that was needed was a bit of medium viscosity superglue and about 15 minutes of setting it was good go and ready for the same level of punishment. I've put 7 batteries through it since then (today, FTW, you can check out one of the flights here) and it doesn't seem to have upset the glue at all.
~~ ~~

Tuesday, 6 December 2016

Eachine ProDVR Black Screen Problems

In my last videos, screen flicker has been a bit of an issue. You can check out what I mean in those videos here, and here.

The issue is simply; during playback of a video, when the signal from the video transmitter is weaker, the screen goes partially or wholly black.

The problem, however, is not due to the transmitter or the receiver; but the Eachine ProDVR itself. The signal that I get on my goggles (Quanum v1) is just snowy here and there, perhaps a slight amount of distortion occasionally - but never any black. The goggles don't even go to black when there is no signal at all - they just display good old fashioned snow.

The DVR on the other hand is bloody awful. Here are some selected sample images for your referencing pleasure:


I thought this was just an artefact of signal fade and had ordered a couple of 200mw VTx units for my QX95 - more power can fix any problem, right? But while viewing some of the videos that Mark made while we were flying together during the session above I found that his recordings looked the same as what I was seeing through my goggles (although his screen blacks out like my DVR does - go figure! something to fix another day...).

Armed with this knowledge I decided to go on a bit of a hunt around the internet for some reasons and solutions, and after not much searching at all I came across this awesome little vid from Quadcopter Patrol which explains the problem perfectly.


This completely and neatly sums it up for me - the hardware that I have is the blue 1.6 board and a quick chat with my flying buddy confirms that he received the 1.4 version when he ordered. At the time of writing this there is no firmware upgrade that updates the decoder chipset, and while I am tempted to see if I can write a firmware update for the ProDVR, that might have to wait until I am really, really bored.

As for where to from here - I'll have  a chat to Banggood customer support and see what they have to say, and if that doesn't amount to anything there is always the HMDVR that is recommended in this video.

Actually I might just order the HMDVR before I talk to them to save time...

Hope this helps, thanks again to Quadcopter Patrol for the nice concise explanation of the problem - you saved me a lot of research!

~~ ~~

Monday, 5 December 2016

Flitting through the trees (Video)


Mark and I had a bit of fun between meetings and put 14 batteries through the Eachine QX95s. This is a vid of a particularly awesome crash-free run I had.

The video flickers heaps. Unfortunately this seems to be the Eachine DVR unit I am using. My headset doesn't flicker when I am flying - I'm running a Qanum V1 from Hobbyking and it fades to static rather than blanking out. It's pretty annoying to see the flickering on the final video so I'll certainly be working on that.

(Edit: You can check out the solution for the flickering in this post)

The hillside down from my house is a stand of big beech trees, and I've been tidying up the area to make it more suitable for FPV - a few holes in the hedges here, the odd select dead branch removed to make it easier to shoot the gap. It's a great place to play around.

Music:
Dabin x Feint - When You Return (feat. Daniela Andrade)
https://soundcloud.com/feintdnb/when-you-return-feat-daniela
Used without permission.
~~ ~~

Saturday, 3 December 2016

QX95 Default CLI Dump for Cleanflight

This is the configuration dump from CleanFlight for the Eachine QX95.

This specific version is the FRF3_EVO_BRUSHED Flight Controller Built-in Frsky Receiver.

Comparing this config dump to the one from the QX95 flight controller with 6 ESCs and no built-in receiver, the values are mostly the same, with only p_level being different - p_level = 15 on the 6 ESC version, and p_level = 50 on the all-in-one.


Eachine QX95 Config Dump

# version
# Cleanflight/SPRACINGF3EVO 1.13.0 Jun  6 2016 / 00:03:29 (a77bc76)
# dump master

# mixer
mixer QUADX
mmix reset
smix reset


# feature
feature -RX_PPM
feature -VBAT
feature -INFLIGHT_ACC_CAL
feature -RX_SERIAL
feature -MOTOR_STOP
feature -SERVO_TILT
feature -SOFTSERIAL
feature -GPS
feature -FAILSAFE
feature -SONAR
feature -TELEMETRY
feature -CURRENT_METER
feature -3D
feature -RX_PARALLEL_PWM
feature -RX_MSP
feature -RSSI_ADC
feature -LED_STRIP
feature -DISPLAY
feature -ONESHOT125
feature -BLACKBOX
feature -CHANNEL_FORWARDING
feature -TRANSPONDER
feature VBAT
feature RX_SERIAL
feature MOTOR_STOP
feature FAILSAFE
feature TELEMETRY
feature CURRENT_METER
feature RSSI_ADC
feature LED_STRIP


# map
map TAER1234


# serial
serial 20 1 115200 57600 0 115200
serial 0 1 115200 57600 0 115200
serial 1 64 115200 57600 0 115200
serial 2 0 115200 57600 0 115200


# led
led 0 0,7::IC:3
led 1 15,7::IATC:12
led 2 7,7::IATC:12
led 3 8,7::IC:3
led 4 0,0:::0
led 5 0,0:::0
led 6 0,0:::0
led 7 0,0:::0
led 8 0,0:::0
led 9 0,0:::0
led 10 0,0:::0
led 11 0,0:::0
led 12 0,0:::0
led 13 0,0:::0
led 14 0,0:::0
led 15 0,0:::0
led 16 0,0:::0
led 17 0,0:::0
led 18 0,0:::0
led 19 0,0:::0
led 20 0,0:::0
led 21 0,0:::0
led 22 0,0:::0
led 23 0,0:::0
led 24 0,0:::0
led 25 0,0:::0
led 26 0,0:::0
led 27 0,0:::0
led 28 0,0:::0
led 29 0,0:::0
led 30 0,0:::0
led 31 0,0:::0


# color
color 0 0,0,0
color 1 0,255,255
color 2 0,0,255
color 3 30,0,255
color 4 60,0,255
color 5 90,0,255
color 6 120,0,255
color 7 150,0,255
color 8 180,0,255
color 9 210,0,255
color 10 240,0,255
color 11 270,0,255
color 12 300,0,255
color 13 330,0,255
color 14 0,0,0
color 15 0,0,0


# mode_color
mode_color 0 0 1
mode_color 0 1 11
mode_color 0 2 2
mode_color 0 3 13
mode_color 0 4 10
mode_color 0 5 3
mode_color 1 0 5
mode_color 1 1 11
mode_color 1 2 3
mode_color 1 3 13
mode_color 1 4 10
mode_color 1 5 3
mode_color 2 0 10
mode_color 2 1 11
mode_color 2 2 4
mode_color 2 3 13
mode_color 2 4 10
mode_color 2 5 3
mode_color 3 0 8
mode_color 3 1 11
mode_color 3 2 4
mode_color 3 3 13
mode_color 3 4 10
mode_color 3 5 3
mode_color 4 0 7
mode_color 4 1 11
mode_color 4 2 3
mode_color 4 3 13
mode_color 4 4 10
mode_color 4 5 3
mode_color 5 0 9
mode_color 5 1 11
mode_color 5 2 2
mode_color 5 3 13
mode_color 5 4 10
mode_color 5 5 3
mode_color 6 0 6
mode_color 6 1 10
mode_color 6 2 1
mode_color 6 3 0
mode_color 6 4 0
mode_color 6 5 2
mode_color 6 6 3
mode_color 6 7 6

set looptime = 1000
set emf_avoidance = OFF
set i2c_highspeed = ON
set gyro_sync = ON
set gyro_sync_denom = 1
set mid_rc = 1500
set min_check = 1100
set max_check = 1900
set rssi_channel = 0
set rssi_scale = 30
set rssi_ppm_invert = OFF
set rc_smoothing = OFF
set rx_min_usec = 885
set rx_max_usec = 2115
set serialrx_provider = SBUS
set sbus_inversion = ON
set spektrum_sat_bind = 0
set input_filtering_mode = OFF
set min_throttle = 1150
set max_throttle = 2000
set min_command = 1000
set servo_center_pulse = 1500
set motor_pwm_rate = 1000
set servo_pwm_rate = 50
set 3d_deadband_low = 1406
set 3d_deadband_high = 1514
set 3d_neutral = 1460
set retarded_arm = OFF
set disarm_kill_switch = ON
set auto_disarm_delay = 5
set max_arm_angle = 25
set small_angle = 25
set fixedwing_althold_dir = 1
set reboot_character = 82
set gps_provider = NMEA
set gps_sbas_mode = AUTO
set gps_auto_config = ON
set gps_auto_baud = OFF
set telemetry_switch = OFF
set telemetry_inversion = ON
set frsky_default_lattitude =  0.000
set frsky_default_longitude =  0.000
set frsky_coordinates_format = 0
set frsky_unit = IMPERIAL
set frsky_vfas_precision = 0
set hott_alarm_sound_interval = 5
set battery_capacity = 0
set vbat_scale = 110
set vbat_max_cell_voltage = 43
set vbat_min_cell_voltage = 33
set vbat_warning_cell_voltage = 35
set current_meter_scale = 400
set current_meter_offset = 0
set multiwii_current_meter_output = OFF
set current_meter_type = ADC
set align_gyro = DEFAULT
set align_acc = DEFAULT
set align_mag = DEFAULT
set align_board_roll = 0
set align_board_pitch = 0
set align_board_yaw = 0
set max_angle_inclination = 500
set gyro_lpf = 188HZ
set gyro_soft_lpf = 60
set moron_threshold = 32
set imu_dcm_kp = 2500
set imu_dcm_ki = 0
set pid_at_min_throttle = ON
set yaw_motor_direction = 1
set yaw_jump_prevention_limit = 200
set tri_unarmed_servo = ON
set servo_lowpass_freq =  400.000
set servo_lowpass_enable = OFF
set failsafe_delay = 10
set failsafe_off_delay = 200
set failsafe_throttle = 1000
set failsafe_kill_switch = OFF
set failsafe_throttle_low_delay = 100
set failsafe_procedure = 0
set acc_hardware = 0
set baro_hardware = 0
set mag_hardware = 0
set blackbox_rate_num = 1
set blackbox_rate_denom = 1
set blackbox_device = SDCARD
set magzero_x = 0
set magzero_y = 0
set magzero_z = 0

# rxfail
rxfail 0 a
rxfail 1 a
rxfail 2 a
rxfail 3 a
rxfail 4 h
rxfail 5 h
rxfail 6 h
rxfail 7 h
rxfail 8 h
rxfail 9 h
rxfail 10 h
rxfail 11 h
rxfail 12 h
rxfail 13 h
rxfail 14 h
rxfail 15 h
rxfail 16 h
rxfail 17 h

# dump profile

# profile
profile 0

# aux
aux 0 0 0 1450 2100
aux 1 1 0 1175 2100
aux 2 0 0 900 900
aux 3 0 0 900 900
aux 4 0 0 900 900
aux 5 0 0 900 900
aux 6 0 0 900 900
aux 7 0 0 900 900
aux 8 0 0 900 900
aux 9 0 0 900 900
aux 10 0 0 900 900
aux 11 0 0 900 900
aux 12 0 0 900 900
aux 13 0 0 900 900
aux 14 0 0 900 900
aux 15 0 0 900 900
aux 16 0 0 900 900
aux 17 0 0 900 900
aux 18 0 0 900 900
aux 19 0 0 900 900

# adjrange
adjrange 0 0 0 900 900 0 0
adjrange 1 0 0 900 900 0 0
adjrange 2 0 0 900 900 0 0
adjrange 3 0 0 900 900 0 0
adjrange 4 0 0 900 900 0 0
adjrange 5 0 0 900 900 0 0
adjrange 6 0 0 900 900 0 0
adjrange 7 0 0 900 900 0 0
adjrange 8 0 0 900 900 0 0
adjrange 9 0 0 900 900 0 0
adjrange 10 0 0 900 900 0 0
adjrange 11 0 0 900 900 0 0

# rxrange
rxrange 0 1000 2000
rxrange 1 1000 2000
rxrange 2 1000 2000
rxrange 3 1000 2000

# servo
servo 0 1000 2000 1500 45 45 100 -1
servo 1 1000 2000 1500 45 45 100 -1
servo 2 1000 2000 1500 45 45 100 -1
servo 3 1000 2000 1500 45 45 100 -1
servo 4 1000 2000 1500 45 45 100 -1
servo 5 1000 2000 1500 45 45 100 -1
servo 6 1000 2000 1500 45 45 100 -1
servo 7 1000 2000 1500 45 45 100 -1

set gps_pos_p = 15
set gps_pos_i = 0
set gps_pos_d = 0
set gps_posr_p = 34
set gps_posr_i = 14
set gps_posr_d = 53
set gps_nav_p = 25
set gps_nav_i = 33
set gps_nav_d = 83
set gps_wp_radius = 200
set nav_controls_heading = ON
set nav_speed_min = 100
set nav_speed_max = 300
set nav_slew_rate = 30
set alt_hold_deadband = 40
set alt_hold_fast_change = ON
set deadband = 0
set yaw_deadband = 0
set yaw_control_direction = 1
set 3d_deadband_throttle = 0
set throttle_correction_value = 0
set throttle_correction_angle = 800
set default_rate_profile = 0
set gimbal_mode = NORMAL
set acc_cut_hz = 15
set accxy_deadband = 40
set accz_deadband = 40
set accz_lpf_cutoff =  5.000
set acc_unarmedcal = ON
set acc_trim_pitch = 0
set acc_trim_roll = 4
set baro_tab_size = 21
set baro_noise_lpf =  0.600
set baro_cf_vel =  0.985
set baro_cf_alt =  0.965
set mag_declination = 0
set pid_controller = MWREWRITE
set p_pitch = 80
set i_pitch = 30
set d_pitch = 44
set p_roll = 80
set i_roll = 30
set d_roll = 44
set p_yaw = 185
set i_yaw = 45
set d_yaw = 0
set p_alt = 50
set i_alt = 0
set d_alt = 0
set p_level = 50
set i_level = 10
set d_level = 100
set p_vel = 120
set i_vel = 45
set d_vel = 1
set yaw_p_limit = 500
set dterm_cut_hz = 0
set gtune_loP_rll = 10
set gtune_loP_ptch = 10
set gtune_loP_yw = 10
set gtune_hiP_rll = 100
set gtune_hiP_ptch = 100
set gtune_hiP_yw = 100
set gtune_pwr = 0
set gtune_settle_time = 450
set gtune_average_cycles = 16

# dump rates

# rateprofile
rateprofile 0

set rc_rate = 90
set rc_expo = 65
set rc_yaw_expo = 0
set thr_mid = 50
set thr_expo = 0
set roll_rate = 80
set pitch_rate = 80
set yaw_rate = 50
set tpa_rate = 0
set tpa_breakpoint = 1500
~~ ~~

Popular Posts