mike_kelly's blog View Details
Posted by mike_kelly | Yesterday @ 10:28 PM | 216 Views
Like most things CANbus Ardupilot is a little behind the game. We have come a long way on this project from setting up power, installing the ESC's, adding GPS and Mag, getting information from the Notify display and adding the rangefinder for more accurate altitude measurements. The SLCAN tool and the UAVCAN GUI software as given us a great way to monitor data on the CANbus and configure our can devices and troubleshoot. It still allows us to troubleshoot those devices even buttoned up inside the multirotor. We get an unprecedented view of what is going on inside the quad in real time instead of waiting until the flight is over to review the logs. With UC4H we know what the rpm of the motors are and what the temperature of the ESC's is at. We know how many satellites we have locked and that the EKF2 as initialized.

But some of use grew up using Mission Planner and with all the benefits of UAVCAN GUI it would be nice to integrate Mission Planner and UAVCAN. So OlliW developed a way of linking Mission Planner to the CANBus and allow us to connect with CAN devices on our multirotor just like connecting to the flight controller and downloading the parameters. With the UC4H Masvlink Bridge we can get our CANbus information right in the Parameters with all the other aspects of the flight controller we configure.


The UC4H Mavlink Bridge sits on the CANbus and connects to the Pixhawk via a serial connection. It is created using our multipurpose General Node. So simple and so powerful.
Posted by mike_kelly | Mar 19, 2019 @ 05:30 PM | 844 Views
The continued epsiodes of the Son of FrankenSolo build. Using Olliw's UC4H and a 3DR Solo surplus motherboard to create and advanced DIY quad.

I have gotten the UC4H powerbrick, UC4H ESC's, UC4H Display Notifier and UC4H GPS/MAG/Baro installed. Kinda the required basics to get flying.

Now for some frosting on the cake. I have wanted to experiment with a downward facing sonar since the APM days but the sensors available have always been marginal or quite expensive. The old HC-SR04 did not do much. The Maxbotix had noise isssues to deal with and the true LIDARS were in the hundreds of dollars.

For low altitude measurements Pixhawk depends on it's barometer. But the Barometer senses air pressure and that changes with the weather. So adding a better sensor for low altitude height measurements could improve landing and AltHold flight mode.

The new kid on the low altitude sensor block is the Benewake TFTmini LIDAR. It is not a true LIDAR (Light Detection and Ranging) because it does not use a laser. It instead uses a less costly LED light. But it seems to work well and is moderately priced at around $50.

OlliW took advantage of this new sensor and added it to UC4H. The UC4H Rangefinder. It could use the UART Tunnel technology but it is easy to setup and use as a UAVCAN device or the generic mode.

First install the UC4H Rangerfinder firmware on your General Purpose node.
using the UAVCAN GUI tool. Choose a unique node ID and leave the Channel ID=-1, to...Continue Reading
Posted by mike_kelly | Mar 17, 2019 @ 09:59 AM | 1,549 Views

Adupilot is heavily dependent on GPS for accurate position information. It uses position information for all the various modes that set it apart from other flight controllers. Auto missions, loiter, position hold, follow me etc etc all require a great GPS lock to function. Ardupilot has made great strides in recent years by implementing dual GPS capability and allowing the evaluation of the GPS signal quality and switching to the best GPS or blending the data from the two GPS. It brings greater reliability to Ardupilot.

In my first FrankenSolo I used a UC4H GPS node to convert a Here GPS to UAVCAN. This conversion caused the Here GPS to send out UAVCAN messages with GPS information to the CANbus. In the second generation UC4H OlliW has implemented a new message type that is a tunnel to send serial data to the Pixhawk. The new message has raw serial data as a payload and allows any serial device to create a tunnel to deliver that data to the Pixhawk without creating special UAVCAN messages for every serial device. So I am replacing my old UAVCAN node with a new gerneral purpose node with the GPS/MAG/Baro firmware. The GPS data uses a serial_TUNL to get its data to the Pixhawk and the compass and or barometer send their data through normal UAVCAN messages.

There is also a general purpose node firmware to provide nothing but serial tunnels. The firmware is called the UART Bridge is used to provide extra serial ports to the Pixhawk from about any serial device.

I then...Continue Reading
Posted by mike_kelly | Mar 15, 2019 @ 07:50 PM | 1,164 Views

I used the UC4H Notify display as an example of flashing the firmware to a General node now I'll just finished up that project. The UC4H is similar to the Ardupliot status display. It is really useful to get some important information before you fly without having to haul around a ground station. It is particularly important to have a good GPS lock before you fly with Ardupliot and a simple LED on your GPS indicating a 3D Lock is not adequate. The Notify display gives you the number of satellites you are using and the quality of the signal. It also has a ticker tape line that gives you the messages that you would normally have to get from the message tab in Mission Planner. It will tell you what your battery voltage is and all in plain text rather than having to decipher sequences of blinking lights or musical tones.

The notify display using a cheap and commonly available SSD1306 .96" OLED I2C module. Becarefuyl to note that these modules can look identical from various vendors but instead, stupidly, have the power and ground pins reversed from module to module.

...Continue Reading
Posted by mike_kelly | Feb 27, 2019 @ 12:27 AM | 1,794 Views

OlliW's new Pixhawk Cube carrier for UAVCAN. Very exciting.
Posted by mike_kelly | Feb 26, 2019 @ 01:29 PM | 2,036 Views
Amazing! I did not melt my ESCs into slag and they all work. Yippie!

One of the nice things about a UAVCAN ESC is it doesn't need to be calibrated like a standard PWM ESC. But you do need to configure the ESCs, each with a unique node ID, and set them up so they are in the right position on your frame.

To set the node ID we go into the UAVCAN GUI, click on the automatic Node ID server, and let it assign a random ID so we can see the node. Then we simply open each ESC node, click on "fetch all," and then change the node ID to whatever we want. Each node can have any ID up to 126. I am setting mine so they are 60, 61, 62, and 63 but it could be 34, 68, 92 and 101. You can choose any ID as long as each node has a unique number and it is not greater than 126. Be sure to click "save all" afterward to change the ID for each ESC.

There is an index to identify the ESCs. I have four ESCs so the count starts at 0 then 1, 2, 3, unlike the Ardupilot count that starts at 1. Each ESC needs to be associated with it's Arducopter arm/motor number. Don't be confused with Arducopters motor test which starts at the upper right and goes one motor at a time clockwise labelling each motor in turn A, B,C and D.

For Arducopter, my X frame (picture on the right), motor order is upper-right motor 1 then, going clockwise around the quad, lower-right is motor 4, lower-left motor is 2, and upper-left motor is 3.

We need to associate each ESC, where we have placed it on the...Continue Reading
Posted by mike_kelly | Feb 24, 2019 @ 04:22 PM | 2,198 Views

I hate doing ESCs. Because of my unexceptional soldering skills, I tend to melt them into a pile of slag. I'm going to try real hard not to do that today. I could use the general-purpose node and program it for ESC. It would have the advantage of being able to use one general-purpose node for all four of my ESCs. The ESC firmware supports up to 6 PWM or 4 Dshot outputs. Just a reminder that you can make all these UC4H devices with simple "Blue pill" STM boards that are really cheap. They may not be as neat and clean but it makes UC4H super accessible.

>>>> But I want to use the OlliW super-special Kiss ESC carriers. Super cool!

...Continue Reading
Posted by mike_kelly | Feb 23, 2019 @ 08:25 PM | 1,738 Views
Ok, I got the basic platform up and running. The UC4H Power module is powering the Pixhawk 2.1 Cube and the CANbus. I can connect to the Cube with Mission Planner and I have installed Betacopter 3.6.6 from OlliW Github respository. OlliW has provided pre-compiled versions for three standard flight controller FMUs. Use ArduCopter-v2.px4 for standard Pixhawk 1s and Cubes. Use ArduCopter-v3.px4 for Solo boards and ArduCopter-v4.px4 for newer boards like the Pixracer. You do this by going to the install firmware tab in Mission Planner and Load custom firmware. Loads just like any normal pre-compiled version of Arducopter.

Now we can have some fun. The SLCAN device is a basic tool for monitoring the CANbus. If you are a network type it is like an ethernet network sniffer. Think Wireshark or Bloodhound. It listens in on the bus and can capture the messages going by. You can make one or buy one from Jdrones or Zubax. The UAVCAN GUI tool gets this info and displays it for you. So get UAVCAN GUI from the UAVCAN.org site and install it.

Plug your SLCAN adapter into your computer via USB and a CANbus cable is plugged into one of the two CANbus ports and then to your CANBus. In the following picture you can see my SLCAN plugged into my computer and then to my CANbus expander.

On the CAN Interface Configuration screen choose the usb port your SLCAN is connected to. (You can unplug the SLCAN and run the UAVCAN GUI again and see what port disappears if you are unsure.) The...Continue Reading
Posted by mike_kelly | Feb 22, 2019 @ 01:07 PM | 1,728 Views

I have checked that the UC4H Powerbrick and the Power Distribution Board are connected correctly and working. The correct 5.3v is powering the CANBus. I am using JST-GH expanders made by MRO which he makes for I2C but work for the CANbus. The CANbus is not designed to be a STAR topology but a daisy chain. But given the short distances involved on the quad it just does not affect anything negatively and it is so much easier to use the expanders.

...Continue Reading
Posted by mike_kelly | Feb 21, 2019 @ 06:41 PM | 1,716 Views

I received all my UC4H modules from Jani at JDrones and some modules OlliW built for this project. Thanks, OlliW! I'll use a UC4H V2 Powerbrick to power the system. The Universal Modules for GPS, Serial Bridge, Mavlink Bridge, LED Notify and Display will finish off the system. I'll use OlliW's UC4H Kiss 32A ESC carriers but I could use Universal Modules for the ESCs also.

I suppose the place to start a new build is the power supply because everything depends on reliable clean power. One of the problem areas and points of confusion in APM/Pixhawk builds over the years has been supplying power. The flight controller is a flying computer with sensors. In order to operate it needs clean reliable power to stay working and to evaluate its sensors accurately. So you don't supply power to your flight controller from a BEC on your ESC. Those voltage converters were made for simple devices on airplanes, not the rigorous requirements of a flight controller. Also, we can't power everything in the whole world off our flight controller power module. So just don't do it. Use a separate voltage regulator for other devices that need significant power. A flight controller pulls a few hundred mils so don't think about powering a 1 amp 5v led strip with the flight controller's power module.

The next very important aspect of a flight controller power module is to be able to monitor the power we are using to estimate our available flight time. We would like to know as accurately as...Continue Reading
Posted by mike_kelly | Jan 10, 2019 @ 10:22 AM | 10,166 Views
When I discovered the 3DR Solo main board as a building block for DIY, because it has a Pixhawk 2 and a companion computer with HD video and telemetry for a very cheap price, I built the FrankenSolo. I used a recycled set of plates from a Daya 680 because it was wide enough for the Solo mainbrd. But it is not necessary to use a Solo mainbrd, all of this could be done with a normal Pixhawk.


But as with most DIY builds I had to do a lot of bubble gum fitting and compromising to get it all to work. The quad flew better than any of my previous builds and I was sold on the concept. I used OllW's UC4H components to bring UAVCAN to the build. My reason to use Ollw's UAVCAN was to have a build with cleaner simpler wiring and real time monitoring.

Since that build OllW has continued to refine and make UC4H an even more compelling platform for DIY builders. The FrankenSolo used 15" props and hovered for nearly 40 minutes which was much longer than the original 3DR Solo. I was tired of builds using pre-made frames that just don't fit the components we need to use. The hole patterns never seem to be designed for any of the standard sized parts that are available. I also wanted to use 17" props to see if I could extend the flight time. I sketched an extended version of the Daya Mainplate that would support 17" props and have all the proper hole for the components I wanted to use so I would not have to cut and drill...Continue Reading
Posted by mike_kelly | Jan 04, 2018 @ 04:14 PM | 22,394 Views

I have been looking for a gimbal that will support and work well with a Sony Nex mirrorless camera and not too expensive. I am not in the market for $1000 gimbal. Plus I really want to make it myself. I have built a lot of gimbals and early-on I learned that the wires running sloppily all over the place will never allow for a really good gimbal. The prop wash and rubbing of the wires totally messes up the stabilization. So for me the wires must go through hollow shaft gimbal motors and be dressed cleanly and tightly. Two, the gimbal must be adjustable enough to properly balance a bigger Nex sized camera.

I played with the DYS that is popular but the way they attach the camera platform to the pitch gimbal motor blocks/precludes running wires through the hollow shaft pitch motor. Next promising was a gimbal from GoodLuckBuy similar to the MOY, but the movements are not adequate for me to balance my Sony Nex 5 even though it is supposed to be designed for the Nex.

I finally found a possibility and that is a gimbal sold by Hobbyking and others called the Stormeye 5N, made by FCModel. It is cheap and it has a two point support for the camera platform. It is light but some of the parts look weak. The gimbal motor attachment plates are flat pieces of carbon fiber so it would be relatively easy to get replacements made to fit the gimbal motors I want to use and to add a third axis plate since the stock gimbal is only two axis.

That is where Nick at CNCmadness came in. I...Continue Reading
Posted by mike_kelly | Dec 29, 2017 @ 11:50 AM | 19,567 Views
I have been an Amateur Radio operator, AL7AK, for a long time and I have done some really fun projects in HAM radio -Talking through an orbiting satellite, being part of a world wide contest station, and doing emergency tests in below zero remote locations in Alaska.

I have had the idea for a while to see if i could make an emergency VHF radio repeater drone. VHF handie talkies are used in emergencies for rescue coordination and aid delivery during disasters and HAM radio operators have a fine tradition of stepping up the plate during such events. For an active civic minded radio club it is not uncommon for them to provide for emergency backup power for their mountain top repeaters that allow the hand held radios to communicate over much farther range.

But disasters don't often conveniently happen in places where HAMs have prepared for such events and instead can happen in remote and difficult areas.

The idea behind this project is to see if I can build a tethered multirotor that can carry aloft an amateur radio emergency repeater that could be deployed anywhere and stay in the air for an extended period of time.

The problem with tethered multirotors is the current required to power a multirotor. A 6s octocopter can pull 20 amps or more and the power cable needed from the ground to the multirotor would be too big and heavy for the multirotor to lift. So most people solve this problem by feeding the multirotor with a higher voltage, which allows lower current for the...Continue Reading
Posted by mike_kelly | Nov 17, 2017 @ 05:00 PM | 18,156 Views
Mini Pixhawks compared
Daya H4 680 Alien folding quadcopter
A cheap adroid tablet for APM/Pixhawk and Droidplanner 3 - Tower
Pixraptor Pixhawk clone with sensor suspension, a better pixhawk?
Pixhawk LITE, a replacement for the now obsolete APM boards?
Marek Rokowski Simple FPV Goggle Kit
Marek's 4.3" Goggle kit
Sony QX10

The 3DR Solo is raised from the Dead by the Open Solo Project
Mounting a Gimbal
New Status display for Pixhawk replaces beeps and flashing lights.
InfraRed NIR Cameras and NDVI imaging for agriculture and research
Tarot weights and measures
The Ardupliot Project Developers: The people that make it possible
Linux based Flight Controllers
Evolution of an RC Enthusiast - in search of reliability - ZMR 250 Coaxial
Mini quad motor comparision RCX H1806 RCX1804 RCTimer 1806 DYS BE1806
Ultimate LRS - APM with long range control and telemetry
Tarot 680Pro Extended arms with ESC mounted in the ends
Broken Tarot Landing Legs
Tarot Quick Detach Propeller adapters TL68B35 TL68B36
Tarot TL68B33 Anti-vibration motor mounts
Troubleshooting APM flipping on new build
My Perfect Tarot Travel Case for 650 Sport 680 680PRO 690
Canon FPV Video AV cable for S100 G10 ELPH Powershot
Boscam TS321 RC302 Channel dip switch settings mystery
What's wrong with cheap props?

FrankenSolo: Converting a 3DR Solo to UAVCAN
A new Tarot 680Pro hybrid with Daya H4 680 metal arm clamps
Blackout mini H as a training tool
My Take on a Ground Station
ZMR 250 X8 Octocopter! Coaxial Quads
Posted by mike_kelly | Nov 13, 2017 @ 01:44 PM | 18,943 Views
This build was done to demonstrate the use of CANbus with Arducopter. DJI has used CANBus to connect flight components for a long time but it is new to Arducopter. CANbus is a network for add-ons like GPS, Compass, Power Modules, ESCs and Gimbal controllers. Instead of the rats nest of cables typical of an Arducopter build, there is one cable type, one connector and all the cables are the same. CANbus can also have fully redundant cabling if desired. No hassles splicing and studying pin-outs or searching online for the right cable. The build uses OlliW UC4H Uavcan for Hobbyists and Zubax parts.

This is a completed build. In the pictures you see that there are only three (count 'em) cables going to the flight controller: Power, Canbus and RC receiver. That is it!! It shows the simplicity and increased reliability that CANbus can bring to a build.

...Continue Reading
Posted by mike_kelly | Oct 31, 2017 @ 12:56 PM | 18,933 Views
I decided to start a new blog post on my FrankenSolo build to focus on using the CANbus tools provided by Pavel with uavcan.org and owner of Zubax Robotics.

What is CANbus? You can think of it as the Internet for multirotor accessories. It comes from the automotive and aerospace industries and has one common wiring scheme, identical connectors and daisy chained devices for all your multirotor accessories. No figuring out pinouts and splicing cables together for each new device. Nice JST-GH connectors that click into place, are easy to remove and won't fall out. The GPS, Compass, Power Module, ESCs and gimbal controller etc. could all use CANbus.

As you daisy chain your devices, the last device needs a 120 ohm terminator and only one device can supply power to the CANbus, usually the flight controller. But OlliW's SLCAN can be jumpered to be a consumer or supplier of 5 volts for the bus. If you are testing just one device without a flight controller being a supplier, the SLCAN can be the supplier. But remember, only one supplier of power on the CANbus at a time!

***note don't use the above picture as an example of the detailed wires for a CANbus connector. All of my UAVCAN devices have 5v on the left side in the orientation of this picture, not on the right as shown. ***

The first task is to get to know Pavel's UAVCAN GUI. It is available for Windows, Linux and MAC. The beauty of UAVCAN is that every device can be configured and tested from one utility - Pavel's...Continue Reading
Posted by mike_kelly | Oct 13, 2017 @ 09:53 AM | 22,055 Views


For me the Holy Grail of DIY quads is to have some of the features that the expensive RTF multirotors have like HD Video with RC control and telemetry on the same radio. It is a pain having a RC receiver/transmitter and a telemetry transceiver and a Video transmitter. They tend to interfere with each other in the close spaces of a quad. There are commercial versions like Lightbridge for DJI. There are some expensive DIY attempts like the CUAV Hack Link which is supposed to provide HD Video and RC control but I have not seen anyone get it to work yet with RC Control.

...Continue Reading
Posted by mike_kelly | Oct 05, 2017 @ 06:45 PM | 22,528 Views

The 3DR Solo was way ahead of it's time but like many products introduced to the marketplace it was doomed by bad timing and bad management decisions. It was envisioned as a videography tool with features never before released in this class of multirotor, like CableCam. CableCam was the ability to define a complex route the quad would fly and then you could fly that route back and forth by just moving your, redefined right stick. But when the Solo was released, to much fanfare, they did not have the gimbal ready. This left an initial bad taste in the marketplace because a video quad was not much use without a stabilizing gimbal for the camera. Then the second problem was with a bad chip design in the ESC's that caused a logic level mis-match between the flight controller and the ESC's. The flight controller operating on 3.3v logic and the ESC's chip on 5v logic levels. This could cause the Solo to fall from the sky under certain circumstances. So with too many Solo's already built and a lot of money already on the line, management decided not to replace the ESC's and to use a software fix that reduced performance to solve the problem. The Solo originally shipped with a poor quality GPS which caused fly-aways or crashes when it lost lock on the satellites. With so much hanging on this product the problems eventually sunk 3DR.

The Solo was dumped by large retailers for pennies on the dollar and the Solo was doomed to be piled on the scrap pile of failed projects.

But the...Continue Reading
Posted by mike_kelly | Sep 06, 2017 @ 01:42 PM | 22,575 Views

A quad with two motors per arm is a Coaxial Quad also know as an X8 and Octa-Quad. An X8 is inherently less efficient than a flat octacopter because the bottom propeller is blanketed or covered by the top propeller. Hence building an X8 is almost entirely for increased reliability. If one motor fails you have a second motor on each arm. An X8 is also more compact than a flat Octacopter. An Octo with same propeller size as an X8 would have to be much much bigger in diameter. An X8 can carry more weight than a flat quad, of the same prop size, but at the price of efficiency. The efficiency penalty is in the order of 15% but building an X8 is a black art. There are so many variables that getting it right with your available motors and props is difficult.

The top propeller increases the speed of the air moving down. This means that if the lower motor were running at the same speed it would just be idling. Since the air it "sees" from above is already moving as fast as it can accelerate air.

So the basic theory is that the bottom motor must run faster than the top motor. We can generally do that two ways. Increase the pitch of the lower propeller and or increase the KV of the lower motor which increases it's speed. General guess is that the bottom motor should run about 10-20% faster than the top motor. The problem is that it is difficult to get motors of any particular size or propellers of a particular length that are only 10-20% different than each other. It...Continue Reading