Shop our Airplanes Products Drone Products Sales
Thread Tools
This thread is privately moderated by mike_kelly, who may elect to delete unwanted replies.
Oct 13, 2017, 09:53 AM
Wisconsin
Discussion

The Holy Grail of DIY QUADS - FrankenSolo



IT'S ALIVE

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.





The 3DR Solo had this capability when it was released years ago. Now that Solo has been closed out and sold for pennies on the dollar it dawned on me that this might be a way to get HD video and RC control along with smart gimbal control for just a few hundred bucks along with a Pixhawk 2.0 cube flight controller. Just tear it out of the Solo and build a bigger longer flight, heavier lift quad out of the parts. It turns out, in doing some research, that I am not the only one to get this idea.

Now one of the two major problems with the 3DR Solo when it was released were fly-away problems due to a older GPS design. That is easy to fix these days with a new M8N based GPS. The other was the incompatibility between the Pixhawk cube 3.3v logic and the 5v logic of the ESC controller 3DR chose to use. So I'll replace the ESC's. This change will make the Pixhawk FC that came with the Solo perfectly usable with the current newer versions of Arducopter.

I have always been bugged by the myriad of connectors and cabling for the various interfaces on multirotors. I2C, Serial, SPI, PWM. It makes for a lot of "home run" cables that go from a device, like a GPS, all the way back to the flight controller. Lots of long cables with usually extra wire looped around.
I decided to try and push the limits of my previous builds and also move to CANbus. CANbus is a more robust communications hardware and software which will replace the noisy I2C, normally connecting the compass and other devices to the Pixhawk. On this build everything possible will communicate using CANbus. With the help of OlliW, of storm32 gimbal controller fame, and his UC4H (UAVCAN for Hobbyists). CANbus has been used by DJI since it's first offerings but it has never been developed for ArduPilot before. CANbus can simplify wiring on a build because the devices are daisy chained together rather than each device having to go all the way to the flight controller separately.
OlliW is making the effort to bring CANbus via the UAVCAN project of Pavel Kirienko to hobbyist. Pavel Kirienko has designed UAVCAN ESC's that will solve the Solo's ESC problem.






OlliW has designed a beautiful power module that senses voltage and current very accurately via a hall sensor and reports it's data to Pixhawk via UAVCAN. He also has created an adapter for GPS/Compass units commonly available so they can be connected via UAVCAN. Now OlliW has released his design for an ESC adapter for normal PWM ESC's to adapt them to CANbus. Along with OlliW STorM32 Gimbal controller also running UAVCAN I think we have a state of the art quad project. Arducopter is behind in adding the hooks needed for UAVCAN so OlliW made a fork of Arducopter that added the needed messages for UC4H he calls Betacopter.

In my junk box I found parts of the DAYA H4 680 frame. This is a spyder quad with a center compartment almost perfect to house the Solo motherbrd inside the quad. All I needed to do was cut a small square hole in the bottom to let the top of the Pixhawk cube to stick out a 1/4". In the Solo the Pixhawk is mounted upside down also, so I was mounting the whole brd the same way it is mounted in the Solo. I will use Johannes Tragfalter design as a guide for super light building technique. I will eliminate the folding arm clamp problems by using square tubing that is just bolted to the frame. Lighter and stiffer and yet still foldable.





I adapted some Tarot suspension motor mounts, which are only 15g. Doing the numbers in eCalc I decided to use T-Motor 3110-470kv with a 4 cell power supply and found a used set on Ebay cheap.

The Solo had a bit of trouble itself with computer noise and motor electromagnetic interference so I will run the ESC power directly rather than use the pathways the original Solo used that run through inside the motherboard.



It is such a gift to be able to read and use all the information, ideas and hard coding work that people like OlliW, Pavel Kirienko, Johannes and the Open Solo and Arducopter projects share with all of us. I feel lucky to live in this time.

Now time to start breadboarding the UC4H system while I build the frame and wait for other parts.

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 UAVCAN GUI. You need a bus sniffer called a SLCAN. This USB device sits on the CANbus and allows you to see the devices on the bus, monitor the messages they send and configure them.

PLease jump to my new blog post all about UAVCAN.
UAVCAN - Canbus for the rest of us.

Also take a look at OllW's project UC4CH, UAVCAN for Hobbyists, where he makes UAVCAN accessable to us DIY'ers.

Oct 20th
Got my UAVCAN system, using OlliW's UC4H UAVCAN power module and GPS-Mag module working. Also the Zubax 20amp ESC's. I flashed the Solo cube with OlliW's Betacopter which is a fork of Arducopter 3.6 dev with UAVCAN messages for his Canbus nodes. It is too bad these changes are not in ArduCopter master.

Oct. 22th
Got the UAVCAN bus working on the Solo today. The CANBus on the accessory bay connector is CANbus 1 the CANbus on the ESC connector is CANBUS 2. In Mission Planner you need to set the CAN settings for CANBus 1 being the primary.
*** Note *** to those who might be playing with UAVCAN the cable I received with pre-made JST-GH connectors had the RED wire going to the ground pin on UAVCAN. Real bummer. I hate all black with one red cables and even more I hate it when the maker gets them backwards! You have to check everything in this hobby.

Oct 23rd
Installed the GPSmag node inside a ProfiCNC HERE GPS.





Oct 24 2017
Installed the UC4H Power Brick in the frame.




Oct 25th
Canbus in the Ardupilot world is still pretty green. Devs are still negotiating the messages for devices that need to be added to Ardupilot. So things are changing fast but there is also slow going in deciding what to do.
OlliW did'nt want to wait so he created a fork of Arducopter with his messages needed to get his UC4H power brick to work. This power brick is a beautiful device. If you are used to using a typical 3DR power module it uses a resister to tap a little current from the main power stream. The voltage drop across the resister is proportional to the current flow through it. But that is a crude way to measure current. Resisters change resistance with temperature. The more current flow the more heat and the more change. Many change a lot so there must be a high quality stable resister, which these cheap power modules don't have, in order to have a good reading. So everyone knows that the current readings off those 3DR style power modules is not accurate and should not be relied upon. So OlliW used a Hall sensor. The way a Hall sensor works is by a non-contact magnetic field measurement. So there is nothing added to the circuit. The current flows through the Hall sensor but the Hall sensor is just "watching" the current not interfering with it. So it is much more accurate.
So I loaded up OlliW's Betacopter fork of ArduCopter and after a bit of troubleshooting got all the UAVCAN settings correct in Mission Planner. Note that the CANBus parameters changed recently such that they are different in newer versions. I don't know when it changed. But the bottom line is you need to use the latest version of Mission Planner. Also when you change the parameters to turn CANbus on it will require a reboot. Then you will see more parameters.
Here are the setttings I needed to get it all to work. I am using CANbus 1 in the Solo. *** Note there is a known problem if you are using a new Pixhawk 2.1 where the CANbus labels are wrong and CANbus 1 is really Canbus 2 and vice-versa.***

CAN_D1_PROTOCOL:=1 for UAVCAN
CAN_D2_PROTOCOL:=0 disabled
CAN_D1_UC_NODE:=10 this is the Pixhawk's node ID > each device in a CANbus system as a unique node ID, from 1-250
CAN_D1_UC_SRV_BM: =0 for testing >RC Out channels to be transmitted as servo over UAVCAN
CAN_D1_UC_ESC_BM: =0 for testing >RC Out channels to be transmitted as ESC over UAVCAN
CAN_P1_DRIVER:=1 for CANbus 1 being primary
CAN_P1_BITRATE: = 1000000 is standard > Bitrate of CAN interface
CAN_P1_DEBUG:=1
CAN_D2_DRIVER: =0 I turned off CANbus 2 because I was not using it.

See my more extensive article on "Configuring Ardupilot for UAVCAN" at www.Ardupilot.org for more information.

I got the Powerbrick to show the voltage and current in Mission Planner but I could not get the Mag to show in the HUD or calibrate. The mag is working and I can see the CANbus messages and the status display in Mission Planner shows the mag changes working properly but Mission Planner does not see it with the Calibration routine.

Oct 26th
I found that if the parameter EKF2 is enabled the mag will not calibrate correctly. Mag working now. On to soldering up and calibrating the ESC's.

Nov 2, 2017
ESCs and motors working. It is really slick to have UAVCAN GUI to configure and test your ESCs. No need to "calibrate" your ESCs with UAVCAN because the smart ESCs just "ask" the fight controller for the throttle end points!


11/3/2017
Motor test in Mission Planner working. There is a parameter whose value is a bitmask. CAN_D1_UC_esc_BM where the bit map represents the ESC's which are enabled for use. Hence a 1, within the bitmask, in the first binary position represents the ESC with esc_index=0. Position two represents ESC with esc_index=1. Position 3 represents the ESC with esc_index=2 etc. So to have all the ESCs on a quad enabled, positions 1111, the value of the parameter would be the sum of the binary values 8+4+2+1=15

11/04/2017
I have to say that I just picked up a couple of new Solo main boards on Ebay for $45 each. This gives me a Pixhawk 2.0 flight controller, an I.MX6 companion computer, the Wifi transmitter board for HD video, telemetry and RC Control and 5v regulated power module and the main board only weighs 210grams with all that. Seems like a DIY steal compared to other commerical HD video options.

11/09/17
I have run into a problem that appears, due to troubleshooting, to be a bug in Arducopter 3.6dev with the PX4.V3 compile. When CANbus is enabled and EKF2 is enabled the Mission Planner compass cal with not work. When EKF2 is disabled then the compass cal works but 3.6dev is expecting EKF2 or EKF3 to be used and will not function on the Solo with both turned off.

11/22/2017
After spending many hours troubleshooting this problem I think I stumbled into the solution. There is something in the 3DR Solo_3.5.3_parameters that are available in Mission Planner that causes the problem. If I do a fresh firmware instal and clear all the parameter memory and then set only those minimum parameters needed to get CANbus and the Solo working everything works. Now I am proceeding to set the parameters in the "3DR Solo 3.5.3 parameters" files one by one untill I find the offending parameter.

11/23/2017
I have checked about half the parameters in the "Mission Planner 3DR Solo 3.5.3" list and have not found the problem child yet. I did button up the build and took it out for it's maiden today. It flew 35 minutes on a 4s 10k using 8230mah. So I am calling it a success!

3DR Solo conversion 35 minute flgiht using UC4H CANbus (1 min 58 sec)
Last edited by mike_kelly; May 15, 2018 at 07:11 PM.
Sign up now
to remove ads between posts
Nov 28, 2017, 01:14 PM
Registered User
Doc Br.'s Avatar
very interesting! Moreover, today to buy a minimum Solo kit for 220 dollars is cheaper than buying separately spare parts.
Nov 28, 2017, 02:26 PM
Wisconsin
Quote:
Originally Posted by Doc Br.
very interesting! Moreover, today to buy a minimum Solo kit for 220 dollars is cheaper than buying separately spare parts.
B&Hphoto in new york has the Solo on sale new for $129.
Although you can get a Solo mother board for only $75. Which does not get you motors but it does get you the Pixhawk 2.0 flight controller, the I.MX6 linux co-processor and the wifi transmitter. But as you say it is a bargain right now.
Dec 16, 2017, 08:34 AM
Registered User

Spare parts fun build


And you end up w/ escs and motors to make a fun quad...some 1/8" plywood, a few 3d printed parts,add a kk2 and there ya go.
Dec 31, 2017, 03:55 PM
Registered User
What a great job! And thank you for an excellent write up. It is appreciated!
Dec 31, 2017, 04:00 PM
Registered User
I posted this link to the 3DR Solo Brain Transplant group on Facebook. I hope that's okay. You have mentioned you don't use FB. Thanks again!
Dec 31, 2017, 04:04 PM
Registered User
mike_kelly many of us are having issues connecting a third party gimbal to Solo. Ollie was trying to help with Storm32 and the discussion went south unfortunately. Any insite you might have would be appreciated.
Dec 31, 2017, 08:05 PM
Wisconsin
Quote:
Originally Posted by oviking99
mike_kelly many of us are having issues connecting a third party gimbal to Solo. Ollie was trying to help with Storm32 and the discussion went south unfortunately. Any insite you might have would be appreciated.
If you follow the thread on Ardupilot you will find that there are differences on what Pixhawk you are using, what version of arducopter and what version of STorM32 firmware. That is why it is so confusing. OlliW discovered that there were bugs in his original code and bugs in Arducopter in regard to STorM32 gimbals with Ardupilot. There are combinations that work just fine now. But he is endeavoring to fix the bugs in his firmware but the bugs in Arducopter must be fixed also. That is where the hangup is and it may cause some backward problems as those bugs are fixed, if and when they get fixed.

So there is no easy answer because it depends on the exact combination of hardware and firmware you are trying to get running. But you can see in the thread some of the combinations reported to work just fine.
Dec 31, 2017, 10:22 PM
Registered User
Quote:
Originally Posted by mike_kelly
If you follow the thread on Ardupilot you will find that there are differences on what Pixhawk you are using, what version of arducopter and what version of STorM32 firmware. That is why it is so confusing. OlliW discovered that there were bugs in his original code and bugs in Arducopter in regard to STorM32 gimbals with Ardupilot. There are combinations that work just fine now. But he is endeavoring to fix the bugs in his firmware but the bugs in Arducopter must be fixed also. That is where the hangup is and it may cause some backward problems as those bugs are fixed, if and when they get fixed.

So there is no easy answer because it depends on the exact combination of hardware and firmware you are trying to get running. But you can see in the thread some of the combinations reported to work just fine.
Thank you. I have followed many discussions and the last on Discuss where OlliW was trying to fix the discrepancies between the two. Confusion, is correct. It seems every release of Ardupilot the gimbal code is different, not to mention Open Solo, and the last release of the 3DR update. I had a Walkera G-3S working but could not find the solution of pitch reversal as has been a problem of many using Storm32, and others. Guess we'll have to wait and see if the Ardupilot guys standardize their code. I certainly understand the conversation between OlliW and Ardupilot going south. OlliW had the code working in one version, then it got changed in another version. Thanks for the input. It is appreciated.
Dec 31, 2017, 11:13 PM
Wisconsin
Quote:
Originally Posted by oviking99
Thank you. I have followed many discussions and the last on Discuss where OlliW was trying to fix the discrepancies between the two. Confusion, is correct. It seems every release of Ardupilot the gimbal code is different, not to mention Open Solo, and the last release of the 3DR update. I had a Walkera G-3S working but could not find the solution of pitch reversal as has been a problem of many using Storm32, and others. Guess we'll have to wait and see if the Ardupilot guys standardize their code. I certainly understand the conversation between OlliW and Ardupilot going south. OlliW had the code working in one version, then it got changed in another version. Thanks for the input. It is appreciated.
He is more than willing to solve problems but he is just not used to working with an all volunteer-decisions-by-committee group. It is frustratingly slow to get anything done. If you notice in the thread there are those with no pitch reversal problem where everything is working. You may have to copy one of those to get where you want to go.

Or you can do what I do and use Betacopter which works now with STorM32 completely.
Dec 31, 2017, 11:41 PM
Registered User
Quote:
Originally Posted by mike_kelly
He is more than willing to solve problems but he is just not used to working with an all volunteer-decisions-by-committee group. It is frustratingly slow to get anything done. If you notice in the thread there are those with no pitch reversal problem where everything is working. You may have to copy one of those to get where you want to go.

Or you can do what I do and use Betacopter which works now with STorM32 completely.
Thanks for the suggestions.
Jan 01, 2018, 11:49 AM
Registered User
For others who might come across this thread. In all fairness I want to say the Ardupilot folks test their code prior to a major release for the benefit of end users, it takes time to test. They don't get paid either. It is an all volunteer effort. The beneficiaries are the end user, for free. So, I've got to say a big thanks for that!
Jan 01, 2018, 05:37 PM
Wisconsin
Quote:
Originally Posted by oviking99
For others who might come across this thread. In all fairness I want to say the Ardupilot folks test their code prior to a major release for the benefit of end users, it takes time to test. They don't get paid either. It is an all volunteer effort. The beneficiaries are the end user, for free. So, I've got to say a big thanks for that!
It is true. But this has nothing to do with testing. This is a volunteer organization that desperately needs a dictator/boss to keep a bunch of brilliant developers from wandering off on tangents and trying to get version 1 finished before version 9.

OlliW got these things fixed a YEAR ago in his Betacopter fork of Ardupilot.
Mar 22, 2018, 08:21 PM
Registered User
But how well will the fork be maintained?
that is the problem with forks. The new loiter, GPS blending, Smart RTL are all good things that unless Olli is going to continue to maintain his fork will be lost for the sake of a gimbal
Mar 22, 2018, 10:16 PM
Wisconsin
Quote:
Originally Posted by pyratedivet
But how well will the fork be maintained?
that is the problem with forks. The new loiter, GPS blending, Smart RTL are all good things that unless Olli is going to continue to maintain his fork will be lost for the sake of a gimbal
Absolutely true but no CANbus at all and or lousy gimbal support is not an alternative. Betacopter is based on 3.6dev so it has all that stuff already


Quick Reply
Message:
Thread Tools

Similar Threads
Category Thread Thread Starter Forum Replies Last Post
Discussion Bat Bot ,the holy grail of flaping fly Christian Lucas Ornithopters 10 Feb 09, 2017 05:36 PM
Link Monty Python and the Holy Grail Quiz Park_Flyer Life, The Universe, and Politics 19 Aug 13, 2016 11:25 PM
Discussion Search for the "Holy Grail" ESC. Oldgazer Multirotor Drone Power Systems 5 Jun 03, 2016 11:14 AM
Mini-HowTo equally separated 6 positions on DX7 using 1 mix, I think I've got the holy grail ChibiHeli Multirotor Drone Talk 0 Mar 21, 2016 06:31 AM
Discussion The holy grail for quad flight time. obinolson Multirotor Drone Talk 12 Sep 11, 2012 08:43 PM