OK.
EIGENTLICH mittlerweile VÖLLIG OFF-TOPIC (sorry).
Selbst ist der Mann (oder die Mannin, je nachdem). - (Unser derzeitiger Bundeskanzler möchte solche 'Gendereien' abschaffen - da muss ich einfach ein wenig 'sticheln').
Ich habe selbst geguckt, was es mit M203 in der Repetier-FW auf sich hat.
Das Folgende ist aus der letztgültigen Repetier-Firmware Datei (Commands.cpp) - also
nicht unsere RFx000-Firmware:
Code: Alles auswählen
case 203: // M203 Temperature monitor
if (com->hasX()) {
Printer::maxFeedrate[X_AXIS] = com->X / 60.0f;
}
if (com->hasY()) {
Printer::maxFeedrate[Y_AXIS] = com->Y / 60.0f;
}
if (com->hasZ()) {
Printer::maxFeedrate[Z_AXIS] = com->Z / 60.0f;
}
if (com->hasE()) {
Printer::maxFeedrate[E_AXIS] = com->E / 60.0f;
}
if (com->hasS())
manageMonitor = com->S != 255;
else
manageMonitor = 0;
break;
Wie bereits mehrfach geschrieben, ich bin kein Programmierer (aber lesen kann ich und habe auch ausreichend Phantasie!). So wie ich das hier sehe, leistet der M203-Befehl,
in der Repetier-Firmware, doppelte Arbeit. Steht als Parameter ein X, Y, Z, oder E, dann wird die maximale Fördermenge gesetzt (limitiert?). Steht aber als Parameter ein S, dann wird die Temperaturüberwachung aktiviert.
In der
Firmware für den RFx000 Drucker steht es ein wenig anders (ich glaube nicht, dass hier die Community-Version davon abweicht):
Code: Alles auswählen
case 203: // M203 - Temperature monitor
{
if( isSupportedMCommand( com->M, OPERATING_MODE_PRINT ) )
{
if(com->hasS())
{
if(com->S<NUM_EXTRUDER) manageMonitor = com->S;
#if HAVE_HEATED_BED
else manageMonitor=NUM_EXTRUDER; // Set 100 to heated bed
#endif // HAVE_HEATED_BED
}
}
break;
Für unsere Drucker gilt scheinbar
nur die Temperaturüberwachung (was immer das auch tun mag). Ich habe eben auch in der
Community Version Nachschau gehalten. Dort steht dasselbe.
mjh11