Repetier Server (only!) severe underextrusion since BMG upgrade

Hello there,

I'm currently stuck with a problem that I just can't get my head around.

I've been using Repetier Server Pro with my Prusa MK3S+ for a few weeks now without any problems. But since upgrading my extruder to a Bondtech BMG and changing the extruder e-steps accordingly, I can not get any prints with correct extrusion for the life of me. But whenever I print the same file(!) with pronterface or via sd card, everything looks fine. It must have something to do with repetier server.
I have not made any changes to it, I didn't add any custom gcode to repetier server, and the problem is only with the Bondtech BMG extruder. I have no problems with my other Prusa's on the same repetier server installation. I have also tried to delete and re-add the printer, and even tried a new USB cable.

I did recalibrate my extruder step value via pronterface after the upgrade and I can see the correct value in the console output. I don't have any idea where I could start with troubleshooting, other than asking here.

My problem sounds a lot like this one:
But the e-steps of the e axis are correct, it was at 415 initially, 430 now after calibration.

Any help is much appreciated, thank you.

Kind regards.


  • Addendum: The file also works perfectly fine with OctoPrint. It would be sad if I had to switch back to OctoPrint, as I'm not a fan.
  • File also working perfectly fine in Repetier HOST. It's just Repetier SERVER that gives me trouble.
  • Please check if the flow multiplier in server is not on 100%, also that is default on connect. The only other way to get it wrong would be to change steps per mm with a gcode, but server does not do that.

    Just to be sure - does your gcode contain a command that sets relative or absolute extrusion explicitly? Assuming relative and being in absolute gives nearly no extrusion at all.

    If you are on 1.0.4 beta please upgrade - there was a short time a bug in it skipping some command like setting extrusion relative with bad luck so that might also be a reason.

    These are all possible reasons I currently can think of. For testing you can go to console also and check commands being send to see what happens and try manual extrusion as a test.
  • edited March 15
    The gcode is from PrusaSlicer, it sets relative extrusion:
    M83 ; extruder relative mode

    I am using 1.0.3 on Mac. It runs on a Mac Mini Server. 

    I have also not changed any start codes on PrusaSlicer. The steps for the extruder were changed one time only, via Pronterface. No other things have been changed, and the printer was working fine with Repetier Server BEFORE the upgrade. Can I somehow give you the gcode (it's a simple Benchy) so you can have a look if there is any line of code that Repetier Server does not like? It's really weird because the file prints perfectly fine via OctoPrint, Pronterface and Repetier Host.

    The flow multiplier is per default on 95%. I think PrusaSlicer does this automatically. It's been on 95% ever since, even before the problem started.
  • Strange - my Prusa MK3 das 280.00 in eeprom. When you check eeprom in server you also have correct resolution?

    You can give me a download link for the print and I try. Have also a prusa so should be easy to see if it works for me with same code. At least if you do not set steps per mm in gcode. I know that prusa slicer at least sets the accelerations there.

  • edited March 15
    Yes, the 280 is what it was before. The bondtech BMG needs to be set to 415 (or in my case 430 after the calibration).

    Here is a screengrab of my settings:

    I uploaded the gcode to my server, I'm really grateful you take the time to look at it. Thank you!
  • The gcode looks perfect and printed well on my server. I also see no command changing steps per mm. It contains set flow to 95% which pruaslicer config does for low layer heights, also I do not like that. It was not invented for that.
    This makes completely no sense. I mean it worked you change hardware and nothing is server and now it does not work. It only makes sense if you have some event gcode that overrides the settings and was optimized for the old extruder. When you activate logging and start a print (after veriyfiying eeprom is correct) the command is at the top, but watch your the first commands might be missing and in the connected.log if activated.
    Easier solution might be to download your config as xml file and search for M92.
  • Thanks for testing it.

    I agree that it makes no sense, but this is how it actually is. I just can't understand why.
    Please see the following examples:

    This one - Voron Test Cube - started with Repetier Server, I stopped it in layer 3 as the underextrusion is just severe:

    This is the same file, on the same printer, with the same filament, printed just right after stopping the first one, but sent via OctoPrint (shows first layer):

    There is absolutely nothing I changed in between, no nozzle cleaning or swapping, no nothing. Printed right after each other, just using different software.

    This is my configuration:

    I'm pretty sure that I haven't made any changes in regards to anything...

    I'm now going to take a look at any logs I find.
  • Checked config and there is no sign of any code injection causing this.
    On the other side the images look like the under extrusion has a factor matching 430/280. When you set flow multiplier to 153% would it then look correct? Best adjust it in gcode where it gets set to 95%

    M221 S95

    I also saw

    M900 K0.08 ; Filament gcode LA 1.5
    M900 K45 ; Filament gcode LA 1.0

    hope newer firmwares detect the difference. 

  • I can try and print a test cube at 153%.

    What does M900 K do?

    Sounds like a good lead.
  • edited March 17
    Setting the flow high up to 153% looks a lot better. Maybe a bit too much but looks like 145% is right on the spot. So I might use this as a work around, but I still have no idea where the actual cause is.

    Edit: It still looks kinda weird... A new idea: Could the actual problem be related to temperature, not flow? Or both? Because the PETG is really messy and sticky, it doesn't flow nicely. The temperature is set to 245°, this should be pretty liquid, not sticky at all. So maybe there is a problem with a combination of both? Just an idea.

    Stopped the test print at 40%:

    I can't quite put the finger on the problem. The amount of filament looks almost right at 150% flow, but still the perimeters are very irregular and not tidy. Also, retraction is off.

    The console did not spit out any error. What should I look out for?
  • You said with octoprint it works ok. Was this before you changed the extruder? I mean on server it was also working fine before. From what I read before i understand you did. Was that exactly the same file with same temperatures?

    The fact that it is so irregular lets make me think you have more an extrusion problem. When you increase flow you extrude always the same factor more, so it should look regular. If extrusion starts to slip due to increased backforce in nozzle you get less extrusion. Reason might be wrong temperature or bad spring pressure or motor current is too low so you loose steps. I saw you are explicitly setting extruder motor current here:
    M907 E430 ; set extruder motor current
    and 430 mA or what ever unit it may be is not really much. Mit I'm not sur eit is mA at all - Marlin Doxs say to use M906 for TMC with mA.  Looking in my slicer results I do not have that line so guess I have more. Unfortunately I can not see what values are set by default.
  • Yes, with OctoPrint it works fine, before and after the upgrade. The test voron cube from the post above was from yesterday. With Pronterface, it works fine, before and after the upgrade. With Repetier Server, it stopped working after the upgrade.
    Initially, I also thought it is a hardware problem. I dismantled the extruder countless times, always with the same result, because as always, I would send the files with Repetier Server. Only when I was using Pronterface for debugging and had perfect print results, I became suspicious, testing different solutions and realizing that the problem only occurs with Repetier Server. I have already spent 4 days trouble shooting then 8-/

    So, the printer is connected to my Mac Mini Server via USB. If I send a file from OctoPrint, it prints it perfectly fine. If I send the SAME file from Repetier Server, I get this weird problems with extrusion.
    It's the same file, the same printer, the same filament, the same computer. Just sending it with a different software.

    If the problem is caused by a mechanical problem like the extruder itself, it would have to appear in every software. Also, printing the file from SD card works fine.

    I don't think I'm losing steps, the extruder is not skipping or clicking.

    Can there be any hardcoded string for e-steps be hidden in the configuration file? Something that was forgotten to replace with a variable? Something within the definition of the printer? Maybe from testing state? I don't know, some fixed value for the extruder steps on a prusa?
  • LOL, so I turned "ping pong" on and the new print looks good so far. What does that mean? What can cause this? How does this relate to extrusion? I'm pretty confused now.
  • You can mark it as fixed. Turning on the ping pong option fixed it for me - the voron cube printed perfectly, just finished. 
    However, I do not understand how this relates - why does it happen, why does the ping pong mode fix it? What does it even do?
  • Active ping-pong sends commands 1 after the other while waiting for "ok", just like Octopint and Pronterface do. When it is disabled server will send commands in parallel to speed up communication. With input buffer size 127 no problem so far with Prusa MK3. But also with higher values it will just trigger resends from com errors from overflow but should not change extrusion. Very strange if you had no errors in console without ping-pong.

    I know prusa mini gets in trouble but that is bug on printer side I think.

    I just released new 1.0.4 version. So you should update as it fixes some problems I detected. Also nothing that explains the difference.
  • Really weird, I really had no error messages in the console ever. Besides "MMU disabled" and stuff, which is Prusa specific.
    Maybe it has to do with the Bondtech BMG firmware fork? It states it only changes max z-height and extruder steps, but maybe there is a bug in the communication layer? I don't know. I never had any communication timeouts while printing, and it never froze or anything (that's what my google search came up with for the Ping Pong modus).

    I will update, thank you for your time and help!
Sign In or Register to comment.