-
INAV Airspeed Sensor - which one to choose
INAV flight controllers gives you the option to install airspeed sensor on your airplane, just like in Pixhawk and Ardupilot. And just like in case of Pixhawk and Ardupilot, you have several options in terms of the hardware. Airspeed sensors, also known as Pitot tubes, come in two variants: digital and analog.
-
Radio modules FS1000A and XY-MK-5V - pros and cons
When looking for radio modules for your next Arduino project, you might have come across the couple named: FS1000A and XY-MK-5V. At first glance, they might look like the next best thing, but it's not that simple.
Before you start hacking anything with FS1000A and XY-MK-5V, read the following pros and cons:
Pros:
- simple - to send a signal you do not need much. Only to power them up and set LOW or HIGH on the data pin
- cheap - true, they are not expensive
Cons:
- pretty much everything else, including the same things that are their pros...
- too simple - they are just too simple and offer no other functions than transmitting a wave through the void. No CRC, no packets, so SPI or serial, no bidirectional communication
everything has to be done in the software, including encoding and CRC. - transmitting and receiving devices have to use the same libraries and support on some platforms like Raspberry Pi might be problematic at best
- the frequency can not be changed!
- no frequency hopping or spread spectrum
- you have to get your own antennas
- range is poor at best and depends on things like voltage of the transmitter
- build quality varies a lot and you can not be sure that TX and RX are really tuned to the same frequency
Verdict? At leat be very careful when choosing hardware for your next Arduino RF project...
Read more... -
How to connect GPS to ESP32
Thanks to a very versatile Input/Output matrix, it is quite simple to connect NMEA GPS modules to ESP32 MCUs. Not only ESP32 boards have 3 serial ports you can choose from, they can be assigned to almost any pin you want.
In this example we will connect a popular Ublox NEO-M8N like Beitian BN-880 or BN-220 to a ESP32 development board and output current position on a USB serial port using Arduino IDE and TinyGPS++ library. Let's begin
-
Matek 1G3 VTX and VRX - Long Range 1.2GHz FPV video link that fits your goggles!
There a few things that I can be sure of in life. One of them is that every time I receive a DHL package from Matek, there is something very interesting inside!
This time, for example, is a pre-production sample of a new FPV transmitter and receiver. This time it's not 5.8GHz but 1.2GHz. Long Range FPV, here I come!
Probably the best feature of Matek 1G3 receiver is that it is Fat Shark receiver module compatible! You can just plug it into your FPV goggles or a ground station receiver like Furious FPV Dock-King!
It comes with Matek made 1.2GHz PCB antennas as well!
Matek VTX-1G3 and Matek VRX-1G3 are available on Banggood.
Read more... -
The future of F3 board in INAV
It's time to start saying goodbye to F3 boards in INAV. History repeats itself and after we let F1 boards go, the same fate upon F3. Why? STM32F303 does not have enough RAM to handle everything that is demanded of it: OSD, telemetry, GPS, navigation, etc. INAV already is not enabling the majority of new functions on F3 based boards!
What will happen next? Most probably, F3 boards that fail to build due to lacking memory will be removed from the official release process. The code that drives them will stay, but if anyone will want to compile INAV for them, they will have to find missing memory by himself.
So, do not expect INAV 2.4 running on Omnibus F3. On the other hand, SP Racing F3 will probably stay with us for a little longer. Lack of OSD is a huge advantage in this case.
Read more... -
Betaflight VTX tables: SmartAudio and Tramp VTX configuration for Betaflight
Smart Audio and Tramp VTX control are no longer working out of the box in Betaflight 4.1 right after flashing. The reason is that in Betaflight 4.1 you have to configure something that is called VTX Tables. Why you have to do it? Long story, the bottom line is that you have to do it.
How to fix SmartAudio and Tramp VTX in Betaflight?
Just copy-paste one of those snippets in the CLI, and
save
. There is really no reason to think about it for too long...IRC Tramp compatible VTXes
vtxtable bands 5 vtxtable channels 8 vtxtable band 1 BOSCAM_A A CUSTOM 5865 5845 5825 5805 5785 5765 5745 5725 vtxtable band 2 BOSCAM_B B CUSTOM 5733 5752 5771 5790 5809 5828 5847 5866 vtxtable band 3 BOSCAM_E E CUSTOM 5705 5685 5665 5645 5885 5905 5925 5945 vtxtable band 4 FATSHARK F CUSTOM 5740 5760 5780 5800 5820 5840 5860 5880 vtxtable band 5 RACEBAND R CUSTOM 5658 5695 5732 5769 5806 5843 5880 5917 vtxtable powerlevels 5 vtxtable powervalues 25 100 200 400 600 vtxtable powerlabels 25 100 200 400 600
SmartAudio 1.0 compatible devices
vtxtable bands 5 vtxtable channels 8 vtxtable band 1 BOSCAM_A A FACTORY 5865 5845 5825 5805 5785 5765 5745 5725 vtxtable band 2 BOSCAM_B B FACTORY 5733 5752 5771 5790 5809 5828 5847 5866 vtxtable band 3 BOSCAM_E E FACTORY 5705 5685 5665 5645 5885 5905 5925 5945 vtxtable band 4 FATSHARK F FACTORY 5740 5760 5780 5800 5820 5840 5860 5880 vtxtable band 5 RACEBAND R FACTORY 5658 5695 5732 5769 5806 5843 5880 5917 vtxtable powerlevels 4 vtxtable powervalues 7 16 25 40 vtxtable powerlabels 25 200 500 800
SmartAudio 2.0 compatible devices
vtxtable bands 5 vtxtable channels 8 vtxtable band 1 BOSCAM_A A FACTORY 5865 5845 5825 5805 5785 5765 5745 5725 vtxtable band 2 BOSCAM_B B FACTORY 5733 5752 5771 5790 5809 5828 5847 5866 vtxtable band 3 BOSCAM_E E FACTORY 5705 5685 5665 5645 5885 5905 5925 5945 vtxtable band 4 FATSHARK F FACTORY 5740 5760 5780 5800 5820 5840 5860 5880 vtxtable band 5 RACEBAND R FACTORY 5658 5695 5732 5769 5806 5843 5880 5917 vtxtable powerlevels 4 vtxtable powervalues 0 1 2 3 vtxtable powerlabels 25 200 500 800
SmartAudio 2.1 compatible devices
vtxtable bands 5 vtxtable channels 8 vtxtable band 1 BOSCAM_A A FACTORY 5865 5845 5825 5805 5785 5765 5745 5725 vtxtable band 2 BOSCAM_B B FACTORY 5733 5752 5771 5790 5809 5828 5847 5866 vtxtable band 3 BOSCAM_E E FACTORY 5705 5685 5665 5645 5885 5905 5925 5945 vtxtable band 4 FATSHARK F FACTORY 5740 5760 5780 5800 5820 5840 5860 5880 vtxtable band 5 RACEBAND R FACTORY 5658 5695 5732 5769 5806 5843 5880 5917 vtxtable powerlevels 4 vtxtable powervalues 14 20 26 30 vtxtable powerlabels 25 100 400 1W
The snippets were taken from ttps://github.com/betaflight/betaflight/blob/master/docs/VTX.md#complete-examples
Read more... -
INAV secondary IMU with Bosch BNO055
INAV is great, but INAV is not the best in everything. For example, INAVs internal IMU (Inertial Measurement Unit) algorithm is suffering from the infamous artificial horizon drift. I explained this phenomenon already in one of the videos, you can watch it over here. We somehow mitigated this on fixed-wing airplanes in INAV 2.2.1, but it's not gone yet and there is no fix for multirotors for example.
Last weekend I started hacking something that might, or might not, help. Technology progressed quite a lot in the last few years, and right now we have much more advanced all-in-one IMU chips than when the workhorse MPU6000 changed RC hobby forever.
The idea behind the hack is simple: use secondary, hardware IMU, to help INAV correct horizon drift and some of the magnetometer related problems as well. There are pretty amazing IMUs like Vector Nav VN-100, VN-200, and VN-300. But they cost more than most RC hobby airplanes. The cheapest VN-100 is $500 for the chip only. Or $800 for a ready to use version. Nobody would buy something like that for a foam airplane. There are, however, much cheaper (and less capable) integrated IMUs. One of them is Bosch BNO055.
Bosch BNO055 has an integrated accelerometer, gyroscope and magnetometer. It allows getting data from each sensor separately or to use sensor fusion (probably relatively simple Kalman) to combine data from 3 sensors into roll, pitch and yaw (including absolute magnetic heading) Euler angles or quaternions.
So far, so good. After a few days of work, I was able to connect GY-955 which contains BNO055 plus some extra electronics to INAV via I2C and get basic data from it. The next step is to check is this whole secondary IMU idea makes sense. The idea is to switch the OSD artificial horizon and heading to a new data source. If it will work and data obtained from BNO055 will be good quality, to switch other navigation-related functions of INAV to secondary IMU. Bear in mind that stabilization and main PID look will still be fed by the data obtained from primary IMU.
Read more... -
2020 European Union Drone Laws - questions and answers
Let's do a "Questions and Answers" about new EU drone regulations that will be (should be) the law starting from June 2020. It's all described in EASA regulations 2019/945 and 2019/947 as well as explained by me over here.
In this video let's talk in-depth about:
- what will happen when you will be caught flying illegally
- FPV and BVLOS
- flying in parks
- cops will not be able to figure out what goes where
- 25mW VTX power restriction and how to change that
- 19m/s speed limitations
- what about 6S LiPos
- what about gas and nitro models?
- what will happen with all DJI drones like Phantom, Mavic, Spark, Inspire and so on
-
How to choose motors for drones - especially 7-inch FPV quadcopters
One of the mistakes pilots makes when they build their first drone is they use too small motors. People think that if a motor works fine with 5-inch props, it will work with 7-inch props as well. After all, both have plenty of power and power is the key to everything.
It's not true. Power is only half on the story. Power is an effect of motor torque and rotation speed. The bigger torque and the bigger rotation speed, the power is bigger as well.
It's easy to guess that bigger propeller will be rotation slower than the bigger one. If the rotation speed is smaller and the motor has the same torque, the power might not grow after all. Also, the bigger propeller will have higher moment of inertia and will require more torque to change rotation speed, and generated thrust, as quickly as smaller ones.
This is why, when choosing a motor for a drone, you have to concentrate both on KV of a motor and a size. To be honest, the correct size is even more important than the correct KV.
How to choose the motor size
Drone motor manufacturers do not like to share torque data. I have no idea why. It would be so cool to be able to compare torque between motors of a different brand. Assuming, of course, they would be realistic. If we can not compare the torque of two motors, we can compare the next best thing: stator volume.
For our needs, we can just assume that bigger stator volume equals higher stall torque of a motor. Not very precise, but good enough. Luckily we can compute stator volume from the motor size. Two first digits are a stator diameter, two last digits are stator height. We can also skip Pi, since it's a constant. And then:
V = (diameter / 2)^2 * h
Stator volume of different motor sizes
Motor size Stator diameter [mm] Stator height [mm] Stator volume [mm^3] 2204 22 4 484 2205 22 5 605 2207 22 8 847 2208 22 8 968 2306 23 6 793 2406 24 6 864 2506 25 6 937 2507 25 7 1093 2508 25 8 1250 Desired stator volume for propeller sizes:
Propeller diameter Min required stator volume [mm^3] 5-inch 600 6-inch 700 7-inch 900 To check is a motor will be good for a propeller size just check if stator volume is bigger than min. volume for a prop size. That's all. You can choose bigger volume but never lower. The lower volume will result in not enough torque and characteristical bobbing o pitch axis that is just impossible to tune out.
How to choose KV
In the case of motor KV, it's a similar case. Too high KV will result in an absolute lack of efficiency and overpowered drone (which is not desirable in most of the cases). Too low KV will result in an underpowered drone that will not be able to perform any fast maneuvers and feel very sluggish on the yaw axis.
The sweet spot/reference KV can be easily computed from this equation based on propeller diameter and supply voltage. Of course, more S will result in lower KV.
KV = Pc / S
KV
- motor KVPc
- propeller coefficientS
- number of LiPo cells
Pc for different prop sizes:
Propeller diameter Pc 5-inch 9600 6-inch 6400 7-inch 7600 Recommended motors:
- For 5-inch iFlight XING-E 2208
- For 6-inch FlyWoo NIN 2207
- For 7-inch Brotherhobby Avenger v2 2507
-
DIY 3D Printing Filament Dryer / Dehumidifier / Dry Box
The wet filament is a bad filament. 3D printers hate them since during melting the filament water that it contains turns into steam, expands and creates holes, bulges and other distortions and problems in a print. So filaments are more sensitive to moisture: TPU or Nylon. But even PLA might absorb water if it is kept in a humid environment for a long time. The solution is simple: DIY filament dehumidifier (also knows as filament dryer or dry box) made from the storage box, hygrometer, silica gel as a water absorbent and some window seals. The results are amazing!
Read more...
I'm Paweł Spychalski and I do things. Mainly software development, FPV drones and amateur cinematography. Here are my YouTube channels: