Working solution for USBasp driver in Windows 10 64bit

Yesterday I've spent like 2 hours fighting to make USBasp ISP programmer work under Windows 10 64bit. Seriously, that was like some kind of nightmare that turned into a comedy. All web pages that I've found suggested following procedure:

  1. Download zadig
  2. Install libusb-win32
  3. Be happy

Unfortunately, in my case all attempts failed miserably. All I was getting from avrdude was

avrdude: error: programm enable: target doesn't answer. 1 
avrdude: initialization failed, rc=-1

I've found a solution. Internet was wrong. libusb-win32 was not the correct driver for USBasp. The correct driver was libusbK (v3.0.7.0). After installing libusbK USBasp came back to life!

usbasp driver for Windows 10 64bit

Read More

Depron Airboat Worklog #2

Next week passed and Depron Airboat is almost ready. Almost, since it still needs some finishing and I'm missing a BEC. Turned out that total power usage of one 9g servo and FrSky X4R receiver is slightly too high to just use single LM7805. 350mA during servo movement means more that 2W of heat ((12-5) * 0.35) over single LM7805. Too much, so I will have to scavenge old models for still functional step-down converter.

airboat depron hull parts

Hull made from 6mm Depron is now glued together using Uhu Por and polyurethane wood glue. It measures 18x8x2 inches. I've put my 3D Printed propulsion and steering system on it and did first static test.

It works. First water tests next week.

Read More

AnyFC F7 and a missing baro problem

When Banggood decided to “forget” about MS5611barometer in their version of AnyFC F7 flight controller, they not only did not mounted MS5611 on it. They also made usage of any external barometer on that board almost impossible to use.

Why? Long story short: all STM32 MultiWii derivatives are unable (yet) to lookup for I2C devices across different I2C buses. So, if we define barometer to be connected to I2C bus #4, firmware will look to barometers only on I2C bus #4. But, since many boards uses multiple I2C buses, this creates a problem: AnyFC F7 onboard (and missing) MS5611 is connected to I2C bus #4, but I2C bus available on JST connector in I2C bus #2.

AnyFC F7 from Banggood without MS5611 barometer

While for Betaflight this is not a problem (BF pilots rather do not use barometer), it is a problem for INAV. AnyFC F7 target is unable to use any barometer if onboard MS5611 barometer is missing. OK, you can just solder one in place, but without hot air station and decent soldering skills this is not a good idea after all. This is why, until better solution is found, INAV will include ANYFCF7_EXTERNAL_BARO target. The only difference between ANYFCF7 and ANYFCF7_EXTERNAL_BARO is barometer support.

If you have MS5611 in place (soldered in or bought with one) or do not intend to use any baro, you should use ANYFCF7 target.

When you do not have onboard MS5611 and want to use external barometer (MS5611, BMP180/085 or BMP280) you should use ANYFCF7 and ANYFCF7_EXTERNAL_BARO target.

Until new official version of INAV is published, you might use this custom hex:
INAV_1.7.1_ANYFCF7_EXTERNAL_BARO.hex. It is based on INAV 1.7.1 and proven to detect external barometers via JST connector.

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

Hands on: DemonRC NOX5 FPV 5″ Frame

So many things to do, so little time… I’ve purchased DemonRC NOX5 quadcopter frame more than a month ago, but had some time to take a look at it only today. This is not a cheap stuff. More than a $100 for a 5″ frame is few times more than I’ve used to pay. But I just had enough of cheap chinese frames. Don’t get me wrong, they usually fly alright, but both quality and user friendliness lacks a lot. With “premium” frame at least I’m sure that I’m getting a good quality carbon fiber and someone actually thought for a moment about “tiny” details a place for VTX transmitter or battery strap…

So, please welcome DemonRC NOX5:

DemonRC NOX5 FPV quadcopter frame Continue reading “Hands on: DemonRC NOX5 FPV 5″ Frame” »

Read More

Hands on: CB215MG Fast Digital Servos

What is the biggest advantage of cheap servos? They are cheap. What is the biggest disadvantage of cheap servos? Well… everything else. Do not get me wrong, for last 2 year all my airplanes and other contraptions have been running cheap analog servos. Some better, some worse, but all were cheap. And I always felt that one can expect more from a servo… CB215MG Fast Digital Servos

Thanks to I will have a chance to find out. They provided me with a pair of CB215MG fast coreless digital servos woot woot. I do not know much about servos, but they surely looks solid and reliable. Metal casing, metal bearings and 333Hz refresh rate. I'm just putting them on my latest flying wing and I will know if good servo is really worth it. I really hope so! CB215MG Fast Digital Servos

Read More

Depron Airboat Worklog #1

One of my first DIY RC projects was a Depron Airboat I've build almost exactly 2 years ago. 12x6x2 inch hull, motor, servo, rudder and ESC. And honestly, I loved it. It was a great fun playing with it. Too bad, it did not survived very long. It broke in a middle of a lake and I decided my live is worth more. All I have left is a video

This season I started to build another Depron airboat. Slightly bigger, heavier and with more power. And partially 3D printed. Hull will be made from Depron, but propulsion and steering system will be (is) printable.

Depron RC Airboat Propulsion system

After few hours of printing time, propulsion and steering is done. What is left is to make a hull. 18x8x2 inches made from 6mm Depron. I might cover bottom with glass fiber and impregnate with polyurethane wood glue diluted with alcohol.

New thing will be a reversible ESC. I've already configured and tested FVT Littlebee 20A to act as reversible ESC and it seem to be working like expected. I only wonder how effective rudder will be when on reverse. Not much I effective probably…

Depron RC Airboat 3D printed Propulsion system

And yes, STL files will be available when this is proven to be working. Everything for the community 🙂

Read More

INAV 1.8: Automated landing for fixed wings

It's official: next release of INAV (1.8 or maybe 1.7.2) will incorporate an automated landing procedure for fixed wings. I was already writing about it 2 weeks ago, but now new code has been merged back and will be released.

Bear in mind, that this is not "state of the art" landing yet. It's rather a simple solution that can be used in emergency situations that will not crash an airplane, but rather put it on the ground without crashing. Procedure is quite simple:

  1. When Return-To-Home or Failsafe with RTH is engaged, go to Home position
  2. When Home is reached, start to loiter with defined radius and descend. Descent speed is limited to nav_landing_speed when altitude is above nav_land_slowdown_maxalt. When altitude is below nav_land_slowdown_maxalt, vertical speed is scaled down to one fourth of nav_landing_speed at nav_land_slowdown_minalt. So, on using default values, vertical speed is between 2m/s and 0.5m/s
  3. During descend, airplane is not allowed to raise throttle above nav_fw_cruise_thr when nose is up. This is to prevent airplane from gaining horizontal speed
  4. When nav_land_slowdown_minalt is reached, ROLL axis is locked to 0 degrees, PITCH axis is locked to nav_fw_land_dive_angle (default is 2 degrees) and motor is stopped when MOTOR_STOP is used or put to IDLE when MOTOR_STOP is not used. This puts airplane into a shallow dive to the ground

fixed wing landing in inav

That is all. Airplane should glide last few meters to the ground. Most designs should be able to do it without a problem. My testing platform did it like that:

Since there is no auto-disarm procedure yet, MOTOR_STOP is recommended to prevent propeller from breaking and motors/ESC from burning.

Read More