Giter Site home page Giter Site logo

Comments (14)

timmehtimmeh avatar timmehtimmeh commented on May 23, 2024

Hi @SwapFaceL - thanks for testing this on Linux and reporting back. I'm very happy that I'm able to help users like you make the printer work with operating systems that are not officially supported by Dremel! Currently I don't have a Linux machine, but I'll work on setting up Ubuntu on a pen drive and try testing that out. Which version of Cura and which version of the plugin are you using?

Regarding your first point I've got a quick question: did you adjust the density in grams/cm³ on the dremel_pla material or another material, and are you using the official Dremel material while doing the prints? I'm more than happy to change the set density in this repo, as I haven't strictly measuered dremel's PLA format (I've long since switched to 3rd party filaments), but I got the spec from Dremel's own officially released "Dremel DigiLab 3D Slicer" that uses Cura underneath it. Maybe they didn't set the filament density up correctly, but I'd be a bit surprised by that. It's also possible that there is an incorrect estimate on Cura's end on the amount of material extruded that would cause an incorrectly predicted weight.

Regarding how to change the estimated time: Unfortunately no I have no control over that - I get that number straight from Cura (along with the estimated filament length). I've found that even Simplify3D, which is a paid product can produce significant errors in the time estimate, often on longer prints S3D will underestimate the actual amount of time required by hours.

I'll take a look into the screenshot issue you're seeing in Linux. Inside the plugin there's some fallback code that will write a generic Cura icon instead of the screenshot if the screenshot section detects some errors, but apparently the issue you're seeing isnt' triggering that code.

Edit: I just set up Ubuntu on a persistent USB thumbdrive and have a couple more questions

  1. The screenshot feature is working for me with some minor issues that I'll look into. The issues seem to be that the screenshot grabs the correct area of the screen, but will also grab any windows in the area that may be in front of Cura's window, so if I drag a terminal window into the correct section of the screen and in front of the Cura application window then when I click save the terminal window is composited into the screenshot and covers up the preview. Most of the time there would be an easy workaround, except there is an issue that often the screenshot often grabs the save dialog in front of the preview window. I'll take a look into fixing this. In the mean time if you wouldn't mind sharing a small .g3drem file that your system produced then I can take a look at the screenshots that you're seeing.

  2. I just downloaded Cura 3.2.1 for Ubuntu and this is the first time that I've seen an instance of linux's AppImage container. Did you manage to copy the files in the resources folder into the appimage? Do you have any tips on how you did that - I'd love to include instructions (and hopefully a simple installation script) for anyone else using Linux as part of the readme.

from cura-dremel-printer-plugin.

UNICodehORN avatar UNICodehORN commented on May 23, 2024

Hi,

wow a lot to process now, so I will try to answer as structered as possible.
System-Configuration
Ubuntu 17.10
Cura 3.2.0
Dremel 3D20 (obvious)
with original dremel_pla
Pluginversion: 0.2.6

Prediction-Question
As you already found out: I changed the density of the original dremel_pla (you provided). I didn't care about the filament details Dremel provided. I just checked the weight of some of my printed objectes and adjusted the value until it was a correct weight prediction in all cases. So the density I instered might be not the correct one, but helps Cura to predict the weight correctly.
The Calculation of Curas time prediction is a pity, would be nice if we could adjust it, because I think it's just a linear factor which is missing.

Screenshot Issue
Okay well so far all my screenshots end up to be completly black xD. I will send you a small file later when at home.
And I will also try to move close all unnecessary windows and move everything away from the screen which might be in the way. Maybe that helps...

Installation
Well no you do not have to change anything on the Appimage. Just execute it and wait until Cura starts for the first time. After that you can close it and it should have created a folder in your Userfolder.
~/.cura/ there is the ressource folder and everything else where you can copy the files as mentioned in your instructions.
Worked without any problems for me :)

Hope this helps for now. Will send you the promised file later. Thanks for investigating further.

EDIT attached you can find two photos of made files and how the preview is displayed on the printer. As well as a printing file for comparison.

2018-02-20 16 59 07
2018-02-20 16 58 37
camCover.zip

from cura-dremel-printer-plugin.

timmehtimmeh avatar timmehtimmeh commented on May 23, 2024

Herzlichen Dank fur die Informatzion und die File - or is it das File (ich glaube die...von die Komputerdatei, aber my Deutch kann besser sein!)

I've gone through the .g3drem file you provided and verified that indeed the data in the bitmap has only zeros for values which would indeed produce a black image. I'm not sure why this is happening on your machine, but I can't seem to reproduce it using either an Ubuntu 17.10 system running from a thumbdrive, or on an ubuntu 16.04 system running on another computer in a virtual machine. In both cases I get screenshots that have valid image data. Nonetheless, I've made some improvements and increased the logging within the plugin and checked the changes into the develop branch. Additionally, as you've done more measurements than I have, I've gone through and modified the density of dremel's filament within the marterial file.

If you want to check out the changes to the plugin, feel free to overwrite the DremelGCodeWriter.py located in

~/.local/share/cura/3.2/plugins/DremelGCodeWriter/DremelGCodeWriter with this version (you can right click the link below to save the .py file):

https://github.com/timmehtimmeh/Cura-Dremel-3D20-Plugin/raw/develop/plugins/DremelGCodeWriter/DremelGCodeWriter.py

If your plugin location is different (you indicated that you had a ~/.cura folder...I don't have that) please copy over it in the appropriate location instead.

Since you've already modified the dremel material I don't think you need to re-download that.

I'm hoping at a minimum that with the new changes you will get a generic Cura icon on the Dremel's screen. With the increased logging I hopefully can figure out exactly where the zeros in the screenshot are coming from and maybe make a fix.

After you get this plugin copied and run if you could post the last 20 to 30 lines of cura's log located at ~/.local/share/cura/3.2/cura.log

In there - there should be some lines that contain "DremelGCodeWriter.DremelGCodeWriter.write", I'm looking for the last item with that statement that preceeds the 'Finished Writing Dremel Header.' text:

2018-02-20 15:26:42,635 - ERROR - DremelGCodeWriter.DremelGCodeWriter.write [126]: Dremel GCode Writer - Black screenshot detected - using generic cura icon instead
2018-02-20 15:26:42,646 - ERROR - DremelGCodeWriter.DremelGCodeWriter.write [155]: Finished Writing Dremel Header.
2018-02-20 15:26:42,704 - ERROR - DremelGCodeWriter.DremelGCodeWriter._serialiseSettings [205]: No valid quality profile found, not writing settings to GCode!

Thank you again for helping me debug this - I sincerely appreciate your time!

Edit: I've added a Linux installation script to the develop branch and credited you in the Readme - many thanks for your help!

from cura-dremel-printer-plugin.

UNICodehORN avatar UNICodehORN commented on May 23, 2024

Hi again,

thanks for the reworked version.
So I replaced the python-Script and indeed it uses a cura icon now.

I also copied the (I think relevant) rows of the log:

[66]: 'info/send_slice_info' is turned off.
2018-02-22 10:07:19,018 - DEBUG - [(140039950141120)-MainThread] LocalFileOutputDevice.LocalFileOutputDevice.requestWrite [139]: Writing to Local File Desktop/test.g3drem in binary mode
2018-02-22 10:07:19,572 - ERROR - [(140039187052288)-Thread-3] DremelGCodeWriter.DremelGCodeWriter.write [121]: Dremel GCode Writer - Black screenshot detected - using generic cura icon instead
2018-02-22 10:07:19,577 - ERROR - [(140039187052288)-Thread-3] DremelGCodeWriter.DremelGCodeWriter.write [133]: Dremel GCode Writer - Black screenshot detected after scaling - using generic cura icon instead
2018uoy02-22 10:07:19,590 - ERROR - [(140039187052288)-Thread-3] DremelGCodeWriter.DremelGCodeWriter.write [162]: Finished Writing Dremel Header.
2018-02-22 10:07:19,726 - ERROR - [(140039187052288)-Thread-3] DremelGCodeWriter.DremelGCodeWriter._serialiseSettings [212]: No valid quality profile found, not writing settings to GCode!
2018-02-22 10:07:19,731 - DEBUG - [(140039187052288)-Thread-3] UM.FileHandler.WriteFileJob.run [61]: Writing file took 0.6948375701904297 seconds
2018-02-22 10:07:23,705 - DEBUG - [(140039950141120)-MainThread] UM.Qt.QtApplication.windowClosed [345]: Shutting down cura

EDIT In case we can't find the problem, how about we change the Script so it checks whether there is an image file with the same name as the Savename for the file (in the plugins folder or the location the file is going to be saved to) and if there is a black screenshot, it just uses the file as preview image?!

from cura-dremel-printer-plugin.

metalman3797 avatar metalman3797 commented on May 23, 2024

I can help with some of this issues you guys have.

  • For more accurate print times, ENABLE ACCELERATION CONTROL.
    image

from cura-dremel-printer-plugin.

timmehtimmeh avatar timmehtimmeh commented on May 23, 2024

Hi @metalman3797 -

Thanks for the info - I'll be the first to admit that I've spent almost zero time optimizing the Dremel printer settings in this repo. If you've got a profile that you know works well for the Ideabuilder 3D20 and would like to export it and post it here I"d be happy to take a test it out and incorporate what I can into the default settings.

from cura-dremel-printer-plugin.

timmehtimmeh avatar timmehtimmeh commented on May 23, 2024

@SwapFaceL - thanks to your log it seems that the call to the QT library function that's taking the screenshot isn't working on your machine (as opposed to the code that resizes the screenshot after the first call grabs it). I was hoping that the original screenshot would be captured and that there was some error in the resizing, but that seems not to be the case.

I'm not sure if I can do much about QT returning data filled with zeros, and a quick google search didn't provide any useful information. I'll take a look at implementing your alternate suggestion sometime this weekend and post back when something is ready.

Edit: I got bored watching the Olympics tonight (Ice dancing is not for me) and have implemented the following functionality in the develop branch (follow same steps as before with the same link to get the latest code):

  1. If the user saves a file called llama.g3drem to a folder, and within that folder there exists a file named llama.png, llama.jpg, llama.jpeg, llama.gif, or llama.bmp then the plugin will select that file for use as a preview image.
    llama
    produces
    image
    If an error is detected then the plugin tries step 2.

  2. If no preview image exists, then the plugin attempts to take a screenshot from Cura's screen and use it. If the plugin detects an error here then it moves to step 3.

  3. The plugin uses a generic cura icon.

I haven't tested this yet on Linux or MacOS (will do that this weekend), but it works on Windows10 for me. Please feel free to give it a try and let me know if it works for you. Please also note that the filename search may be case sensitive. The image file name should have the same case as the saved file name, and the image file extension should be lower case (i.e. please use .jpg and not .JPG). Some OS's and filesystems are case-insensitive, but to be safe please use the same case for both names. I'll evenutally get around to removing this limitation but probably won't do so for a little while.

Finally - note that the image is scaled and cropped to fit an 80x60 image size, so it's best if your original image is close to a 4:3 aspect ratio

from cura-dremel-printer-plugin.

metalman3797 avatar metalman3797 commented on May 23, 2024

I would be happy to update the profiles. I have thousand of hours on our printers over here. What other information are you missing on the *.g3drem format? I can try to help fill in any of the blanks.

from cura-dremel-printer-plugin.

UNICodehORN avatar UNICodehORN commented on May 23, 2024

@timmehtimmeh Thanks for the update. (Is the Update pushed in the Git already?) My printer is busy right now printing stuff for my car but I will definitively check out the preview image stuff. For updating the profile I am measuring right now the printing time of the current prints. Maybe we can adjust the profile then. I assume especially travel times, filling and support structures take more time than calculated.
@metalman3797 Did you found the right settings already?

from cura-dremel-printer-plugin.

timmehtimmeh avatar timmehtimmeh commented on May 23, 2024

@SwapFaceL - yes the update is committed to the develop branch here: https://github.com/timmehtimmeh/Cura-Dremel-3D20-Plugin/raw/develop/plugins/DremelGCodeWriter/DremelGCodeWriter.py - feel free to test it whenever you like - as I said, I'll test it on mac and linux sometime this weekend. Hopefully this fix will help you resolve this issue at which point I'll update the instructions and then make an official release and put the fix onto the main (master) branch.

@metalman3797 - Thanks for your offer to help! Any and all settings that you know that work well for the IdeaBuilder would be welcome, from machine settings, to print profiles etc... The ideabuilder profile included in this repo only had the default temperatures modified (and as of yesterday I've enabled the acceleration control by default at your suggestion. see: 38d7add ) Cura allows you to export alot of these settings, but screenshots would also work. I've started a separate issue here to track the profile optimization: #6

Re: which parts of the .g3drem file aren't yet understood - anything that says "Magic #s" in this section of the Readme:
https://github.com/timmehtimmeh/Cura-Dremel-3D20-Plugin#technical-details-of-the-g3drem-file-format is a part of the .g3drem file format header that I don't currently understand.

from cura-dremel-printer-plugin.

metalman3797 avatar metalman3797 commented on May 23, 2024

Yeah I already have the profiles done. I am the lead software engineer at Dremel for the 3D team. I create the profiles for our software as well as managing the firmware. I have close to 10K hours on the 3D20's and probably another 20K hours on 3D40/3D45 since we started development so I am very familiar with this :)

from cura-dremel-printer-plugin.

timmehtimmeh avatar timmehtimmeh commented on May 23, 2024

@metalman3797 - it would awesome to have you help! You definitely know more than me both about Cura plugin implementation and the g3drem file format (and python in general =) Anything that you want to and are allowed to contribute would be most welcome

from cura-dremel-printer-plugin.

timmehtimmeh avatar timmehtimmeh commented on May 23, 2024

@SwapFaceL - I've gone through and cleaned up the code that searches for an image in the same directory that you save the .g3drem file into. Now there is no restriction on the capitalization of the filenames. As promised I tested on Mac, Linux and Windows and on all three of my systems the implementation worked.
If you get a chance to test in the next few days let me know how it works for you - if you don't get a chance, no worries! I'll probably go ahead and make a version 0.3.0 release with the new features sometime next week

Edit: Version 0.3.0 has been released with the improvements to the Dremel printer and material definitions that @metalman3797 contributed in addition to the screenshot improvements that @SwapFaceL suggested. Both of you have been credited in the Readme.md - many thanks und schöne grusse to both of you!

@SwapFaceL: If I'm ever able to duplicate the screenshot issue returning black images I'll try to fix the issue instead of providing the workaround, but I hope that at least this latest version allows you some flexibility to use your printer on Linux!

Cheers/Prost =)!

from cura-dremel-printer-plugin.

timmehtimmeh avatar timmehtimmeh commented on May 23, 2024

I'm going to close this issue now. Feel free to reopen a new issue if anything isn't working, or you have any suggestions for improvement. Thanks to both @SwapFaceL and @metalman3797 for your help - I sincerely appreciate it!

from cura-dremel-printer-plugin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.