Joulescope DC Energy Analyzer Reviewed

[VoltLog] got a hold of a prerelease unit of Joulescope — a DC energy analyzer that promises to make it easy to optimize power and energy usage of your electronic designs. You can find his review in the video below. The device is a very fast ammeter and voltmeter. Given that, it is easy to compute energy and, over time, power.

The device is set to retail for about $400 according to a letter in the video, although the website mentions closer to $800. Both of those seem to be a bit much for a piece of specialty gear that is really just a fast analog to digital converter and some software. To be fair, the device can read ranges between 18 microamps to 10 amps with resolutions as low as 1.5 nanoamps on the lower side of the range. Is it worth it? That will depend on your application and your price sensitivity.

The device has banana plugs but is also set up to handle USB devices with some adapters. The front panel is actually a PCB with a connector so that the panel can change for different applications. The software runs on common platforms and offers a voltmeter-style view and an oscilloscope-like view. The lower the current range, the lower the bandwidth, ranging from 15 kHz to 250 kHz. This isn’t a replacement for a scope but is made to measure DC spikes. [VoltLog] points out that you’ll be most interested in the low range readings when a device is in sleep mode, so the lower bandwidth shouldn’t be a big issue.

The working demo uses a test Arduino provided with the instrument for the review. In other words, if you buy one of these, it won’t have the example board with it. You can see events in the software like LED blinks clearly in the resulting traces.

We’ve seen instruments like this built into an ESP8266 design. We’ve also seen people measure tiny currents using fairly simple techniques.

22 thoughts on “Joulescope DC Energy Analyzer Reviewed

  1. “…Given that, it is easy to compute energy and, over time, power.”
    Uhhm… Looks like that’s bass ackwards, unless you literally mean energy divided by time = power.
    But of course, measured amps * volts = power (at DC, anyway, if you’re being picky), not energy.

    1. I guess, (and I really don’t know A.I. Williams well enough to speak authoritatively about his thought processes)
      He might have worded it just to avoid some DC v. AC Power measurement comment war.
      Then again, this is Hackaday, so flame wars on semantics, (spelling, phrasing, etc.) are subtly encouraged…

  2. Their kickstarter campaign is currently ongoing, and they already reached their goal.
    Having reviewed the claims and gone through the docs, I can say for sure that the creator knows what he’s doing.
    An easy backing choice for me!

  3. No external trigger input? How do you trigger at a specific time? (to know energy consumption of a particular task/loop)
    My current setup is a µCurrent with a Picoscope 2204A, with an external trigger from a GPIO.
    Cost way less (60+80€), than this very expensive device, but not isolated.

    1. From the preliminary user manual:
      “The Joulescope contains two (2) general purpose inputs (GPI) and two (2) general purpose outputs
      (GPO). These signals enable time-synchronization with the device under test and other external
      equipment. The user interface can display GPIs time-synchronized with current, voltage, and power in
      the oscilloscope view.
      One intended application for the GPIs is to allow the target microcontroller firmware to identify areas of
      interest. The microcontroller can toggle bits so that you can easily see the energy consumption in the
      marked time windows.”
      Sounds good to me. It’s always a good sign to me that there’s a user manual before the kickstarter has finished.
      *disclosure – I backed it.

  4. Looks good, I’m currently using an Otii for measuring the power consumption of a battery powered device. It acts as the power supply as well as providing energy logging.
    Before that I used a SiLabs Gecko dev board, really cheap. They have a built in energy monitor via the IDE, you can just remove the Silabs micro and use the dev boards header to power your target at a fixed 3V. Had a small offset but seeing the spike widths during different phases of the firmware really helped narrow down functions consuming too much power.

      1. “with many more feature than Joulescope.” I don’t want to argue with this but I suppose some features may matter more than others. Otii claims “a sample rate up to 4 ksps for the range of 1 μA – 5 A.” whereas Joulescope claims “Joulescope measures current and voltage 2 million times per second with 250 kHz bandwidth. This high sampling rate makes the power consumption of interrupt service routines, inrush currents and other short events visible.” and “Down to 1.5 nA resolution”.
        I would say this places them in different value segments. Aside from the number specs, how important is it to you that you can look around, drive feature priorities and contribute to your analyser’s software? Check Github for Quoitech (“This organization has no public repositories.”) and Jetperch (6 repos, 5 of which have been updated this year) for an illustration of the difference in the two companies’ characters. I know which one I want to spend money with.

  5. TL/DR This gave me bad vibes and I needed a little rant to get it off my chest.

    There is isolation on the board between the sensor and the USB side that is completely defeated by the aluminium case and the tape is tearing… There is a capable ARM controller and an FPGA which do nothing but feed data to USB. There seems to be little or no proper isolation between power to the sensor section and the analogue parts. With a claimed 1 GOhm input impedance I would want isolation. In the video there is a large gap between upper and lower bounds of input and I wonder how much of this is the noise of the units own power supply on it’s inputs.

    “When the GPI feature is activated, the voltage and current samples will only be 13 bits (the GPI will be in
    the LSB), not the full 14-bits.” – Userguide

    The device has 2 CPUs and 2 FPGAs but the protocol is so restricted that you lose ADC precision when you use GPIO. That’s an awful design trade off.

    “As the current changes, the ammeter selects the optimal shunt resistor value. ” – Userguide
    “The shunt value selection uses the ADC output, dedicated over-range comparators, and a unique
    algorithm that runs in an FPGA.” – Userguide

    This “precision” instrument uses a propitiatory algorithm to get 32 bits of dynamic range from a 14bit ADC and the software displays these values at high frequency to 5 decimal places. We can’t audit the unit and the designer is bigging up NIST traceable calibration as a possibility. There are no details of the analogue circuits anywhere, no tests to see if they are stable over a range of temperatures or if the circuits are tricked by certain current draw patterns.

    Matt is clearly a capable engineer, but he appears to have no track record in metrology. This device seems like it might do the job of showing when a product being developed is using power and giving some insight how to reduce it. So would an oscilloscope and a shunt, voltage sensing in tandem is of little value if your power supply works properly – it maintains constant voltage. Nothing though suggests this is 800 dollars (that’s the RRP, 500 dollars currently on Kickstarter) worth of trustworthy reliable test equipment.

    1. Hi AMA,
      [disclosure, I am the creator of Joulescope]
      Good to hear you are passionate about accurate energy measurement, something we share!

      With regards to the electrical isolation, good eye! The production units fix this issue (no one wants Kapton tape on their pretty board). The design now maintains a 1 mm clearance between the enclosure and the sensor side. The electrical isolation makes Joulescope easy to use (no need to worry about ground loops) and dramatically helps noise performance. Joulescope advertises ±48V isolation, and the Joulescope User’s Guide contains more information.

      I think your second comment on isolation is not about electrical (galvanic) isolation but about separation such as guard rings on the PCB. They are there on the areas that matter ;) The board is also washed at manufacturing to remove all flux to achieve the high input impedance. The design has extremely low ripple (as you would expect) on all the power supply rails to reduce coupling. The noise performance is great, and something that the Joulescope User’s Guide needs to include.

      On the remainder of your comment, I need to expand the Joulescope User’s Guide to explain how to validate the Joulescope performance on equipment with NIST traceable calibrations. Quantifying static performance is simple since it is pretty standard for multimeters. Quantifying the dynamic performance is more difficult due to the dynamic range. I would love to hear about the test setup, equipment, and tests that would be sufficient for you.

      We have focused on making the best, most affordable and easy-to-use instrument for empowering engineers, developers, and makers to optimize energy consumption and reduce battery life. We have been quantifying performance along the way using custom equipment to exercise the full dynamic range. I hope that you will follow along as I release more information over the coming months. In the meantime, you can also check out Jack Ganssle’s hands-on review:

      1. @Matt, thanks for taking time to reply here.

        If you add GPIO feature, and UART/debug/log (up to 1Mbaud), then I’m in.
        I thinks they are the 2 keys features to debugging, when it comes to chunk of code analysis or IRQ.
        Battery analyzer / battery life estimate are not nearly as useful.

        1. @Tweepy I will be adding 2 GPI and 2 GPO to the Joulescope design. You can check out Update #2 and Update #5 on the Joulescope Kickstarter page. I will also add UART protocol decoding. This can easily work up to 250 kbaud (2 MSPS with 8x oversampling) in the Joulescope host software on the computer, like most logic analyzer protocol decoding. I will also be figuring out a way for it work with faster baud rates – I typically run my microcontroller debug serial ports at 1 MBaud, so I agree! Options are:
          * Allow 1 GPI channel to run at 24 MSPS in place of the voltage channel
          * Use the Joulescope UART hardware in the microprocessor to decode and remux (time accuracy < 1 ms)
          * Interface to an external UART-USB adapter (time accuracy < 20 ms, typical )
          I also plan to integrate Joulescope with other logic analyzers, likely by integrating Joulescope with Sigrok. The Joulescope GPO will allow for accurate time synchronization. If you have any input, let me know. Regardless, Joulescope will have GPI/O and UART decoding & recording!

  6. @Al Williams
    “Both of those seem to be a bit much for a piece of specialty gear that is really just a fast analog to digital converter and some software.”

    This is a surprisingly ignorant comment for a HaD author.

    @Carl Matthews
    Thanks for the tips, those are good suggestions. As I’m sure you are aware, the utility of extremely expensive power analyzers with logging is when you’re trying to characterize power consumption on the nA range over long periods of time, like when your IoT product is in deep sleep.

    If Joulescope lives up to the claims, It’ll fill that niche nicely.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.