September 28, 2017

Bad day in the HGLRC factory

Zero fucks was given on that very day in the packaging department.

It's not even remotely difficult to put the board correctly in the box. Must have had a terrible day at work.

The board looks really great at first glance. Nice soldering and it is cleaned, which is not always the case with that china stuff.

September 19, 2017

FPV150 got 3 flights

The FPV150 was flying fantastically after the upgrade. But after about 5 minutes one of the ESCs started cutting out. I wasn't running low on voltage or anything and it seemed strange.

Anyway, to make a very long story short, it turns out it is probably faulty. I cannot connect to it with blheli configurator and I actually found in my old blog post that I had this problem with another ESC while building the first FPV150.

So I set out to order a new device. It turned out harder to find than I expected. I couldn't find one identical. Instead I ordered two ESCs from hobbyking with similar specs. I was quite surprised hobbyking didn't carry more variants of this small ESC. Any way, I got a Kingkong and a Multistar. Once upon a time I promised myself never ever to get a multistar again. They used to be real crap. But hey it's revision 16. Sixteen! Did they get it right this time?

I guess I'll find out in a few weeks once I get those props spinning again!

September 12, 2017

FPV150 revisited

Today I finally spent some time one the FPV150 I built a year and half ago. I was quite satisfied with the machine except for a few issues. First off, it sometimes does strange things while flying, like tilting and pitched. Second, the flight controller is mounted so badly it must be unscrewed to connect the USB wire. And the flight controller; well it's a CC3D.

I have noticed the stream of all-in-one flight controllers integrating more and more functions in one single unit. First off was the PDB, but then voltage sensors, current sensors and OSD chips have been added. Even video transmitter on the most recent ones. I got myself the "HGLRC" F3 V3.1. It is essentially some form of Seriously Pro racing F3 clone. I regret not getting the version with video transmitter while I was at it.

I started with a weigh-in. Always interesting to see how this effects the weight. I'll be ripping out three parts and putting only one back in to replace them.


Ok. Now let's open her up. I remember it was quite hard to get it together with all the wiring and boards crammed into the the body.


I remembered correctly. Inside I found a CC3D board in a small form factor, a "super simple" OSD board, a orangerx receiver of some kind. I had used the PDB that came with the Diatone frame. And a noname video transmitter. So I ripped out everything but the transmitter that I left on the top plate of the frame.


Left was only the motors and the OSD. After this image was taken, I also de soldered the ESC leads and removed the camera "assembly". Then I started putting her back together again. First off soldering the ESCs to the PDB. Well, the PDB means the flight controller in this case.


I picked this particular board because i got the feeling that they had made many iterations and improvements on it. This can always be fake and a noname product from China can be utter crap no matter what facade they try to put up. But I think they've gotten quite far with this one. It is made to be fitted in a racing multirotor craft of course, and as such has the wire leads for the ESC just like the motor layout in clean/beta flight. Only this detail is fantastic alone compared to board from the history of FPV racing. It also has easily accessible solder pads for the receiver, instead of trying to put together one of those microscopic connectors for the receiver.


And this is what it looks like with almost everything wired up. Neat compared to what it looked like a few hours back.

I put everything together. No big deal. I kept the buzzer connected to a PWM output on the receiver. This is simply because I've had very little luck with buzzers connected to the flight controller so far. So I'd rather not. After everything was assembled I weighed it again. I was only 2 grams down. Well, I checked the weight of the parts I removed and the weight of the flight controller and it was essentially the same. The 2 grams is probably due to a bit less wiring. Maybe the capacitor that I forgot to solder back on.

After putting everything together I realized there is a big hole on the bottom of the quad, exposing the flight controller. The PDB covered this hole before. 


So I printed a piece of plastic to cover it up.


Setting up betaflight took me probably 2 hours in total. Almost as much time as the build itself. It is simply because I ran into a few issues with the setup and the work went completely without hickups for once.
I had a big problem with the board not arming as expected and I had to do a few things to get it sorted.
  • Upgrading the firmware. Because at some point betaflight stopped displaying receiver signals in the GUI. Maybe betaflight updated in the background and I needed to put in a new firmware. I don't know why.
  • Lower the refresh rates in the PID. The board reported 7% load but the LED indicated overload. I have no idea why.
  • Set the min_check manually. When upgrading the firmware I used the "diff" command as recommended to store my setup. For some reason diff exported a min_check = 0. I don't really know why.
Feels like flight controller setup routine. I have no idea why, but I had to fix 3 things and now it works. I just hope it stays that way!

Footnote 1: I weighed my JJPRO 130 as well to see the difference. At 195 grams I understand why it barely flies. It is too heavy for flying with only 3-inch propellers. It was a big disappointment as it was a drop-in replacement for the FPV150 that I never took the time to fix.

September 9, 2017

i2c controlled RGBW LED strip controller

This is part of a internet connected playhouse that I have been planning and building ever so slowly during the summer. The system will eventually consist of a internet connected device (ESP32), battery, solar panel and charger and some lighting installations in the childrens playhouse.

On the porch, I'm planning to install LED strips along the sides to fill the porch with light of selectable color (or even with special effects). It will be controllable both over the internet as well as using a wall switch. Part of the challenge here is to connect the device to the internet, or via something to the internet.

I chose to build a separate device for this purpose instead of integrating it in the main controller. This device will only drive the LED while controlled over the i2c bus from the main controller. There are many many guides on building your own LED controller but I have yet to see one about i2c.

Anyway. I started out with adafruit article on the matter. They make great simple articles and being not so skilled in electronics I was mainly looking for some ideas on which transistor to use for the task. I managed to get the transistor recommended by adafruit from ebay. Ebay is like the only simple source for buying electronic components in small quantities. I read the specs in the FET in question (IRLB8721) and I must say it is massively over dimensioned for my requirements. But I guess it will do.

i2c rgb controller, first setup
Early stage of the RGB LED controller.

As always I started with a first build on the breadboard just to see it working. I also did most of the programming at this point. On the picture is a second arduino sending a sequence of RGB commands to the controller for testing purposes. Worked well and turned out quite simple.

i2c RGB controller
LED controller, disconnected because the light messed to much with my camera.

Next step was to make the controller more compact by building it on a experimental board. This is probably about as good as it gets with my skills and tools. I've moved from a Arduino Nano to an Arduino Pro Mini. It's a bit smaller, mainly because it does not have a USB connector. Instead you need a USB UART/ISP (often incorrectly called an FTDI). Might seem scary, but once you've tried it it is not that bad.

I also had to add a buck converter as the strip I'm using is powered by 12 volt. I added a screw connector for the 12V power and JST-XH connectors for both the LED itself and the i2c connection. I've made a simple i2c bus connection hub previously to connect the devices in the playhouse together.

It all turned out quite good. The only main problem I had is that I cut off the LED strip to solder the wire to the newly cut end. This did not work out well since the light cutting and soldering seems to have damaged the printed copper surface of the strip. This turned into an intermittent lightmare (pun intended, I'm a dad, it's ok!).

September 7, 2017

Problems with mini buck converters

I've been using them for years and put them in so many builds I can't remember. I'm talking about the adjustable mini buck converter (banggood, ebay) . Dirt cheap, small and does the job!

Or do they? Well today I had my first failing unit. I was a bit surprised. I've never tested them before installing and had it half soldered for setting up the voltage correctly. But it didn't work, the converter put out nothing. And yes, I did measure and test and what not.

So I went through the hassle of pulling out the drawer and picking up another one. So this one works, but it tried its best to fool me at first.

So. Negative and positive input right. And negative and negative output? Turns out the last batch I bought all look like this. But except for the silk-screen they are all the same. And of course the output positive is on the same side as the input positive. And the negative is just ground so you might not even want to connect it if you have common ground elsewhere.