Skip to main content

DUT power management

The AT1000 features a DUT power port capable of delivering up to 24V, allowing engineers to supply, control, and monitor power to their devices under test (DUTs).

In many application, current consumption can be correlated to device behavior, and can be used to confirm normal operation or detect abnormal operation.

In some situation power-cycling a port in a controlled manner is key to thoroughly testing a device.

Controlling DUT Power​

The DUT power port can be powered up to a specified voltage and powered down when needed.

import { AT1000 } from '@ikalogic/at1000';
const devices = await AT1000.findDevices(); // Discover devices (returns host strings)
const tester = await AT1000.open(devices[0]); // Open the first detected device
await tester.reset(); // Reset the tester to ensure it's in a known state

await tester.power.dut(0).enable(12); // Power up the DUT power supply channel 0
await tester.power.dut(0).disable(); // Power down the DUT power supply channel 0
The output is not discharged

disable() switches the supply off but does not discharge the output: the voltage decays at a rate set by the load. With no load, a 12 V output takes about 9 s to fall below 1 V (typical measurement). To power cycle a device, poll read_voltage() until it falls below the level at which your device resets before enabling the supply again.

The state returned by enable(), disable() and configure() carries the voltage and current of the last read, not a fresh measurement. Call read(), read_voltage() or read_current() to measure the output.

Reading DUT Voltage and Current​

The AT1000 allows real-time measurement of voltage and current supplied to the DUT.


// Read voltage supplied to DUT
let voltage = await tester.power.dut(0).read_voltage();
console.log("DUT Power Voltage:", voltage, "V");

// Read current consumption of DUT
let current = await tester.power.dut(0).read_current();
console.log("DUT Power Current:", current, "A");