3D Robotics


If you answered yes to both of those questions, then this post is for you.

I've always had a special fondness for the Sony QX-1 and decided to rig up a contraption that would let me fly her with Solo. For both of you on DIYDrones who are not familiar with the QX-1, it is a light (180 g body), high resolution (20MP), endowed with a large sensor (APS-C, 15x larger than GoPro) body that receives Sony E-mount lenses (including zoom lenses), and can be controlled by an extensive WiFi API.


First, I had to learn how to control the camera via the WiFi API. Jaime Machuca, of Droidika, wrote a nice MAVLink wrapper for the QX-1 API, but I never quite could get it going on Solo. Instead, I deployed the pysony API, which I installed on a RasPi that I taped to Solo's belly. This RasPi connected to QX-1's WiFi upon boot, ingested the mjpeg QX-1 livestream, pipe it over HDMI to Solo App, and triggered the QX-1 to begin shooting. I could control all other QX-1 functions on the ground, but I didn't have an easy way to integrate those controls into Solo herself.


Next, I had to gimbal the camera. At 280g with the 20mm flat lens and a bit more with the 16-50mm Power Zoom, a brushless gimbal was probably out of the question and would have been much more difficult and expensive to build up. Because I was mostly interested in stills, I didn't particularly care about smooth video, but rather wanted a horizontal horizon and the ability to tilt the camera. I selected the RC Timer CM102, which had no problem stabilizing the camera reasonably well and holding the desired pitch.


These two pieces combined succeeded into turning Solo into a reasonable, but kludgy solution to capture truly professional aerial images for either general consumption or the generation of high quality maps or models. However, while this project is functional, it is incomplete. This feat of engineering contains no fewer than two PixHawks, six batteries, 20+ feet of cable, two companion computers, five ESCs, 10+ feet of strapping tape, and two transmitters.

I would love some additional feedback and support from the community to potentially turn this weekend project into something that any Solo owner could enjoy. I have a few full resolution images from both the QX-1 and GoPro along with a video of this thing in action (on my desk) on my blog, to help you answer these questions.

1) Is this something you would generally want?

2) Is a servo gimbal a problem? Servos will never succeed at delivering high quality video, but seem quite capable of stabilizing the camera for stills.

3) Would anyone be willing to help me integrate pysony and appropriate WiFi boot up scripts into the iMX6, eliminating the need to carry a second companion computer?

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones


  • Is there a chance that we can connect the camera stream to the Pixhawk 2 Compoanion computer without extra hardware? I would like to make this as easy to connect as possible.

    If this is not possible, what is the easiest way to connect the stream to the Tower app?
  • @Simon Wood
    Outstanding good sir! This is just what I needed! Hopefully this will solve my issues. I will see if I can't give this a go this next week or so, but thank you really this helps a lot.
  • demo...

  • @Luke

    I have a present for you... :-)

    Been working on getting a script for LiveView for the Pi (using pygame rather than GTK of previous example). It outputs to console _or_ X11.


    At present I'm seeing stuttering, but I suspect that this is due to my specific WiFi setup.

    You can not change the size of the LiveView sent from the camera (API has a call for 'L', but yet to find anything that it works on). Start the script with '-z' to zoom image full screen (at extra CPU usage) or just set the Pi to have smaller console (in '/boot/config.txt').

    sony camera remote api . Contribute to mungewell/sony_camera_api development by creating an account on GitHub.
  • So I got the QX1 working with my solo and Pi, however while I can trigger and all other functions through the Pi, I cannot figure out for the life of me how to get the Live Video from the camera to fit the screen. I can only get the video to show up as a 640x480 window, but have no way to make it full screen. I can in the python script adjust the size of the window it shows up in, but that has no effect on the video source itself. And while that may not seem that bad, since its giving an HDMI video out, that means this video source is only one third of the screen and on a small screen like an iPhone its just not usable. If any one can give me advice I would appreciate it.

  • Hi Jeremy

    does your wifi module and camera mount ready for SOLO ?

  • Comment by Philip 10 minutes ago
    Solo has no issues carrying that sort of weight.
    As you see on top image Daniel has installed all of this part on solo even he used zoom lens
  • Comment by George Raber 36 minutes ago There is no need to carry the gimbal and a QX1 (like in the picture) so Solo handles the 76 + 216 just fine.  I designed a little attachment that links it to the same connection as the static GoPro mount, and screws into the tripod mount on the camera and had it printed for $4)

    would you please send an image from installed QX1 and this part ?

    thank you

  • Developer
    Solo has no issues carrying that sort of weight.
  • There is no need to carry the gimbal and a QX1 (like in the picture) so Solo handles the 76 + 216 just fine.  I designed a little attachment that links it to the same connection as the static GoPro mount, and screws into the tripod mount on the camera and had it printed for $4).3702165373?profile=original

This reply was deleted.