Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.37w #99

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 13 additions & 3 deletions Repetier/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@ IMPORTANT: With mode <>0 some changes in Configuration.h are not set any more, a
/** \brief Specifies the number of pressure values which shall be averaged for inprint live z-adjustment */
#if FEATURE_HEAT_BED_Z_COMPENSATION
#define FEATURE_DIGIT_Z_COMPENSATION 1 // 1 = on, 0 = off
#define FEATURE_DIGIT_FLOW_COMPENSATION 1 // 1 = on, 0 = off
#define FEATURE_SENSIBLE_PRESSURE 1 // 1 = on, 0 = off
#if FEATURE_SENSIBLE_PRESSURE
// mittels SENSIBLE_PRESSURE soll im grunde ausschließlich die wärmeausdehnung in einem perfekt kalibrierten system (HBS,mhier) kompensiert werden:
Expand Down Expand Up @@ -383,8 +384,8 @@ With RF1.37r2.Mod the Emergency-Pause-Features limits can be changed in EEPROM a
With RF1.37r6.Mod the Emergency-ZStop-Features limits can be changed in EEPROM and Printers Menu. Here are the absolute maximum limits:
Do not set them to Zero.
*/
#define EMERGENCY_STOP_DIGITS_MIN -14000
#define EMERGENCY_STOP_DIGITS_MAX 14000
#define EMERGENCY_STOP_DIGITS_MIN -10000
#define EMERGENCY_STOP_DIGITS_MAX 10000

/** \brief Specifies the interval at which the pressure check shall be performed, in [ms] */
#define EMERGENCY_STOP_INTERVAL 10
Expand Down Expand Up @@ -855,6 +856,9 @@ If your EXT0_PID_MAX is low, you should prefer the second method. */
Uncomment define to force the temperature into the range for given watchperiod. */
#define TEMP_TOLERANCE 2.0f // [°C]

/** \brief Additional special temperature tolerance range when unpausing print. Faster start is better here, because reaching pause position might take a while - for a bit less oozing */
#define ADD_CONTINUE_AFTER_PAUSE_TEMP_TOLERANCE 4 // [°C]

/** \brief Bits of the ADC converter */
#define ANALOG_INPUT_BITS 10

Expand Down Expand Up @@ -953,4 +957,10 @@ You can activate this to 1 and connect some Button. If you connect ground to pul
#error You cannot use FEATURE_READ_CALIPER and FEATURE_USER_INT3 at the same time with stock programming. Please change pins/etc. and remove this errorcheck
#endif

#endif // CONFIGURATION_H
/** \brief This feature allows you to extrude into thin air to messure the filaments viscosity value using dms sensors */
#define FEATURE_VISCOSITY_TEST 0

/** \brief This is some testing function for reading the stepper drivers status bits while operation */
#define FEATURE_READ_STEPPER_STATUS 0

#endif // CONFIGURATION_H
2 changes: 1 addition & 1 deletion Repetier/Constants.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
#define CONSTANTS_H


#define REPETIER_VERSION "RF.01.37v8.Mod"
#define REPETIER_VERSION "RF.01.37w.Mod"
#define UI_PRINTER_COMPANY "Conrad Community"
#define UI_VERSION_STRING "V " REPETIER_VERSION

Expand Down
7 changes: 5 additions & 2 deletions Repetier/Extruder.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,9 @@ void Extruder::manageTemperatures()
Printer::flag0 |= PRINTER_FLAG0_TEMPSENSOR_DEFECT;
reportTempsensorError();

Com::printFLN( PSTR( "RequestStop:" ) ); //tell repetier-host / server to stop printing
Com::printFLN( PSTR( "// action:disconnect" ) ); //tell octoprint to disconnect

showError( (void*)ui_text_temperature_manager, (void*)ui_text_sensor_error );
}
}
Expand Down Expand Up @@ -1295,7 +1298,7 @@ void Extruder::disableAllHeater()

} // disableAllHeater

void TemperatureController::waitForTargetTemperature() {
void TemperatureController::waitForTargetTemperature(uint8_t plus_temp_tolerance) {
if(targetTemperatureC < 30) return;
if(Printer::debugDryrun()) return;
g_uStartOfIdle = 0;
Expand All @@ -1308,7 +1311,7 @@ void TemperatureController::waitForTargetTemperature() {
Commands::printTemperatures();
Commands::checkForPeriodicalActions();
GCode::keepAlive(WaitHeater);
if( fabs(targetTemperatureC - currentTemperatureC) <= TEMP_TOLERANCE ) {
if( fabs(targetTemperatureC - currentTemperatureC) <= TEMP_TOLERANCE + plus_temp_tolerance ) {
return;
}
}
Expand Down
2 changes: 1 addition & 1 deletion Repetier/Extruder.h
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ class TemperatureController
void updateTempControlVars();
inline bool isAlarm() {return flags & TEMPERATURE_CONTROLLER_FLAG_ALARM;}
inline void setAlarm(bool on) {if(on) flags |= TEMPERATURE_CONTROLLER_FLAG_ALARM; else flags &= ~TEMPERATURE_CONTROLLER_FLAG_ALARM;}
void waitForTargetTemperature();
void waitForTargetTemperature(uint8_t plus_temp_tolerance = 0);
void autotunePID(float temp, uint8_t controllerId, int maxCycles, bool storeResult, int method);
}; // TemperatureController

Expand Down
2 changes: 1 addition & 1 deletion Repetier/HAL.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -859,7 +859,7 @@ ISR(TIMER1_COMPA_vect)
else waitRelax--;

stepperWait = 0; // Important because of optimization in asm at begin
OCR1A = 1000; //65500 // Wait for next move
OCR1A = 65500; //1000 like repetier does // Wait for next move

DEBUG_MEMORY;
sbi(TIMSK1, OCIE1A);
Expand Down
16 changes: 14 additions & 2 deletions Repetier/Printer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -612,7 +612,11 @@ uint8_t Printer::setDestinationStepsFromGCode(GCode *com)
Extruder::current->tempControl.currentTemperatureC < MIN_EXTRUDER_TEMP ||
#endif // MIN_EXTRUDER_TEMP > 30

fabs(com->E) * extrusionFactor > EXTRUDE_MAXLENGTH)
fabs(com->E) * extrusionFactor
#if FEATURE_DIGIT_FLOW_COMPENSATION
* g_nDigitFlowCompensation_flowmulti
#endif // FEATURE_DIGIT_FLOW_COMPENSATION
> EXTRUDE_MAXLENGTH)
{
p = 0;
}
Expand All @@ -625,7 +629,11 @@ uint8_t Printer::setDestinationStepsFromGCode(GCode *com)
#if MIN_EXTRUDER_TEMP > 30
Extruder::current->tempControl.currentTemperatureC < MIN_EXTRUDER_TEMP ||
#endif // MIN_EXTRUDER_TEMP > 30
fabs(p - queuePositionLastSteps[E_AXIS]) * extrusionFactor > EXTRUDE_MAXLENGTH * axisStepsPerMM[E_AXIS])
fabs(p - queuePositionLastSteps[E_AXIS]) * extrusionFactor
#if FEATURE_DIGIT_FLOW_COMPENSATION
* g_nDigitFlowCompensation_flowmulti
#endif // FEATURE_DIGIT_FLOW_COMPENSATION
> EXTRUDE_MAXLENGTH * axisStepsPerMM[E_AXIS])
{
queuePositionLastSteps[E_AXIS] = p;
}
Expand Down Expand Up @@ -1620,7 +1628,9 @@ void Printer::homeAxis(bool xaxis,bool yaxis,bool zaxis) // home non-delta print
#else
homingOrder = HOMING_ORDER;
#endif // FEATURE_MILLING_MODE
#if FEATURE_MILLING_MODE
if(operatingMode == OPERATING_MODE_PRINT){
#endif // FEATURE_MILLING_MODE
if( (!yaxis && zaxis) || ( homingOrder == HOME_ORDER_XZY && homingOrder == HOME_ORDER_ZXY && homingOrder == HOME_ORDER_ZYX ) )
{
// do not allow homing Z-Only within menu, when the Extruder is configured < 0 and over bed.
Expand All @@ -1630,7 +1640,9 @@ void Printer::homeAxis(bool xaxis,bool yaxis,bool zaxis) // home non-delta print
//wenn Z genullt wird, sollte auch Y genullt werden dürfen.
}
}
#if FEATURE_MILLING_MODE
}
#endif // FEATURE_MILLING_MODE

switch( homingOrder )
{
Expand Down
Loading