Chat

Welcome to Flux

Treat Flux like your intern. Tell it what you'd like to build and it'll get to work. You can also ask it questions, brainstorm ideas, and teach it your preferences. Learn More

Explain project
Write a project description
Find schematic issues
Create a test plan
Simulate a circuit
Prepare for Manufacturing
Component Selection Workflow
New Subsystem Wizard
Write I2C initialization code
Generate firmware skeleton
U2
C2
Capacitance
100nF
C7
Capacitance
100nF
C13
Capacitance
100nF
C9
Capacitance
100nF
C14
Capacitance
10nF
C4
Capacitance
100nF
C3
Capacitance
100nF
C6
Capacitance
100nF
C11
Capacitance
10uF
C1
Capacitance
100nF
C10
Capacitance
1uF
C12
Capacitance
100uF
C5
Capacitance
100nF
C8
Capacitance
100nF
U2 GNDIO - Q1 S
U1 PA5 - R6 P1
U2 GNDIO - Q1 S
U3 VSS - C13 P2
U3 SNSK - C14 P2
IC1 OUT_2 - IC2 VI
U3 VSS - C13 P2
U2 GNDIO - Q1 S
IC1 TS - C10 P1
J1 V-BUS__1 - IC1 IN
IC1 OUT_2 - IC2 VI
U2 GNDIO - Q1 S
U1 PA9 - U2 SDX
U3 VDD - C13 P1
U1 BOOT0 - U2 SDO
U1 PA9 - U2 SDX
IC1 ~CHG - U1 PA1
U3 VDD - C13 P1
U3 SNSK - C14 P2
U3 VDD - C13 P1
U2 GNDIO - Q1 S
U1 BOOT0 - U2 SDO
J1 SHIELD__3 - IC1 VSS
U2 GNDIO - Q1 S
IC1 BAT_2 - C5 P1
J1 V-BUS__1 - IC1 IN
IC1 ISET - R7 P1
U2 GNDIO - Q1 S
U2 GNDIO - Q1 S
U3 VDD - C13 P1
IC1 OUT_2 - IC2 VI
IC1 OUT_2 - IC2 VI
U2 GNDIO - Q1 S
R9 P2 - Q2 B
U1 PA2 - U2 INT1
U1 NRST - R3 P2
IC1 OUT_2 - IC2 VI
U3 SNS - C14 P1
J1 V-BUS__1 - IC1 IN
J1 CC2 - R2 P1
IC1 ~PGOOD - U1 PA0
IC2 VO - U1 VDD
IC1 TS - C10 P1
U2 VDDIO - R3 P1
J1 V-BUS__1 - IC1 IN
IC1 EN2 - R7 P2
U1 PA10 - U2 SCX
IC2 VO - U1 VDD
J1 SHIELD__3 - IC1 VSS
IC1 TS - C10 P1
U3 SNS - C14 P1
J1 SHIELD__3 - IC1 VSS
U2 GNDIO - Q1 S
U1 PA2 - U2 INT1
IC1 TS - C10 P1
U2 GNDIO - Q1 S
U2 VDDIO - R3 P1
R10 P2 - LED1 A
Q2 C - U1 PA3
J1 CC1 - R1 P1
Q2 C - U1 PA3
U1 NRST - R3 P2
U2 GNDIO - Q1 S
IC1 EN2 - R7 P2
J1 CC2 - R2 P1
U1 BOOT0 - U2 SDO
U3 VSS - C13 P2
J1 SHIELD__3 - IC1 VSS
IC1 TMR - C9 P1
U2 GNDIO - Q1 S
GND
U2 GNDIO - Q1 S
U1 PA10 - U2 SCX
J1 V-BUS__1 - IC1 IN
U2 GNDIO - Q1 S
U3 OUT - R9 P1
R9 P2 - Q2 B
U2 GNDIO - Q1 S
U1 PA5 - R6 P1
U1 PA9 - U2 SDX
U3 VSS - C13 P2
J1 SHIELD__3 - IC1 VSS
R10 P2 - LED1 A
IC1 BAT_2 - C5 P1
IC2 VO - U1 VDD
U1 PA5 - R6 P1
J1 SHIELD__3 - IC1 VSS
U3 OUT - R9 P1
U2 GNDIO - Q1 S
U2 GNDIO - Q1 S
IC2 VO - U1 VDD
U2 VDDIO - R3 P1
U3 SNSK - C14 P2
IC1 ~CHG - U1 PA1
U2 VDDIO - R3 P1
U2 VDDIO - R3 P1
U3 VDD - C13 P1
U2 GNDIO - Q1 S
U3 VSS - C13 P2
IC1 EN2 - R7 P2
IC1 ~PGOOD - U1 PA0
Q2 C - U1 PA3
U1 BOOT0 - U2 SDO
IC1 ISET - R7 P1
IC1 TMR - C9 P1
J1 CC1 - R1 P1
U2 VDDIO - R3 P1
IC1 OUT_2 - IC2 VI
U2 GNDIO - Q1 S
IC1 OUT_2 - IC2 VI
U2 VDDIO - R3 P1
R6
Resistance
100 Ω
IC2
D1
J1
IC1
Q2
R2
Resistance
5.1kΩ
R1
Resistance
5.1kΩ
R5
Resistance
1kΩ
R7
Resistance
1.5kΩ
U1
R9
Resistance
100kΩ
R10
Resistance
1kΩ
R4
Resistance
4.7kΩ
R8
Resistance
100kΩ
J2
R3
Resistance
4.7kΩ
Q1
U3
LED1
R11
Resistance
1kΩ

Refine this doc
Ask about this doc
Design Notes
Operating Modes
  • Sleep mode: Battery-powered standby with MCU in deep sleep and accelerometer configured for motion interrupt wake.
  • Motion detect mode: Accelerometer interrupt wakes MCU when sustained motion is detected.
  • Charging mode: USB-C 5 V input powers charger IC and charges the single-cell battery; system remains powered from charger power-path output.
  • Timed heating mode: MCU enables the heater through a MOSFET using open-loop timed bursts with conservative duty cycle.
Initial Heating Strategy
  • Use open-loop timed heating only for revision 1.
  • Start with conservative fixed heating bursts and cooldown intervals.
  • Firmware enforces maximum ON time, minimum cooldown, low-battery lockout, and inactivity timeout.
  • Temperature feedback is not required in the first revision; it remains an optional future upgrade if testing indicates it is needed.
Power Architecture
  • USB-C sink-only 5 V input.
  • Single-cell Li-ion/LiPo battery.
  • Charger with power-path management so the system can run while charging.
  • 3.3 V regulated rail for MCU and accelerometer.
  • Heater powered from system or battery rail through a dedicated MOSFET switch.
Battery Life Direction
  • Target battery life: 1.5 to 2 weeks.
  • Logic domain current must remain very low in sleep.
  • Heater is the dominant load and must use short bursts rather than continuous operation.
  • Final heater burst duration and interval will be chosen conservatively to support the runtime target.
First-Pass Schematic Decisions
  • Chosen charger: BQ24075 with integrated power-path management.
  • Chosen regulator: MCP1700-3302 low-quiescent-current 3.3 V LDO.
  • Chosen MCU: STM32L031F4P6 for simple low-power control and I2C support.
  • Chosen accelerometer: BMA400 using I2C with INT1 wake output.
  • Chosen heater drive: AO3400 logic-level N-MOSFET as a low-side switch.
  • USB-C is implemented as sink-only power input with 5.1k pull-down resistors on CC1 and CC2.
  • Revision 1 keeps the heater interface intentionally simple and open-loop; exact heater element and thermal optimization remain for later refinement.
Rev 1 Control Platform Scope
  • Revision 1 retains the STM32L031F4P6 as the main MCU.
  • BLE radio and smartphone app features are explicitly deferred to a future revision.
  • No BLE-specific circuitry is included in the current Rev 1 schematic.
Single-Button UI
  • Added one momentary pushbutton tied to MCU pin PA3 as the Rev 1 user interface input.
  • Button is wired active-low with a 100k pull-up to 3.3 V to keep standby current low.
  • Intended Rev 1 behaviors:
    • Short press: toggle scent diffusion enable state.
    • Long press: switch between simple intensity or timed-diffusion modes in firmware.
    • Press during idle: wake or request activity when firmware policy allows.
Interaction With Motion-Controlled Heating
  • Motion detection remains the primary automatic trigger for active diffusion behavior.
  • The single button adds manual user intent without changing the open-loop timed heater architecture.
  • Firmware should require both safety checks and the existing timed-heating limits before any heater activation.
  • Manual button actions should never bypass low-battery lockout, inactivity timeout, or cooldown timing.
Future Revision Notes
  • Candidate future revision features include BLE connectivity, smartphone app control, richer status indication, and expanded UI state handling.
  • Open questions for later revisions:
    • Whether a dedicated status LED is needed for button feedback.
    • Whether button behavior should be limited to enable or disable only, or also support intensity selection.
    • Whether a BLE-enabled MCU should replace the current STM32 in a later connected product version.
Capacitive Touch Button Replacement
  • Replaced the original mechanical user switch with a single-channel capacitive touch controller using AT42QT1010-TSHR.
  • The AT42QT1010 output is active-high, so an MMBT3904 NPN inverter was added to preserve the original active-low USER_BTN behavior seen by MCU pin PA3.
  • Existing resistor R8 remains the 100k pull-up from USER_BTN to 3.3 V, keeping the standby current strategy unchanged.
  • Added C13 100nF as the local bypass capacitor between the touch controller VDD and VSS, following the recommended basic circuit.
  • Added C14 10nF as the QT1010 charge-transfer sense capacitor between SNS and SNSK.
  • Added R11 1k in series with the SNSK path to the external touch electrode for ESD and EMC suppression.
  • Added LED1 with R10 1k from 3.3 V for illuminated button feedback.
  • U3 SYNC is tied low for fixed mode operation; the actual touch electrode connects externally through R11 and must be implemented in the enclosure or PCB touch pad geometry.
  • Operating Modes

  • Initial Heating Strategy

  • Power Architecture

  • Battery Life Direction

  • First-Pass Schematic Decisions

  • Rev 1 Control Platform Scope

  • Single-Button UI

  • Interaction With Motion-Controlled Heating

  • Future Revision Notes

  • Capacitive Touch Button Replacement

Documents

  • Design Notes

Assets

No assets added.

Car Vent Fragrance Diffuser

Car Vent Fragrance Diffuser thumbnail
Battery-powered car vent clip fragrance diffuser with USB-C charging, motion-triggered wake, and open-loop timed heater control.

Properties

Properties describe core aspects of the project.

Pricing & Availability

Distributor

Qty 1

Arrow

$4.96–$5.97

Digi-Key

$8.00–$8.06

LCSC

$12.10–$12.10

Mouser

$9.30

TME

$1.68

Verical

$6.19–$9.15

Controls