Wednesday, October 14, 2015

Latest On The Quadcopter Front

Well, I had a disappointing evening with respect to my Micro MWC flight control board.  I was moving it to a new frame from Picnic Quads and apparently I managed to kill one of the MOSFETs to one of the motors.  :-(

I guess I am disappointed because it did not last that long.  I only had about 2 hours of flight time with it.  I don't think I will replace it immediately.  It's rather expensive at $35 from Hobby King and that is about as cheap as they get.

In the meantime, I will just use Hubsan control boards on all my home built quads.  At $12 each, I can afford to play with those.

Anyway, I have been re-tooling my FPV Racer quad with the carbon fiber frame.  In preparation for the top plate that I should receive in a few days, I have pulled all of the FPV components off of the polycarbonate top plate and cleaned them of extraneous silicone.

Here is the base so far...






At this stage, the quad is a crazy flier... weighing in at just under 30g.  This is good because I will need as much power as I can get when I add the FPV stuff back.

I have also begun work on the polycarbonate version... which I think I will use as a practice quad.  It will be tougher that the carbon fiber quad, but should have all of the same flight characteristics.




Thursday, October 1, 2015

My MultiWii Settings

Well after a bunch of tweaking and testing, I am closer to a set of MultiWii settings that work for me...


The settings were dialed-in to be sort of a modest flyer.  Since I eventually want to do FPV flying, this is what I was aiming for.

I was very glad that I was able to configure a nice model config file for my Devo 7E.

name=Micro MWC
mixermode=Advanced
icon=FPV-QUAD.BMP
type=multi
[radio]
protocol=DSM2
num_channels=7
fixed_id=123456
tx_power=150mW

[channel1]
safetysw=HOLD1
safetyval=-125
template=simple
[mixer]
src=THR
dest=Ch1
scalar=125

[channel2]
reverse=1
template=expo_dr
[mixer]
src=AIL
dest=Ch2
scalar=125
curvetype=expo
points=15,15
[mixer]
src=AIL
dest=Ch2
switch=SW B1
scalar=80
curvetype=expo
points=20,20
[mixer]
src=AIL
dest=Ch2
switch=SW B0
scalar=60
curvetype=expo
points=25,25

[channel3]
template=expo_dr
[mixer]
src=ELE
dest=Ch3
scalar=125
curvetype=expo
points=15,15
[mixer]
src=ELE
dest=Ch3
switch=SW B1
scalar=80
curvetype=expo
points=20,20
[mixer]
src=ELE
dest=Ch3
switch=SW B0
scalar=60
curvetype=expo
points=25,25

[channel4]
reverse=1
template=expo_dr
[mixer]
src=RUD
dest=Ch4
scalar=125
curvetype=expo
points=15,15
[mixer]
src=RUD
dest=Ch4
switch=SW B1
scalar=80
curvetype=expo
points=20,20
[mixer]
src=RUD
dest=Ch4
switch=SW B0
scalar=60
curvetype=expo
points=25,25

[channel5]
template=expo_dr
[mixer]
src=SW A0
dest=Ch5
scalar=125
curvetype=3point
points=100,0,-100
[mixer]
src=SW A0
dest=Ch5
switch=SW A1
scalar=0
curvetype=3point
points=100,0,-100
[mixer]
src=SW A0
dest=Ch5
switch=SW A2
scalar=125
curvetype=3point
points=100,0,-100

[channel6]
template=simple
[mixer]
src=FMODE1
dest=Ch6
scalar=125
curvetype=min/max
points=0

[trim1]
src=LEFT_V
pos=TRIMLV+
neg=TRIMLV-
[trim2]
src=RIGHT_V
pos=TRIMRV+
neg=TRIMRV-
step=5
value=-7,0,0
[trim3]
src=LEFT_H
pos=TRIMLH+
neg=TRIMLH-
[trim4]
src=RIGHT_H
pos=TRIMRH+
neg=TRIMRH-
step=5
value=23,0,0
[timer1]
type=countdown
src=THR
time=300
[timer2]
type=permanent
src=Ch1
val=11505700
[safety]
Auto=min
[gui-128x64]
V-trim=55,10,1
H-trim=1,59,3
V-trim=69,10,2
H-trim=78,59,4
Big-box=2,26,Ch1
Small-box=2,39,Timer1
Small-box=2,48,Timer2
Bargraph=79,30,Ch1
Bargraph=85,30,Ch2
Bargraph=91,30,Ch3
Bargraph=97,30,Ch4
Bargraph=103,30,Ch5
Bargraph=109,30,Ch6
Toggle=4,11,2,65,129,SW B
Toggle=13,11,0,71,0,None
Toggle=22,11,0,7,0,FMODE
Toggle=31,11,0,0,0,None
Toggle=40,11,0,72,0,HOLD
Battery=102,1

TxPower=75,1


Wednesday, September 23, 2015

End-Of-Summer

Had a fun day yesterday, at my company's End-Of-Summer get together in the parking lot.  Lemonade, popsicles and other goodies were on hand as we spent some time socializing with others in the company.  I had fun because I brought out one of my quads for flying.


Thursday, September 10, 2015

My New FPV Racer

I received my Picnic Frames FPV Racer frame in the mail and spent the last couple of weekends working on it.  It's pretty much complete...








Friday, August 21, 2015

First Micro MWC Build

I have some photos of the first build with the Micro MWC flight control board.






It's a pretty simple build.  I am using a Picnic Frames' "Efficiency Platform" poly-carbonate frame with 4 generic 8x20mm motors.

The quad is flying pretty well now, since I started tweaking it a few days ago.  I loaded a version of MultiWii 2.3 that was hosted by the Micro Motor Warehouse here.  I am using the MultiWiiConf application to do the PID tweaking.

I will post my "final" settings when I am done playing around with them.



Thursday, August 20, 2015

The Micro MWC MultiWii Flight Controller / Receiver Board

I have some quite time now, so I thought I would post some information.

I have been constructing a new quadcopter, trying to use the Micro MWC flight control board I received for my birthday.  Here is a picture of it (enlarged)...



The actual board is not much bigger than a standard SD card.  You can see where the motor connections are at the bottom.  This board has a built-in DSM2 receiver and 4 ESCs for the four motors of my quadcopter.  This FC board is strictly meant to drive brushed motors.

The most interesting part of the board, to me, is that it is a MultiWii flight controller that uses an Atmel AVR chip to run the flight control software.  I have always been interested in MultiWii because 


  1. It allows you to tweak the flight performance of the quad in all sorts of ways
  2. It's actually implemented as an Arduino sketch
  3. It has this cool configuration utility
The first step I am going to take is solder some motor connectors to the board.  I have these micro JST (1.25mm) connectors that I ordered from AliExpress. My hope is that I have polarized my current motor connector to match the orientation that I am going to solder to the board.  I'll post more about this with some photos later.

Finally, I will also have to solder a power adapter to the board.

Saturday, August 15, 2015

Another Twisty Turn

Yes, it has been a while.  And I have been busy.  I guess I just have not had the time to document my efforts.

That should change.  I really need to keep a record of my endeavors, at least for my own amusement.

So let's begin.

I have been working pretty heavily on a cross-platform application called the Model File Manager.  Simply put, it is a simple utility to manage the model files of a DeviationTX RC transmitter. Here are a couple of screenshots of the app...






It's not a terribly complicated application... more of a glorified file-manager for the storage files of a DeviationTX transmitter plugged in via a USB cable.  To the PC, the transmitter looks like a little flash drive that you can view and move files to and from.

Anyway, I wrote the app originally in Visual Studio with C# as the language.  While this was fine for some, others kept asking for a cross-platform version.  So I looked closer at the Mono project and specifically MonoDevelop... the IDE of choice for Mono.  I can honestly say that in hind-sight I should have looked at Mono earlier.  They have done a great job of building a highly usable IDE, which is a tall task.  I'm a professional Visual Studio user, so I am exposed to some of the best tools available... but at some point features just become bells and whistles.  It's like C#.  Sometimes language features boil down to just syntactic sugar.  But I digress.

MonoDevelop turned out to be a very capable IDE for building the application.  But there is no free lunch and I still had to learn GTK or GTK# the .NET binding for GTK.  This is where most of my learning turned out to be.  Translating WinForm knowledge into a workable GTK interface was tough.  There are a lot of conceptual differences between the two.


  • GTK is actually more modern in its approach to layout of UIs.  What I mean by modern is that it takes flexible display sizes into account.  Right from the get-go you have to think about laying out your UI with flexible containers that shrink and grow as the window is re-sized.  Very much like the way Android and WPF approach UI design.

    WinForms is solidly in the "Fixed" realm, with the default layout building done with a fixed, absolute positioning of controls and elements.
  • ListBoxes, ComboBoxes, etc... use the MVC pattern in GTK and that is taking some getting used to.  It will be a while before I can fully utilize the versatility of this approach.
  • GTK uses barely any formatting properties... instead relying on the Window Manager to dictate the look of the controls.  Any formatting available though is done through a small style language called Pango.  An interesting approach to look and feel options.

Anyway, I finish up this post with the actual source files.  You will have to look at the readme.txt to learn how to build the app.