element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Test & Tools
  • Technologies
  • More
Test & Tools
Blog Nordic Power Profiler Kit II Python API
  • Blog
  • Forum
  • Documents
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Test & Tools to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: ralphjy
  • Date Created: 12 Jun 2023 12:17 AM Date Created
  • Views 4539 views
  • Likes 13 likes
  • Comments 4 comments
  • test automation
  • IRNAS
  • nordic ppk2
  • nordic
  • power profiling
  • Python API
Related
Recommended

Nordic Power Profiler Kit II Python API

ralphjy
ralphjy
12 Jun 2023

The Nordic Power Profiler Kit II (PPK2) is a tool that measures power consumption by either providing power to the external board (source meter) or acting as an ampere meter. It measures current from 500 nA to 1 A and gives a detailed picture of the current profile for the user application.

It is normally operated using the Power Profiler app which is included as part of nRF Connect for Desktop: https://www.nordicsemi.com/Products/Development-tools/nrf-connect-for-desktop.

I had posted about it a couple of years ago when I received one for evaluation - Nordic Power Profiler Kit II (PPK2).

I recently received a Torex DC/DC Converter EVB and wanted an easy way to sweep the input voltage while measuring the input current.  The PPK2 can do that measurement in source meter mode, but the Power Profiler app does not have the capability of sweeping the source voltage value.  I went in search of an API that would allow me to do that.  It turns out that the earlier version of the Power Profiler Kit (v1) did have an API provided by Nordic, but the newer version does not.  Nordic instead refers you to a third party Python API developed by IRNAS Institute - ppk2-api-python.  I would have preferred something vendor supported, but decided to give it a try.

There isn't much in the way of documentation except a couple of examples at the github repo.  I did manage to hack the multi-processing example to do a simple voltage sweep while measuring current.  I did a quick test using a 1K ohm resistor.

image

The PPK2 interface is through the USB serial port.  I am running in a CMD window on my Win10 PC.

image

Since it's Python, I used matplotlib to plot the data.

image

And used the csv library to save the data so that I could use it with Excel.

image

This simple test does expose some of the weaknesses of using the PPK2.

  1. Limited range (800mV to 5V) - it also has some problems at the ends of the range.
  2. Limited accuracy (+/- 10% with +/- 2% offset).
  3. In source meter mode part of the problem is the accuracy of the source voltage.

Here are some of the relevant specs:

image

image

image

image

 

I would have liked a range down to 500mV and overall accuracy of +/- 5%, but I think that this will work for the quick evaluation I want to do.  At least it might show me where I want to do more accurate tests.  I like the PPK2 because it is very compact and easy to use.  I'll need to figure out what other functions that I can use with this API.  I read on the Nordic forum that they don't have any plans for developing their own API.

  • Sign in to reply
  • jonasnic
    jonasnic 6 months ago

    one thing i find strange about this. the ppk2 have a calibration load setup onbord. i would think they could get the correct readout when they have a 1k resitor onboard for calibration...

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • DAB
    DAB over 2 years ago

    Nice simple test.

    It did look nice and linear.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • ralphjy
    ralphjy over 2 years ago in reply to scottiebabe

    One interesting aspect (or omission) of the PPK2 is that there isn't a method of measuring the force voltage, so it wouldn't be able to do an autocal.  I guess I could pre-cal it for expected ranges using external instrumentation and store a correction table.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • scottiebabe
    scottiebabe over 2 years ago

    Thanks for sharing your SMU experiments :) I am a little surprised at the specifications, I would have thought maybe they would let you perform an autocal of the unit. Or at least null the measurements (just leave the DUT disconnected IL = 0 ).

    Ohh, new DC/DC EVB that's exciting! 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube