
Light tracker dfm
Solo dual-axis light tracker on ATmega328P — MOSFET H-bridges, fixed-point Kalman, UART telemetry, 4-layer KiCad PCB.
- Size
- 74 × 49.5 mm
- Copper layers
- 4
- Thickness
- 1.6 mm
- Parts
- 54
- Nets
- 45
- Pads
- 167
- Tracks, vias
- 214, 25
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 28 Jul 2026
- Updated
- 28 Oct 2026
Overview
Light tracker dfm is an open-source printed circuit board by nmahadevan12, from the nmahadevan12/Light-Tracker repository on GitHub. It is a 4-layer board of 74 × 49.5 mm with 54 parts on 45 nets, routed with 214 tracks and 25 vias.
It is built around the ATMEGA328P-PU, OP495GSZ and IRF9540NS, with the RFP40N10LE among its other parts. Its parts include 13 resistors, 8 diodes, 8 transistors, 6 connectors and 5 capacitors. It belongs with the interfaces and adapters boards and the AVR (ATmega, ATtiny) boards of this library.
Main components
4ATMEGA328P-PU
DIP-28-300mil-40℃~+85℃ 1.8V~5.5V 10bit 1KB 20MHz 23 2KB 32KB 8 Bit AVR Built-in FLASH DIP-28-300mil Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)OP495GSZ
SOIC-16-300mil-40℃~+125℃ 110dB 18mA 1nA 20nA 300uV 30V/ms 3V~36V 4 51nV/√Hz@1kHz 5uV/℃ Built-in compensation Rail-to-rail output SOIC-16-300mil Operational Amplifier ROHSAnalog DevicesOperational AmplifierIRF9540NS
TO-263MOSFETsMinosRFP40N10LE
TO-220AB-55℃~+175℃ 1 N-channel 100V 150W 180nC@10V 200pF 3V 3nF 40A 40mΩ@5V 500pF N-Channel TO-220AB MOSFETsonsemiMOSFETs
README
README.md2-Axis Light Tracker
A battery-powered dual-axis light tracker on an ATmega328P. Bare-metal C drives DC motors through MOSFET H-bridges, with LDR sensing, fixed-point Kalman filtering, Hall-effect tilt limits, and UART telemetry to a Python logger.
Demo
Features
- Bare-metal dual-axis drive: ATmega328P C firmware driving motors with MOSFET H-bridges.
- Tilt safety: LDR array with Hall-effect and potentiometer feedback to keep tilt within safe limits.
- Fixed-point Kalman + UART: cuts ADC noise from 3 LSBs to < 1 LSB without an FPU; streams results over a register-level 115.2 kbps UART driver.
- 4-layer KiCad PCB: separate power, ground, and signal layers; widened power traces to reduce voltage drop.
Repo layout
.
├── ATmega328P Datasheet/
├── Images/
├── Kicad Files/ # Schematics + PCB
├── src/
│ ├── IoT Logging/ # Python UART logger (folder name is historical)
│ └── Source Code/ # AVR C firmware
└── README.mdMore detail
Design notes, gallery, and interactive PCB: nmahadevan12.github.io/projects/light-tracker/
Parts
54| Qty | Value | Footprint | References |
|---|---|---|---|
| 11 | TestPoint | TestPoint:TestPoint_Pad_1.0x1.0mm | TP1, TP2, TP3, TP4, TP5, TP7, TP8, TP9, TP10, TP11, TP12 |
| 8 | 1N4007 | Diode_THT:D_DO-41_SOD81_P2.54mm_Vertical_AnodeUp | D3, D4, D5, D6, D7, D8, D9, D10 |
| 5 | 10k 1% | Resistor_SMD:R_0805_2012Metric | R4, R6, R8, R9, R20 |
| 4 | 1k 1% | Resistor_SMD:R_0805_2012Metric | R15, R16, R18, R19 |
| 4 | 40k 1% | Resistor_SMD:R_0805_2012Metric | R5, R7, R10, R21 |
| 4 | IRF9540N | Package_TO_SOT_THT:TO-220-3_Vertical | Q3, Q4, Q7, Q9 |
| 4 | RFP40N10 | Package_TO_SOT_THT:TO-220-3_Vertical | Q5, Q6, Q8, Q10 |
| 3 | 100n 1% | Capacitor_SMD:C_0805_2012Metric | C1, C2, C5 |
| 2 | 12p 1% | Capacitor_SMD:C_0805_2012Metric | C3, C4 |
| 1 | 9.216M | Crystal:Crystal_SMD_5032-2Pin_5.0x3.2mm | Y1 |
| 1 | ATmega328P-P | Package_DIP:DIP-28_W7.62mm_LongPads | U1 |
| 1 | BATTERIES + MOTOR OUTPUTS | TerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-7-5.08_1x07_P5.08mm_Horizontal | J3 |
| 1 | CAPACITIVE SENSOR | Connector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_Vertical | J7 |
| 1 | FTDI CABLE | Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_Vertical | J6 |
| 1 | HALL SCREW TERMINAL | Connector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_Vertical | J2 |
| 1 | ISP | Connector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_Vertical | J8 |
| 1 | LDR + POT | Connector_PinSocket_2.54mm:PinSocket_1x09_P2.54mm_Vertical | J1 |
| 1 | OP495GS | Package_SO:SOIC-16W_7.5x10.3mm_P1.27mm | U3 |
Questions
How big is the Light tracker dfm PCB?
It measures 74 × 49.5 mm and has 4 copper layers, 1.6 mm thick.
What parts does the Light tracker dfm use?
54 parts, built around the ATMEGA328P-PU, OP495GSZ, IRF9540NS and RFP40N10LE. 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 Light tracker dfm KiCad files?
From the nmahadevan12/Light-Tracker repository on GitHub, at the commit this page was made from: the board is Kicad Files/light tracker dfm/light tracker dfm.kicad_pcb and its schematic Kicad Files/light tracker dfm/cp6-raw_Sensor/cp6-raw_Sensor.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Light tracker dfm design in my own project?
Its repository states no licence, so its author keeps all rights: ask nmahadevan12 before reusing the design.
Similar boards
- 2 layers55 × 485 mm

- 2 layers96.8 × 97 mm

Psoc5power
profdc9/DRSSTC-PCB-Pack
A pack of PCBs for a dual resonant solid state tesla coil setup. Pretty much everything you need.
133 parts59 - 2 layers

- 2 layers102 × 72 mm

HF PA Combined
kholia/HF-PA-v6
RF "Lego" blocks. Quite-Linear HF broadband RF amplifier experiments for higher bands.
40 parts11 - 4 layers98.5 × 82 mm

Pico2lvds
ceteras/PicoLVDS
Tested with B089AW01-V.0 and HSD089IFW1-A00-V1.0 on a breadboard. I'm sure it will work with other displays from old netbooks.
43 parts7GPL-3.0 - 2 layers99.7 × 80 mm

6502fast3io
gfoot/fastpdip6502
Fast PDIP-only 6502-based homebrew computer - code and hardware design sources
56 parts7Unlicense - 2 layers50.8 × 38.1 mm

Powercontrol
gfoot/powercontrolcircuit
A soft power supply circuit with tunable overcurrent cutoff
19 parts6Unlicense - 4 layers92 × 95 mm
