Jump to content

Managing multiple printers in a lab environment


kerog

Recommended Posts

Posted · Managing multiple printers in a lab environment

Hi,

 

I have a lab with several different brands of printers: Ultimaker, Lulzbot, Type A, RepRap, and a wide range of user experience levels, from newbie to expert.  We want to standardize on the Ultimaker version of Cura as a one-stop shop, but are running into a few issues that I was hoping someone on the forum could help me with.

 

(1) I want to set up profiles for some printers that aren't on the base Cura list: Lulzbot Taz5, single and dual head, and then our custom RepRap printer.

(2) I want to set up the profiles (both printer and slicing) for these printers once, then copy the profiles onto each (Windows) computer and have them automatically show up in a printer list for anyone who logs into one of those computers.

(3) My company tightly controls access to the Program Files folder, so it's tough (but not impossible) for me to edit anything in there.

 

I looked at the resources/definitions folder and thought I could figure out what was going on, but the changes I made didn't seem to register when I restarted Cura.  Anyone know how to customize this without branching from GitHub?  I also tried going into my AppData/Roaming/cura folder and making the changes there, but there also the seemingly logical extrapolations from the existing contents did not yield me anything. 

 

Surely someone out there has done this.  Any help on offer would be greatly appreciated.

 

Thanks,

 

Keith

 

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    Point1: menu item Settings\Printer\Add printer; select Custom - then enter your printer name - then hit Add. You should get a dialogue box displayed for your new printer. If not then menu item Settings\printer\Manage printers . Select your new printer from the list and hit machine settings. 

     

    Point 2: Depends on what version of Cura you are using. I will assume 2.7 or above, I also assume Windows OS. Go to the Users folder and select the folder structure under your user id. Select the folder AppData and then the sub folder Roaming. Go to the sub folder Cura and within that you will see a subfolder with your version of cura e.g. folder 3.2. If you have installed versions prior to 3.2, down as far as 2.7, you may see subfolders for them also. Within your Cura  version folder there are two relevant sub folders, Machine Instances (will have your printer definition(s) ) and Quality(will have your settings profile(s).

     

    Point 3: the data is not in the Programs folder

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    I should say that the Cura install code has been buggy so whether you will see exactly the same folder structure as I described I know not E.G. Under my Cura folder I have two folders, 2.7 and 3.2, but within my 2.7 folder I have a second 3.2 folder structure!! Which of the two 3.2 folder structures is the right one I know not as I use 2.7.

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    Thanks for the reply, yellowshark.  I'm aware of the process for making new printer profiles, and was experimenting with editing the json files directly already.  The process works OK if you are just trying to set up Cura for your own personal use, but breaks down if you want to make a set of standard profiles for a group to use.  With a shared Windows lab computer, everyone has the same Program Files folder in common, but each person has their own AppData folder.  So ideally the relevant profile information would be saved in the former location.  But if I just add a json file the the definitions folder there, Cura doesn't seem to recognize it, and it seems like it should.

     

    I guess an alternative would be that I could set up my own set of profiles, then copy my AppData folder to a group area and tell each new user to copy the Machine Instances, etc. folders to their own area.  That might work, but it would be pretty clunky and hard to maintain. 

     

    I see on github there's a place to submit profiles for other printers, but I don't know if they take submissions from individuals.  For instance, there are no Lulzbot profiles, probably because they have their own branch of Cura that they are using.  I wouldn't want to step on their toes by submitting an unsolicited unofficial profile.

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    There are no Lulzbot profiles in Cura 2.x or 3.x because they were never submitted to be included.

     

    Many of the profiles currently in Cura were submitted by users as opposed to companies.

     

    Note that placing definitions and profiles in the respective folders in the application resources folder should work, even if it is not recommended; they will be gone when installing a new version of Cura. If it does not work, check the logs for hints why not. 

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    Yeah, it's not working.  I intend to file an issue on GitHub when I get a chance to write up the steps to duplicate in detail.  Can you tell me where to look for these logs? 

     

    And thanks for telling me about the Lulzbot profile info.  I'll also try to get around to submitting those profiles.

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    Go to Help->Show configuration folder. That folder should have a cura.log

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    If you directly edit files in the "program files" folder, or in the root of the harddisk, Windows sometimes moves them behind your back into a totally different subdirectory somewhere else, called "virtualstore", deep down in your *personal* files. I don't remember the exact location, so you need to google for it.

     

    The purpose of this was to prevent people from messing up their "program files" folder; but this weird method rather messes up way more than it solves, because obviously a lot of programs and people can't find their files anymore.

     

    Another thing is that system protection may revert any changes to system files - or what it considers system files - upon the next system reboot.

     

    Could one of these two things be the reason why the changes you make "don't stick"?

     

    You should be able to prevent this weirdness by disabling system protection, then make all the required changes, and then enable system protection again.

     

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    OK, looking through the log got me where I needed to go and I was able to get my profiles working.  I cloned the Cura repo from GitHub, made my changes, and committed, but when I tried to put in a pull request access was denied.  What do I need to do in order to be able to submit a pull request?

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    You have to push your changes to a personal github repository, and make a pull request from there. You cannot push to the Ultimaker “origin” remote.

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    Can yo

    30 minutes ago, ahoeben said:

    You have to push your changes to a personal github repository, and make a pull request from there. You cannot push to the Ultimaker “origin” remote.

     

    Can you direct me to a tutorial or something on this workflow?  Or maybe just write out a step-by-step?  It didn't seem to be in in the workflow tutorial that came with GitHub desktop.  Thanks for helping out a GitHub newbie!  I use Git every day at work, but GitHub is a bit new to me.

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    There are many roads to Rome.

     

    Create a new, empty repository in github.

    Add the new repository as a remote on your local checkout.

    Push the branch you have been working on to the new remote.

    On github, you will see a link to make a pull request

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    Thanks, but I seem to be clueless.  I went and created a repo on GitHub: kerog777/cura, and pushed my changes to it.  But when I try to do a pull request there I still get rejected.  I must be missing something.  Is there something I can do to get a more verbose response that would aid in diagnosis of exactly what I'm doing wrong?

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment
    2 hours ago, kerog said:

    Thanks, but I seem to be clueless.  I went and created a repo on GitHub: kerog777/cura, and pushed my changes to it.  But when I try to do a pull request there I still get rejected.  I must be missing something.  Is there something I can do to get a more verbose response that would aid in diagnosis of exactly what I'm doing wrong?

     

    Your own repository is probably not based on the original one, easy solution: make a "Fork" first.

     

    A working sequence would be:

    • create a fork of the original repository
    • create a new branch in your (forked) repository
    • make all changes in your branch
    • commit and push all your changes to GitHub
    • create a pull request (select the new branch first)

    For more information choose "github fork pull request" as search terms:

     

    Here is an article with lots of explanations and comments: GitHub Standard Fork & Pull Request Workflow

     

    A shorter article with examples on the command line: Forking a GitHub Repository and Using Pull Requests

     

    And here i found a video with all steps: https://www.youtube.com/watch?v=G1I3HF4YWEw

     

     

  • Link to post
    Share on other sites

    Posted (edited) · Managing multiple printers in a lab environment
    17 hours ago, kerog said:

     I went and created a repo on GitHub: kerog777/cura, and pushed my changes to it.

     

    You are almost there. Your branch is the PC_Settings_Changes one, right? On github, select that branch:

    https://github.com/kerog777/Cura/tree/PC_setting_changes

    Just below the "Clone or download" button, there is a "Pull request" link, which gets you here:

    https://github.com/Ultimaker/Cura/compare/PC_setting_changes...kerog777:PC_setting_changes?expand=1

    Change the base branch to the branch of the original repository you would like your changes to be merged into (master)

    https://github.com/Ultimaker/Cura/compare/master...kerog777:PC_setting_changes?expand=1

    Now make a nice description, explaining why this PR should be merged (why is it relevant to everybody, what does it solve?), and submit.

     

    Edit: oh, wait, PC_Settings_Changes is not your branch. In that case I don't see our branch on your github clone of the Cura repository.

    Edited by ahoeben
  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    OK, I think I figured out the process and put in a pull request under the branch Felix_Profile.  If this works out OK, I will post more profiles for other printers I work with.  Still a little fuzzy on what's supposed to go into the "version" fields in the .json files.  If someone could explain how that's supposed to work I'd be grateful.

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    Asking again.  Can anyone explain what the deal is with the version fields?  Looked in the wiki; nothing there.  Tried to look in the code, but didn't know where to start, really.  Put in my pull request and got comments back that my version numbers were wrong and had to be something else, but no explanation of why.

  • Link to post
    Share on other sites

    Posted · Managing multiple printers in a lab environment

    The version and setting_version must match whatever is currently in the master branch of Cura (which is always newer than the latest stable release). Pull Requests are always merged into the master branch.

     

    The version and setting_version fields are increased when the format of the files changes (however subtly), or when there are new required fields. For files that are inside the Configuration folder (ie: files that do not come with Cura, but are installed/created by the user), there is an upgrade script that updates the files and sets the version and setting_version automatically, but this is not run on the files in the resources folder because that is readonly (ie: the upgraded files could not be stored).

  • Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
    • Our picks

      • Introducing the UltiMaker Factor 4
        We are happy to announce the next evolution in the UltiMaker 3D printer lineup: the UltiMaker Factor 4 industrial-grade 3D printer, designed to take manufacturing to new levels of efficiency and reliability. Factor 4 is an end-to-end 3D printing solution for light industrial applications
        • 2 replies
      • UltiMaker Cura 5.7 stable released
        Cura 5.7 is here and it brings a handy new workflow improvement when using Thingiverse and Cura together, as well as additional capabilities for Method series printers, and a powerful way of sharing print settings using new printer-agnostic project files! Read on to find out about all of these improvements and more. 
         
        • 26 replies
    ×
    ×
    • Create New...