Super Quick Mini Quad

Super quick to build and super quick buzzing round the garden! Inspired by a recent video series by RC Model Reviews on YouTube I bought some bits and bobs from Hobby King to build my very own mini-quad.

2015-04-19 15.35.03

It’s been ages since I did anything in the garage, other than stir tins of Deep Bronze Green and repair punctures, so I was totally unable to wait for the second of my two parcels to arrive from the People’s Republic. Since I’d received everything except the frame within a couple of days and faced a two week wait for the frame itself, I knocked up a little quad frame from spare bits of carbon fibre and two meagre scraps of 6mm aluminium.

2015-04-19 15.35.11

It’s much smaller than my old quads. It was supposed to be a 250-class – so 250mm from motor to motor – but I chucked it all together free from the shackles of forethought and it ended up a little wide at the rear end. I drilled out, parted off and tapped four aluminium pillars, chopped and drilled some chunks of carbon fibre sheet and reinforced the motor arms with some square carbon tube with a balsa dowel insert.

One of the best things I did is make a power distribution board from a bit of veroboard. This makes wiring things up so much easier than faffing about trying to make a wiring loom. It also keeps the inside of the quad much tidier. I mounted it under the flight controller on some plastic standoffs which works very well.

2015-04-19 15.35.20

To fly it’s blooming amazing. I’ve only flown it round the (tiny) garden so far, watched by a curious three year old. The Naze32 board keeps things incredibly stable and the light frame and beefy little motors means it easily hovers at mid-stick. Leaving (hopefully) spare capacity for some FPV kit and a GoPro in future.

Huge thanks to Bruce from RC Model Reviews for making such a useful video series – and especially for recommending a list of cheap but super-effective components available for about £100.

EZSnap Motor Mounts

I really liked my old motor mounts for the Quadrotor. I made them on the lathe out of “Engineering Nylon” which costs very little, is easy to machine and can be found on eBay (search for “nylon round bar”). The motor snuggly fits into a 9mm hole and is fixed with two 3mm hex head set screws from either side. Another 3mm set screw goes through the bottom and bolts the mount onto the frame. To stop the torque from the motor spinning the mount I milled a 10mm wide slot into the bottom which fits over the aluminium frame.

I liked them because they are light, look nice and form an integral part of the frame (so no extra cable ties and fixings, just one bolt to do everything). The big problem made itself very apparent when I had a crash on the airbase; the motor hit the ground first and because there was no “give” in the motor mount I bent the arm and broke the motor (detaching one of the magnets).

20130219_074255

This would never have happened in the old days – when the factory motor mount was attached to the frame with cable ties. It might have been ugly, but the cable ties would snap long before any other damage could be done.

So, how could I improve my nice looking “purpose built” motor mounts to add a weak point? The answer is in the next picture:

20130227_225105

Basically it’s exactly the same design, but with an added cable tie! This time I made the mounts in two parts: a base part which bolts securely to the frame and a motor part which sits on the base and is held down by a cable tie. There’s a little knob on the motor part which sit in the 5.5mm hole in the base part (at the bottom of which the hex-head of the set screw goes). This keeps the two parts locked together as long as the cable tie is in place.

In a crash the cable tie will snap and the motor part will detach – hopefully protecting the motor from damage and protecting the frame in the event of a “motor-first” crash.

20130227_225453

Have I tested them yet? Well, no. I’m not going to crash on purpose!

Greenham Common Sunrise

Woke up early and met Dr Johnson just after dawn at Greenham Common. The control tower car park was closed so we stopped in a lay-by with the dog walkers and wandered over to the north taxiway. The ground is very wet and I am hopelessly out of practice with FPV so I stuck to line-of-sight flying. Turns out I am also out of practice at that as after about 10 minutes I got disoriented and crashed, snapping a leg off and ending the festivities for the morning.

Since flying was out of the question, we decided to go on a survey mission round the base. It was my first time on the airbase so was quite interesting to wander over to the bunkers and stare through the fence. The runway has been torn up and bulldozed into lumps to stop planes landing, so where the mighty B52s once rumbled in to land there’s now just gravel and gorse bushes. Saw the odd cow and some horses too, since the common is now common land again.

Here are some photos and a video from the ‘copter. I am somewhat annoyed that a drop of water got on the lens (again!) and smudged up the image. We shall return to the base soon I hope.

IMG_8297

IMG_8294

IMG_8290

Snapshot 2 (15-02-2013 08-31)

MultiWii Reflash

Got home from work and started working on this here MultiWii.  This time I finally built up the courage to flash the thing with some new software. 

It took me ages to find any documentation on the HobbyKing MultiWii 328P 2.1 board. There are scores of different hardware versions of the Multi Wii controller, so google tends to point you in odd directions. Anyway, it turns out there’s a “Files” tab on the HobbyKing page which has a load of useful stuff.

There’s a PDF guide and also a code snippet. These actually contradict each other quite seriously. I can only assume that HobbyKing have put quite a few versions of this board out and the settings are different. Here are the only changes I made…

  • TAKE THE PROPS OFF!
  • Download and install the Arduino 1.0+ IDE.
  • Download the MultiWii software from their website.
  • Run the Arduino IDE. Open the file “\MultiWii_2_1\MultiWii_2_1.ino” this will cause all of the files in the folder to be opened up in tabs in the IDE.
  • Add the following lines to config.h at the end of the Combined IMU Boards section. Leave everything else in this section commented out.
#define HK_MultiWii_328P   // HobbyKing MultiWii
  • Add this block to def.h. I added it around line 924, at the end of all the board specific configuration blocks.
#if defined(HK_MultiWii_328P )
  #define I2C_SPEED 400000L
  #define ITG3200
  #define HMC5883
  #define BMA180
  #define BMP085
  #define ACC_ORIENTATION(X, Y, Z) {accADC[ROLL]  = -X; accADC[PITCH]  = -Y; accADC[YAW]  =  Z;}
  #define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] =  Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
  #define MAG_ORIENTATION(X, Y, Z) {magADC[ROLL]  =  X; magADC[PITCH]  =  Y; magADC[YAW]  = Z;}
  #undef INTERNAL_I2C_PULLUPS
#endif

I can’t guarantee this these settings will work. If your ‘copter decapitates you as a result of using them it’s not my fault!

  • Choose the correct board type from the Arduino IDE menu (see screenshot)
  • Click “Verify” (the tick) on the Arduino IDE tool bar. There shouldn’t be any errors in the message window. If there are, you may have mis-copied the code or chosen the wrong board type.
  • Choose the correct Serial Port from the Arduino IDE menu (the port that isn’t there when the cable is connected and is there when it is!)
  • Click “Upload” on the toolbar. This will upload the code to the Multi Wii, which will then reboot. Once it has rebooted, test everything three times before putting the props back on!

I also calibrated the magnetometer properly (RTFM, Dan!) and tweaked the throttle minimum to stop the blades running with the throttle is all the way down. This involved editing config.h, finding the “Motor minthrottle” section and setting the minimum value to 1020.  This works well with my Turnigy Plush 18A controllers and DT750 outrunners. Looking forward to testing all these changes out tomorrow, if I can find some gloves and a jumper to wear.

[UPDATE]  So far this is the best PID tuning guide I have found – though it doesn’t really explain PID control very well, it does give a decent practical guide to tuning a multirotor.

MultiWii Mission Report

Just been out to do a quick 20 minute flight with the MultiWii plugged in.  Verdict is overall a good one, though to be honest it flew better with everything but the gyros disabled!

Started off with some setup trouble.  Though I was sure I’d got all the motors spinning up at the right time on the bench last night, we ended up swapping a couple of the motor cables over and tweaking around with motor directions.  I also needed to reverse my rudder channel (in addition to the ailerons) but that wasn’t a big deal.

Flying with just the gyros enabled seemed fine.  Slightly different feel in the sticks but that was probably due to the different rates and expo settings.  It seemed very stable – in fact it was  stunningly locked in on the yaw axis.

Flipping the switch to turn on the accelerometers, magnetometer (compass) and barometric pressure sensor made a big difference too.  I terms of altitude hold, the pressure sensor seemed to make things worse – there was a large, slow oscillation up and down which needed to be counteracted on the throttle in a very unnatural sort of way.  As far as heading hold was concerned I didn’t notice any change.  With the compass off there was no movement on the yaw and there was still no movement with it enabled.  In terms of pitch and roll, the accelerometers did seem to lock this in more, but tended to give a drift backwards and to the right.  Compensating this with the trims on the transmitter didn’t seem to work too well.

I think there is more calibration on the cards!

MultiWii Plugged In

Just a quick pair of photos to prove I have the Multi Wii controller plugged in.

Note the lack of props!  I still don’t trust this thing to fly around the way I expect it to. There’s a problem with the minimum throttle setting which means the motors are always spun up when the controller is armed. It’s possible to change this, but you need to flash new software onto the board and I’m not sure I’m brave enough to do that yet.

Mounted the board with double-sided tape and a chunk of firm packing foam (my XBox was packed in it).

I managed to get all the channels wired up and working in the correct direction and confirm that the motors spin up an down in the way I’d expect them to. Weirdly this involved reversing the aileron channel on my DX6i.  I also had to max out the travel of all the channels and jump through some hoops to make the “gear” switch drive channel 6.

Even though I managed to get two switches on my Tx to send signals through to the Multi-Wii, it weirdly won’t read anything from AUX2, AUX3 or AUX4. I confirmed it’s not the Tx by swapping channels.  Not sure if this is another setting that needs to be enabled in the Config.h file and flashed onto the board – I can see some logic in not reading more inputs than you need to on a real-time controller [UPDATE:  Turns out this is true!]. Will have to investigate as I’d like to have separate switches to enable/disable the various different sensors as I get used to them.

The Java GUI for the Multi Wii is really starting to annoy me.  It’s slow and clunky and very hard to use.  Today I found that you need to click in the top left hand corner of the 10×10 pixel grey/white squares that act a bit like checkboxes. If you click round the bottom right edge it just ignores you.  It’s also impossible to know whether it’s accepted a click onto buttons like “Write” or “ACC Calibrate”, which is frustrating and also a little scary.

Anyway, I am still positive so far.  Maybe I need to take this thing out and get to know it in the flesh rather than watching bar graphs jump up and down on my PC screen…