This project is a dedicated WiFi client and remote shutter for Olympus OM-D cameras. It simply connects to the camera, and then you can use the button to fire the camera shutter. I've only tested this with my OM-D E-M5 Mark III camera, but I believe it will work with any OM-D camera that uses WiFi for its remote shutter application.
In this repository, you'll find schematics and PCB designs, stl files, and the firmware you need.
The hardware is based around the ESP32. It uses an LiFePO4 battery to provide power to the ESP32. I chose this battery because it provides 3.2v which means I don't need a voltage regulator for the ESP32. The schematic integrates a recharging circuit, so you can recharge the battery via USB C.
Below are the necessary parts:
| Quantity | Part | Value | Size |
|---|---|---|---|
| 1 | Battery Holder | BatteryHolder_Keystone_1042_1x18650 | |
| 1 | Battery | ||
| 2 | Capacitor | 1uf | 0402 |
| 1 | Capacitor | 22uf | 1206 |
| 1 | Capacitor | 0.1uf | 1206 |
| 2 | LED | 1206 | |
| 1 | USB C connector | USB_C_Receptacle_Amphenol_10164359-3A | |
| 1 | Resistor | 82k | 0402 |
| 1 | Resistor | 3k | 0402 |
| 4 | Resistor | 10k | 1206 |
| 1 | Resistor | 70k | 0402 |
| 1 | Resistor | 2.3k | 0402 |
| 2 | Resistor | 5.1k | 1206 |
| 1 | Power Switch | ||
| 2 | Programming Switches | SW_SPST_PTS526 | |
| 1 | Double Action Switch | EVPAX-A1A | |
| 1 | NTC Thermistor | 10k NTC | 1206 |
| 1 | Battery Charger | BQ25170 | WSON-8-1EP_2x2mm_P0.5mm_EP0.9x1.6mm |
| 1 | ESP32 |
You'll find the gerber files in the pcb folder. Also, I used 10k resistors for the LEDs, but I think it made the LEDs too dim, so maybe 1k is better. The LEDs are used to indicate charging status, so I don't think they actually matter too much.
Here's a couple photos of the finished PCB:
The firmware is in the firmware folder. It's a standard ESP IDF project. In order to flash the ESP32, I used a POGO Pin Clip connected to a USB to Serial board.
Once you have esp-idf installed, you can install the firmware like this:
$ idf.py build flash
Of course, make sure to press the BOOT and RST buttons to put the ESP32 in to programming mode.
You can find STL files for the housing in the housing folder.
Just print top.stl and bottom.stl and the PCB should fit inside.
The housing requires four M2 x 25mm bolts, and four 4mm hex nuts.
The PCB should fit in the housing like this:
When you first turn the clicker on, it will create a WiFi hotspot with the SSID CameraClicker and the password cameraclicker.
My recommendation is to:
- Turn on the camera, then enable WiFi client mode
- Turn on the camera clicker
- Connect to the camera clicker with your phone
- Configure the camera clicker with the camera's WiFi settings (they will be displayed on the camera)
- Use it!
The camera clicker will remember the camera's WiFi connection information, so you only need to configure it once. If it can't connect to the camera for any reason, it will eventually start the WiFi hotspot again so that you can reconfigure it.



