Crossbow LRS: first live test that is almost a success

Finally, much later than I originally expected, Crossbow LRS, my DIY medium range RC radio link was used to control something that flies. Not much, and not far. It was only my experimental 6" GPS Racer quadcopter. And I reached only 350m. Small steps, I had no intention to beat and records after all.

Just as reminder, by RC link is as follows:

  • Based on LoRa32u4 II dev. boards
  • Semtech SX1276 868MHz
  • Programmed with Arduino
  • Planned range: up to 5km

Next test, this time without twitching, in a few weeks.

Read More

Project Dualcopter – worklog #4

More than a year after staring this damn project, I finally decided what goes where. And on top of that, short description how Dualcopters works (or at least should work).

  1. There are two counter rotating propellers on top. They are responsible for thrust and YAW control
  2. When both props turns faster, dualcopter gains altitude
  3. When clockwise propeller turns faster, whole design starts to rotate counter-clockwise. When counter-clockwise propeller turns faster, it rotates clockwise
  4. Roll and Pitch axis control is archived by two flaps at the bottom of the design moved by two servos
  5. Since propellers are always rotating, there is almost always enoughair passing through flaps to have enough force for stability control and maneuvers
  6. To generate enough torque, center of gravity should be far above flaps. This way, even relatively small force on an end of long lever, there is always enough torque for roll and pitch stability

Dualcopter working principle

Keeping above in mind, it will look like this:

Dualcopter what goes where

What is still missing? Place to put battery in and electronics. Next update as soon as I will have any update 😉

Read More

QuadMeUp Crossbow LRS: introduction

Few days ago I mentioned that I'm working on my own DIY long range radio system (LRS) that I named QuadMeUp Crossbow LRS. Today I will share some more details about it.

First of all, I'm not creating anything new or "amazing". There are plenty of "DIY" or OpenSource LRS systems. OpenLRS for example. Or QCZEK LRS that is made from almost nothing at all. And amazing commercial systems like TBS Crossfire.

Is there a place for something else? I think there is. For example, I was so pissed of by complexity of OpenLRS. So many options, so hard to understand. Or do you know how much micro RX for Crossfire costs? And that you do not need 2W of power to fly up to 5km? And most of pilots owning Crossfire never flied > 2km?

This is why, my idea for DIY LRS is:


Read More

Project Dualcopter – worklog #3

It's been exactly one year since my last update on Project Dualcopter. On 20th of October 2016 I've posted that there was a progress. Now, 12 months later, I once gain report, that there was a progress…. That was slow….

3d printed dualcopter aka flying bucket

servos for 3d printed dualcopter

  • I've finally installed control surfaces and servos
  • I've finally decided where LiPo will go: to the top of the whole stack. I want CoG as far from control surfaces as possible. They will not generate much force, so I need as much torque as possible. So, long lever FTW
  • My daughter called it Flying Bucket. Makes sense, right?
  • Plans for next week: battery mount

Read More

Project “Dropship glider” – failure #1

I’ve described my Dropship Glider Project here. Previous weekend I finally tested its ability to glide when dropped from a drone 50m above the ground. And well… to be honest, I failed hard this time. Just see this short video from FPV camera:

Dropship survived two drops. After second one, AIO camera/transmitter combo got damaged. (more…)

Read More

Project “Dropship glider” – introduction

When I saw this video from rctestflight I knew I will build something like that for myself. A voila, few months later it is done. Here is Dropship Glider.

Dropship glider - depron FPV delta glider

It is 29cm long with 20cm wingspan. Weights 97g AUW and has 21g/dm^2 wing loading. So, in theory, should glide. Somehow… If I got center of gravity right. And did not made ailerons too big. Or…

Dropship glider - depron FPV delta glider

Delta 6mm Depron "wing" is attached to 6mm carbon fiber rod and has some quite big dihedral: 15 degrees.

Dropship glider - depron FPV delta glider

The biggest problem was radio link and mixer for ailerons. I could not use my Taranis: I need that for a carrier and only radio control link I had was EM-16 with PPM output only and no way to setup any kind of mixer. The radio just has no "features" like that…

So, took one Arduino Pro Mini and wrote short program that acts as PPM decoder and mixer for ailerons.

Dropship glider - depron FPV delta glider Arduino

  • power is supplied by 1S LiPo taken from my Tiny Whoop
  • FPV AIO Eachine TX02 also taken from my Tine Whoop
  • 5V is supplied from cheap, regulated, step-up converter
  • 3rd servo is to release tether

First flight, or rather drop, tomorrow. There will be a video from the event of course…

Read More

How to read PPM signal with Arduino?

More than a year a published a post called Generate PPM signal with Arduino. Today it's time for part two: How to read PPM signal with Arduino?. Strange thing: internet does not gives very useful information on this topic. Strange, right? Some links to pages that does it either very very wrong or in not simple way.

There is a one almost good solution. It's an example code by Hasi123. Short, efficient and actaully works almost out of the box. But it has 2 problems:

  1. It is not a library. You have to copy paste code
  2. It alters Timer1 and that means, that many other things stops to work: PMW output, Servo library or anything else that uses Timer1. Crap…

So, I've invested some of my time and, based on that code, I've created Arduino library called PPMReader. Advantages?

  1. It is a library (!)
  2. It does not alters any timers (!)

Example code, that reads PPM signal connected to Pin 2 of Arduino Uno or Pro Mini (and other using ATmega328) and prints decoded channels over serial port would look like this:

#include "PPMReader.h"

// PPMReader(pin, interrupt)
PPMReader ppmReader(2, 0);

void setup()

void loop()
  static int count;
  while (ppmReader.get(count) != 0) { //print out the servo values
      Serial.print("  ");
  count = 0;

The only required configuration is a decission of a pin and interrupt. Not all pins have hardware interrupts, so on many boards this is limited to:

  • Arduino Uno, Pro Mini and other based on ATmega328: pin 2 / interrupt 0 or pin 3 / interrupt 1
  • Arduino Pro Micro and other based on ATmega32u4: pin 3 / interrupt 0, pin 2 / interrupt 1, pin 0 / interrupt 1, pin 1 / interrupt 3, pin 7 / interrupt 4

PPMReader Arduino library can be downloaded from GitHub.

Read More

AnyFC F7 and DIY buzzer for INAV

Because both original and Banggood clone of AnyFC F7 flight controller and missing buzzer support, its usefulness is somehow limited. There is no dedicated pin and driver. Next release of INAV (1.7.2) will finally solve this problem by reusing Motor #9 output as buzzer output.

But, some additional hardware will be required. To be precise, single n-channel signal MOSFET transistor like 2N7000. Connection diagram is shown below.

AnyFC F7 Buzzer driver with 2n7000 mosfet transistor

And this is how it can be soldered together.

AnyFC F7 Buzzer driver with 2n7000 mosfet transistor

AnyFC F7 with buzzer

That is all. Simple, right?

Read More