Sensor modules

AXS-023 — VL53L1X time-of-flight ranger PMOD module

Catalog #23, level L3 (I2C, interrupt-driven).

Level L3 ERC clean DRC clean Fab package 11 components
3D render of the AXS-023 PCB
Rendered from the PCB layout. No physical board has been manufactured.

Circuit review & bench-test guide →

Components#

Every placed component, with the reason it is on the board. Extracted directly from the schematic, so this cannot drift from the design.

RefValueWhat it does on this boardPart numberFootprint
C1 100nF 16V X7R AVDD decoupling GRM188R71C104KA01D
Murata
C_0603_1608Metric
C2 4.7uF 10V X5R VCSEL pulse-current reservoir GRM21BR61A475KA73L
Murata
C_0805_2012Metric
J1 PMOD PLUG 2x6 PMOD peripheral plug (Digilent spec 1.2) not selected
generic
PinHeader_2x06_P2.54mm_Horizontal
JP1 SDA PULL-UP Cut to remove the SDA pull-up when chaining modules SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mm
JP2 SCL PULL-UP Cut to remove the SCL pull-up when chaining modules SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mm
R1 4.7k I2C SDA pull-up RC0603FR-074K7L
Yageo
Datasheet ↗
R_0603_1608Metric
R2 4.7k I2C SCL pull-up RC0603FR-074K7L
Yageo
Datasheet ↗
R_0603_1608Metric
R3 10k XSHUT pull-up: sensor enabled unless the host drives it low RC0603FR-0710KL
Yageo
Datasheet ↗
R_0603_1608Metric
R4 10k GPIO1 open-drain interrupt pull-up RC0603FR-0710KL
Yageo
Datasheet ↗
R_0603_1608Metric
R5 100R Series protection on the sensor-driven interrupt line RC0603FR-07100RL
Yageo
Datasheet ↗
R_0603_1608Metric
U1 VL53L1CXV0FY1 Time-of-flight ranging sensor, 4 m, 940 nm VCSEL VL53L1CXV0FY/1
STMicroelectronics
Datasheet ↗
ST_VL53L1x

Signals#

Net labels used in the schematic, which are also the names the HDL top level should use.

3V3 GND SCL SCL_PU SDA SDA_PU TOF_INT TOF_INT_RAW XSHUT

Production status#

Schematic ERC0 violations
PCB layoutcomplete
DRC0 violations
Fab packageexported (24 gerbers + drill + CPL + BOM)
Fabricatedno — design stage only

Source: boards/sensor-modules/axs-023-vl53l1x


Catalog #23 (../README.md), level L3 (I2C, interrupt-driven).

Status: schematic generated, ERC clean (0/0), netlist reviewed. PCB layout not started. Not released.

What it teaches#

A rich I2C register model (timing budgets, ROI, distance modes) plus interrupt-driven design: program a threshold, wait for GPIO1 instead of polling. XSHUT enables address reassignment for multi-sensor buses.

Design#

Regenerate / remaining#

python3 generate_design.py — then PCB layout (keep the optical aperture clear), HDL, BOM check, review checklist.