klipper
klipper copied to clipboard
add module for live-plotting data with plotjuggler
Plotjuggler is a more powerful and easy alternative to matplotlib. It is used by large companies in the robotics and self-driving space. This PR serves as a minimal prototype and can be further integrated with motan, the heater controller etc. in the future. I encourage anyone to try it out.
Limitations
- websocket server is only supported with the Linux version of plotjuggler
- when passing non monotonic timestamps e.g. after a klipper restart plogjuggler has to be restarted as well due to a bug in plotjuggler
How-to use
- run pip install websocket-client in the klippy virtual-environment
- add the following config section with your pc's ip
[plotjuggler]
host_adress: 192.168.178.100:9871
-
open the plotjuggler software and select the websocket from the dropdown, click on start and enter the port as well as 'timestamp' in the respective fields.
-
periodically run code sections like this to plot data
plotjuggler = self.printer.lookup_object('plotjuggler', None)
if plotjuggler:
plotjuggler.send_data(read_time, self.heater.name, {
'temp': temp,
'target_temp': target_temp})
Thank you for your contribution to Klipper. Unfortunately, a reviewer has not assigned themselves to this GitHub Pull Request. All Pull Requests are reviewed before merging, and a reviewer will need to volunteer. Further information is available at: https://www.klipper3d.org/CONTRIBUTING.html
There are some steps that you can take now:
- Perform a self-review of your Pull Request by following the steps at: https://www.klipper3d.org/CONTRIBUTING.html#what-to-expect-in-a-review If you have completed a self-review, be sure to state the results of that self-review explicitly in the Pull Request comments. A reviewer is more likely to participate if the bulk of a review has already been completed.
- Consider opening a topic on the Klipper Discourse server to discuss this work. The Discourse server is a good place to discuss development ideas and to engage users interested in testing. Reviewers are more likely to prioritize Pull Requests with an active community of users.
- Consider helping out reviewers by reviewing other Klipper Pull Requests. Taking the time to perform a careful and detailed review of others work is appreciated. Regular contributors are more likely to prioritize the contributions of other regular contributors.
Unfortunately, if a reviewer does not assign themselves to this GitHub Pull Request then it will be automatically closed. If this happens, then it is a good idea to move further discussion to the Klipper Discourse server. Reviewers can reach out on that forum to let you know if they are interested and when they are available.
Best regards, ~ Your friendly GitIssueBot
PS: I'm just an automated script, not a human being.
Unfortunately a reviewer has not assigned themselves to this GitHub Pull Request and it is therefore being closed. It is a good idea to move further discussion to the Klipper Discourse server. Reviewers can reach out on that forum to let you know if they are interested and when they are available.
Best regards, ~ Your friendly GitIssueBot
PS: I'm just an automated script, not a human being.