xblax / flashforge_ad5m_klipper_mod

Unoffical mod for Flashforge Adventurer 5M (Pro) 3D printers to run Moonraker, custom Klipper, Mainsail & Fluidd
GNU General Public License v3.0
82 stars 4 forks source link

Must home axis first: 105.000 105.000 220.000 [0.000] #150

Closed Avpman2 closed 3 weeks ago

Avpman2 commented 4 weeks ago

First time trying to print with Orca 2.0.0 after mod installed, I keep getting the error: "Must home axis first: 105.000 105.000 220.000 [0.000]" when I try to print any file on the ADM5 Pro. It happens immediately after the bed reaches its set temp, right before the nozzle begins to warm up.

I also tried the Klipper Lite mod with no success. Consoel output below

I searched the net and found several articles about BED_MESH_CLEAR and I tried to include it in the gcode but no success. It is likely I don't know where to put it.

Any ideas? I'm stuck.

Console Output: 17:55:04 File opened:NikonBatteryCap1.2_TPU_12m47s.gcode Size:226012 17:55:04 File selected 17:56:09 !! Must home axis first: 0.000 0.000 5.000 [0.000] 17:56:09 echo: "extruder" not hot enough 17:56:09 echo: Printer not homed 17:56:09 echo: "extruder" not hot enough 17:56:09 !! Must home axis first: 105.000 105.000 220.000 [0.000] 17:56:09 !! Must home axis first: 105.000 105.000 220.000 [0.000] 17:56:09 !! Must home axis first: 105.000 105.000 220.000 [0.000] 17:56:09 !! Must home axis first: 105.000 105.000 220.000 [0.000]

​

AJolly commented 4 weeks ago

You need to set your orca machine gcode to either use the klipper macros or write your own. (For start and end)

AJolly commented 4 weeks ago

https://github.com/xblax/flashforge_ad5m_klipper_mod/blob/master/docs/SLICING.md

Avpman2 commented 4 weeks ago

Gcode flavor was set to Klipper. Sorry for the NOOB question, but which specific config file is it that I need to modify to put the start/end code that's in the link?

consp commented 4 weeks ago

but which specific config file is it that I need to modify to put the start/end code that's in the link?

With most slicer variants it's under printer config -> machine gcode (I think it's on the top of the tab in orca)

Tiwatz commented 4 weeks ago

See #79 for the Orca start and end g-gode

Avpman2 commented 4 weeks ago

THANK YOU for this! I was on the edge of giving up. What I don't understand is that OrcaSlicer works without this additional code on the stock Flashforge Firmware (2.4.5 and 2.4.6). Couldn't this FW Mod perform those commands if they're not present in the code files it is sent? It's my understanding that they're needed for the FF printer and this FW Mod is for that printer.

P.S. Is there a single place to put the codes so I only have to do it once for this printer? I read talk about the printer config file but I don't know what its name is.

Avpman2 commented 3 weeks ago

Please adjust the FW mod to compensate for this so that we don't have to add code to our slicers.

KaruroChori commented 3 weeks ago

The firmware of the printer cannot compensate for the wrong slicer profile being used. The best we can do is to share profiles for the modded version to be used in place of having the user manually changing them.

But this is already documented, so as someone would not read the relevant documentation, they would probably not use the special profiles.

Avpman2 commented 3 weeks ago

The OEM (2.45 AND 2.46) Flashforge FW works with my OrcaSlicer, so I don't understand why the MOD doesn't, since you are modding the Klipper FW for the Flashforge printer. Please help me understand.

KaruroChori commented 3 weeks ago

@jvarrone Because a choice was made, to diverge from the original flashforge implementation if needed. This is to more closely follow the general guidelines offered by klipper in their documentation, allowing this printer to behave more like any other klipper printer. This affected the start and stop routines for jobs as well, which are no longer just a bunch of GCODE commands, but custom klipper commands.

Flashforge designed a custom proprietary user interface built on top of klipper, and they also have their customized slicer, so there was no reason for them to care about further user needs, customization and interoperability with different software. However the objectives of this projects do not perfectly match with those of flashforge; as such the outcome is from time to time different.

TLDR: This is to ensure a wider flexibility & compatibility of this printer with the rest of the klipper ecosystem. All this is documented, and it is the user responsibility, even more so when playing with a beta piece of software, to have enough care to read it.

Avpman2 commented 3 weeks ago

Thanks for that. I have been reading the docs and learning as I go along. Is there a place or a file where the needed START/END PRINT commands can be placed -once- instead of having to edit every profile I create? If so, I have not been able to find the .cfg files referenced in the various posts I've read or the docs. Again, thanks for this.

KaruroChori commented 3 weeks ago

@jvarrone just to clarify this further: you might be under the wrong impression that the original flashforge firmware does not require any addidional start/finish gcode. This is no true, you are using their profile for their printer, specifically because they shipped the required commands in there. What we did was move them back to the printer as per general guideline when configuring a klipper printer, and change the start/finish code in the slicer profile to match.

So the configuration for a new job has always been split between printer and slicer. We just changed the balance so to speak :).

Changes in the section hosted on the printer are part of the [gcode_macro START_PRINT] and [gcode_macro END_PRINT] in macros.cfg. I would advise against touching them unless you fully understand what you are doing.
This is the file on the repo, https://github.com/xblax/flashforge_ad5m_klipper_mod/blob/master/printer_configs/macros.cfg. Your one will be alongside all the others cfg files on the printer.

Changes on the slicer side depend on the slice and must be manually set up for each profile. image Please ignore the specifics of that configuration as it was done for a different printer which was not even based on klipper.

Avpman2 commented 3 weeks ago

Now I understand πŸ’‘

Thank you!

From: KaruroChori @.> Sent: Monday, April 22, 2024 9:43 AM To: xblax/flashforge_ad5m_klipper_mod @.> Cc: Avpman @.>; Mention @.> Subject: Re: [xblax/flashforge_ad5m_klipper_mod] Must home axis first: 105.000 105.000 220.000 [0.000] (Issue #150)

@jvarrone https://github.com/jvarrone just to clarify this further: you might be under the wrong impression that the original flashforge firmware does not require any addidional start/finish gcode. This is no true, you are using their profile for their printer, specifically because they shipped the required commands in there. What we did was move them back to the printer as per general guideline when configuring a klipper printer, and change the start/finish code in the slicer profile to match.

So the configuration for a new job has always been split between printer and slicer. We just changed the balance so to speak :).

Changes in the section hosted on the printer are part of the [gcode_macro START_PRINT] and [gcode_macro END_PRINT]. I would advice against touching them unless you fully understand what you are doing. Changes on the slicer side depend on the slice and must be manually set up for each profile. image.png (view on web) https://github.com/xblax/flashforge_ad5m_klipper_mod/assets/9377545/452c7a23-9a25-4ac9-b6dd-b3cde6435bd7 Please ignore the specifics of that configuration as it was done for a different printer which was not even based on klipper.

β€” Reply to this email directly, view it on GitHub https://github.com/xblax/flashforge_ad5m_klipper_mod/issues/150#issuecomment-2069485447 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AAY7VRQNR2NDSF66LDVB2RDY6UHU7AVCNFSM6AAAAABGP4QZASVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANRZGQ4DKNBUG4 . You are receiving this because you were mentioned.Message ID: @. @.> >

Tiwatz commented 3 weeks ago

Is there a place or a file where the needed START/END PRINT commands can be placed -once- instead of having to edit every profile I create?

You set it in the printer settings in Orca and not in the filament profile, as previously mentioned in this thread by @KaruroChori. So you only have to do it once and not for every filament profile.

Avpman2 commented 3 weeks ago

I followed that thread, and it said to add it to the macros.cfg file, which I do not have. Since this is critical to getting Orca and the mod to work, shouldn't it be absolutely clear in the docs "where" to make the edit? I am still lost.

Tiwatz commented 3 weeks ago

You don't add anything to the macros.cfg file. In Orca slicer you just add the lines shown in the picture in: https://github.com/xblax/flashforge_ad5m_klipper_mod/discussions/79#discussioncomment-8826586

Avpman2 commented 3 weeks ago

P.S. Thank you for this. We were all NOOBs at one point.

Tiwatz commented 3 weeks ago
  • So that goes in EACH Nozzle preset? I don't see one place for the entire machine, right?

Red arrow is for entire machine.

orca-flashforge23~2

Avpman2 commented 3 weeks ago

We are back to my original question. That only changes it for that nozzle (and saves it as a new preset). If I edit another nozzle, i.e. the .25 nozzle, my edit of the other nozzle is not there. That seems to be correct because the edit is for the nozzle. Not the entire machine. I can send screenshots if you like.

KaruroChori commented 3 weeks ago

I see what you mean. Sadly the tooling around 3d printers is far from perfect. There is no good way to handle the inventory of materials, flow calibration in the machine, the generation of fully portable gcode, or the decoupling of the printer configuration from the nozzle inventory.

So yes, that is just a limitation of the software we have available at this point in time. Once you modify one profile, you can generate the others from that as needed, just changing the fields related to the nozzle. In theory you should also compensate for the different material.

Avpman2 commented 3 weeks ago

No worries. I wish there was a machine cfg file where we could add gcode to the various sections like there are in the preset edits I.E. Start, End, Before Layer, etc.

From: KaruroChori @.> Sent: Monday, April 22, 2024 2:14 PM To: xblax/flashforge_ad5m_klipper_mod @.> Cc: Avpman @.>; Mention @.> Subject: Re: [xblax/flashforge_ad5m_klipper_mod] Must home axis first: 105.000 105.000 220.000 [0.000] (Issue #150)

I see what you mean. Sadly the tooling around 3d printers is far from perfect. There is no good way to handle the inventory of filaments, flow calibration in the machine, the generation of fully portable gcode, and the decoupling of the printer configuration from the nozzle.

So yes, that is just a limitation of the software we have available at this point in time.

β€” Reply to this email directly, view it on GitHub https://github.com/xblax/flashforge_ad5m_klipper_mod/issues/150#issuecomment-2070503816 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AAY7VRU5PU4VEO3YKFGAYC3Y6VHOTAVCNFSM6AAAAABGP4QZASVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANZQGUYDGOBRGY . You are receiving this because you were mentioned.Message ID: @. @.> >

Avpman2 commented 3 weeks ago

Such a file might look like this internally and be applied to all gcode being sent to the printer.

[gcode Start]

START_PRINT

[gcode End]

END_PRINT

From: KaruroChori @.> Sent: Monday, April 22, 2024 2:14 PM To: xblax/flashforge_ad5m_klipper_mod @.> Cc: Avpman @.>; Mention @.> Subject: Re: [xblax/flashforge_ad5m_klipper_mod] Must home axis first: 105.000 105.000 220.000 [0.000] (Issue #150)

I see what you mean. Sadly the tooling around 3d printers is far from perfect. There is no good way to handle the inventory of filaments, flow calibration in the machine, the generation of fully portable gcode, and the decoupling of the printer configuration from the nozzle.

So yes, that is just a limitation of the software we have available at this point in time.

β€” Reply to this email directly, view it on GitHub https://github.com/xblax/flashforge_ad5m_klipper_mod/issues/150#issuecomment-2070503816 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AAY7VRU5PU4VEO3YKFGAYC3Y6VHOTAVCNFSM6AAAAABGP4QZASVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANZQGUYDGOBRGY . You are receiving this because you were mentioned.Message ID: @. @.> >

KaruroChori commented 3 weeks ago

I mean, there is: in theory start_print, end_print etc do that. However, that is not some standard gcode, just some klipper macro extensions whose nomenclature is actually arbitrary, and the user is then forced to recall those macro in the slicer profiles to have them running.

Default gcode has really no way to understand what starting or ending a job means, as there is no primitive to represent the very concept of a job to begin with.

While I agree this is bad design-wise, it is just the legacy of using a 60 years old language with some incremental improvements patched on top. Definitely something this repository cannot solve :D.

Avpman2 commented 3 weeks ago

Yup, I understand. The change I suggested needs to be on the Orca side.

I’m putting this FW mod through its paces. So far, after this issue, I still can’t find a way to change filaments from the front panel, or anywhere for that matter.

From: KaruroChori @.> Sent: Monday, April 22, 2024 2:28 PM To: xblax/flashforge_ad5m_klipper_mod @.> Cc: Avpman @.>; Mention @.> Subject: Re: [xblax/flashforge_ad5m_klipper_mod] Must home axis first: 105.000 105.000 220.000 [0.000] (Issue #150)

I mean, there is: in theory start_print, end_print etc do that. However, that is not some standard gcode, just some klipper macro extensions whose nomenclature is actually arbitrary, and the user is forced to recall those macro in the slicer profiles to have them running.

Default gcode has really no way do understand what starting or ending a job means, as there is no primitive to represent the very concept of a job to begin with.

While I agree this is bad design-wise, it is just the legacy of using a 30 years old language with some incremental improvements patched on top. Definitely something this repository cannot solve :D.

β€” Reply to this email directly, view it on GitHub https://github.com/xblax/flashforge_ad5m_klipper_mod/issues/150#issuecomment-2070552592 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AAY7VRQKAISF6CAFVBXGRKTY6VJBNAVCNFSM6AAAAABGP4QZASVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANZQGU2TENJZGI . You are receiving this because you were mentioned.Message ID: @. @.> >

KaruroChori commented 3 weeks ago

Mid print? If so please open a new issue to track that one specifically.