A registered peripheral model runs in the engine: the firmware talks to it over the real bus and gets device-accurate responses.
Declarative I²C kit — model is core/configs/devices/vcnl4010.yaml (GenericI2cDevice), no per-part Rust. Reports the raw proximity/ambient counts driven through SimInput; optical distance response and conversion latency are deliberately not modelled, and both data-ready flags read set so a driver ready-poll always terminates.
Simulated device model
Built from the datasheet. Implemented from the part’s register documentation and exercised by automated tests. Nothing physical was ever placed next to it.
I²C · default address 19
[object Object]
| Pin | Type | Role |
|---|---|---|
VCC | power_in | — |
GND | power_in | — |
SDA | open_drain | i2c_sda |
SCL | open_drain | i2c_scl |
Modelled from Vishay VCNL4010 datasheet.