A software oscilloscope for Arduino made with Python and PyQtGraph
A python project which takes in data from any stream(Serial port, TCP socket or any generic stream) and plots it in real time using PyQtGraph. The stream must implement open(), close() and readline() methods to work with the package.
cd
to the folderpip -install -r "requirements.txt"
'''
Uses the SocketPlot-Test example to plot a sine wave.
Run SocketPlot-Test.py on a different console window
'''
>>>from SoftOscilloscope import SocketClientPlot
>>>plot = SocketClientPlot('localhost', 5000)
>>>plot.start()
'''
Example for serial plots
'''
>>>from SoftOscilloscope import SerialPlot
>>>plot = SerialPlot('COM_PORT_NUMBER', BAUD_RATE)
>>>plot.start()
'''
Takes a generic stream and sets custom parameters
'''
>>>from SoftOscilloscope import GenericPlot
>>>plot = GenericPlot(
myStream,
xlim=(-100,100),
ylim=(-50, 50),
interval=1,
autoscale=False,
read_size=1)
>>>plot.start()
Plotting x,y,z data from a 9DOF IMU over a serial port.
If you want to add features, improve them, or report issues, feel free to send a pull request!