BUILDS / SUPPLY / V1

supply

v1 · draftversions v1

A programmable DC supply for Pico and 3.3 V circuits, driven by an agent: a bench supply feeds a DPS5005 running OpenDPS, whose output passes a fuse and the Pico enforcer, which holds it under lab/limits.toml's [supply] limits.

Parts

QTYPARTFORM
1bench-supply
1DPS5005running OpenDPS
1fuse, 5x20 mm, 250 mA, fast-acting
1fuse holder, 5x20 mm, inline
1binding posts, red and black
1wire, 18 AWG, silicone

Uses

Walkthrough

At your own risk: not certified or calibrated test equipment. Legal

  1. Set the bench supply to [supply.upstream].volts in lab/limits.toml, with its output off, and wire it to the DPS5005's input. [supply.upstream] sets no current limit yet: it waits on measuring the DPS5005's own draw, so the first power-up is also that measurement.

    EXPECTThe DPS5005's display lights when the bench supply's output is on.

    AGENTSSetting a supply is a hardware action: within lab/limits.toml, and logged.

  2. Before wiring the serial header, measure its TX pin against GND with the DPS5005 on.

    EXPECT3.3 V or less when idle. OpenDPS does not say what level the header uses, and the RP2350's GPIOs are 5 V-tolerant only while powered: unpowered, they are 3.3 V-failsafe (RP2350 datasheet, build-date 2025-07-29, section 1, features).

    AGENTSIf it reads above 3.3 V, stop: the header needs a level shifter, and this version has none.

  3. Wire the DPS5005's output through the fuse to the enforcer's shunt, and the enforcer's OUT+ and GND to the binding posts. Connect the DPS5005's serial header to the enforcer's UART1 only, and fit no other module to it.

    AGENTSNo other device may connect to the DPS5005's serial header: whatever holds it can raise the module's own limits and reflash it.

  4. Walk through builds/enforcer's steps with nothing connected to the binding posts.

Claims

CLAIMSIMULATIONON THE BENCH
Its output stays at or below [supply]'s max_volts and max_amps, whatever the agent sendsunknownunknown
If the enforcer loses power or resets, the output is off. A hang turns it off only once the RP2350's watchdog resets the chip (plan step 9)unknownunknown