RepRapFirmware - filtered output in console and trouble with commands


i figured out that Repetier Server 0.94.1 and previous versions filter out some data which should be printed to console but does not appear in Repetier Server UI. I can see the difference because i have Duet Web Control which puts out a lot more information when processing the code in there.

i guess i have to edit
vim /usr/local/Repetier-Server/firmware/RepRapFirmware.xml

but i dont know exactly what to enter

the output of M350/M666/M669 commands in DWC are

Microstepping - A:16, B:16, C:16, D:16, E:16(on)

Q:Buildup fac 0.0833
R:Spool r 65.00, 65.00, 65.00, 65.00
U:Mech Adv 2, 2, 2, 2
O:Lines/spool 1, 1, 1, 1
L:Motor gear teeth 20, 20, 20, 20
H:Spool gear teeth 255, 255, 255, 255
J:Full steps/rev 200, 200, 200, 200

A:0.00, -1166.00, -21.13
B:1010.00, 585.00, -25.26
C:-1015.00, 578.00, -28.55
P:Print radius: 500.0
S:Segments/s: 200
T:Min segment length: 0.20


in Repetier Console

M350 is empty
M669 does not print the B line for example. It just jumps over it

Additionally the GCodes M117 and M118 which should print text show output only if i enable "Commands" to see the dark blue text too. I'd like to see the M117 and M118 messages in green color like the initial information of controller firmware or command output like M552.

Do i need to remove them from <gcodeWithText></gcodeWithText>?

Some more lines are missing but i can look into it next week


And another small problem with fan control / M106 command
I have attached laser pointers to my Duet board which are enabled or disabled by M106 P2 S0...255 command (or S0.0 ... 1.0). In Duet Web Control i can disable them easily using the user interface slider button. If i do the same in Repetier this does not shutdown the lasers but weakens their output. So i think the value S<> is not set to zero but to something like the half. To switch them off i have to typ M106 P2 S0 manually into console. The following screenshot shows my hardware. The left fan is hotend, the center fan is the blower for print and the right "fan" are my laser pointers. By the way my feature request would be to give the fans custom names instead of "Lüfter". This would be so helpsome.


regards, Mario


  • additional info for capabilities of the fans: in firmware they are configured that way using C-Parameter:
    M106 P2 S255 I0      H-1    C"Laser Pointers"
    M106 P1 S0   I0 F500 H0 T60 C"Hotend"       
    M106 P0 S0   I0 F500 H-1    C"Blower"    

  • Ok, some good point. First fan off send currently M107 Px which is deprecated and should not be used any more according to reprapfirmware wiki, so for 0.94.2 I put
    <command type="disableFan">M106 P{i:fanId} S0</command>
    In firmware description. So my guess is that is why it does not disable laser completely.

    Naming fans might be a good idea in the long term. Problem is that it is not possible in current configurations which only has a fan count. So that needs a new incompatible configuration file change. Will think on how to add that so it stays compatible. Guess additional array with names and if I start maybe also min/max values might make sense for future safety.

    Regarding output Filter. B: and C: are temperature responses for bed and chamber temperature. So these get filtered by the M105 Filter. Since some firmwares started to also use A: B: C: it is now quite hard to say if they mean a temperature or something else. Marlin has this e.g. in M114 responses. In any case disabling the M105 filter should show you also the lines with these. I currently have no solution that matches all known cases while excluding the wrong ones. Also not sure if that will ever exist since firmware developers do what they want.

    M117/M118 send text. To see a response in green the firmware must return a line with the content.
  • Hey again and another thanks for your help,
    the M106 adjustment of command helped really well. I could have seen it myself but i overlooked it
    Regarding M117/M118 i got it too :-)

    So remaining question would be how to handle A,B,C stuff (its not thaaat important but it bugs me^^). I am using a custom RepRapFirmware from Torbjorn Ludvigsen who created and maintains the Hangprinter project. There are a lot of commands using A,B,C,D because the printer has drives which use those letters as labels. What will happen if i remove M105? Do i get a spam flood of temperatures on console?
  • Yes, you get once per second M105/Temp response. That is why the filter is so useful.
    The other problem is that firmwares greatly differ in M105 response. Some have power with @ some not, some use T0/T1 some only if you have more then 1 extruder otherwise T. Some have /setTemp others at different places and omitting is also allowed. Actually I lost trace of who does what, just know I currently catch them all. Maybe adding that an additional [BTC@/] must be contained would be a solution. This would just not cover the case single extruder without power and set temperature report. Guess that would be quite unlikely knowing that most send at least set temperature or have a bed. On the other side this would also catch your C: case so I still have both hits in your case. Also A: is used by prusa in temperature response so ABC are no indication as well.
    Maybe I should make it firmware setting so I can say for RepRapFirmware
    But that would not catch temp. responds during M109. These would not start with ok. So maybe better add / as rule for RepRapFirmware or marlin. With that external setting users could then change it if they do no match.
  • hmmmmmm time will bring a solution (maybe) :-)

    by the way i wanted you to ask if you could add a button to clear the console output. Sometimes it would be helpful to have a clean view box
  • I know what you mean. For testing it is easier to delete old garbage sometimes. Will see how good that works. Server still has all data and changing filters reloads from there. But you could clear afterwards again in worst case.
Sign In or Register to comment.