MiniCube F3 Flight Stack: Getting Started Guide

However, there is generally little information around explaining everything on this flight controller so that is why I made this quick guide to help clear things up so you can make the most of your Minicube F3 flight stack.

Whats in the stack

The stack consists of 3 modules, the flight controller, R/C receiver board and a 4in1 ESC on the bottom:

Where to Buy

Minicube F3 V1.0 and V1.1

There are currently two versions of the minicube available on the market, a v1.0 and v1.1. The only difference is that the V1.0 includes an external LC filter, whereas the V1.1 includes the LC filter built into the FC (at the cost of the USB connector which is external) (see powering section).

MiniCube FC Flight Controller Pinout

This is the heart of the stack and includes an F3 MCU, 6DOF MPU6000 IMU, and a betaflight OSD module. This board also includes an LC filter to make sure your OSD video is clean and free from interference from the ESC/Motors.

V1.0 Pinout (external LC filter)V1.1 Pinout (external USB connector)

ESC Connector – this connects directly to the 6 pin connector on the ESC (cable included with the 4in1 ESC).

OSD Connector – included cable has loose wires that you will need to solder to your FPV camera (Vin) and FPV transmitter (Vout). The OSD is connected to UART1.

Buzzer – This soldered directly to the receiver board that stacks ontop of the minicube F3.

RC Connectors (UART3) – The RCin pin is for PPM, SBUS, DSMX/DSM2 (depending on how you setup betaflight, and which receiver board you are using), see the receiver section of this guide.

Power Connector – you can power this board directly from your 2-3S flight battery, but its best to use the included LC filter.

Boot Pads – on the back of the board, you short these pads when updating firmware

Solder Pads – on the back of the board, this allows you to select between 5V, or 3v3 (for Spektrum receivers) to power your receiver. This is set to 5V as default. If you are using the included Spektrum receiver/buzzer module, you do not need to change this as that already has a regulator from 5V, to 3v3.

TX2, RX2 (UART 2) – this can be used for whatever function you want.

USB Connector – the V1.0 includes a built-in USB connector, whereas the V1.1 includes a JST-SH connector that is used to connect to an external USB module.

Powering the minicube F3

The minicube can be powered with a 2-3S Lipo. It is important to use the included LC filter between the ESC and the v1.0 flight controller to reduce any interference appearing on the FPV video feed.

To use the LC filter you simply need to solder the main battery connector onto the 4in1 ESC, and then from the ESC via the LC filter to the minicube F3 flight controller.

Powering V1.0 (external LC filter)

Powering V1.1 (internal LC filter)
Since the LC filter is built in you simply need to connect the 2-3S battery voltage to the GND and Vbat pins on the flight controller.

Connecting to BetaFlight

The first thing is to make sure you have the correct drivers installed on your PC. It is best to download the correct virtual COM port driver from ST directly:

All you need to do is simply connect a micro USB cable to the USB port on your PC and it should connect within betaflight. However, in the case of the V1.1, you need to connect the external USB module first to your FC as shown.

Configuring the built in OSD

The OSD is very easy to configure as it is all done directly within the betaflight GUI. By default, everything should work just fine out of the box. The OSD is connected to UART1 on the flight controller. If you want to change anything, simply go to the OSD tab and you can remove, add or move any element on the screen. Also if you want to change your vehicle name, this is done on the configuration tab (in the Misc options box)

4in1 10A ESC

At the bottom is a 10A 4in1 BLheli-S ESC that is pre-configured to run Dshot600. The 4in1 ESC also include your two main battery connection pads (labelled VCC/GND below). On the other side of the board, there is a 6 pin JST-SH connector that you use to connect to the ESC signal outputs on the flight controller.

Using Passthrough Mode to configure ESC

The best way to configure the ESC and update the firmware on the ESC is to connect to them via passthrough mode via the flight controller. This makes it easy to calibrate and setup your ESC, you can also reverse the motor directions easily.

Now you can configure any of the 4 ESC to whatever settings you need. However, by default, the ESC are set to run Dshot600!

MiniCube Receiver/Buzzer

There are three versions available (Frsky, FlySky, Spektrum) depending on what R/C transmitter you are using. Each module also includes a buzzer that you can use as a low battery or lost model alarm. If you have no idea what SBUS, PPM, or DSMX mean, you might want to have a quick read of our R/C protocols guide.

Irrespective of what receiver you are using, they all have the same common connectors in the stack so you just need to solder them on as shown in the image above. It is also possible to use your own receiver if you want. If this is the case simply connect it to the RC-IN (UART3) pin on the minicube F3.

Setting up the FRsky SBUS Receiver

The Frsky Receiver is an SBUS receiver, however, one thing you need to bear in mind is that this runs on D8 mode only. This means this receiver is not compatible with EU LBT firmware.

To configure the Frsky SBUS receiver, you simply need to connect to betaflight and go to the ports tab.

Here, you simply need to set UART3 to toggle the Serial RX slider, to enable serial receiver on this tab. Remember to press the save button on the bottom right of the screen. Now proceed to go to the configuration tab.

Here, you simply need to set the Receiver Mode to be RX_SERIAL. And for the Serial Receiver Provider, you need to select SBUS. Hit the Save button to write the settings to your flight controller.

To bind the receiver with your R/C controller, you simply need to press and hold the bind button on the board while powering on your minicube F3 for the receiver to enter bind mode.

RSSI and Voltage Telemetry setup

The great thing about this receiver is that also supports RSSI via telemetry. To enable this you just need to make sure you connect the A1 and A2 pins on the receiver. Please refer to the Taranis manual on how to set up Telemetry on your Taranis.

Setting up the FlySky IBUS Receiver

The FlySky compatible receiver module for the minicube flight stack is a serial receiver. This is one of the easiest receiver to setup as you just need to set one option after confirming your ports tab is set up correctly.

Within the configuration tab in betaflight, to set the Receiver Mode to Serial RX and select “IBUS” from the drop down menu.

To bind the receiver with your R/C controller, you simply need to press and hold the bind button on the board while powering on your minicube F3 for the receiver to enter bind mode. You must make sure to set your R/C radio to use AFHDS 2A mode. If you are using the Flysky i6 radio, then check out our video on how to setup and bind your flysky radio for FPV.

However, some users have experienced interesting LED behaviour whilst binding their receiver. If you’re having problems binding the receiver note that you first turn on the RX in bind mode (LED flashing fast), then turn on TX in bind mode (led flashing slowly), then power cycle both the TX and RX, LED on solid if successful.

Setting up the Spektrum DSM2/DSMX Receiver

Setting up the Spektrum compatible receiver is slightly difference since it does not have a dedicated bind button. The binding process involves using the betaflight CLI.

Since the DSMX/DSM2 receiver is also a serial receiver, the first step is to tell betaflight that UART3 is used as the serial receiver. This is done in the ports tab within Betaflight:

Within the configuration tab, select the Receiver Mode to be RX_SERIAL. And for the Serial Receiver Provider, you need to select SPEKTRUM1024 if you are using a DSM2 based R/C controller. Or set it to SPEKTRUM2048 if you are using a DSMX R/C controller. Do not forget to save the settings to write them to the FC.

Spektrum DSM2/DSMX Binding Procedure

Now to bind the receiver to your radio you need to go to the CLI tab:

Within the CLI type:

set spektrum_sat_bind = 9 – for DSMX

set spektrum_sat_bind = 5 – for DSM2

Type save, your flight controller will now reboot. Once it has rebooted, remove the USB cable to power off the flight controller.

After a second, reconnect the USB cable and your receiver should flash orange (indicating it is in bind mode)

Turn on your R/C controller while holding the bind button.

Once the binding is complete, the LED on the receiver should stop blinking.

Now connect back to BetaFlight and you can confirm it is bound by going to the receiver tab, and you should see the bars moving when you move your R/C controller sticks.

Now you need to turn off bind mode on your receiver. To do this go back to the CLI and type set spektrum_sat_bind = 0

Type save to apply the settings. The board will reboot and now have completed the binding process!

So that just about covers everything that you will need to get started. Thanks for reading the guide, if you have any questions or suggestions please add them in the comments!

Two questions as I’ve got one of your minicubes (Frsky version) on the way:

You say to get voltage and RSSI monitoring, just connect to A1 and A2. So, just like to check before I make an expensive mistake:

Connect what to A1 / A2? For voltage, do you mean Vbat (ie 7.4-8.0V for 2s) from the ESC board or where it enters the FC board to one of them? Are those inputs good for that voltage?

If so, connect it to which - A1 or A2. Does it matter?

If Vbat is connected to - say - A1, what can A2 be used for? Surely the Rx is going to know the RSSI itself - I don’t need to tell it, and where would I get an RSSI signal level from anyway? Could I put a current sensor o/p on A2 if I had one, or would the likely signal level be too low?

From what your Taranis picture tells me, you seem to have Vbat on A1, nothing on A2, and RSSI managing itself.

Thanks, in hope of some explanation. I suppose what I am really asking is what are the specs of the A1 and A2 inputs.

Final question - I suppose there is no way of persuading the Rx to accept smartport telemetry from the FC?

“Connect what to A1 / A2?” I just happened to be looking for this exact same thing! Check out this video: https://www.youtube.com/watch?v=FUpMQEtUo4k Starting around 1:30, he shows what to do. The whole video is not too long if you prefer to watch the whole thing (I noticed the video creator’s comments about A1 / A2 being reversed - I have no idea if that matters). I haven’t tried it yet, but I plan on it.

For info, my F3 flight controller code is Betaflight 3.1.0, and the ESC code F_H_40 V16.5. There is later Betaflight code, but didn’t want to risk trashing the FC by reflashing it.

Channel reception (Frsky)

Initially, I got it to bind fine, produce telemetry (RSSI, Voltage by connecting VBAT to A1) back to Taranis Q X7 etc - but no channels appeared in the Betaflight receiver page. Looked at the RCIN line with a scope and could see the packets fine, and they changed as I moved the sticks, so it looked good. Messed around a lot, no obvious missing links on FC. No good. Tried rebinding. No good. Tried rebinding again - and it all worked. No idea why. So, if that happens, rebinding may help.

Motor protocol

On the Betaflight configuration page, tried to set motor protocol to DSHOTxxx, and - no DSHOT protocols listed. Couldn’t find out why - it defaulted to ONESHOT125. Lot of fiddling around. No good. Then to find out if the FC code version did support DSHOT, in CLI, entered

get pwm

That listed DSHOT150/300/600 as available motor protocols, so set a DSHOT protocol with

set motor_pwm_protocol = DSHOT300
save

and that worked. DSHOT still not listed in the protocol list on the Betaflight configuration page though, so it just shows nothing - therefore that list allows one to move away from DSHOT, but not to it. No idea why - the same configurator lists DSHOT OK for an Omnibus F4 FC.