This is a tiny remote control for Sony Alpha cameras.
The hardware platform is a M5StickC-Plus, which is a DIY device with a ESP32-PICO inside, along with a colour LCD screen, rechargable battery, some buttons, and a few other features.
This remote combines the features of other simple camera remotes, plus many complex functions that automates some tasks that photographers would like to do. It communicates wirelessly with the camera via Picture Transfer Protocol, mostly reverse engineered by spying on Sony's own Imaging Edge Remote application with Wireshark. A second protocol uses HTTP and supports more cameras but has less features.
This GitHub repo contains the C++ source code (and graphics files) that can be compiled and loaded into the M5StickC-Plus, so anybody can create this remote.
Supported camera models: A1, A6600, A6000, RX100M4, RX0M2
Untested but theoretically can support over PTP protocol: A7SM3, A9M2, A7M4A, A7RM4, A7C, A7M4, ZV-E10, listed on https://support.d-imaging.sony.co.jp/app/sdk/en/index.html
Untested but theoretically can support over HTTP protocol: https://developer.sony.com/develop/cameras/api-information/supported-features-and-compatible-cameras
The fun part about this project for me is to create a usable user interface on a device with only two buttons plus an IMU.
The camera does not re-establish a broken connection. If the remote is turned off (or disconnected for other reasons), you need to turn off the camera and turn it back on (after the remote is turned back on).
The features that can change shutter speed are not reliable. The camera takes a long (and variable) time to register a remote command to change the shutter speed. By long, I mean sometimes up to several seconds, or never.
Battery life is a bit short. Do not use it for intervalometer purposes without an external power source. Also, using Wi-Fi for intervalometer is ill-advised (reliability and latency issues), use a real shutter release cable if possible.
Putting a full frame camera in APS-C mode will disable a ton of features from working.
Only Wi-Fi 2.4 GHz mode is supported.
Other issues will be logged in the Issues tab of GitHub.
https://user-images.githubusercontent.com/1427911/187117478-654adc80-a0a3-48cf-8b0b-643bfd7b2884.mp4
https://user-images.githubusercontent.com/1427911/187117818-dda28b7c-d5e2-45bd-96e9-6ff3c6a178e0.mp4
https://user-images.githubusercontent.com/1427911/195257775-e0213d1b-5642-413e-9474-2736aee4f98b.mp4
https://user-images.githubusercontent.com/1427911/195407559-9cf6f15e-1cde-4ad6-bc44-528534690053.mp4