Physics of the system, not Joulescope! Well, Joulescope does contribute some parasitic capacitance (which we have worked hard to keep low!) that also affects the response. The Joulescope measurement front-end is still the same with >250 kHz bandwidth.
Let’s first talk about testing load by varying the supply voltage.
If you have a target board, it will have resistance, capacitance and inductance which contribute to the total impedance. In order to test Joulescope’s current measurement bandwidth by varying the supply voltage, we need the target to have a constant impedance over frequency. However, this is very difficult to do. The equation for the impedance magnitude of a capacitor is:
1 / (2 * pi * f * C)
If we are trying to draw 1 μA at 1 V to test Joulescope, then the total load impedance is 1 MΩ. Anything introduced by capacitance on this order results in error due to measurement. Let’s see what that means at 15 kHz:
1 MΩ = 1 / (2 * pi * 15000 * C)
C = 11 pF
Wow! That’s not much. To give you perspective, two 18 gauge wires 30 cm in length separated by 2 cm have a capacitance of approximately 30 pF. This reduced impedance will result in increased current that invalidates the measurement bandwidth. When measuring by using varying source voltage, you see that current increases with frequency! Expected from physics, but not what we want to measure!
Now let’s look at what happens when we measure by varying the load impedance.
We have the same problem with capacitance, but in reverse. We are still trying to keep a high impedance load, say around 1 MΩ with some amplitude, say ±10 kΩ. But we now have the capacitance looking back at the 1111 Ω shunt resistor in Joulescope. My custom test load also requires some capacitance to remain stable over frequency. I need to do better at documenting my actual test setup. I can probably revisit the test setup, reduce the load capacitance, and be able to specify better Joulescope performance. However, I would rather the specification reflect real-world measured performance!
In general, creating a system with high bandwidth and high impedance anywhere in the system is very difficult. This reason is one of several reasons of why it took me 17 Joulescope prototypes to get Joulescope’s performance to where it is now!
When using Joulescope in practice, this bandwidth is not an issue for microcontroller power measurement accuracy. When the target starts drawing more current, it’s impedance reduces and the voltage across the Joulescope’s shunt resistor will increase. As soon as the target board drops 20 mV from the supply voltage, Joulescope’s shunt resistor will see 20 mV. Joulescope detects this very quickly (1 μs) and switches to the appropriate higher current range (lower shunt resistor).
I know that this is not a completely thorough explanation. I have very detailed LTSpice simulations of Joulescope, but they are too detailed to help explain! I need to put together some simplified simulations.
The key point is that this bandwidth reduction is common to all shunt ammeters! As the shunt value increases, the measurement bandwidth decreases. Please reply if you want more detail sooner rather than later!