Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CORE One Print Profiles #8504

Open
1 task done
bwees opened this issue Feb 22, 2025 · 16 comments
Open
1 task done

CORE One Print Profiles #8504

bwees opened this issue Feb 22, 2025 · 16 comments
Labels
enhancement New feature or request

Comments

@bwees
Copy link

bwees commented Feb 22, 2025

Is there an existing issue for this feature request?

  • I have searched the existing issues

Is your feature request related to a problem?

Is it possible to get the CORE One Print Profiles imported into OrcaSlicer? I saw that @rcloran was able to import the MK4S with his scripts. I am having a hard time getting them to work for me otherwise I would do the PR myself.

Thanks!

Which printers will be beneficial to this feature?

Others, Marlin

Describe the solution you'd like

CORE One Print Profiles added to orcaslicer

Describe alternatives you've considered

No response

Additional context

No response

@bwees bwees added the enhancement New feature or request label Feb 22, 2025
@rcloran
Copy link
Contributor

rcloran commented Feb 22, 2025

Those scripts are pretty rough. Here's how I ran them:

perl superslicer_to_orca.pl --input ~/src/PrusaSlicer/resources/profiles/PrusaResearch.ini --outdir
uneditedout --nozzle-size 0.999
cd uneditedout/user/default
mkdir -p out/{machine,process,filament}
cp ~/src/OrcaSlicer/resources/profiles/Prusa/machine/fdm_machine_common.json out/machine/
cp ~/src/OrcaSlicer/resources/profiles/Prusa/filament/fdm_filament* out/filament/
cp ~/src/OrcaSlicer/resources/profiles/Prusa/process/fdm_process_common.json out/process 
../../../process.py

I've found at least one thing missing since the original PR, #8486

I'll happily accept pull requests to update the scripts for any missing options, make them easier to run, etc.

@bwees
Copy link
Author

bwees commented Feb 22, 2025

Cool yeah I realized that I hadn't setup all of the proper export directories on my output directoy. Looks like the CORE One uses a different dependency system than the MK4S:

Image

Will likely take quite a bit of work to get this converted unfortunately.

@rcloran
Copy link
Contributor

rcloran commented Feb 23, 2025

The way the scripts work (specifically the Python "post-processing" that I added) is that they go through each final file you want, rewrite it so that there's no inheritance at all ("concretize"), and then build up the inheritance according to any structure you want.

Your new profiles don't need to follow the inheritance structure in Prusa's original profiles. In fact, they can't, because Prusa uses a pretty complex structure of multiple inheritance to make it all work, and Orca doesn't support multi-inheritance AFAICT.

What I'm saying is... I don't /think/ that the inheritance structure that's there should cause you any additional time, but it will still take time to get it all right, of course.

@bwees
Copy link
Author

bwees commented Feb 23, 2025

Yeah I took some time yesterday to see how it all works. It looks like Prusa just use the mk4s as the base profile and tweak the acceleration and speeds for each profile. Took about an hour to build the profile manually based on the mk4s.

I had to do a few adjustments to the start gcode to handle chamber temperatures (orca only has one temperature setting instead of 2 like PS). I essentially made it so if the chamber temperature is set below 35c, then it uses the temp as a nominal temperature and if it's above 35c then it's the minimum temperature. Once I have my CORE one I will post the profile here once I am able to test. Kinda sucks that OrcaSlicer doesn't support bgcode but I should be able to add it as a post processing script.

Thanks for your help!

@rcloran
Copy link
Contributor

rcloran commented Feb 23, 2025

I tried to use Prusa's command line tool to do a post-process to transform into bgcode, but it failed saying the input gcode was invalid. I didn't try to figure out why. If you work out a solution, I'd be super interested to learn what you did to make it work :)

@bwees
Copy link
Author

bwees commented Feb 23, 2025

Yeah I am hitting that same issue 😅. I will report back if I can get it working!

@rcloran
Copy link
Contributor

rcloran commented Feb 23, 2025

I had to do a few adjustments to the start gcode to handle chamber temperatures (orca only has one temperature setting instead of 2 like PS).

If you've made these changes in code, it'd be great to add some sort of switch to the python scripts so that they can be re-run in the future for either printer. Happy to try keep the scripts all in one place by having that. That said, keeping your own repo with core one specific code so that anyone who wants to re-import in the future can use that is also a reasonable option.

@bwees
Copy link
Author

bwees commented Feb 23, 2025

I had to do a few adjustments to the start gcode to handle chamber temperatures (orca only has one temperature setting instead of 2 like PS).

If you've made these changes in code, it'd be great to add some sort of switch to the python scripts so that they can be re-run in the future for either printer. Happy to try keep the scripts all in one place by having that. That said, keeping your own repo with core one specific code so that anyone who wants to re-import in the future can use that is also a reasonable option.

Unfortunately I didn't use the output from the conversion scripts. Doing a bit of digging you can see that almost all CORE One Profiles inherit the MK4S Profiles. I was able to just make a new printer in Orca that was based on the MK4S and tweak 10 or so changes for the machine profile and about 10-15 settings per process profile. I just used the profile diff tool in PrusaSlicer to see the differences between the MK4S and CORE One profile. The profiles are pretty much the exact same between MK4S and CORE One except for acceleration and speed changes so it wasn't that bad to do manually.

The modification of the start gcode was done in a text editor, its documented pretty well and only a few conditionals had to be swapped out

@bwees
Copy link
Author

bwees commented Feb 23, 2025

If anyone wants to try it, here is my WIP profile. THIS IS UNTESTED. I am not responsible if you break your printer. Please be cautious when printing with it. Let me know if any changes need to be made.

Prusa CORE One 0.4 nozzle.zip

(might need to change extension to .orca_printer)

@bwees
Copy link
Author

bwees commented Feb 23, 2025

I tried to use Prusa's command line tool to do a post-process to transform into bgcode, but it failed saying the input gcode was invalid. I didn't try to figure out why. If you work out a solution, I'd be super interested to learn what you did to make it work :)

Managed to figure out the issue. Their command line tool looks for specific strings in the gcode to mark the start/end of settings as well as the source of the Gcode. OrcaSlicer uses different strings and thus fails when trying to run the converter. I made modifications and it is able to produce a gcode file however PrusaSlicer throws an error when trying to preview the bgcode file. I'm not sure if the printers will throw an error since it seems to be related to slicer settings, not the actual print code.

I put my changes up on https://github.com/bwees/orca_bgcode if you want to try it out. I don't have a bgcode supported printer yet so I can't test.

@bwees
Copy link
Author

bwees commented Feb 23, 2025

I put my changes up on https://github.com/bwees/orca_bgcode if you want to try it out. I don't have a bgcode supported printer yet so I can't test.

I modified the script to work as a post-processing script (in-place modification and new filename hint). Instructions are on the README

@bwees
Copy link
Author

bwees commented Feb 25, 2025

@rcloran managed to get access to a Prusa Mini. Was able to the bgcode conversion post processing script:

/Users/bwees/Documents/OrcaSlicer/orca_bgcode/dist/bin/bgcode --post-processor --slicer_metadata_compression=1 --gcode_compression=3 --gcode_encoding=2;

and the printer had no issues printing from the file. Should be good to use with other prusa printers that support bgcode.

@P-C-R
Copy link
Contributor

P-C-R commented Feb 26, 2025

I have some Core One profiles aswell. should we compare?

@P-C-R
Copy link
Contributor

P-C-R commented Feb 26, 2025

I tried to use Prusa's command line tool to do a post-process to transform into bgcode, but it failed saying the input gcode was invalid. I didn't try to figure out why. If you work out a solution, I'd be super interested to learn what you did to make it work :)

Managed to figure out the issue. Their command line tool looks for specific strings in the gcode to mark the start/end of settings as well as the source of the Gcode. OrcaSlicer uses different strings and thus fails when trying to run the converter. I made modifications and it is able to produce a gcode file however PrusaSlicer throws an error when trying to preview the bgcode file. I'm not sure if the printers will throw an error since it seems to be related to slicer settings, not the actual print code.

I put my changes up on https://github.com/bwees/orca_bgcode if you want to try it out. I don't have a bgcode supported printer yet so I can't test.

Thats what i searched. Still sad that bgcode is not directly implemnted in orca

@bwees
Copy link
Author

bwees commented Feb 26, 2025

I have some Core One profiles aswell. should we compare?

I posted my profile here, its missing the bgcode PP script but all of the parameters are done.

@bwees
Copy link
Author

bwees commented Feb 26, 2025

I tried to use Prusa's command line tool to do a post-process to transform into bgcode, but it failed saying the input gcode was invalid. I didn't try to figure out why. If you work out a solution, I'd be super interested to learn what you did to make it work :)

Managed to figure out the issue. Their command line tool looks for specific strings in the gcode to mark the start/end of settings as well as the source of the Gcode. OrcaSlicer uses different strings and thus fails when trying to run the converter. I made modifications and it is able to produce a gcode file however PrusaSlicer throws an error when trying to preview the bgcode file. I'm not sure if the printers will throw an error since it seems to be related to slicer settings, not the actual print code.
I put my changes up on https://github.com/bwees/orca_bgcode if you want to try it out. I don't have a bgcode supported printer yet so I can't test.

Thats what i searched. Still sad that bgcode is not directly implemnted in orca

It makes sense, Bambu Slicer was designed to just transport everything in 3mf files. Prusa is also the only printer that uses bgcode (without modification). There needs to be more industry adoption before it makes sense to invest the dev time

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants