How should power be managed in a connected product?

Start from the source you will ship and from a load profile written in modes. Name each rail, who may be awake, the order in which rails become valid, and what the firmware must refuse to do until they are. Quiescent current, inrush, reverse feed and the pads the factory will use are part of the design. Every figure in this article is hypothetical teaching maths. None of it is a cell datasheet, a measured life, or a BrahmWorks result.

[vc_single_image image=”7750″ img_size=”large” alignment=”center” onclick=”link_image” css=”” el_class=”article-figure”]

A grid of BrahmWorks industry work

Start from the source, then draw modes

A cell, a USB port, an external adapter, or a harvested source if you truly mean one: each has an impedance and a way of being absent. A USB socket that exists only for the factory is still a source the day a user finds a cable. Write whether two sources may be present together, which one wins, and which path is broken so the loser does not back-feed the winner.

A cell, a USB port, an external adapter, or a harvested source if you truly mean one: each has an impedance and a way of being absent.

Keep mains conversion out of this discussion. An external supply can move a class of hazard outside the enclosure. If the product truly needs mains inside, that is its own safety scope, not a branch on a low-voltage tree. This article stays with connected hardware on an already-low-voltage source.

Draw the tree as a list: source, protection, converter or load switch, rail name, voltage window, and the blocks on that rail. A mode is a column: off, sleep, measure, transmit, charge, fault. A block that is "off" but back-powered through a diode is not off. Mark the path. Connected products fail in two different ways that firmware often folds into one number. The peak collapses the rail and resets the part. The average empties the source before the interval you talk about. A bench supply, current-limit set high and voltage held, hides both.

Choose the converter from the profile, not from a habit

A linear regulator is quiet and simple, and it turns the voltage it drops into heat. A buck wastes less of a large drop and brings layout rules, switching current, and often a quiescent current that dominates a product which sleeps. A boost is what you need when the source spends life below the rail. A buck-boost is what you need when the source crosses the rail during life. Naming a topology without the source curve is guessing.

Load switches let a radio or a sensor leave the tree in sleep. Their leakage joins the sleep budget, as does every divider you hung on a rail so a converter could be measured. A "zero current" claim that ignores leakage and those dividers is how the budget becomes optimistic. Write the sleep budget as a sum of named branches, including the ones that are only "off".

Reset, brown-out, and the heavy event

The supervisor, or the brown-out circuit inside the microcontroller, must release reset only when the rail can support the heaviest instant that follows, not when it can support the idle current. A flash write or a radio burst that starts while the rail is still climbing will corrupt a page or reboot the loop. The order is: rail inside its window, clock running, reset released, firmware checks the source again before the heavy event. If you cannot describe the sag, you cannot justify the threshold.

Protection has to be the circuit you ship. Reverse polarity, inrush into empty capacitors, a clamp on the port you expose, and a fuse or similar where a short must not become a fire: state the behaviour you want, then check that the parts implement it. A development kit fed from a current-limited port hides inrush. Copying that front end copies the hole.

Bring-up and production test will feed this tree through pads or a connector. If those pads bypass the protection or the measurement point, the test does not see the product. Put the test source where the real source enters, or write down what the test can no longer claim. That distinction sits inside the hardware product development process: a learning setup is allowed to fake a source only when the record says which conclusions are forbidden.

Worked example: a battery logger that looked fine on a rail average

The product is invented. One primary cell feeds a boost. The boost holds a rail for a microcontroller, a switched sensor and a radio. Teaching assumptions, not chemistry limits and not ratings: the cell is discussed from an open-circuit 3.0 V down to 2.5 V; the rail is 3.3 V; the radio is not specified to run from the cell directly. Someone proposes deleting the boost to save a part. The radio's teaching minimum of 3.1 V is already above the cell's late open-circuit voltage. The product would stop while the average-current story still looked comfortable. The boost stays, and the arithmetic has to include it.

Teaching arithmetic: average, converter, and sag

Profile over a teaching period of 60 s, all currents invented:

  • Sleep: 10 µA for 59 s
  • Measure: 2 mA for 0.5 s
  • Transmit: 30 mA for 0.5 s

Charge moved on the rail in one period:

10 × 10⁻⁶ × 59 + 0.002 × 0.5 + 0.030 × 0.5 = 0.000590 + 0.001 + 0.015 = 0.016590 A·s

Average rail current: 0.016590 / 60 = 0.0002765 A, which is 276.5 µA.

A teaching cell of 1,000 mAh, with an invented 30 percent set aside so the exercise does not use the whole nameplate, leaves 700 mAh. Life at the rail, if the cell could supply the rail directly, would be 700 / 0.2765 = 2,531.6 hours, and 2,531.6 / 24 = 105.5 days. That figure is already a fiction: the cell is not the rail.

Teaching boost assumptions at a tired cell: input 2.5 V, output 3.3 V, efficiency 0.85. The current ratio is (3.3 / 2.5) / 0.85 = 1.32 / 0.85 = 1.553. Cell average: 276.5 × 1.553 = 429.4 µA. Life: 700 / 0.4294 = 1,630 hours, and 1,630 / 24 = 67.9 days. The 105 day story was the rail pretending to be the cell.

The peak is a separate failure. Transmit current at the cell: 30 × 1.553 = 46.6 mA. Give the tired cell a teaching internal resistance of 15 Ω. Sag: 0.0466 × 15 = 0.70 V. An open-circuit 2.5 V falls to 2.5 − 0.70 = 1.80 V while transmitting. If the boost's teaching undervoltage lockout is 2.0 V, the transmit drops out. The average said 68 days. The peak says the burst does not finish. Do not add those two statements into one "battery life".

None of these currents, ohms, efficiencies or days is a measurement. Change one assumption and the days move. The point that does not move: a rail-side average, a converter, and a sag are three sums, and passing one does not pass the others.

Checklist for the power tree

  • Every source the user or the factory can connect is named, including "debug only" ports.
  • Two sources at once have a winner, and the loser cannot back-feed.
  • Each mode has a column: which blocks are powered, and which are merely "off".
  • Sleep current is a sum of branches, including leakage and dividers.
  • The converter topology follows the source curve, not a default symbol.
  • Brown-out releases only when the rail can support the next heavy event.
  • Firmware checks the source again before a write or a transmit.
  • Reverse path, inrush and the exposed-port clamp are in the shipped circuit.
  • Test pads do not bypass the protection you think you are testing.
  • Peak sag and average life are written as separate results.
  • Mains inside the enclosure, if it exists, is a separate safety scope.
  • Every number used in the review is labelled as an assumption or as a measurement, and the two are not mixed.

Related questions

Why does a bench supply hide power faults?

It holds the voltage and usually offers more current than the cell or the port. Sag, inrush and end-of-life dropout need the real source, or a source with a stated impedance. A passing log on a stiff supply does not transfer. Record which supply was used, or the log cannot be read later.

Should a fuel gauge be trusted on the first prototype?

Only after its sense path is the path the product uses, and after you have checked it against a known charge moving through that path. A gauge on a kit, or on the far side of a protection device the firmware ignores, reports a different product. Until that check exists, use the gauge as a candidate, not as the life claim.

Where does the radio peak sit in the budget?

On the source side of the converter, at the lowest source voltage you still call valid, with the source impedance you are willing to defend. A milliamp figure on the rail, taken at nominal voltage, is the wrong column. The worked arithmetic above is the shape of the sum, not a number to copy.

When is a linear regulator the wrong default?

When the drop from source to rail, times the current in the heavy mode, is heat or life you cannot spend, or when the source falls below the rail at all. It remains a sound default when the drop is small, the load is light, and noise from a switcher would cost you a sensor. Write that comparison in both milliamps and heat. Do not write it as a preference for one symbol.

Review the tree before the layout hardens

Bring the mode table, the branch-level sleep sum, and the sag sketch at the lowest source you still allow. A review can say whether the next board is allowed to answer the power question, or whether the source is still being faked.

Related articles

Share