3D GCode Viewer integrated with DWC
-
Now that is much closer to the word "simulation" than what is now - WOW! I LIKE IT!
I can easily see a big benefit (if this is going to be the new simulation), to also check that you have positioned your file correct on the heatplate, especially when working with additional csys beside the master-machine-csys, BECAUSE -> since it can get from the duet-config.g the maxi building size and can fetch the current "working-csys" (G53-G60 is what this is referring to) no more fuss there!!! You could show even "all" moves (travel-moves etc.) that are in the file to make sure everything is within bounds.
Can you tell me if that is implemented already and or if you think you would also have a use-case for this and could implement it?
Because that is something for big printers/cnc/lasers that almost no slicer can do (if you do not want to spent "real" money for it and not just a few bucks), to have a simulation with G54 in relation to your workingarea where you have positioned your local csys and where exactly it will be printed then!
(
some people might wonder about the use-case but 2 years ago when working in an art-school, we had courses where we had to position diffrent files on one plate and usually you do this with "sub"-csys like G54, G55, etc. and nobody in a semi-professional environment for basic/-beginner courses will have a slicer or laser-software or cam/cnc-software where they can simulate the whole machine with sub-coordinate systems. The safest thing is to do the work 1 time for/on the actual machine, so to avoid to have to put it into each software every year when a new version is implemented...
) -
@LB I can’t say that I have implemented anything for it. I would need to see a sample and look into the use case. This viewer does not simulate exactly what the duet would do it processes the gcode and renders it for the commands I have implemented.
-
@TLAS said in 3D GCode Viewer integrated with DWC:
I have a fork of the previous visualizer code that incorporates STL viewing, slicing, and a slick slicer settings / model control component (right now based on Slic3r). Let me know if you’re interested in the code. It’s based on AngularJS and relies on a NodeJS component to integrate with the user’s local slic3r settings and execute the slicer.
The goal is to eventually move it server side (cloud) for saving settings and slicing. Also possible to slice on the PI 4 - early benchmarks showed it performed at ~50% of a top end desktop, which means it can likely outperform a slice from the cloud with network transfer in most conditions.
Great feature!
Hope others have the same usecase:
Would appreciate to have the option to run it "locally"(no cloud), since we use duet-boards here at my work (because of me we converted the anycubic i3 mega when the mainboard died instead of throwing it away and buing a new one) and I do not think that by any means my boss likes the idea of our company-files being sliced/simulated in some sort of cloud somewhere... I think most company-printers with a duet or printers in public spaces (because of local data-protection-laws) would appreciate local viewing/slicing!Great work anyway - unbelievable to see how much is going on
-
I see another use case in printing the object multiple times with different print parameters and while printing cancelling the objects which are not ok. This could be a calibration in three dimensions too, changing the x, y and z parameters and cancelling the objects which are not good.
-
@Sindarius said in 3D GCode Viewer integrated with DWC:
@CaLviNx if you are talking about the 3D viewer the original purpose of it was because I use a mixing hotend and I wanted a way to preview how a model would look when i changed the filament on each of the extruders. This viewer approximates what the printed model will look like based on configured colors. Another use is being able to see the model before printing without having to go to a slicer to load it up.
ok that explains its real world use for you
-
@CaLviNx no one is forcing you to install or use this plugin. But thanks for your input...
-
O.K. still like it!
If you would be able to position the file relative to the "plate" in your simulation (that I hope fetches its size from the absolute machine-csys within config.g?) by an offset defined within G54-59 that would do the job.
To try that out you just slice an object that is of course smaller then your buildplate and position it as close to the csys (if the csys is in the corner) or in the middle of the csys (if csys is the center) and then when you uploaded the sliced file to your duet you move your printhead e.g. to a certain spot where you want it to be printed and define the "local" csys e.g. for G54. If the "active" csys could be reflected (...as long as it is active...) in the simulation that would be awesome! I think a lot of cnc-people out there would welcome it!
(Another thing I saw in the video: Since you can get the size of the print-volume via config.g you could limit zoom-out to a reasonable value when stuff get´s so small you cannot see anything anymore also I saw that of course you implemented center-the-view and stuff like it )
-
@Veti said in 3D GCode Viewer integrated with DWC:
this has been a feature in octoprint for some time.
https://plugins.octoprint.org/plugins/cancelobject/each object layer has a prefix comment. if the object is to be cancelled the pointer jumps to the next prefix object for the g code printing. leaving out the g code of that object.
What is the relevance of mentioning octoprint when this software is to be used on the duet.
And it still doesn't explain how what you said:
when one print fails over you can still finish the print on the other objects.
Relates to the "gcode viewer" ? you seem to be off on some tangent .
Seeing as we are now off on a tangent, what would be really useful is if there was a way to
have a camera integrated into the "cancel object" software/plugin or what ever you want to call, that could monitor when a segment has failed and automatically modify the g-code on the fly to stop the printer from extruding plastic for that segment. -
@jay_s_uk said in 3D GCode Viewer integrated with DWC:
@CaLviNx no one is forcing you to install or use this plugin. But thanks for your input...
excuse me ?
Please show me where I said anyone was forcing me to do anything, I was asking a question nothing more nothing less, but if you wish to take the hump about me asking a question and then try to be passive aggressive about it, be very careful.
It was NOT input it was a QUESTION
question, a noun (ASKING)
A sentence or phrase used to find out information
-
This post is deleted! -
Do you think on the long run the "color" could be somehow connected/attached to some sort of variable within filament-config.g and the actual number of extruders and their loaded filament? Just thinking out loud...
EDIT: (actually I am so impressed by the multi-colour-printer from deckingman, that I think that those multicolourprinters could get on the long run a relaistic visualization what colour the g-code wants to have and if that is realy loaded -> Of course this is maybe more complex with "mixing" hotends vs multiple independent colours after another but not mixing concepts)
-
@LB As I work toward further implementation some of that is totally possible. Originally this viewer popped up in a separate window and didn't collect any duet info. Since this is a plugin now it is much easier to access the object model and data that DWC captures.
Sample of changing extruders color just cause I happen to have one on hand.
-
@Sindarius said in 3D GCode Viewer integrated with DWC:
@LB As I work toward further implementation some of that is totally possible. Originally this viewer popped up in a separate window and didn't collect any duet info. Since this is a plugin now it is much easier to access the object model and data that DWC captures.
Awesome: On the long run I can imagine even a preview of "internal" files like movement-trajectories as lines/curves for bed-levelling and homing or that sort... on most cnc´s those are red-lines...
Yeah, as said, first thing for me would be a wire-frame for the absolut bounding-box of the machine. Second would be small crosses(or cross-hairs(?) I am not a native-english-speaker/-writer) for the absolut-csys (if active) and for the "actual"/temporary csys (with name written beside it would be nice e.g. a small "G5x") or something relative in this bounding box located (IF ACTIVE only of course)...
(As far as I remember the active csys like "G54" are already reflected in DWC when any but the machine-csys G53 is put active)
Sample of changing extruders color just cause I happen to have one on hand.
Looks great!
(
@dc42
)Do you think it is possible with the new conditional-g-code to defina a variable within filament-config.g for the hex-code (this is using a hex-code for the color it seems?)?
-
I'm really impressed. Will test when 3.2 be official release.
With things like that duet ecosystem winnings!! -
@CaLviNx said in 3D GCode Viewer integrated with DWC:
Seeing as we are now off on a tangent, what would be really useful is if there was a way to
have a camera integrated into the "cancel object" software/plugin or what ever you want to call, that could monitor when a segment has failed and automatically modify the g-code on the fly to stop the printer from extruding plastic for that segment.You may not like this, but there's also an octoprint plugin that does this. And yes it could become a plugin here as well.
https://www.thespaghettidetective.com/
The object cancelation functions already right now so that if you had a camera and you yourself saw an object fail, you could send the manual command to cancel that object.
https://duet3d.dozuki.com/Wiki/Gcode#Section_M486_Object_cancellation
The gcode viewer functionality could enable a useful GUI for many features.
-
https://github.com/Sindarius/DWC_GCodeViewer_Plugin/releases/tag/0.6.5
Posted a new update. Cleaned up the side menu a bit.
https://user-images.githubusercontent.com/12520045/99151632-3acb8900-2662-11eb-920a-216d9a346b23.png
-
@Phaedrux said in 3D GCode Viewer integrated with DWC:
@CaLviNx said in 3D GCode Viewer integrated with DWC:
Seeing as we are now off on a tangent, what would be really useful is if there was a way to
have a camera integrated into the "cancel object" software/plugin or what ever you want to call, that could monitor when a segment has failed and automatically modify the g-code on the fly to stop the printer from extruding plastic for that segment.You may not like this, but there's also an octoprint plugin that does this. And yes it could become a plugin here as well.
https://www.thespaghettidetective.com/
The object cancelation functions already right now so that if you had a camera and you yourself saw an object fail, you could send the manual command to cancel that object.
https://duet3d.dozuki.com/Wiki/Gcode#Section_M486_Object_cancellation
The gcode viewer functionality could enable a useful GUI for many features.
Why would I not like it?
And I reiterate, it would be useful if :
that plugin could monitor when a segment has failed and automatically modify the g-code on the fly to stop the printer from extruding plastic for that segment.
And still this does not explain the reason why someone would even mention a feature that occurs in octoprint, and what relationship that feature has to do with the Author's gcode viewer,
-
@CaLviNx said in 3D GCode Viewer integrated with DWC:
And still this does not explain the reason why someone would even mention a feature that occurs in octoprint, and what relationship that feature has to do with the Author's gcode viewer,
Because he posted a photo showing a canceled object. (The one with the Xs over it) and you asked what the real world use was and veti told you what the use of cancelling an object is and posted a link to the origin of the feature in the form of the octoprint plugin. For such a big brain I'm surprised you're not following along here.
-
@Sindarius said in 3D GCode Viewer integrated with DWC:
https://github.com/Sindarius/DWC_GCodeViewer_Plugin/releases/tag/0.6.5
Hey I clicked on your link, could you help me where to find in the forum or duet-wiki a reference how to implement this plugin?
-
@LB upload the zip file via the systems tab.
There will be a pop up asking if you want to install the plugin.
It can then be activated under the plugins tab on the machine specific settings tab