How to connect APM Airspeed Sensor (Pitot Tube) to INAV

Recently released INAV 1.7.2 introduced new hardware support: analog airspeed sensors. I’ve written new but it is new only to INAV. Analog airpseed sensors aka APM Pitot Tubes aka Ardupilot Airspeed Meter and one the market for years. And they are cheap. By cheap, I mean below $30. And until recently they were usable only in APM world.

Pitot Tube for INAV Continue reading “How to connect APM Airspeed Sensor (Pitot Tube) to INAV” »

Read More

Gyroscope and filtering video tutorial – Episode 1

I’m not completely sure why, but I’ve been pushing this topic away for quite a long time now. But it’s finally time to present it in this blog too. So, here we go.

Something like 3 month ago I’ve started to record and publish a video series about basics of gyroscope data processing in modern flight controllers (Betaflight, INAV, Cleanflight). It started as a tutorial how to setup notch filters in INAV, but ended up as a much bigger thing. Series consist of 4 episodes where I use Blackbox logs to show gyroscope signal noise and how to fight with it. Over next few days I will be posting links to those videos here, but if you eager to see them sooner, just use this link.

In Episode 1 I talk about:

  • Gyroscope noise sources
  • How unfiltered, raw, gyroscope signal looks like
  • How noise sources manifests in gyro traces
  • How filtered gyroscope signal looks like

Ah yes, I’m running a YouTube channel too, feel free to subscribe 🙂

Read More

FS1000A and XY-MK-5V, Arduino and VirtualWire

While FS1000A and XY-MK-5V 433MHz radio modules might not be the best choice in terms of quality, or reliability or distance (although few hundred meters in open space are doable), they have one very important trait: they are extremely easy to use. No complicated wiring, no advanced programming. If you want to send some data, just connect data lines, supply voltage and write few lines of code. Super simple!

In example below, we will be sending a single 8bit number over FS1000A->XY-MK-5V line with a help of VirtualWire library.

Please remember, without antennas and in radio-noise rich environment, range might be limited. Very, very limited. Even to just a few centimeters. So keep that in mind!


FS1000A transmitter Arduino


XY-MK-5V receiver Arduino

Read More

Using FET transistors as switches

When over a year ago I published this post about using transistors as switches, I described only how to do it with bipolar transistors. And bipolar (NPN and PNP) transistors have a small problem: they are current driven, so they consume current when they are switched on. They consume much less than they drive, but still…

Field Effect Transistors (FET), and especially the ones from MOSFET family, work in a slightly different way. Instead being current driven, they are voltage driven. Than means, to conduct between Source and Drain terminals, specific voltage has to be applied to Gate terminal. More than that, FET transistor consumes current only during switching. It works kind of like a capacitor. When Gate is charged, it stops conducting electricity.

And that, in case of low voltages and low currents (3.3V – 5V logic level and few hundred miliamps), removes the requirement of Gate resistor. Small MOSFETs like 2N7000, BS250 and other, can be directly connected to microcontroller outputs. Cool!

Switch with N-channel MOSFET

N-channel MOSFET is ON when positive voltage (comparing to Source) is applied to Gate. So, Load will be powered when HIGH state is applied.

N-channel MOSFET as switch

Switch with P-channel MOSFET

P-channel MOSFET is ON when negative voltage (comparing to Source) is applied to Gate. So, Load will be powered when LOW state is applied. It acts like an inverter.

N-channel MOSFET as switch

Gate resistor

In case of bigger currents and voltages, gate resistor might be required since FET gate acts like a capacitor and passes electricity until charged. Consult transistor data sheet.

Read More

FrSky SmartPort Telemetry on AnyFC F7

STM32F7 CPU family present in newest, experimental, flight controllers like AnyFC F7 (as well as upcoming AnyFC M7 with smaller STM32F722) simplifies many things. For example, comparing to F4 boards, SmartPort or S.Bus connection is extremely simple and can be done on any free UART. No more hardware hacks, external inverters and other “special” ways of doing things.

It’s super simple again, and here is how to do it in Betaflight (Cleanflight 2.x) and INAV


The only required hardware is a cable to connect SmartPort enabled receiver with free UART port on F7 board. This will work on X8R, X6R, X4R, X4RSB, XSR and any other. The trick is to connect S.Port pin with UART TX pin only.

How to connect F7 flight controller to SmartPort

Continue reading “FrSky SmartPort Telemetry on AnyFC F7” »

Read More

Talking Taranis – teach FrSky Taranis to talk to you

One of the most important features of modern, computerized, radios is that you can make them talk to you. After all, with setup telemetry link from UAV, radio should “know” things. Things like battery voltage for example. Why not make FrSky Taranis (or Horus or Taranis X Q7) talk to you and report LiPo voltage in a smart way?

Before we proceed, you have to setup SmartPort telemetry or “legacy” FrSky telemetry. This post does not covers this topic. You might want to take a look here and here.

Let’s go

In OpenTX menu navigate to last page called Telemetry and check if VFAS is reporting proper value.

Continue reading “Talking Taranis – teach FrSky Taranis to talk to you” »

Read More