Creator Ray
Version 1.0.1
Created 2025-09-30
Availability 100%, 24/7
Assets 10 files
Install this molecule

Paste this into Claude Code (VS Code panel, Adom editor, or terminal) to install:

Search the Adom Wiki for the molecule "BMV080 Molecule v8" (slug: bmv080-molecule-v8-580000) at https://wiki-ufypy5dpx93o.adom.cloud/wiki/molecules/bmv080-molecule-v8-580000. Download its symbol (.kicad_sym), footprint (.kicad_mod), and 3D model (.glb/.step) assets into my current KiCad project under symbols/, footprints/, and 3dmodels/ directories. Register them in the project library tables. Show me the files once installed.

BMV080 Molecule — Hardware Reference

Compact (~30×18 mm) breakout for the Bosch BMV080 ultrasonic-optical particulate-matter (PM) sensor. More elaborate than the other molecules — brings out a full configuration stack (address, interface mode, on-board pull-ups) via silk-labeled solder jumpers.

  • Source: Fusion Electronics project (not on GitHub). Published assets live on the wiki.
  • Wiki page: molecules/bmv080-molecule-v8-580000
  • IC: BMV080 (Bosch LGA, 3.0 × 3.0 × 1.0 mm). The laser / optical block dominates the board — ~⅔ of the footprint is the sensor assembly itself.
  • Silk title: Bosch BMV080 centered on top copper.

External contact map

Pin map reconstructed from the Fusion top-down render (3d-top.png on the wiki page). Four corner mount-pins at the outer corners carry power/ground, six signal pins are grouped on the bottom edge, and a row of solder-jumper pads on the top and right edges set the address and interface mode.

Corner mount-pins (power/ground)

PositionSilkRole
top-left3V3VDDIO rail tap
top-right3V3VDDIO rail tap (second tap)
bottom-leftGNDGround
bottom-rightGNDGround (second tap)

Two independent 3V3 pins and two GND pins let you daisy-chain power in or feed separate rails for analog-vs-digital split if you want.

Bottom-edge signal pins (6 breakouts)

SilkRole
IRQInterrupt output (data ready / status)
AB1Address-select bit 1 (strapped on-board — see jumpers below)
AB0Address-select bit 0 (strapped on-board — see jumpers below)
SCLI²C SCL (also SPI SCK)
SDAI²C SDA (also SPI MOSI/MISO depending on mode)
(extra — check silk on physical board)Likely CSB or RST

Top-edge address-strap jumpers (silk shows 2× 3-pad [GND, ABn, 3V3] groups)

JumperSilkBridge to set
AB0 strapGND — AB0 — 3V3Left bridge = AB0 low; right bridge = AB0 high
AB1 strapGND — AB1 — 3V3Left bridge = AB1 low; right bridge = AB1 high

Bosch BMV080 I²C address is a 2-bit-programmable slave address (0x540x57) set by {AB1, AB0}. Demo firmware target is 0x57 (AB1 = AB0 = 1) — bridge both AB0 and AB1 to their 3V3 side.

Right-edge interface-mode selector (silk SPI, CS, I2C)

A 3-way jumper stack on the right edge selects the serial interface:

BridgeMode
I2C (bottom)I²C (demo target) — CSB tied high internally; SDA/SCL are the active lines
CS (middle)Provides chip-select access for SPI use (shorts CSB to an external pad)
SPI (top)4-wire SPI — the MISO/MOSI/SCK/CSB pads are active

Bridge only the I2C jumper for the demo.

Bottom-middle I²C-pull-up jumpers

Silk block labeled I2C PULLUPS with two 3-pad groups: 3V3 — SDA and SCL — 3V3. Bridging each group connects the bus lines to 3V3 through on-board pull-up resistors, so you don't need external pull-ups on the SDA/SCL lines.

JumperBridged =Behavior
3V3 — SDAon-board SDA pull-up enabledSkip the RM2's pull-up (or add-parallel — harmless)
SCL — 3V3on-board SCL pull-up enabledSame

For the stationary RM2 demo, the carrier already supplies external 4.7 kΩ pull-ups, so leave both of these jumpers open (or bridged — not harmful, just stacks resistance in parallel).

I²C address strap (summary for demo)

AB1AB0Address
GNDGND0x54
GND3V30x55
3V3GND0x56
3V33V30x57 (demo firmware target)

Bridge both AB0 and AB1 to their 3V3 pads.

Power

RailVoltageSource
3V3 (VDDIO)1.62–3.6 VHost via either top corner 3V3 pin (3.3 V in demo)
VDD_CORE1.62–1.98 VGenerated on-board? — or fed externally via a dedicated 1.8 V pin if present (datasheet requires 1.8 V core + ≤ 3.3 V VDDIO)

Datasheet: 28 mA active during measurement — much higher than any other sensor on the stationary bus (BMP581 is 70 µA, BME690 peaks at 2 mA). The +3.3V rail needs to tolerate a 28 mA pulsed load; the stationary RM2's AP2112K-3.3 LDO is rated for 600 mA so it's well within spec, but anyone cloning this onto a battery-powered carrier should budget accordingly.

Interrupts

IRQ (push-pull) asserts when a PM measurement is ready or when the sensor raises a status event. The BMV080 driver in firmware/sensors/bmv080.c currently uses polled reads, so IRQ can be left unconnected.

Wiring to the Stationary RM2 I²C bus

BMV080 3V3 (top-left or top-right)  ──── RM2 +3V3
BMV080 GND (bottom-left or bottom-right)── RM2 GND
BMV080 SDA                          ──── RM2 GPIO4 (I²C0 SDA)
BMV080 SCL                          ──── RM2 GPIO5 (I²C0 SCL)
BMV080 IRQ                          ──── (optional)
BMV080 AB0 pad / AB1 pad            ──── (leave floating — set via jumpers)

Bridge the I2C jumper (right-edge stack). Bridge both AB0 and AB1 to their 3V3 sides. Leave the I2C PULLUPS jumpers open (RM2 carrier has external pull-ups).

Gotchas for firmware bring-up

  • Address-strap jumpers default to open — an unset AB0/AB1 gives a floating, indeterminate address. Bridge both to 3V3 before powering.
  • Interface-mode jumper must be on I2C. Factory-default is open — the chip will not respond on either interface until one of the three pads is bridged.
  • BMV080 needs the proprietary Bosch SDK (lib_bmv080.a + lib_postProcessor.a) to run — vendored in firmware/sensors/bmv080_sdk/. All measurement and calibration is internal to the SDK.
  • 28 mA during active measurement — a lot for one sensor. Not a problem on the RM2 3V3 rail (LDO rated 600 mA) but noteworthy.
  • Sensor is optical — laser / photodiode block. Handle with care; don't touch the optical window.
  • If the sensor is unresponsive: the most likely culprit is the interface-mode jumper, then the address-strap jumpers, then pull-ups. The probe path is in that order.

Known gaps in this doc

Same as BME690: the .fsch/.fbrd Fusion source files are attached to the wiki page but the wiki returns 404 on design-file downloads. Silk labels and jumper positions were read from the published top-down render (3d-top.png). Exact pad coordinates, the sixth bottom-edge signal pin label, and the default/factory jumper state could not be verified without the source. If you own the Fusion project, export to .kicad_* or .sch/.brd and drop it under /bosch-molecules/BMV080/ for a full netlist extraction.

Description

Edit AI Skill

Molecule: BMV080 Molecule v8 (imported from Curium S3)

Files

Download ZIP
PCB BMV080 Molecule.fbrd PCB Board
F3D BMV080 Molecule.f3d Fusion 360
SCH BMV080 Molecule.fsch Schematic
AR BMV080 Molecule.usdz AR Model

Source files

USDZ BMV080 Molecule.usdz usdz 3.5 MB
STL BMV080 Molecule.stl stl 10.1 MB
STEP BMV080 Molecule.step step 15.7 MB
SAT BMV080 Molecule.sat sat 22.3 MB
IGS BMV080 Molecule.igs igs 28.1 MB
F3D BMV080 Molecule.f3d f3d 7.2 MB
FBRD BMV080 Molecule.fbrd fbrd 40.1 KB
FSCH BMV080 Molecule.fsch fsch 164.8 KB
3MF BMV080 Molecule.3mf 3mf 2.7 MB
PNG 3d-bottom.png
3D Bottom View
screenshot 347.4 KB
PNG 3d-left.png
3D Left View
screenshot 139.4 KB
PNG 3d-right.png
3D Right View
screenshot 139.9 KB
PNG 3d-board.png
3D Board View
screenshot 342.8 KB
PNG board-screenshot.png
Board Screenshot
screenshot 342.1 KB
PNG 3d-front.png
3D Front View
screenshot 104.5 KB
PNG 3d-back.png
3D Back View
screenshot 111.9 KB
PNG 3d-top.png
3D Top View
screenshot 766.6 KB

AI Skill Technical Reference

Edit AI Skill

BMV080 Molecule v8

Type: Adom Molecule Creator: kcknox Version: v1 Category: other Availability: 100%, 24/7

Overview

Molecule: BMV080 Molecule v8 (imported from Curium S3)

Integration Guide

To use BMV080 Molecule v8 in your design:

  1. Download the schematic symbol and PCB footprint from the Files section
  2. Import into your EDA tool (KiCad or Fusion 360 / EAGLE)
  3. Place the molecule in your schematic and connect the interface pins
  4. Use the 3D model (.glb) for mechanical fit verification

Design Notes

Board design files (.brd, .sch, .f3d) are available for modification and reference.

Sub-Skills
?
What are Sub-Skills?

Sub-skills are community-contributed AI skill extensions for this component. They teach AI assistants about specific tools, configurators, or workflows.

Examples:

  • A manufacturer’s configuration tool for a motor controller
  • A community-written design guide for an amplifier circuit
  • An automated test/validation script for a sensor module

How to add one: Click Add Sub-Skill, provide the URL to your skill and a brief description. Submissions are reviewed by the Adom team before going live.

No sub-skills yet. Be the first to contribute one!

2 revisions · Molecule #12230957341156580000 · Updated 2026-04-17 19:39:31