A simple approach to digital solargraphy with Sony mirrorless



Ultra-long exposure images or Solargraphy are photos that are taken over the span of a few hours, days or weeks or months. Usually, they include the bright arcs the sun takes over the course of at least one sunny day.

In the case of analog Solargraphy images, the exposure often lasts from solstice to solstice for half a year. They show all arcs from the lowest to the highest point of the sun in the sky. Doing even a single-day exposure with a digital camera, though, requires some special software and hardware.

I built a dedicated camera for this in the past. I also made a video about it, and wrote a blog post.

While I am pretty happy with the camera, its image quality and versatility are a bit limited. Framing an image when setting up the camera is cumbersome¹, and the sensor module does not output RAW files compatible with Adobe Lightroom.

A week before I went on vacation recently, I thought about how I could get my trusty mirrorless Sony a6000 ($399.95) to do the same job as the cameras I’ve built before.

A Quick Recap

To create a digital Solargraphy image, two image sequences are needed:

One sequence of correctly exposed images that include metadata (shutter speed, f-number, ISO)

(At least) one sequence of extremely underexposed images that record very little light so that only the sun itself is visible

The Main Problem

Remote control via PTP with gPhoto2 is really slow. Doing a full cycle, adjusting the shutter speed from 1” to 1/4000 and back to 1” takes 42.16 seconds (on my Sony a6000, other cameras may handle those operations faster). Adding the time to expose the photo and download it is way over a minute.

But to avoid ending up with a sun streak that looks like a string of pearls – at most every 60s – an image needs to be taken, and that’s non-negotiable. On top of that, there is a bug in the camera firmware (I’ll be nice and assume it’s a bug/an oversight).

If you request the built-in exposure meter values, the software always reports 0, so the camera would need to run in manual mode, and one would need to roll a DIY auto-exposure algorithm (not a lot of fun).

So, gPhoto2 is off the table, sadly. There is an alternative: remote control over wifi. The a6000 features a (very old) barebones Android system that can be launched from the camera menu and executes some Sony apps. There never was a way to use regular Android apps or write your own software; only the so-called PlayMemories store by Sony offered some paid and free Apps (until Sony shut it down and there was no way to download the apps again that you already paid good money for)².

One of the apps running on the device (the SmartRemote app) does offer the remote control functionality (for some reason, I tried to find out how that actually works, and it’s a web server offering a Rest API using Java Servlets. And that stuff was already horribly old when I enrolled for my first semester…).

Anyway, trying to set up a remote control over Wi-Fi – which is supposed to be reliable and stable over the course of several hours – is not something I intend to waste a lot of time with.

A simple question – What is the least complicated way of getting things done?

Make the camera switch modes manually. The camera can be configured separately in manual mode and in aperture-priority mode, and those configurations are not reset when switching modes. Switching modes, however, can not be done in software. The only way to achieve that is to rotate the mode wheel on top of the camera. So we’ll do exactly that. Mechanically. For each image.

The first prototype was a bit rough, but overall, the required hardware and software are surprisingly simple.

A 3D-printed piece of plastic is glued with superglue to the mode wheel on top of the camera.

A 3D-printed “hat” with a tiny hobby servo motor designed for remote-controlled planes is placed on top of it. A microcontroller rotates the mode wheel to the correct position and triggers the shutter via the remote cable.

I cobbled together the hardware and software in a matter of days while planning my vacation and took this photo on Heligoland:

(That’s about 4 hours of a nice sunny evening compressed into a photo)

The first prototype used hand-soldered wire and a 2.5mm audio jack for the trigger cable. It looked pretty rough, and there was no way to tell how many exposures had already been made.

Afterwards, I spent a bit of time creating some “proper” hardware on a printed circuit board, realized it’s slightly more convenient if there is a display, and improved the housing a bit.

Does it work?

Yes. Surprisingly well, and all things considered, it is probably the easiest method of taking a “quick” solargraphy image. The downsides:

You’ll burn through a lot of battery power

The camera is not weatherproof

It’s not concealed. You will need to babysit the camera so it won’t get wet or stolen, and meanwhile, there’s a high chance you will need to fend off some questions from curious bystanders

What do you need if you want to build your own:

The willingness to superglue a plastic part to your camera

A remote trigger cable for Sony cameras with a 2.5mm headphone plug

Raspberry Pi Pico microcontroller (buy here)

The circuit board with a 2.5mm headphone jack to trigger the camera and an SG90 hobby servo motor that rotates the program selection wheel of the camera

A few 3D-printed parts and M2 screws

Dummy FP-FW50 battery with a DC barrel jack connector (buy here)

A battery pack for your camera. I am using the TrustFire EB03 Battery Box. That’s a battery container for a total of six 18650 lithium-ion batteries. The batteries are in a 2S3P configuration (three batteries are wired up in parallel to triple the capacity, and this is done two times to double the voltage output). The nice feature of this battery pack is an integrated 5V converter with a USB plug so it can power the microcontroller.

A charger for 18650 batteries

The CompressorCam software for post-processing image stacks.

Files:

Fusion360/Step CAD files can be found in the GitHub repository

EasyEDA files (including BOM) for the PCB can be found on the EasyEDA project page

¹ The camera has no display. One needs to turn it on manually and then screw the weatherproof enclosure shut. While the camera can create an ad-hoc wifi network and stream live view data to a website you can open on your phone, it’s quite a hassle.

² Long tangent: Of course, the sensible option would have been to issue a firmware update that bundles all of the few apps that Sony had in this weird app store so anyone would have access indefinitely. No value would have been lost to customers or Sony themselves since they obviously have no intention of charging any money for these apps from now on, but I guess that’s not how the world works for MBAs in a large corporation. Fun fact: Sony is still selling the a6000, but obviously now as a product that loses and not gains features over time. Anyway, luckily, someone reverse-engineered enough of the whole thing and offers a framework for writing your own apps plus a toolchain to upload them: https://github.com/ma1co/OpenMemories-Tweak

We will be happy to hear your thoughts

Leave a reply

Shoparoon
Logo
Compare items
  • Total (0)
Compare
0
Shopping cart