library/specializations/embedded-systems/skills/power-profiler/SKILL.md
Power consumption measurement and analysis expertise for embedded systems. Integrates with power analyzer tools to measure, profile, and optimize power consumption in battery-powered and energy-efficient designs.
npx skillsauth add a5c-ai/babysitter power-profilerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Expert skill for power consumption measurement, analysis, and optimization in embedded systems. Provides integration with power analyzer tools and deep expertise in low-power design techniques.
The Power Profiler skill enables comprehensive power analysis for embedded systems, supporting:
Configure and calibrate power measurement hardware:
// Example: Configure Otii Arc power analyzer
const powerConfig = {
analyzer: 'otii-arc',
sampleRate: 4000, // Hz
currentRange: 'auto', // auto, low (uA), high (mA)
voltageOutput: 3.3, // Supply voltage
triggerMode: 'gpio', // gpio, serial, manual
triggerPin: 'GPI1'
};
Analyze power consumption across different operating states:
## Power State Profile
| State | Current (avg) | Duration | Energy |
|-------|---------------|----------|--------|
| Active | 15.2 mA | 50 ms | 760 uJ |
| Processing | 45.3 mA | 10 ms | 453 uJ |
| Radio TX | 120 mA | 5 ms | 600 uJ |
| Sleep | 2.5 uA | 935 ms | 2.3 uJ |
| **Total Cycle** | - | 1000 ms | **1815.3 uJ** |
Average Current: 1.815 mA
Battery Life (1000 mAh): 551 hours (23 days)
Identify and analyze power state transitions:
Break down power consumption by peripheral:
## Peripheral Power Breakdown
| Peripheral | Active Current | Sleep Current | Contribution |
|------------|----------------|---------------|--------------|
| MCU Core | 8.5 mA | 1.2 uA | 35% |
| Radio (BLE) | 6.2 mA | 0.5 uA | 25% |
| Sensors | 3.8 mA | 0.8 uA | 16% |
| Display | 4.2 mA | 0.1 uA | 17% |
| Other | 1.5 mA | 0.4 uA | 7% |
Calculate expected battery life for various usage scenarios:
// Battery life estimation parameters
const batteryEstimate = {
batteryCapacity: 230, // mAh (CR2032)
dutyCycle: {
activePeriod: 100, // ms
sleepPeriod: 9900, // ms
transmitCount: 1 // per cycle
},
currentProfile: {
active: 15.0, // mA
sleep: 2.5, // uA
transmit: 120.0 // mA
},
derating: 0.85 // 85% capacity utilization
};
// Calculated: 2.3 years battery life
This skill integrates with the following processes:
| Process | Integration Point |
|---------|-------------------|
| power-consumption-profiling.js | Primary execution - all phases |
| low-power-design.js | Measurement and validation phases |
| real-time-performance-validation.js | Power budget verification |
| Tool | Features | Connection | |------|----------|------------| | Otii Arc | High precision, automation API | USB, REST API | | Nordic PPK2 | Source/ampere meter modes | USB, nRF Connect | | Joulescope | Real-time streaming, triggers | USB, Python API | | Keysight N6705C | Multi-channel, high accuracy | GPIB, USB, LAN | | Qoitech Otii | Cloud integration, sharing | USB, Otii Desktop |
# Verify power analyzer connection
otii-cli device list
# Configure measurement parameters
otii-cli project create \
--name "power-profile-$(date +%Y%m%d)" \
--voltage 3.3 \
--current-range auto
# Start recording with GPIO trigger
otii-cli recording start \
--trigger gpio:GPI1:rising \
--duration 10s
# Or use serial trigger
otii-cli recording start \
--trigger serial:START \
--stop-trigger serial:STOP
# Export measurement data
otii-cli recording export \
--format csv \
--output power-data.csv
# Generate statistics
otii-cli statistics \
--markers state:active,state:sleep \
--output stats.json
The skill generates comprehensive power analysis reports including:
{
"summary": {
"averageCurrent_mA": 1.815,
"peakCurrent_mA": 120.0,
"sleepCurrent_uA": 2.5,
"estimatedBatteryLife_hours": 551
},
"powerStates": [
{
"name": "active",
"current_mA": 15.2,
"duration_ms": 50,
"energy_uJ": 760
}
],
"transitions": [
{
"from": "sleep",
"to": "active",
"latency_us": 125,
"energy_uJ": 1.2
}
],
"peripheralBreakdown": {
"mcu": { "active_mA": 8.5, "sleep_uA": 1.2 },
"radio": { "active_mA": 6.2, "sleep_uA": 0.5 }
},
"recommendations": [
"Reduce radio TX power by 3dB to save 15% energy",
"Enable peripheral clock gating during sleep"
],
"artifacts": [
"power-profile.csv",
"power-report.html",
"waveform.png"
]
}
Compatible MCP servers for enhanced functionality:
| Server | Purpose |
|--------|---------|
| embedded-debugger-mcp | Coordinate debug probes with power measurement |
| serial-mcp-server | Serial trigger synchronization |
| tinymcp | Device state monitoring |
low-power-design.js - Low-power design implementation processpower-consumption-profiling.js - Full power profiling workflowdevelopment
Model documentation skill for generating model cards following Google's model card framework.
development
MLflow integration skill for experiment tracking, model registry, and artifact management. Enables LLMs to log experiments, compare runs, manage model lifecycle, and retrieve artifacts through the MLflow API.
data-ai
LIME-based local explanation skill for individual predictions across tabular, text, and image data.
devops
Kubeflow Pipelines skill for ML workflow orchestration, component management, and Kubernetes-native ML.