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

Adding support for Elegoo Neptune 4 Pro (#16608 follow-up) #16819

Merged
merged 25 commits into from
Nov 1, 2023

Conversation

fuji97
Copy link
Contributor

@fuji97 fuji97 commented Sep 25, 2023

Description

This adds support for the Elegoo Neptune 4 Pro printer. Created elegoo_neptune_4pro.def.json for Neptune 4 Pro profile.

This is a follow-up of #16608 with the missing variants since the author of the original PR hasn't posted since they made it. I left the original author's name in the definition since they made it.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Printer definition file(s)
  • Translations

How Has This Been Tested?

  • Test A - Setup as Custom FFF printer, and used the g-code provided by Elegoo in their skinned version of Cura.
  • Test B - Printed multiple parts with Custom FFF profile to test g-code.

Test Configuration:

  • Operating System: Windows 11 Cura 5.4.

Checklist:

Ev1dentFir3 and others added 3 commits August 29, 2023 09:45
Create elegoo_neptune_4pro.def.json for Neptune 4 Pro profile.
Corrected missing "value" key in "speed_travel" object on line 35
@github-actions github-actions bot added the PR: Community Contribution 👑 Community Contribution PR's label Sep 25, 2023
@cvanelteren
Copy link

Thanks! The default nozzle is 0.2 mm correct?

@ToasterUwU
Copy link

ToasterUwU commented Sep 25, 2023

Thanks! The default nozzle is 0.2 mm correct?

If you mean for the printer , yes. The built in nozzle from Elegoo is 0.2mm 0.4mm

Edit: Corrected myself, because I was sure its 0.2mm, but I checked and its in fact 0.4mm

Copy link

@cvanelteren cvanelteren left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Neptune 4 default nozzle 0.2mm is labeled as Neptune 3 pro.

@fuji97
Copy link
Contributor Author

fuji97 commented Sep 25, 2023

Ok, I fixed the name and now the CI/CD has passed correctly

@cvanelteren
Copy link

Great!

@ToasterUwU
Copy link

Very new to Cura and 3D printing in general.

If I wanted to test this, in theory I would just copy the files to the right place, start Cura and the option shows up, right?

@cvanelteren
Copy link

It does @ToasterUwU. You can also clone the repo above and change nothing. Just follow the build instructions on the cura website.

@ToasterUwU
Copy link

@cvanelteren I checked again, the standard nozzle is 0.4mm in the elegoo Cura version. I'm not skilled or equipped enough to measure the physical nozzle, and as far as I can see, there aren't any labels on it. So the software they ship having 0.4mm configured is the best I have. I also corrected my earlier comment.

@cvanelteren
Copy link

Ok thanks! For posterity, you can run the PR locally as:

git fetch origin #16819:definitions/neptune4pro
git checkout definitions/neptune4pro

@ToasterUwU
Copy link

I tested the config, and I obviously don't know why, but it was worse then whatever elegoo does in their custom cura version.

Specifically prints that work fine with custom cura, got spaghetti nests in challenging parts with this. Also for some odd reason the z movement seems different, because with this it keeps scratching the last layer and even ripped a tree support so hard it clean broke like 30 layers down. Meanwhile with elegoo cura this doesn't happen at all.

I can't be 100% this wasn't just unlucky or even user error, but I'm at least pretty certain it's not my fault, I just setup the printer, left the default settings be, loaded the stl, configured the support options like I need them, done.

@cvanelteren
Copy link

I had similar issues initially with this version of cura(5.5 beta 1). I believe there is no one to one translation of the old cura settings into the new one. For example the print speed is set lower with the new cura than the custom version cura provided by elegoo. I'm also not sure what causes the changes. I got it to print now with this newer version but can't really provide pointers as to what caused the major change in the print quality. The major outline is the standard bed leveling, I also changed the rotation distance and some pressure advance settings. I haven't been able to get to the same quality as the g code provided by the usb stick. But this is a bit off topic in general.

@ToasterUwU
Copy link

At least im not alone.

I will keep coming back to normal cura and testing the current stuff, but for now I will stick to elegoo cura trough wine

@2eQTu
Copy link

2eQTu commented Sep 28, 2023

So what needs to happen to debug the issues above? I am new to 3d printing (and Cura), but happy to run any QA prints or similar if it will help.

@mastercaution
Copy link
Contributor

mastercaution commented Sep 29, 2023

I'm also working on a Neptune 4 profile (non-pro, but they are almost identical) for Cura 5.4. However, I took a different approach than #16608 and this PR:

Since the elegoo_base definition and its profiles have many settings that are specific to previous models (Neptune 3, 2, ...), I decided to build a new definition and corresponding profiles based on fdmprinter. The elegoo_base quality profiles contain acceleration and speed values that are way below the capabilities of the Neptune 4/Pro.

The best way probably would be to redesign elegoo_base, so that it does not contain any printer specific setting ... well, but theoretically all settings are printer specific. Since we don't know what printers will be released in the future, we might end up fixing elegoo_base for every new generation and trying to not break previous models. Therefore, I think it's best to create a new definition that not depends on elegoo_base.

My approach was to combine the settings from elego_base and settings from the custom Elegoo Cura for the Neptune 4. I tested them on my Neptune 4 and they work fine, without any catastrophic issues (yet). Currently, I'm only fine-tuning the quality presets (suggestions are very welcome 😉)

You can test the profiles from my fork: https://github.com/mastercaution/Cura/tree/elegoo_neptune_4_series
(I will add a zip later, for easy copy-pasting)
EDIT: The zip: https://github.com/mastercaution/Cura/releases/tag/v0.3

@fuji97 what are your thoughts about that?

@cvanelteren
Copy link

Isn't it possible to override these settings rather using a different base?

@mastercaution
Copy link
Contributor

mastercaution commented Sep 29, 2023

Isn't it possible to override these settings rather using a different base?

I didn't find a way to do that, because the quality profiles seem to have a higher priority and overwrite the settings from the definition file.

EDIT: Oh, maybe there is a way. It could be possible to overwrite a quality preset by using the same name but adding it to the definition of the N4. I'll look into this, thanks for the idea!

@cvanelteren
Copy link

There are some different default settings from these files. You said these are directly from the Cura version provided by Elegoo? i guess they should take priority over the once proposed here. They are more conservative and print fine on my end but faster is better.

@fuji97
Copy link
Contributor Author

fuji97 commented Sep 29, 2023

@mastercaution That's not a bad idea, if settings between printers differ to much a base elegoo_base definition is not particularly useful. I can't test configurations right now because I'm having some issues with the Z-axis and bed leveling, when I resolve those I will test them.

@mastercaution
Copy link
Contributor

mastercaution commented Sep 30, 2023

There are some different default settings from these files. You said these are directly from the Cura version provided by Elegoo?

Yes, things like the gcode flavor, acceleration and the maximum_value_warning for the speeds settings are from Elegoo, as well as some settings in the presets.

I set machine_depth to 230 instead of 235 because my Y can only move to a maximum of approx. 233, where it hits the limit. Most end-gcode moves Y to machine_depth to present the print, which in my case results in the bed crashing into the limit. Although, Elegoo has set a machine_depth of 235, their end-gcode moves Y only up to 230 ... so they also had this issue? My brother's printer has the same issue/behavior. Are there Neptune 4/pros out there that can move Y all the way to 235? The firmware limit is also set to 235.

The retraction_amount (0.5) is from Elegoo but I increased the retraction_speed from 30 to 45 as suggested by the Youtuber mpoxDE in his profiles for Cura <5.4.

@saumyaj3 saumyaj3 merged commit 3561b12 into Ultimaker:main Nov 1, 2023
4 checks passed
@saumyaj3
Copy link
Contributor

saumyaj3 commented Nov 1, 2023

Hey @fuji97 and @Ev1dentFir3 ! Thanks for your contribution.
I'll be closing the PR: #16608 as this already takes care of it.

@mastercaution
Copy link
Contributor

@Rottenbeer See #17180 for parallel heating 😉

@ArthurREGNARD
Copy link

Not in 5.6.0 ?
https://github.com/Ultimaker/Cura/releases/tag/5.6.0-beta.2

@driahva
Copy link

driahva commented Dec 2, 2023

Thank you @fuji97, is there a profile for the N4 Plus and the Max, too? It would be a shame to not have those added at the same time as the Pro.

@mastercaution
Copy link
Contributor

@driahva Do you have a N4 Plus/Max to test new profiles on?

@driahva
Copy link

driahva commented Dec 4, 2023

@driahva Do you have a N4 Plus/Max to test new profiles on?

I have an N4 Plus. I may not be an authority on the results, but would be happy to test. I have not owned this long, and my need for Cura 5 features has made me want to move away from their 4.8 custom build.

@ArthurREGNARD
Copy link

Got an N4 pro, for any help.

@schneid-l
Copy link

Hi guys, thank for this awesome work!
I see that Neptune 4 (Pro) is not included in 5.6.0, do you know why?
I'm new to Cura, how can I help to setup Neptune 4 Plus (the printer I have) profiles?

@mastercaution
Copy link
Contributor

I don't know why they are still not included in v5.6.0. However, I just updated the profiles and added definitions for the Plus and Max variant (see #17576) and I need testers especially for the Plus and Max.

@driahva @ArthurREGNARD @si0ls It would be awesome if you could test the new profiles with your printers :)

@ArthurREGNARD
Copy link

Hey @mastercaution,
Can you give us the procedure to have the best test.

  1. Remove all file in folders :
  • definitions
  • extruders
  • variants
  1. Put configs files : how to find them and download them ?

  2. Do we have to print a benchi ? How can we say that the test is succeded ?

@mastercaution
Copy link
Contributor

  1. There is no need to remove the previous profiles. The new ones overwrite the old ones.
  2. Read the new PR. New profiles can be found at my release page.
  3. Just print some models you wanted to print anyway and check that the start G-code works correctly and the print quality is not subjectively worse than before. The new PR lists the changes compared to the profiles merged here.

@BremerButjer
Copy link

  1. There is no need to remove the previous profiles. The new ones overwrite the old ones.
  2. Read the new PR. New profiles can be found at my release page.
  3. Just print some models you wanted to print anyway and check that the start G-code works correctly and the print quality is not subjectively worse than before. The new PR lists the changes compared to the profiles merged here.

Tested the new profiles on my NP4Pro. Works well. Thank you

@ArthurREGNARD
Copy link

Hey, tested on my N4Pro.

I updated my printer with the latest firmware.

  • UI 1.2.11
  • Firmware 1.1.2.41

Auto-leveled before testing and added glue (looks like overflow filament ?!).

Got issues on the finishing touches :
IMG_2519
IMG_2520
IMG_2525

@mastercaution
Copy link
Contributor

Hmm, there were no changes made to flow related things, only to acceleration. Maybe your z-offset is a little too low? 😅

@MDeeApp
Copy link

MDeeApp commented Dec 14, 2023

I've got similar problems with the surface after updating my firmware.

@ArthurREGNARD
Copy link

Yes, it seems to be a z-offset issue, but on the last layer, this problem should normally fade away, but it persists.

As for the stringing, could it be due to a default retraction parameter that needs adjustment?

In any case, thanks for the gCode initiation; preventing filament from dripping during heating is top-notch!
IMG_2527

@marc-ferrer
Copy link

I haven't checked the official ELEGOO discord in quite a while, but a few months ago their firmware had an issue related to the z-offset and the recommendation was to not upgrade the firmware to the latest version.

@ToasterUwU
Copy link

@marc-ferrer I have upgraded my firmware to the current newest one from the official website a few hours ago, and it has been the fix for the offset issues i had and also brought some awesome improvements as well

@mastercaution
Copy link
Contributor

As for the stringing, could it be due to a default retraction parameter that needs adjustment?

Currently (in this PR and in the new updated one), the retraction amount is 0.5mm. Elegoo's profiles have 0.8mm. You can try 0.8, but I don't know how much of a difference this makes.

@ToasterUwU
Copy link

I personally have less stringing issues with this config compared to elegoo cura with the standard config

@mastercaution
Copy link
Contributor

@ToasterUwU You are also invited to try the updated profiles over at #17576 😉

@ToasterUwU
Copy link

@mastercaution I see, i would absolutly love to, but need to print a few christmas gifts before i go to my family in a few days, so no time for experimentation right now.

@callimburg
Copy link

callimburg commented Jan 19, 2024

Hello! So the profiles work great, but what do I have to do to get the 0.2 nozzle to not give me "Not supported" after selecting it? Cause I'd like to use the smaller ozzle but seems like the profile are set only for the 0.4, also the 0.6 and 0.8 don't work

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PR: Community Contribution 👑 Community Contribution PR's PR: Printer Definitions 🏭 A PR that introduces or changes settings and printer definitions
Projects
None yet
Development

Successfully merging this pull request may close these issues.