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...
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
RE:
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.
RE: 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...
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
RE: How to set bowden length on MMU2s with MMU3 firmware
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 :-(.
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.
RE: How to set bowden length on MMU2s with MMU3 firmware
A fix is coming 😀
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.
RE: How to set bowden length on MMU2s with MMU3 firmware
awesome, thanks for the write-up!
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
RE: How to set bowden length on MMU2s with MMU3 firmware
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.
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
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.
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...
RE: How to set bowden length on MMU2s with MMU3 firmware
The new MMU firmware 3.0.1 solves this problem. I don't know where this is set though. From the release notes:
Bowden length register added
With the MMU FW 3.0.1, it is possible to set a custom front PTFE tube length (default length: 360 mm). This has been implemented at the request of our community members who pointed out that there are various configurations for the filament setup and there's a need to set a longer PTFE tube length. We limited the length to 1000 mm since longer tubes might introduce additional issues - we strongly recommend keeping the tube shorter rather than at the maximum allowable length.
This new register can be used to tweak the fast loading and unloading distance in case of non-standard installations. The register is persistent in the MMU's EEPROM. Unlike the previous generation of FW 1.0.x, the register now reflects the actual real length of the tube, not including any additional distances to the pulley or drive gears.
Note: If you choose to increase the PTFE length for your custom setup, you must verify whether the unloaded filaments fit inside the provided buffer. If they do not, you will need to construct your own buffer with sufficient space.
RE: How to set bowden length on MMU2s with MMU3 firmware
To read the Bowden Tube Length register:
M708 A0x22
@carlmmii - I think there is a typo in your writeup. To read the current length, this should be M707, not M708.
RE: How to set bowden length on MMU2s with MMU3 firmware
How is everyone connecting to the mmu3 to update the register? I connect themmu3 using a usb cable to same device that i upgrade the mmu3 firmware with. when i connect with putty at 115200 baud, it just sits there. i have tried every baud rate know to man with no success. Do i need to connect to the mk4 and not the mmu3?