Skip to the content
PCBKitNew board
4 layers12.5 × 15 mmLux sensor, the printed circuit board in 3D

USB ambient light sensor based on a CH552G MCU and VEML7700 ALS, with:

Size
12.5 × 15 mm
Copper layers
4
Thickness
1.6 mm
Parts
16
Nets
22
Pads
66
Tracks, vias
150, 20
Pours
5
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
10 Apr 2026
Updated
7 Jun 2026

Overview

Lux sensor is an open-source printed circuit board by benhoff, from the benhoff/lux-sensor repository on GitHub. It is a 4-layer board of 12.5 × 15 mm with 16 parts on 22 nets, routed with 150 tracks and 20 vias.

It is built around the CH543D and VEML7700-TT. Its parts include 6 capacitors, 4 resistors, 2 ICs, 2 connectors and 1 diode. It belongs with the sensors and measurement boards and the 8051 (CH55x, STC, AT89) boards of this library.

Main components

2

README

README.md

Lux Sensor

USB ambient light sensor based on a CH552G MCU and VEML7700 ALS, with:

  • KiCad hardware design in the repo root
  • minimal CH552 firmware that exposes readings over USB CDC ACM
  • optional Linux host daemon that maps lux readings to panel brightness

Repository Layout

  • lux-sensor.kicad_sch, lux-sensor.kicad_pcb, lux-sensor.kicad_pro: hardware source
  • firmware/: CH552 firmware and build rules
  • host/: Linux daemon and service example
  • BOM.csv, BOM_PCBWay.csv, BOM_NOTES.md: purchasing and assembly notes
  • *.pretty/, *.kicad_mod, *.kicad_sym: local footprint and symbol assets
  • CH552DS1.pdf, VEML7700.pdf: datasheet references used during design
  • SCHEMATIC_REVIEW.md: electrical review notes and known design considerations
  • POWER_PASSIVES_REVIEW.md: CH543D USB-A 5 V power passive recommendations

Generated fabrication exports and firmware build artifacts are intentionally ignored by Git.

Hardware

Core parts:

  • CH552G
  • VEML7700-TR
  • USB-A plug
  • local decoupling capacitors and I2C pull-ups

The board is intended to enumerate as a USB serial device and stream lines such as:

text
raw=2468 lux=123.40

Firmware

Build requirements:

  • sdcc
  • make
  • packihx
  • objcopy

Build:

sh
make -C firmware

Upload with the factory bootloader tooling:

sh
make -C firmware upload

Host Daemon

The Linux-side daemon reads the CDC ACM stream and writes brightness through the kernel backlight interface.

Dry run:

sh
python3 host/luxd.py --dry-run --verbose

Run against the real backlight node:

sh
sudo python3 host/luxd.py

See firmware/README.md and host/README.md for the full firmware and daemon details.

Parts

16
QtyValueFootprintReferences
21uFCapacitor_SMD:C_0603_1608MetricC4, C5
24.7kResistor_SMD:R_0603_1608MetricR1, R2
1100nFCapacitor_SMD:C_0805_2012MetricC3
1100nFCapacitor_SMD:C_0603_1608MetricC2
110kResistor_SMD:R_0603_1608MetricR3
110uCapacitor_SMD:C_0603_1608MetricC1
110uCapacitor_SMD:C_0805_2012MetricC6
14.7kResistor_SMD:R_0402_1005MetricR4
1CH543Dch543:QFN-20-1EP_3x3mm_P0.4mm_EP1.7x1.7mm_CH543DU2
1Conn_01x05_PinConnector_PinHeader_1.27mm:PinHeader_1x05_P1.27mm_VerticalJ2
1Jumper_2_OpenJumper:SolderJumper-2_P1.3mm_Open_Pad1.0x1.5mmJP1
1LEDLED_SMD:LED_0603_1608MetricD1
1USB_AConnector_USB:USB_A_Molex_48037-2200_HorizontalJ1
1VEML7700-TTC1850416:ALS-SMD_4P-L6.8-W2.4_VEML7700-TT_TopViewU1

Questions

How big is the Lux sensor PCB?

It measures 12.5 × 15 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Lux sensor use?

16 parts, built around the CH543D and VEML7700-TT. 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 Lux sensor KiCad files?

From the benhoff/lux-sensor repository on GitHub, at the commit this page was made from: the board is lux-sensor.kicad_pcb and its schematic lux-sensor.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Lux sensor design in my own project?

Its repository states no licence, so its author keeps all rights: ask benhoff before reusing the design.

Similar boards

  • 2 layers60 × 30 mmTd free, the printed circuit board in 3D

    Td free

    mawoka-myblock/td-free

    Measure the TD of your filament easily

    24 parts60EUPL-1.2
  • 4 layers81.2 × 81.2 mmView base, the printed circuit board in 3D

    View base

    SeedLabs-it/smartknob-hardware

    PCB and CAD files for smartknob devkit

    259 parts47
  • 4 layers239.5 × 239.5 mmBroadcast clock, the printed circuit board in 3D

    Broadcast clock

    espena/broadcast-clock

    Digital precision studio/broadcast masterclock with WiFi configuration, acts as local NTP server with accurate GPS time sync.

    440 parts28GPL-3.0
  • 2 layers38.3 × 20.8 mmESP AHT10-Extra, the printed circuit board in 3D

    ESP AHT10-Extra

    c-/ESP-AHT10-Extra

    minimalist ESP-8266 temperature/humidity sensor

    27 parts20
  • 2 layers36.8 × 90.9 mmBwlr3d, the printed circuit board in 3D

    Bwlr3d

    teapotlaboratories/bwlr3d

    Teapot BWLR3D: Asset Tracker and Environmental Sensor with Solar Energy Harvesting

    108 parts18MIT
  • 4 layers100 × 100 mmSolar panel side Z, the printed circuit board in 3D

    Solar panel side Z

    proveskit/solar_boards

    The solar panel boards for the PROVES Kit

    45 parts4CERN-OHL-W-2.0
  • 4 layers62.5 × 44.5 mmEsp32s3-plant monitor, the printed circuit board in 3D

    Esp32s3-plant monitor

    MuffinByteLabs/esp32s3-plant-monitor

    Portfolio PCB: ESP32-S3 Wi-Fi plant monitor. 4-layer KiCad 10 design, fabricated and assembled at JLCPCB — schematic, reviews and the frozen manufacturing package all readable in-browser.

    70 parts3CERN-OHL-P-2.0
  • 2 layers68.8 × 68.1 mmSmartSensor, the printed circuit board in 3D

    SmartSensor

    AvansETI/SmartSensor

    SmartSensor: a sensor to be used as sensor and actuator within existing buildings.

    68 parts2GPL-3.0