This topic shows how a step response can be used to make a Bode plot. All that is needed is a signal generator, a digital scope from which you can grab data and software to post process.
The software can be downloaded from
https://github.com/tband/dho-remoteThe software can work with and without injection transformer to analyse loop stability.
The conventional way of creating a
Bode plot is to sweep a signal generator and monitor the transfer from input to output of a network. A few hundred frequency points are generated one by one with a (sine wave) signal generator and at each point a wait time is added. This is needed for the updated frequency to settle and for the scope to measure the amplitude and phase on at least two channels. That's slow so you want to automate it. That is what the Bode option normally takes care of.
This method uses a step response and analyzes the transfer function in the frequency domain.
I've been discussing this idea in a Rigol DHO915s
thread (the model with the Bode plot option) as Rigol really did a bad job implementing the Bode option. It shows wobbly waveforms and is inaccurate. It's basically useless. But this thread is focused purely on this model and this feature, so I thought let discuss the idea with a wider audience.
A video in which I demo the program measuring a crystal:
Another video in which I show how to analyze a negative feedback loop using an injection transformer:
https://www.youtube.com/watch?v=Dlk0V3aPnzg
For other scope brands the SCPI commands probably need to be changed a bit.
The project can be found on GitHub:
https://github.com/tband/dho-remote.
LCR example:

23nF parallel with 68uH

More challenging, a 4.0MHz crystal. A 100Hz signal is used which is 4 decades lower than the frequency measured.
Bigger goal for the Rigol hackers is to implement a Bode plot option in the scope. The software will then run on Android and controls a signal generator via a network connection (or the internal AWG if available). It can use this step response method using a square wave or the stepped sine wave for larger dynamic range. But that's just day dreaming at the moment.