Add filter for PRUSA with MMU

PRUSA MK series firmware: 3.13.0 
PRUSA MMU2S/MMU3 firmware: 3.0.0

The latest version of PRUSA MK3/MMU2S firmware results in a LOT of traffic because the motherboard now continually talks to the MMU2S unit vis serial and that gets echo'd onto the USB buss. The result is a continual stream as shown below.

Which means if you want to send a GCODE command and expect to see a result, forget it. It gets lost in these "echo" messages so the Console becomes unusable.

I raised the issue with the developers and the response I got was, "We know it gets quite "spammy", we've discussed about improving this but no decision has been made about the implementation just yet. Printer senda a Q0 (Query) command to the MMU every second and it's all logged currently."

Octoprint guys apparently added a "echo:MMU2:" filter to get rid of it, but not sure if there's a way to do that with Repetier Server Pro.

Recv:19:31:05.871: echo:MMU2:<R1a A25d*aa.
Recv:19:31:06.871: echo:MMU2:>Q0*ea.
Recv:19:31:06.875: echo:MMU2:<U0 F0*c7.
Recv:19:31:06.875: echo:MMU2:>R8*81.
Recv:19:31:06.879: echo:MMU2:<R8 A0*8d.
Recv:19:31:06.879: echo:MMU2:>R1b*9e.
Recv:19:31:06.883: echo:MMU2:<R1b A0*68.
Recv:19:31:06.883: echo:MMU2:>R1c*88.
Recv:19:31:06.887: echo:MMU2:<R1c A5*f6.
Recv:19:31:06.887: echo:MMU2:>R4*7b.
Recv:19:31:06.891: echo:MMU2:<R4 A0*66.
Recv:19:31:06.891: echo:MMU2:>R1a*f5.




Comments

  • Completely deleting is not good I think, but I put them in the ack list, so if ack filter is on (default) it would remove this chit-chat from output. You can also easily do this alread if you edit in installDir/firmwares marlin.xml and add this line:
    <response type="ack">^echo:MMU2:</response>
    or wait for next release, where I have added it.
  • Repetier said:
    Completely deleting is not good I think, but I put them in the ack list, so if ack filter is on (default) it would remove this chit-chat from output. You can also easily do this alread if you edit in installDir/firmwares marlin.xml and add this line:
    <response type="ack">^echo:MMU2:</response>
    or wait for next release, where I have added it.
    Took me a bit to find that file on the Mac but I found it, modified it, now instead of updating each second it updates the same messages in blocks of 10 at a time.

    Appears to do the same thing with ACK on or off. I added it to the bottom of the section where all the other "ack" types are (after the fan speed entry). Oh and I did stop and start the Repetier Server as well just to make sure it possibly notice the change.

    Personally I'd kill the thing since it's the comm between the mainboard and the MMU2S and doesn't really serve any purpose otherwise.

    Kind of fun working with "sudo nano"...been a while...

    Mel
  • The blocks of 10 is just because they come in a row with nearly no time difference, see your log on top. But if you now also see ok that means your ACK filter is on. Will only be omitted with filter off which already removed the ok before that.
  • Repetier said:
    The blocks of 10 is just because they come in a row with nearly no time difference, see your log on top. But if you now also see ok that means your ACK filter is on. Will only be omitted with filter off which already removed the ok before that.
    Sheesh, I missed the time line on that. I counted them now and actually blocks of 12.

    ACK filter on or off makes no difference, I don't see any OK in either setting. They come in exactly the same way.

    Recv:15:52:10.527: echo:MMU2:>Q0*ea.
    Recv:15:52:10.531: echo:MMU2:<X0 F0*87.
    Recv:15:52:10.531: echo:MMU2:>R8*81.
    Recv:15:52:10.535: echo:MMU2:<R8 A0*8d.
    Recv:15:52:10.535: echo:MMU2:>R1b*9e.
    Recv:15:52:10.535: echo:MMU2:<R1b A5*29.
    Recv:15:52:10.539: echo:MMU2:>R1c*88.
    Recv:15:52:10.544: echo:MMU2:<R1c A5*f6.
    Recv:15:52:10.544: echo:MMU2:>R4*7b.
    Recv:15:52:10.548: echo:MMU2:<R4 A0*66.
    Recv:15:52:10.548: echo:MMU2:>R1a*f5.
    Recv:15:52:10.552: echo:MMU2:<R1a A0*41.

    I added the line here:

        <response type="fanSpeed" factor="1">Fanspeed:(\d+)</response>
        <response type="ack">^echo:MMU2:</response>
        -->

    So we got a </ignore> option...:-)
  • Ok that explains it. You had put it in the comment at the bottom. <!-- starts comment until -->
    Put it before that like

    <response type="ack">Percent done</response>
    <response type="ack">^echo:MMU2:</response>
  • I missed the comment line above where I stuck it. Reading. Such a lost art...sorry about that.

    Moved it and it's working perfectly and not "chatty" any more. Your help and patience very much appreciated.

    Mel
Sign In or Register to comment.