Skip to the content
2 layers70 × 55 mmOpen lightning trigger, the printed circuit board in 3D

Open lightning trigger

conifarad/open-lightning-trigger

A low-cost optical camera trigger for lightning and other phenomena

Size
70 × 55 mm
Copper layers
2
Thickness
1.6 mm
Parts
50
Nets
39
Pads
136
Tracks, vias
239, 17
Pours
1
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
8 Jun 2026
Updated
20 Sep 2026

Overview

Open lightning trigger is an open-source printed circuit board by conifarad, from the conifarad/open-lightning-trigger repository on GitHub, published under the CERN-OHL-P-2.0 licence. It is a 2-layer board of 70 × 55 mm with 50 parts on 39 nets, routed with 239 tracks and 17 vias.

It is built around the ATTINY84A-SSF, LTV-827S and SJ1-2503A. Its parts include 19 resistors, 10 diodes, 7 capacitors, 3 ICs and 3 switches. It belongs with the AVR (ATmega, ATtiny) boards of this library.

Main components

3

README

README.md

open-lightning-trigger

A low-cost optical camera trigger for lightning and other phenomena, based on the ATTiny84A microcontroller.

⚠️ This is a beta version. It has only been minimally tested to confirm basic functionality. Build at your own risk!

Sample photo

Cover photo

Introduction

I wanted a way to trigger my Canon DSLR on lightning, fireworks, and other optical flashes; however, current trigger systems cost hundreds of dollars. The goal of this project is to create a low-cost trigger system that can be assembled by anyone with minimal SMD soldering experience (such as myself) and access to a 3D printer and an Arduino for programming.

I have only tested the trigger with the Canon EOS T5i. However, by using a different wire to connect the camera and trigger, it should be adaptable to numerous camera models. See the Assembly doc for details.

Instructions

See docs/assembly.md for information on assembly, programming, etc.

Usage

The trigger takes 2x AAA batteries; either alkaline or NiMH (rechargeable) works.

Attach the trigger to the hotshoe mount of your camera and connect the output jack to the wired remote input of your camera using an appropriate cable.

Operation diagram

The trigger is operated as follows:

  • Turn on the device using the on/off switch on the right. The green ready LED indicates that the device is powered on and ready to trigger.
  • Enable/disable the output using the output enable switch on the left. The output enable LED indicates when the output is enabled. When the output is disabled, the trigger will operate normally but the camera shutter will not activate; this is useful when adjusting the camera to avoid false triggers.
  • The current flash intensity is indicated by how many red LEDs are lit. After a flash, the LEDs remain lit for around 1 second.
  • Press the front button to set the sensitivity level (the minimum flash intensity to activate the trigger). When the device is triggered, the orange focus and shutter LEDs light up to indicate a trigger event.
  • Hold the front button for about 1 second to enable/disable hold focus mode; in this mode, the focus LED remains on to indicate that the focus/exposure signal going to the camera is continuously active. This is equivalent to continuously holding the shutter button halfway. In limited tests, this seems to prevent the camera from "falling asleep" and improves shutter lag significantly, but I have not tested whether this impacts camera battery life.
  • Holding the front button for about 6 seconds enables debugging mode; see the Assembly doc for details.

Demos

See this video for a demo of the trigger on nearby fireworks.

Technical notes

The most difficult design decision of this project was determining the necessary bandwidth of the amplifier stages. To estimate an acceptable bandwidth, I used data scraped from graphs of lightning illuminance over time by Quick and Krider (2013) and simulated different filtering schemes on these waveforms. The current amplifier bandwidth of approximately 110-4400 Hz was chosen to preserve peak heights above an arbitrary threshold while hopefully eliminating the effects of most natural lighting variations (~1 Hz). Unfortunately, artificial light sources exhibiting even slight mains-frequency oscillations are still able to interfere with the sensor.

A KiCad project with simple AC/transient simulations of the amplifier is found in the simulation folder.

Lessons learned

Should there be a version 2 of this project, I hope to integrate many changes:

  • Switch microcontroller platforms: The ATTiny has very limited processing power, especially when running on a battery voltage as low as 2.6 V (in the case of NiMH rechargeable cells) which limits clock speed to 8 MHz. In a future revision I hope to switch to an STM32 or similar platform for much faster processing. Doing so would also make a direct USB connection possible, bypassing the need for an external Arduino or other programming board and making serial debugging and data logging much easier.
  • Digital signal processing: With a faster processor, the sample rate (and analog amplifier bandwidth) could be increased, with more of the filtering handled digitally. This would not only make the design more adaptable, but also allow it to be used across a full range of audio frequencies—meaning it could be configured as a USB microphone to convert light into sound.
  • Better integrate PCB and enclosure design: Numerous difficulties the design of the enclosure were caused by poor choices in designing the PCB, which need to be rectified in version 2.
  • Eliminate microphonic effects: The trigger is currently very sensitive to mechanical bumps, interference from the camera shutter, etc. Improvements to the analog circuitry are needed to address these issues.

License

Files in the enclosure, hardware, and simulation folders are licensed under CERN-OHL-P v2. See LICENSE-CERN-OHL-P for details.

The above readme as well as files in the docs folder are licensed under CC BY-SA 4.0.

All other files are under the MIT license. See LICENSE-MIT for details.

Parts

50
QtyValueFootprintReferences
111.5kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11
5LED_REDconifarad:LED_D3.0mm_Horizontal_O6.35mm_Z2.0mm_NoSilkD2, D3, D4, D5, D6
4470Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR12, R14, R18, R19
34.7uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC1, C3, C5
3LED_AMBERconifarad:LED_D3.0mm_Horizontal_O6.35mm_Z2.0mm_NoSilkD7, D8, D9
218kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR13, R15
21nCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC2, C4
21uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC6, C7
2470kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR16, R17
2SW_SPDTconifarad:SW_SLW-1298856-5A-RA-N-D_customSW1, SW3
1ATtiny84A-SSPackage_SO:SOIC-14_3.9x8.7mm_P1.27mmU2
1AVR-ISP-6Connector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalJ2
1Batteryconifarad:BatteryHolder_Keystone_2468_2xAAABT1
1D_Photoconifarad:LED_D3.0mm_Horizontal_O6.35mm_Z2.0mm_NoSilkD10
1LED_GREENconifarad:LED_D3.0mm_Horizontal_O6.35mm_Z2.0mm_NoSilkD1
1LTV-827SPackage_DIP:SMDIP-8_W9.53mmU3
1Opamp_DualPackage_SO:SOIC-8_3.9x4.9mm_P1.27mmU1
1SJ1-2503Aconifarad:SAMESKY_SJ1-2503AJ1
1SW_Pushconifarad:SW_TS11-674-153-BK-160-RA-DSW2
1TP_GNDTestPoint:TestPoint_THTPad_D2.0mm_Drill1.0mmTP5
1TP_PDTestPoint:TestPoint_THTPad_D2.0mm_Drill1.0mmTP1
1TP_REFTestPoint:TestPoint_THTPad_D2.0mm_Drill1.0mmTP4
1TP_ST1TestPoint:TestPoint_THTPad_D2.0mm_Drill1.0mmTP2
1TP_ST2TestPoint:TestPoint_THTPad_D2.0mm_Drill1.0mmTP3

Similar boards

  • 4 layers100 × 100 mmPyroDirector, the printed circuit board in 3D

    PyroDirector

    alex-sage/pyroPCB

    KiCad files for the PyroDirector

    92 parts
  • 2 layers30 × 30 mmAudio, the printed circuit board in 3D

    Audio

    ArgonautGit/kicad-projects

    Just some Kicad projects I've worked on over the years. Most are unfinished or don't work well.

    27 parts
  • 2 layers26.5 × 55.5 mmCgf.CameraControl.Hardware, the printed circuit board in 3D

    Cgf.CameraControl.Hardware

    sensslen/Cfg.CameraControl.Hardware

    Hardware needed to control a lanc camera with a PTZ head

    30 partsMIT
  • 2 layers94.8 × 73.1 mmKICAD lightning trigger, the printed circuit board in 3D

    KICAD lightning trigger

    zijianzhu0/lightning_trigger

    Lightning trigger for Nikon DSLR

    38 parts
  • 2 layers81.8 × 92 mmEndeavour, the printed circuit board in 3D

    Endeavour

    petrmikheev/endeavour

    Endeavour - open-source FPGA board and SoC ==========================================

    78 parts4
  • 2 layers50.3 × 50 mmKa keyer mainpcb, the printed circuit board in 3D

    Ka keyer mainpcb

    ea4eoz/ka-keyer

    A simple keyer for the high speed CW operators

    41 parts6GPL-3.0
  • 2 layers100.3 × 71.1 mmPyblockplc topseite, the printed circuit board in 3D

    Pyblockplc topseite

    pyplc/pyblockplc

    python plc automation fbd- programming with esp32

    73 parts2

Questions

How big is the Open lightning trigger PCB?

It measures 70 × 55 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Open lightning trigger use?

50 parts, built around the ATTINY84A-SSF, LTV-827S and SJ1-2503A. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Open lightning trigger KiCad files?

From the conifarad/open-lightning-trigger repository on GitHub, at the commit this page was made from: the board is hardware/open_lightning_trigger/open_lightning_trigger.kicad_pcb and its schematic hardware/open_lightning_trigger/open_lightning_trigger.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Open lightning trigger design in my own project?

Its repository publishes it under the CERN-OHL-P-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).