[Plugin] PrettyGcode viewer

Now that gcode is from Cura. :slight_smile: You can't fool me. I have looked at way too much gcode lately.

1 Like

here's the stl he uploaded sliced with s3d .. not sure it's complex enough to have all features there..Wire Borer Collett v2.gcode (79.4 KB)

The gcode is rathere simple, every feature starts with

; feature FEATURE NAME

It just hasn't been my day. I choose a gcode file small enough to upload and it turns out to be just about the only thing I have ever sliced with Cura :slight_smile:
Never mind. If you need anything just let me know. Always happy to help.

1 Like

I did a new release with a bunch of bug fixes and a little better sync.

Syncing still isn't perfect. Its now based on the printing file position the same way the internal gcode viewer is. The issue is that number is updated as soon as line of gcode is READ from the file. The line still needs to be Queued up on the server, then sent to the 3D printer and then, some time later, it will actually be printed. Current the animated nozzle is tracking a little behind when the line is SENT to the printer. This produces a closer sync with the printer, but it does not match the lines being drawn in the viewer. I am trying to find a little bit better compromise now.

I plan to add the new gcode colors and allowing the camera to go below the plane in the next version.

3 Likes

Question for anyone who has used this plugin. Is it ready for general release? Is it useful enough? Is it stable enough?

It's worked great for me in my testing. I don't see any reason why it wouldn't be stable enough to use, but if it doesn't work out for you it's very easy to disable it in plugin manager if you're unhappy.

I would say yes :slight_smile:

There is one issue. Your current setup.py is still listing the version as 0.1, although your pre-release linked is version 0.2. You may want to fix that before making the release public...

Release early, release often. :wink:

1 Like

Still working perfectly for me, so certainly good enough for general release. Could be one-off issues with some different printers or gcode flavors but I'm sure these will be minor and solvable.

Cool. I found a bug I need to fix before I release it. I will probably do it this weekend.

I put up a new version. If a few people report this is good I will try to publish it.

Changes:
-Rewrote the render loop so it should use much less cpu/gpu when idle
-Added documentation under the 3d window in the tab. Toggles with a button.
-Made all the code changes needed (I think) to do an official release on the plugin depot.
-Added an option to orbit the model when the scene is idle (no mouse movement for 5 sec).
-Added an option in the Documentation section to add additional CSS to the page. This is to allow users to change the size of UI elements without a whole UI of its own. Its not a great solution and I may do something else later.

1 Like

I just installed the new version - I'll let you know if I find anything to report back to you about.

Again, testing has shown no issues, though it's the first time I've noticed the "Orbit when idle" setting (I should have read your notes better!). It's a cool idea but better suited to a print centered on the bed.
Actually, I though it would be a cool idea if the display could have an option to center on the print head position. I can imagine it would also look great (and be useful) when used with the "Orbit when idle" option.

The orbit is around the view center. You can change where the view is centered on by dragging using the middle mouse button. The idea is if the object isn't centered on the build plate (it usually is) you can recenter the view with the mouse and then when the orbit starts it will be around the point you chose.

I will try centering the view on the print head. I think with the way it moves it may be disorientating.

Thanks. I'll try that. I agree with your comment on centering round the print head, especially with fast, short movements. Anything like that would have to be smoothed or it could end up being very jerky, but don't bother if it's not worth implementing. The idea only came about when I was printing a string of multiple copies of an object that was spread all the way across the X-axis. For such a print it's inevitable that, at times, the part being printed is far from the viewpoint.

Can someone tell me how to install PrettyGcode? The repo has no docs.

In plugin manager use the url option and copy the below link into it to install.

https://github.com/Kragrathea/OctoPrint-PrettyGCode/archive/master.zip

If people are actually using this I should try to do a official release. If I can just remember what needed to be done...

Got you covered :wink: