Jump to content

Individual print bed for custom printer


BastelWastel

Recommended Posts

Posted · Individual print bed for custom printer

Hello, 
I would like to add a STL for the print bed to my custom FFF printer. I have set up the printer via the software (Add Printer). 
For commercial printers it worked to replace the STL file in the meshes folder or alternatively to enter a different name of the STL file in the json file. But for my custom printer there is no json file at all. Can I still assign an STL file for the print bed?

  • Link to post
    Share on other sites

    Posted · Individual print bed for custom printer

    You would have to create and use a .def.json printer definition for your printer, instead of using the "Custom FFF Printer". The Custom FFF Printer definition does not have an STL, so there is nothing to replace.

  • Link to post
    Share on other sites

    • 7 months later...
    Posted · Individual print bed for custom printer
    On 1/29/2023 at 11:33 AM, BastelWastel said:

    But that's what I did now.

    @BastelWastel what exactly did you do...?

    where did you create the .def.json printer definition?

    I would like to do the same thing

     

    I found a .def.json file in /Applications/UltiMaker Cura.app/Contents/Resources/share/cura/resources/definitions/fdmprinter.def.json (on MacOs)

    but editing that file didn't work

     

    I also found these /Users/..user../Library/Application Support/cura/5.4/definition_changes/pino_settings.inst.cfg

    but couldn't find any .json files there...

     

    cheers / joris

     

     

     

  • Link to post
    Share on other sites

    Posted · Individual print bed for custom printer
    4 hours ago, rooiejoris said:

    I found a .def.json file in /Applications/UltiMaker Cura.app/Contents/Resources/share/cura/resources/definitions/fdmprinter.def.json (on MacOs)

     

    You really shouldn't change that file. Almost every printer profile in Cura is based on it (usually indirectly through one for a manufacturer).

     

    To find where to put your custom files, open Cura and Help > Show Configuration Folder (I don't know where it is on MacOS or I'd point you straight to it).

     

    If your printer is anything like an existing printer, it's best to copy the .def.json for that and make your necessary changes. If it's completely original, you can just copy fdmprinter.def.json, put it in the definitions folder in your Cura configuration folder., and make your changes (then rename the file to whatever you set the printer name to). You'll also need to create some files in the variants folder for the different sizes of nozzle you can use, but for most printers you can just copy some existing ones and just edit the printer name to what you set in the JSON config file.

  • Link to post
    Share on other sites

    Posted · Individual print bed for custom printer

    Just copied the "fdmprinter.def.json" to the config folder and changed

            "visible": true,
            "platform": "platform.stl",

    (visible was set to false and platform line was added)

     

    However I don't see a "meshes" folder, I created one to test, but didn't work.

     

    There are no files in the "variants" folder, but there are config changes in the "definition_changes" folder

    I have an ".inst.cfg" in there.

    I see in the .json file a line with:

            "has_variants": false,

     

    so I don't think the variants are necessary...?!?

     

    Some extra information why I want this: The bed size is 1000x600mm (big!) and there is a glass chip of the bed on a certain spot, I have a stl file with a hole on that spot I want to have as a buildplatform. Now I just load that file, but it would be luxury to have that default in Cura.

     

    cheers / joris

     

     

     

     

     

  • Link to post
    Share on other sites

    Posted (edited) · Individual print bed for custom printer

    Any chance you could upload the .def.json file you created? (You might have to put it in a zip file to be able to attach it to the post)? Cura can be very picky when it comes to parsing definition files so it's easy for there to be something in there it doesn't like.

     

    Also, you should probably change the "has_variants" and make variant files. That line is set like that in the base profile because the base profile doesn't need variants, because it's expected that that file will only be used as a base, and that any profile which inherits it (basically all of them) will have variants.

    Edited by Slashee_the_Cow
    added bit about variants
  • Link to post
    Share on other sites

    Posted (edited) · Individual print bed for custom printer

    Copying the fdmprinter.def.json and starting from that is a bad idea (almost as bad as editing fdmprinter.def.json directly). Don't do it, you are only making your life harder.

     

    Instead, you are much better off by making a copy and editing a simple definition like the 101Hero or the 3dator. They reference the fdmprinter.def.json file.

     

    You don't need to add variants (and "has_variants" is false by default), but you should really create an extruder (even if your printer only has one). See the corresponding .def.json file for the 101Hero or 3dator you started with (and see how it is referenced in the main .def.json file).

    Edited by ahoeben
  • Link to post
    Share on other sites

    Posted · Individual print bed for custom printer

    For what it's worth, I can personally attest that if you're not that experienced, adding a new printer definition to Cura is %^#&ing annoying and a case of "I did all the steps, all the files are there, why the $#(* aren't you working?!!?!?!!?!!!!!??". And I was just copying and modifying the profile for the Ender-3/Ender 3 v2 to add a couple of changes for my Ender-3 v2 Neo.

     

    Also @ahoeben I'm sorry if I make your life harder by not giving the best advice. There's a reason you've clocked up 4.8K posts and I have 0.1K.

  • Link to post
    Share on other sites

    Posted · Individual print bed for custom printer
    On 9/18/2023 at 11:28 AM, ahoeben said:

    copy and editing a simple definition like the 101Hero or the 3dator. They reference the fdmprinter.def.json file

    @Aldo should this be done in the 'applications' folder or in the 'config folder'? I don't see that many .json files in the 'config folder'.

    btw I rather update my 'pino' machine than make a new one from a copy since I open project files a lot and they refer to the 'pino' machine I have at the moment (I think...)

     

    cheers / joris

     

  • Link to post
    Share on other sites

    Posted · Individual print bed for custom printer

    I now have a solution, but even worse than editing the fdmprinter.def.json (SORRY! but it works for me for now...)

     

    edited the fdprinter.def.json with a buildplate stl I created myself didn't work

    with an existing stl it did work, so I renamed my stl to an existing one

     

    really bad solution, but for now good enough for me.... (SORRY again Aldo... : )

  • Link to post
    Share on other sites

    Posted · Individual print bed for custom printer
    3 hours ago, rooiejoris said:

    should this be done in the 'applications' folder or in the 'config folder'? I don't see that many .json files in the 'config folder'.

    Anything you change or add should ideally be outside of the application bundle. The reason there are no def.json files in the configuration folder is that you have not made any (in the proper way).

     

    Adding and editing files in the application bundle has a number of disadvantages:

    * If you ever want to use a newer version of Cura, you have to remember what changes you made to the application bundle and you have to make them again. The configuration folder should be automatically copied and upgraded by the new version of Cura.

    * If you make an error when editing files in the application bundle, there is nothing Cura can do to repair this. If you make an error editing files in the configuration folder, at worst you have to reset your configuration.

    * You have to be an elevated user ("administrator") to edit files in the application bundle.

     

    Editing the fdmprinter.def.json file is a bad idea because it applies to ALL printers. The fdmprinter.def.json file defines all settings in Cura! Copying the fdmprinter.def.json file is a bad idea because you would have to figure out what changed in fdmprinter.def.json when you want to use a new version of Cura and apply them to your copy.

     

    2 hours ago, rooiejoris said:

    really bad solution, but for now good enough for me.... (SORRY again Aldo... : )

    You do you, I am not going to stop you.

    • Like 2
    Link to post
    Share on other sites

    Posted · Individual print bed for custom printer

    @rooiejoris,

    beside from what @ahoeben already said, you need to build a complete set of configuration files. A printer configuration is always a set of files and not only one file. The best way doing this is looking for a similar existing printer in the Cura program folder and look for all involved configuration files. You don't need to copy or modify the files fdmprinter.def.json or fdmextruder.def.json. Those files are general configuration and definition files.

     

    You need to build the same folder structure and files in your user configuration folder

    definitions\ -->your printer definition file, like myprinter.def.json
    extruders\ -->your extruder declarations, like myprinter_extruder_0.def.json, myprinter_extruder_1.def.json ...
    materials\ --> in case you have own material definition files, like mymaterial_petg.xml.fdm_material, ...
    meshes\ --> your bed mesh file as .stl, obj or 3mf file, like mymesh.obj or mymesh.stl mymesh.3mf
    quality\ --> in case you want to build your own quality files, like myprinter_global_Coarse_Quality.inst.cfg, ...
    variants\ -->definitions of different nozle sizes for your extruder definition, like myprinter_0.4tpnozzle.inst.cfg, ...

     

    In addition you need to take care of file naming as this is like an identification number of what belongs to a set of printer definitions (see the name repeating myprinter in my example).

     

    General rule of thumb and some hints:

    Each file have some entries that need to be set, like version, setting_version, name, or for the printer definition file the line inherits of file fdmprinter (same for extruder ). An other rule is to set only values that are special to your printer and differ from what is already set up in fdmprinter.def.json or fdmextruder.def.json (less is better, as it can hit you by future updates).

    For material there is an entry called GUID. You don't want to set this manually. this will be build from Cura as this an unique id number.

    For mesh, you may need to adjust the orientation / position depending on how the origin was defined for the mesh. Look for "platform_offset" in the printer definition file like myprinter.def.json

    I have attache an old sample configuration I did long time ago. It may help you to understand how to build your own profiles. If I remember correct, it was based on the printer hms434. But in the end the best teacher is the Cura resources folder.

    As the last point I want to mention, take a look in the Cura log file with each change you make in a profile. The log is very detailed and in most cases you find good hints where the problem is, like wrongly written key words, forgotten quotation mark etc.

     

     

    Cura_profile example.zip

  • 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

      • 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. 
         
          • Like
        • 18 replies
      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
         
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
          • Like
        • 0 replies
    ×
    ×
    • Create New...