How to set bowden length on MMU2s with MMU3 firmware
 
Notifications
Clear all

How to set bowden length on MMU2s with MMU3 firmware  

  RSS
DCS21
(@dcs21)
Eminent Member
How to set bowden length on MMU2s with MMU3 firmware

Hi,

I just flashed the MMU3 firmware to my MMU2s. Due to my setup the bowden tube length from the MMU to printer is a bit longer than the stock one so I need to set the length, like I could on the MMU2s firmware. But it appears that I can't enter the service menu anymore, or it's not there anymore? https://help.prusa3d.com/guide/service-menu-individual-filament-calibration_86376

 

Any help would be great because right now, the unload is not possible. It's always trying to home the idler with filament in it, which is not only super load but also super slow... 

Posted : 29/07/2023 7:13 am
Hello
(@hello)
Noble Member
RE: How to set bowden length on MMU2s with MMU3 firmware

I'm pretty sure it's ment to be automatically done and I'd guess that mmu3 firmware isn't straight compatible with mmu2s

Please help me out by downloading a model it's free and easy but really helps me out https://www.printables.com/@Hello_474427/models

Posted : 29/07/2023 9:31 am
DCS21
(@dcs21)
Eminent Member
Topic starter answered:
RE:
Posted by: @hello

I'm pretty sure it's ment to be automatically done and I'd guess that mmu3 firmware isn't straight compatible with mmu2s

The release notes say otherwise:

"Combinations of older hardware like MMU2S with MK3S or MK2.5S with the latest firmware (3.13.0 and 3.0.0) should work and will be soon explained in the article about MMU3 firmware compatibility at help.prusa3d.com."

It's the same behavior as before though. You get a kind of fast load to get the filament close to the extruder and then it is automatically handled by the filament sensor. But before you could simply change how long the fast load should last which makes a big time difference when loading and unloading with a longer PTFE tube.

Posted : 29/07/2023 10:50 am
Juan Puchol
(@juan-puchol)
Active Member
RE: How to set bowden length on MMU2s with MMU3 firmware

 

Posted by: @dcs21

Hi,

I just flashed the MMU3 firmware to my MMU2s. Due to my setup the bowden tube length from the MMU to printer is a bit longer than the stock one so I need to set the length, like I could on the MMU2s firmware. But it appears that I can't enter the service menu anymore, or it's not there anymore? https://help.prusa3d.com/guide/service-menu-individual-filament-calibration_86376

 

Any help would be great because right now, the unload is not possible. It's always trying to home the idler with filament in it, which is not only super load but also super slow... 

 

Posted : 29/07/2023 4:03 pm
Juan Puchol
(@juan-puchol)
Active Member
RE:

Hello,

I'm using a Caribou 320 MK3S printer with my MMU2S (now with firmware 3.0.0) and my bowden tube is very large, so to load filament is very slow because it stops in the middle and search the extruder slowly.

I have changed the "minimumBowdenLength" variable from 341 to 490 and compiled the MMU3 firmware, so now the load is faster. My bowden tube is 505mm, so play with it to achieve your correct value.

 

The full changed code I have changed is on the src/config/config.h file:

87 static constexpr U_mm defaultBowdenLength = 700.0_mm; ///< ~427.0_mm - Default Bowden length. TODO Should be stored in EEPROM. 392 a 784

88 static constexpr U_mm minimumBowdenLength = 490.0_mm; ///< ~341.0_mm - Minimum bowden length. TODO Should be stored in EEPROM.

89 static constexpr U_mm maximumBowdenLength = 850.0_mm; ///< ~792.0_mm - Maximum bowden length. TODO Should be stored in EEPROM.

 

NOTE: the firmware is on any MK4 firmware (folder lib/Prusa-Firmware-MMU)

 

Good Luck and Happy Multimaterial Printing

 

This post was modified 7 months ago 5 times by Juan Puchol
Posted : 29/07/2023 4:11 pm
DCS21
(@dcs21)
Eminent Member
Topic starter answered:
RE: How to set bowden length on MMU2s with MMU3 firmware

 

Posted by: @juan-puchol

Hello,

I'm using a Caribou 320 MK3S printer with my MMU2S (now with firmware 3.0.0) and my bowden tube is very large, so to load filament is very slow because it stops in the middle and search the extruder slowly.

I have changed the "minimumBowdenLength" variable from 341 to 490 and compiled the MMU3 firmware, so now the load is faster. My bowden tube is 505mm, so play with it to achieve your correct value.

 

The full changed code I have changed is on the src/config/config.h file:

87 static constexpr U_mm defaultBowdenLength = 700.0_mm; ///< ~427.0_mm - Default Bowden length. TODO Should be stored in EEPROM. 392 a 784

88 static constexpr U_mm minimumBowdenLength = 490.0_mm; ///< ~341.0_mm - Minimum bowden length. TODO Should be stored in EEPROM.

89 static constexpr U_mm maximumBowdenLength = 850.0_mm; ///< ~792.0_mm - Maximum bowden length. TODO Should be stored in EEPROM.

 

NOTE: the firmware is on any MK4 firmware (folder lib/Prusa-Firmware-MMU)

 

Good Luck and Happy Multimaterial Printing

 

Thanks for this, looks like I am gonna compile my own firmware for that. And it also looks like the service menu is gone :-(.

Posted : 30/07/2023 9:44 am
pink_clown
(@pink_clown)
Trusted Member
RE: How to set bowden length on MMU2s with MMU3 firmware

When you are not able to change the FW the easiest way is to watch the moment when the fast load ends then from this position add about 3-4 cemtimeters, the rest the FW will do via the print head filament sensor. The print head FS setting is rather crutial to react at the moment the extruder gears are grabbing the filament.

Bear in mind at the moment the print head filament sensor triggers the the MMU idler becomes idle, so the only the extruder gears are moving the filament.

Very important part is the try-load phase, when the printer is checking the print head PTFE tube throughput, if it fails this is not a MMU issue but the problem could be the clogged filament in the  nozzle.

Posted : 03/08/2023 7:14 am
DCS21
(@dcs21)
Eminent Member
Topic starter answered:
RE: How to set bowden length on MMU2s with MMU3 firmware

A fix is coming 😀 

https://github.com/prusa3d/Prusa-Firmware/issues/4292

Posted : 11/08/2023 8:00 pm
carlmmii
(@carlmmii)
Trusted Member
RE: How to set bowden length on MMU2s with MMU3 firmware

Since it doesn't seem to be explicitly explained/documented anywhere yet for what to do to set it, I'll leave this here.

FW 3.0.1 added the register. From the registers.cpp file:

| 0x22h 34 | uint16 | Bowden length | 341-1000 | 168h 360 | unit mm

The register is at 0x22h and has a default value of 168h (360mm).

This page describes the register system and vaguely how to modify them using M707 (read) and M708 (write) codes via PuTTy/Arduino IDE/Octoprint Terminal. If using Octoprint, make sure you add the M707 and M708 codes to the capitalization blacklist (OctoPrint -> Settings -> Features -> Features -> Terminal Auto Uppercase Blacklist).

This page describes exactly how the M707 and M708 codes work.

To read the Bowden Tube Length register:

M708 A0x22

To change the Bowden Tube Length register:

M708 A0x22 X[###]

REMEMBER TO CONVERT THE BOWDEN TUBE LENGTH TO HEXIDECIMAL!!!

The allow range is between 341mm (155h) and 1000mm (3E8h).

From the release notes, the bowden length value represents the "actual" length of the bowden tube itself. I would assume this is based on stock setup hardware (festo connection at both the selector and the hotend top mount). If you've modified either of these for any push-through connectors (i.e. a pushthrough modification to extruder gears), the calculated tube length needs to be lowered by the amount of extra passthrough length that exists.

Posted : 17/09/2023 11:40 am
pridkett and DCS21 liked
DCS21
(@dcs21)
Eminent Member
Topic starter answered:
RE: How to set bowden length on MMU2s with MMU3 firmware

awesome, thanks for the write-up!

Posted : 06/10/2023 2:23 pm
Daniel
(@daniel-23)
Member
RE: How to set bowden length on MMU2s with MMU3 firmware

Hi 

I bumped into the same issue after updating to the last FW version. 

But my question is How do I send the command "m708 a0x22" to the rpinter? 

I have been reading on solutions using Rasperry Pi and Prusa Link, etc...., but I dont want to almost build one Sapce Shuttle to send one single command to a MK3S+ printer .

I does not make any sense, I asked Prusa online support the same question and they asked me to send the request by email.... 
So resuming, is there a procedure on how to send the G code command to the printer using the USB cconnection? 

Daniel Isidro

 

Posted : 04/11/2023 2:22 pm
EddyMI3D
(@eddymi3d)
Eminent Member
RE: How to set bowden length on MMU2s with MMU3 firmware

 

Posted by: @daniel-34

But my question is How do I send the command "m708 a0x22" to the rpinter? 

 

Either you use OctoPrint or Pronterface which comes with PrusaSlicer.

Posted : 24/11/2023 12:09 pm
EddyMI3D
(@eddymi3d)
Eminent Member
RE: How to set bowden length on MMU2s with MMU3 firmware

M708 A0x22

When I send M707 A0x22 (I assume the M708 above is a typo) to the printer (MK2.5 with MMU2) I get this:

Recv: ResetRetryAttempts
Recv: ok
Posted : 24/11/2023 5:03 pm
Daniel
(@daniel-23)
Member
RE: How to set bowden length on MMU2s with MMU3 firmware

I got it to work.

I have a Priisa MK3, so I dont us Prusa link or Octoprint was never a priority to install/adapt on my system. I feel quite confortabke only using Prusa slicer  for my print jobs.

just putting the command in the begging of the g code is enough.

The reason why I was not getting it right, was becaise to avoit damaging something I went conservative on the value and fall below the lower limit imposed by the settings.

Also there was no needd to convert the value to hexadecimal.

In the end my tube length is about 640mm and I adjusted it to 635 and works fine for me now.

Thanks foe the feedback and sugestions. 

Posted : 24/11/2023 5:46 pm
EddyMI3D
(@eddymi3d)
Eminent Member
RE: How to set bowden length on MMU2s with MMU3 firmware

So I found out:

First, I had to many filters set.

Then:

Read

Send: M707 A0x22
Recv: echo:MMU2:>R22*45.
Recv: echo:MMU2:<R22 A168*f1. 
Recv: ResetRetryAttempts 
Recv: ok

Write:

Send: M708 A0x22 X450
Recv: echo:MMU2:>W22 1c2*cb.
Recv: echo:MMU2:<W22 A*1.
Recv: ResetRetryAttempts
Recv: ok

 You actual have to input the value in decimal...

Posted : 27/11/2023 2:35 pm
pridkett and carlmmii liked
Share: