Let's take a look at the new flight controller from Matek designed for airplanes: Matek F411-Wing. Comparing to its older brother (or sister or just a sibling) Matek F405-Wing it is much smaller, lighter and lacks many of the features:
Airbot Omnibus F4 series is one of my favorite flight controllers. Two of my quads are flying thanks to them. They might not be the best or the famous ones, but they get the job done. And that is what counts.
Unfortunately, they are not free of faults (and what is?) and each next revision is trying to fix some problems. Sometimes by introducing a new one. Right now, there are 4 hardware revisions, not always fully compatible with each other.
Before we proceed, short clarification. Legal background of AnyFC F7 flight controller from Banggood is iffy. It's not that BG ripped the design from Sami Korhonen (sambas). Sambas published design of his AnyFC under Creative Commons BY-SA. So, it's free to copy this design as long as Sambas is referenced as author, and license is not changed. The problem is that "by attribution" part is not met. Sambas is not referenced as author on BG. Still, Sami wrote that he is fine with it, as long as boards quality is good enough.
Today I have something brand new to write about. Probably the first commercially available flight controller based on STM32F7 CPU: AnyFC F7 from Banggood.
I'm once again realizing, that doing multiple things at once is not a way to work. Something like that happened to my GPS Racer project. According do original plans, week ago I was only supposed to wait for FPV camera.
Instead of that, only yesterday I finished ESC and motor assembly. But OK, it was a little trickier than I expected originally:
Since I wanted to reuse onboard current meter of Airbot Omnibus F4 (v2) Pro and use Matek XT60 PDB at the same time, I had to do some creative wiring between XT60 plug and PDB. Instead of directly connecting XT60 plug to PDB, + first goes to current meter on Omnibus F4 Pro and then goes back to PDB. Not pretty, but works. I still have to design some kind for power plug holder, but this topic can wait. I still have no FPV camera
I had some problems with ESCs. Not only I've destroyed Motor1 soldering pad, but failed to flash FVT Littlebee 30A with latest BLHelli. Bootloader survived, but BLHeli was gone. I have to connect ESC to other FC and then reflash. I wonder if it was hardware or software issue…
Right now, apart from FPV gear, FrSky receiver, GPS mount, SmartPort inverter and final assembly GPS Racer is few steps closer to being finished. With upcoming Easter, it should be functional in April. Can't wait…
While STM32F4 family processors installed in newest flight controllers are superior to STM32F3 (and F1 of course) in terms of raw speed, they are inferior to F3 family in terms of IO handling capabilities. For example, F4 family is not equipped with UART port inverters. Just take a look at the Omnibus F4 flight controller. There is an S.BUS inverter, but not a SmartPort inverter. That creates a series of problems when it comes to connecting various serial RX receivers and telemetry systems.
The most popular FrSky (Futaba) S.Bus serial RX protocol and FrSky SmartPort telemetry require inverted UART signal. If there is no hardware inverter on hardware UART port, they will not work. While S.Bus requires only one data line, an external inverter is not a big issue. Some time ago I've published The Simplest Hardware Inverter. One MOSFET transistor, one resistor and that are all.
In the case of SmartPort, it's slightly more complicated. Not only signal is inverted, SmartPort also combines TX and RX UART line into a single wire. That means the following:
The more complicated inverter is required
The software has to support this case and fallback to unidirectional UART mode
Together with increasing popularity of STM32F4 flight controllers, telemetry became hard topic again. Why? Most popular telemetry protocols, SmartPort and FrSky telemetry , requires inverted signal. Zero becomes one, one becomes zero.
In case on STM32F3 that was not a big problem. Those CPUs have built in inverters. STM32F1 and STM32F4 does not. So, if flight controller designer did not put external inverters on UART ports, FrSky telemetry, SmartPort and even S.Bus would not work.
Luckily, simple inverter for FrSky telemetry and S.Bus can be build using only few electronic parts:
Small logic level N-channel MOSFET transistor. One of the best choices is 2N7000
Omnibus F4 is a new family of All-In-One (AIO) STM32F4 based flight controllers with integrated OSD (On-Screen-Display) for FPV purposes. Basically, it is Airbot F4 / Flip32 F4 with added MAX7456 and some minor tweaks.
OSD connected via SPI bus
3 UART ports, UART3 is shared with I2C
Hardware inverter on UART1 allows to connect S.Bus receivers
Dedicated PPM/S.Bus connector
PWM connector that allows to connect 4 PWM channels
Integrated voltage stabilizer and voltage monitoring
Analog current monitoring
Analog RSSI monitoring
Integrated 16MB Blackbox flash memory
Currently, only Betaflight and Raceflight (?) supports OSD on this board. INAV OSD support is on its way.
RAM pins are connected only to each other. For OSD only GND and Video IN and Video OUT lines have to be connected with camera and VTX
Integrated voltage stabilizer tends to get hot when powered from 4S. Do not try to power camera or VTX from it
Current and RSSI are NOT 5V tolerant. 3.3V max
S.Bus and DSMX are shared with UART1
To use UART1 and PPM, SBUS jumper has to be removed
Omnibus F4 can be purchased as Airbot Omnibus F4, Flip32 F4 Omnibus and “no-name” from Banggood and other Chinese shops.
Today I've discovered another small but irritation limitation of Airbot F4 / Flip32 F4 also known as CC3D REVO for unknown reason. Looks like, by default, this board is unable to share UART1 RX line and PPM input. So, if you would like to connect, for example, OSD or GPS to UART1, you would have a problem. I've discovered that PPM input does not blocks UART1 totally, but makes UART1 transmission erratic and unreliable.
This is because PPM input pin is connected to both UART1 RX (pin PA10 of STM32F405) via inverter and PPM input pin (PB14) without inverter. Any electrical signal applied to PPM input would also be sent to UART1 RX.
Luckily, there is pretty simple, hardware, solution to allow UART1 and PPM input function simultaneously. Jumper called SBUS located near SBUS/PPM input has to be removed with soldering iron. This operation breaks the connection between PPM/SBUS input and UART1 RX.
There is a drawback of this solution too. If jumper is removed, SBUS will not work. To make SBUS works again, jumper would has to be closed again. With a blob of solder for example…
Hey, don't leave yet, there is more!
Do you know that there is a YouTube channel with awesome, drone and FPV related video? Why don't you give it a try?