From a7ea87d1e38117823c13dc3eae4810afb73420ab Mon Sep 17 00:00:00 2001 From: David Crocker Date: Fri, 9 Dec 2016 14:01:40 +0000 Subject: [PATCH] Version 1.17dev8 Fixed bugs related to grid bed compensation and M571 in 1.17dev7 version Software reset code storage/retrieval now works on Duet WiFi Removed max average printing acceleration parameter M571 now accepts F parameter to set the PWM frequency M106 now shows if fan is disabled --- ...17dev7.bin => RepRapFirmware-1.17dev8.bin} | Bin 320124 -> 319748 bytes ...dev7.bin => DuetWiFiFirmware-1.17dev8.bin} | Bin 269708 -> 269308 bytes src/Configuration.h | 6 +- src/Fan.cpp | 10 + src/Fan.h | 2 +- src/GCodes/{GCodes1.cpp => GCodes.cpp} | 103 ++++---- src/GCodes/GCodes.h | 6 +- src/GCodes/GCodes2.cpp | 240 +++++++++--------- src/Movement/DDA.cpp | 44 +--- src/Movement/DDA.h | 4 +- src/Movement/Move.cpp | 23 +- src/Movement/Move.h | 3 + src/Platform.cpp | 128 +++++++--- src/Platform.h | 58 +++-- src/Tool.cpp | 11 +- 15 files changed, 360 insertions(+), 278 deletions(-) rename Release/Duet-0.6-0.8.5/Edge/{RepRapFirmware-1.17dev7.bin => RepRapFirmware-1.17dev8.bin} (56%) rename Release/Duet-WiFi/Edge/{DuetWiFiFirmware-1.17dev7.bin => DuetWiFiFirmware-1.17dev8.bin} (55%) rename src/GCodes/{GCodes1.cpp => GCodes.cpp} (97%) diff --git a/Release/Duet-0.6-0.8.5/Edge/RepRapFirmware-1.17dev7.bin b/Release/Duet-0.6-0.8.5/Edge/RepRapFirmware-1.17dev8.bin similarity index 56% rename from Release/Duet-0.6-0.8.5/Edge/RepRapFirmware-1.17dev7.bin rename to Release/Duet-0.6-0.8.5/Edge/RepRapFirmware-1.17dev8.bin index 73e5a4f8f9a0f0974a7db3057522e01603a6dc3f..22630754ebac1e46f61f969ea3c130ec275683b2 100644 GIT binary patch delta 86709 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/f=?9q3lFYKOl*52o>|=dvpp*mu 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 F{slGHIKKb@ delta 87593 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 firmwareUpdateModuleMap = 0; @@ -699,11 +699,6 @@ void GCodes::DoFilePrint(GCodeBuffer& gb, StringRef& reply) char b; if (fd.Read(b)) { - if (gb.StartingNewCode() && &gb == fileGCode && gb.MachineState().previous == nullptr) - { - filePos = fd.GetPosition() - 1; - //debugPrintf("Set file pos %u\n", filePos); - } if (gb.Put(b)) { gb.SetFinished(ActOnCode(gb, reply)); @@ -732,6 +727,7 @@ void GCodes::DoFilePrint(GCodeBuffer& gb, StringRef& reply) if (gb.MachineState().previous == nullptr) { // Finished printing SD card file + UnlockAll(gb); reprap.GetPrintMonitor()->StoppedPrint(); if (platform->Emulating() == marlin) { @@ -947,7 +943,7 @@ void GCodes::Pop(GCodeBuffer& gb) // Move expects all axis movements to be absolute, and all extruder drive moves to be relative. This function serves that. // 'moveType' is the S parameter in the G0 or G1 command, or -1 if we are doing G92. // For regular (type 0) moves, we apply limits and do X axis mapping. -// Returns the number of segments if we have a legal move (or 1 if we are doing G92), or zero if this gcode should be discarded +// Returns the number of segments if we have a legal move, 1 if we are doing G92, or zero if this gcode should be discarded unsigned int GCodes::LoadMoveBufferFromGCode(GCodeBuffer& gb, int moveType) { // Zero every extruder drive as some drives may not be changed @@ -1214,7 +1210,7 @@ int GCodes::SetUpMove(GCodeBuffer& gb, StringRef& reply) } } - // Load the last position and feed rate into moveBuffer + // Load the last position into moveBuffer #if SUPPORT_ROLAND if (reprap.GetRoland()->Active()) { @@ -1227,24 +1223,25 @@ int GCodes::SetUpMove(GCodeBuffer& gb, StringRef& reply) } // Load the move buffer with either the absolute movement required or the relative movement required - float oldCoords[MAX_AXES]; - memcpy(oldCoords, moveBuffer.coords, sizeof(oldCoords)); + memcpy(moveBuffer.initialCoords, moveBuffer.coords, numAxes * sizeof(moveBuffer.initialCoords[0])); segmentsLeft = LoadMoveBufferFromGCode(gb, moveBuffer.moveType); + if (segmentsLeft != 0) { // Flag whether we should use pressure advance, if there is any extrusion in this move. - // We assume it is a normal printing move needing pressure advance if there is forward extrusion and XY movement. - // The movement code will only apply pressure advance if there is forward extrusion, so we only need to check for XY movement here. + // We assume it is a normal printing move needing pressure advance if there is forward extrusion and XYU.. movement. + // The movement code will only apply pressure advance if there is forward extrusion, so we only need to check for XYU.. movement here. moveBuffer.usePressureAdvance = false; for (size_t axis = 0; axis < numAxes; ++axis) { - if (axis != Z_AXIS && moveBuffer.coords[axis] != oldCoords[axis]) + if (axis != Z_AXIS && moveBuffer.coords[axis] != moveBuffer.initialCoords[axis]) { moveBuffer.usePressureAdvance = true; break; } } - moveBuffer.filePos = (&gb == fileGCode) ? filePos : noFilePosition; + moveBuffer.filePos = (&gb == fileGCode) ? gb.MachineState().fileState.GetPosition() : noFilePosition; + moveBuffer.canPauseAfter = (moveBuffer.endStopsToCheck == 0); //debugPrintf("Queue move pos %u\n", moveFilePos); } return (moveBuffer.moveType != 0 || moveBuffer.endStopsToCheck != 0) ? 2 : 1; @@ -1266,7 +1263,9 @@ bool GCodes::ReadMove(RawMove& m) } else { - // This move needs to be divided into 2 or more segments + // This move needs to be divided into 2 or more segments. We can only pause after the final segment. + m.canPauseAfter = false; + // Do the axes for (size_t drive = 0; drive < numAxes; ++drive) { @@ -1375,52 +1374,65 @@ bool GCodes::DoCannedCycleMove(GCodeBuffer& gb, EndstopChecks ce) return false; } -// This handles G92 +// This handles G92. Return true if completed, false if it needs to be called again. bool GCodes::SetPositions(GCodeBuffer& gb) { - // Don't pause the machine if only extruder drives are being reset (DC, 2015-09-06). - // This avoids blobs and seams when the gcode uses absolute E coordinates and periodically includes G92 E0. - bool includingAxes = false; - for (size_t drive = 0; drive < numAxes; ++drive) + if (gb.Seen('R') && gb.GetIValue() == 1) { - if (gb.Seen(axisLetters[drive])) + // Babystepping command. All coordinates except Z are ignored. + if (gb.Seen('Z')) { - includingAxes = true; - break; + const float babystepAmount = gb.GetFValue() * distanceScale; + if (fabs(babystepAmount) <= 1.0) // limit babystepping to 1mm + { + reprap.GetMove()->Babystep(babystepAmount); + } } } - - if (includingAxes) + else { - if (!LockMovementAndWaitForStandstill(gb)) + // Don't pause the machine if only extruder drives are being reset (DC, 2015-09-06). + // This avoids blobs and seams when the gcode uses absolute E coordinates and periodically includes G92 E0. + bool includingAxes = false; + for (size_t drive = 0; drive < numAxes; ++drive) + { + if (gb.Seen(axisLetters[drive])) + { + includingAxes = true; + break; + } + } + + if (includingAxes) + { + if (!LockMovementAndWaitForStandstill(gb)) // lock movement and get current coordinates + { + return false; + } + } + else if (segmentsLeft != 0) // wait for previous move to be taken so that GetCurrentUserPosition returns the correct value { return false; } - } - else if (segmentsLeft != 0) // wait for previous move to be taken so that GetCurrentUserPosition returns the correct value - { - return false; - } - reprap.GetMove()->GetCurrentUserPosition(moveBuffer.coords, 0, reprap.GetCurrentXAxes()); // make sure move buffer is up to date - bool ok = LoadMoveBufferFromGCode(gb, -1); - if (ok && includingAxes) - { -#if SUPPORT_ROLAND - if (reprap.GetRoland()->Active()) + const bool ok = LoadMoveBufferFromGCode(gb, -1); + if (ok && includingAxes) { - for(size_t axis = 0; axis < AXES; axis++) +#if SUPPORT_ROLAND + if (reprap.GetRoland()->Active()) { - if (!reprap.GetRoland()->ProcessG92(moveBuffer[axis], axis)) + for(size_t axis = 0; axis < AXES; axis++) { - return false; + if (!reprap.GetRoland()->ProcessG92(moveBuffer[axis], axis)) + { + return false; + } } } - } #endif - SetPositions(moveBuffer.coords); + SetPositions(moveBuffer.coords); + } } - return true; } @@ -2974,7 +2986,7 @@ void GCodes::StartToolChange(GCodeBuffer& gb, bool inM109) } // Retract or un-retract filament, returning true if movement has been queued, false if this needs to be called again -bool GCodes::RetractFilament(bool retract) +bool GCodes::RetractFilament(GCodeBuffer& gb, bool retract) { if (retractLength != 0.0 || retractHop != 0.0 || (!retract && retractExtra != 0.0)) { @@ -3008,7 +3020,8 @@ bool GCodes::RetractFilament(bool retract) moveBuffer.isFirmwareRetraction = true; moveBuffer.usePressureAdvance = false; - moveBuffer.filePos = filePos; + moveBuffer.filePos = (&gb == fileGCode) ? gb.MachineState().fileState.GetPosition() : noFilePosition; + moveBuffer.canPauseAfter = !retract; // don't pause after a retraction because that could cause too much retraction moveBuffer.xAxes = reprap.GetCurrentXAxes(); segmentsLeft = 1; } diff --git a/src/GCodes/GCodes.h b/src/GCodes/GCodes.h index eee3cd7..4c67738 100644 --- a/src/GCodes/GCodes.h +++ b/src/GCodes/GCodes.h @@ -65,12 +65,13 @@ public: float coords[DRIVES]; // new positions for the axes, amount of movement for the extruders float initialCoords[MAX_AXES]; // the initial positions of the axes float feedRate; // feed rate of this move - FilePosition filePos; // offset in the file being printed that this move was read from + FilePosition filePos; // offset in the file being printed at the end of reading this move uint32_t xAxes; // axes that X is mapped to EndstopChecks endStopsToCheck; // endstops to check uint8_t moveType; // the S parameter from the G0 or G1 command, 0 for a normal move bool isFirmwareRetraction; // true if this is a firmware retraction/un-retraction move bool usePressureAdvance; // true if we want to us extruder pressure advance, if there is any extrusion + bool canPauseAfter; // true if we can pause just after this move and successfully restart }; GCodes(Platform* p, Webserver* w); @@ -197,7 +198,7 @@ private: void SetAllAxesNotHomed(); // Flag all axes as not homed void SetPositions(float positionNow[DRIVES]); // Set the current position to be this const char *TranslateEndStopResult(EndStopHit es); // Translate end stop result to text - bool RetractFilament(bool retract); // Retract or un-retract filaments + bool RetractFilament(GCodeBuffer& gb, bool retract); // Retract or un-retract filaments bool ChangeMicrostepping(size_t drive, int microsteps, int mode) const; // Change microstepping on the specified drive void ListTriggers(StringRef reply, TriggerMask mask); // Append a list of trigger endstops to a message void CheckTriggers(); // Check for and execute triggers @@ -280,7 +281,6 @@ private: float simulationTime; // Accumulated simulation time uint8_t simulationMode; // 0 = not simulating, 1 = simulating, >1 are simulation modes for debugging - FilePosition filePos; // The position we got up to in the file being printed // Firmware retraction settings float retractLength, retractExtra; // retraction length and extra length to un-retract diff --git a/src/GCodes/GCodes2.cpp b/src/GCodes/GCodes2.cpp index 5c7ef14..3dd0c2d 100644 --- a/src/GCodes/GCodes2.cpp +++ b/src/GCodes/GCodes2.cpp @@ -133,7 +133,7 @@ bool GCodes::HandleGcode(GCodeBuffer& gb, StringRef& reply) { return false; } - result = RetractFilament(true); + result = RetractFilament(gb, true); } break; @@ -142,7 +142,7 @@ bool GCodes::HandleGcode(GCodeBuffer& gb, StringRef& reply) { return false; } - result = RetractFilament(false); + result = RetractFilament(gb, false); break; case 20: // Inches (which century are we living in, here?) @@ -913,121 +913,127 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, StringRef& reply) } else { - bool seen = false; Fan& fan = platform->GetFan(fanNum); - - if (gb.Seen('I')) // Invert cooling + if (!fan.IsEnabled()) { - const int invert = gb.GetIValue(); - if (invert < 0) + reply.printf("Fan number %d is disabled", fanNum); + } + else + { + bool seen = false; + if (gb.Seen('I')) // Invert cooling { - fan.Disable(); - } - else - { - fan.SetInverted(invert > 0); - } - seen = true; - } - - if (gb.Seen('F')) // Set PWM frequency - { - fan.SetPwmFrequency(gb.GetFValue()); - seen = true; - } - - if (gb.Seen('T')) // Set thermostatic trigger temperature - { - seen = true; - fan.SetTriggerTemperature(gb.GetFValue()); - } - - if (gb.Seen('B')) // Set blip time - { - seen = true; - fan.SetBlipTime(gb.GetFValue()); - } - - if (gb.Seen('L')) // Set minimum speed - { - seen = true; - fan.SetMinValue(gb.GetFValue()); - } - - if (gb.Seen('H')) // Set thermostatically-controller heaters - { - seen = true; - long heaters[HEATERS]; - size_t numH = HEATERS; - gb.GetLongArray(heaters, numH); - // Note that M106 H-1 disables thermostatic mode. The following code implements that automatically. - uint16_t hh = 0; - for (size_t h = 0; h < numH; ++h) - { - const int hnum = heaters[h]; - if (hnum >= 0 && hnum < HEATERS) + const int invert = gb.GetIValue(); + if (invert < 0) { - hh |= (1u << (unsigned int)hnum); + fan.Disable(); + } + else + { + fan.SetInverted(invert > 0); + } + seen = true; + } + + if (gb.Seen('F')) // Set PWM frequency + { + fan.SetPwmFrequency(gb.GetFValue()); + seen = true; + } + + if (gb.Seen('T')) // Set thermostatic trigger temperature + { + seen = true; + fan.SetTriggerTemperature(gb.GetFValue()); + } + + if (gb.Seen('B')) // Set blip time + { + seen = true; + fan.SetBlipTime(gb.GetFValue()); + } + + if (gb.Seen('L')) // Set minimum speed + { + seen = true; + fan.SetMinValue(gb.GetFValue()); + } + + if (gb.Seen('H')) // Set thermostatically-controller heaters + { + seen = true; + long heaters[HEATERS]; + size_t numH = HEATERS; + gb.GetLongArray(heaters, numH); + // Note that M106 H-1 disables thermostatic mode. The following code implements that automatically. + uint16_t hh = 0; + for (size_t h = 0; h < numH; ++h) + { + const int hnum = heaters[h]; + if (hnum >= 0 && hnum < HEATERS) + { + hh |= (1u << (unsigned int)hnum); + } + } + if (hh != 0) + { + platform->SetFanValue(fanNum, 1.0); // default the fan speed to full for safety + } + fan.SetHeatersMonitored(hh); + } + + if (gb.Seen('S')) // Set new fan value - process this after processing 'H' or it may not be acted on + { + const float f = constrain(gb.GetFValue(), 0.0, 255.0); + if (seen || seenFanNum) + { + platform->SetFanValue(fanNum, f); + } + else + { + // We are processing an M106 S### command with no other recognised parameters and we have a tool selected. + // Apply the fan speed setting to the fans in the fan mapping for the current tool. + lastDefaultFanSpeed = f; + SetMappedFanSpeed(); } } - if (hh != 0) + else if (gb.Seen('R')) { - platform->SetFanValue(fanNum, 1.0); // default the fan speed to full for safety - } - fan.SetHeatersMonitored(hh); - } - - if (gb.Seen('S')) // Set new fan value - process this after processing 'H' or it may not be acted on - { - const float f = constrain(gb.GetFValue(), 0.0, 255.0); - if (seen || seenFanNum) - { - platform->SetFanValue(fanNum, f); - } - else - { - // We are processing an M106 S### command with no other recognised parameters and we have a tool selected. - // Apply the fan speed setting to the fans in the fan mapping for the current tool. - lastDefaultFanSpeed = f; - SetMappedFanSpeed(); - } - } - else if (gb.Seen('R')) - { - const int i = gb.GetIValue(); - switch(i) - { - case 0: - case 1: - // Restore fan speed to value when print was paused - platform->SetFanValue(fanNum, pausedFanValues[fanNum]); - break; - case 2: - // Set the speeds of mapped fans to the last known value. Fan number is ignored. - SetMappedFanSpeed(); - break; - default: - break; - } - } - else if (!seen) - { - reply.printf("Fan%i frequency: %dHz, speed: %d%%, min: %d%%, blip: %.2f, inverted: %s", - fanNum, - (int)(fan.GetPwmFrequency()), - (int)(fan.GetValue() * 100.0), - (int)(fan.GetMinValue() * 100.0), - fan.GetBlipTime(), - (fan.GetInverted()) ? "yes" : "no"); - uint16_t hh = fan.GetHeatersMonitored(); - if (hh != 0) - { - reply.catf(", trigger: %dC, heaters:", (int)fan.GetTriggerTemperature()); - for (unsigned int i = 0; i < HEATERS; ++i) + const int i = gb.GetIValue(); + switch(i) { - if ((hh & (1u << i)) != 0) + case 0: + case 1: + // Restore fan speed to value when print was paused + platform->SetFanValue(fanNum, pausedFanValues[fanNum]); + break; + case 2: + // Set the speeds of mapped fans to the last known value. Fan number is ignored. + SetMappedFanSpeed(); + break; + default: + break; + } + } + else if (!seen) + { + reply.printf("Fan%i frequency: %dHz, speed: %d%%, min: %d%%, blip: %.2f, inverted: %s", + fanNum, + (int)(fan.GetPwmFrequency()), + (int)(fan.GetValue() * 100.0), + (int)(fan.GetMinValue() * 100.0), + fan.GetBlipTime(), + (fan.GetInverted()) ? "yes" : "no"); + uint16_t hh = fan.GetHeatersMonitored(); + if (hh != 0) + { + reply.catf(", trigger: %dC, heaters:", (int)fan.GetTriggerTemperature()); + for (unsigned int i = 0; i < HEATERS; ++i) { - reply.catf(" %u", i); + if ((hh & (1u << i)) != 0) + { + reply.catf(" %u", i); + } } } } @@ -1491,13 +1497,6 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, StringRef& reply) } } - if (gb.Seen('P')) - { - // Set max average printing acceleration - platform->SetMaxAverageAcceleration(gb.GetFValue() * distanceScale); - seen = true; - } - if (!seen) { reply.printf("Accelerations: "); @@ -1512,7 +1511,6 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, StringRef& reply) reply.catf("%c%.1f", sep, platform->Acceleration(extruder + numAxes) / distanceScale); sep = ':'; } - reply.catf(", avg. printing: %.1f", platform->GetMaxAverageAcceleration()); } } break; @@ -2591,6 +2589,10 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, StringRef& reply) } seen = true; } + if (gb.Seen('F')) + { + platform->SetExtrusionAncilliaryPwmFrequency(gb.GetFValue()); + } if (gb.Seen('S')) { platform->SetExtrusionAncilliaryPwmValue(gb.GetFValue()); @@ -2598,8 +2600,10 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, StringRef& reply) } if (!seen) { - reply.printf("Extrusion ancillary PWM %.3f on pin %u", - platform->GetExtrusionAncilliaryPwmValue(), platform->GetExtrusionAncilliaryPwmPin()); + reply.printf("Extrusion ancillary PWM %.3f at %.1fHz on pin %u", + platform->GetExtrusionAncilliaryPwmValue(), + platform->GetExtrusionAncilliaryPwmFrequency(), + platform->GetExtrusionAncilliaryPwmPin()); } } break; diff --git a/src/Movement/DDA.cpp b/src/Movement/DDA.cpp index a42ac64..6456d6e 100644 --- a/src/Movement/DDA.cpp +++ b/src/Movement/DDA.cpp @@ -240,6 +240,7 @@ bool DDA::Init(const GCodes::RawMove &nextMove, bool doMotorMapping) // 3. Store some values endStopsToCheck = nextMove.endStopsToCheck; + canPauseAfter = nextMove.canPauseAfter; filePos = nextMove.filePos; usePressureAdvance = nextMove.usePressureAdvance; hadLookaheadUnderrun = false; @@ -564,15 +565,14 @@ void DDA::RecalculateMove() topSpeed = requestedSpeed; } - canPause = (endStopsToCheck == 0); - if (canPause && endSpeed != 0.0) + if (canPauseAfter && endSpeed != 0.0) { const Platform * const p = reprap.GetPlatform(); for (size_t drive = 0; drive < DRIVES; ++drive) { if (ddm[drive].state == DMState::moving && endSpeed * fabsf(directionVector[drive]) > p->ActualInstantDv(drive)) { - canPause = false; + canPauseAfter = false; break; } } @@ -724,44 +724,6 @@ void DDA::Prepare() float decelStartTime = accelStopTime + (params.decelStartDistance - accelDistance)/topSpeed; float totalTime = decelStartTime + (topSpeed - endSpeed)/acceleration; - // Enforce the maximum average acceleration - if (isPrintingMove && topSpeed > startSpeed && topSpeed > endSpeed) - { - const float maxAverageAcceleration = reprap.GetPlatform()->GetMaxAverageAcceleration(); - if (2 * topSpeed - startSpeed - endSpeed > totalTime * maxAverageAcceleration) - { - // Reduce the top speed to comply with the maximum average acceleration - const float a2 = fsquare(acceleration); - const float am2 = fsquare(maxAverageAcceleration); - const float aam = acceleration * maxAverageAcceleration; - const float discriminant = (a2 + (2 * aam) - am2) * (fsquare(startSpeed) + fsquare(endSpeed)) - + (2 * a2 + 2 * am2 - 4 * aam) * startSpeed * endSpeed - + (8 * a2 * maxAverageAcceleration - 4 * acceleration * am2) * totalDistance; - const float oldTopSpeed = topSpeed; - if (discriminant < 0.0) - { - topSpeed = max(startSpeed, endSpeed); - } - else - { - const float temp = (sqrtf(discriminant) + (acceleration - maxAverageAcceleration) * (startSpeed + endSpeed)) - /(4 * acceleration - 2 * maxAverageAcceleration); - topSpeed = max(max(temp, startSpeed), endSpeed); - } - - //DEBUG - debugPrintf("ots %f nts %f ss %f es %f\n", oldTopSpeed, topSpeed, startSpeed, endSpeed); - - // Recalculate parameters - accelDistance = (fsquare(topSpeed) - fsquare(startSpeed))/(2 * acceleration); - decelDistance = (fsquare(topSpeed) - fsquare(endSpeed))/(2 * acceleration); - params.decelStartDistance = totalDistance - decelDistance; - accelStopTime = (topSpeed - startSpeed)/acceleration; - decelStartTime = accelStopTime + (params.decelStartDistance - accelDistance)/topSpeed; - totalTime = decelStartTime + (topSpeed - endSpeed)/acceleration; - } - } - clocksNeeded = (uint32_t)(totalTime * stepClockRate); params.startSpeedTimesCdivA = (uint32_t)((startSpeed * stepClockRate)/acceleration); diff --git a/src/Movement/DDA.h b/src/Movement/DDA.h index 642a152..e0ceb1d 100644 --- a/src/Movement/DDA.h +++ b/src/Movement/DDA.h @@ -47,7 +47,7 @@ public: void Prepare(); // Calculate all the values and freeze this DDA float CalcTime() const; // Calculate the time needed for this move (used for simulation) bool HasStepError() const; - bool CanPause() const { return canPause; } + bool CanPauseAfter() const { return canPauseAfter; } bool IsPrintingMove() const { return isPrintingMove; } // Return true if this involves both XY movement and extrusion DDAState GetState() const { return state; } @@ -117,7 +117,7 @@ private: volatile DDAState state; // what state this DDA is in uint8_t endCoordinatesValid : 1; // True if endCoordinates can be relied on uint8_t isDeltaMovement : 1; // True if this is a delta printer movement - uint8_t canPause : 1; // True if we can pause at the end of this move + uint8_t canPauseAfter : 1; // True if we can pause at the end of this move uint8_t goingSlow : 1; // True if we have reduced speed during homing uint8_t isPrintingMove : 1; // True if this move includes XY movement and extrusion uint8_t usePressureAdvance : 1; // True if pressure advance should be applied to any forward extrusion diff --git a/src/Movement/Move.cpp b/src/Movement/Move.cpp index e9ed842..278ecc8 100644 --- a/src/Movement/Move.cpp +++ b/src/Movement/Move.cpp @@ -46,6 +46,7 @@ void Move::Init() currentDda = nullptr; addNoMoreMoves = false; + babysteppingLeft = 0.0; stepErrors = 0; numLookaheadUnderruns = numPrepareUnderruns = 0; @@ -311,11 +312,13 @@ FilePosition Move::PausePrint(float positions[DRIVES], float& pausedFeedRate, ui const DDA *savedDdaRingAddPointer = ddaRingAddPointer; cpu_irq_disable(); DDA *dda = currentDda; + FilePosition fPos = noFilePosition; if (dda != nullptr) { // A move is being executed. See if we can safely pause at the end of it. - if (dda->CanPause()) + if (dda->CanPauseAfter()) { + fPos = dda->GetFilePosition(); ddaRingAddPointer = dda->GetNext(); } else @@ -325,8 +328,9 @@ FilePosition Move::PausePrint(float positions[DRIVES], float& pausedFeedRate, ui dda = ddaRingGetPointer; while (dda != ddaRingAddPointer) { - if (dda->CanPause()) + if (dda->CanPauseAfter()) { + fPos = dda->GetFilePosition(); ddaRingAddPointer = dda->GetNext(); if (ddaRingAddPointer->GetState() == DDA::frozen) { @@ -347,8 +351,6 @@ FilePosition Move::PausePrint(float positions[DRIVES], float& pausedFeedRate, ui cpu_irq_enable(); - FilePosition fPos = noFilePosition; - if (ddaRingAddPointer != savedDdaRingAddPointer) { const size_t numAxes = reprap.GetGCodes()->GetNumAxes(); @@ -372,10 +374,6 @@ FilePosition Move::PausePrint(float positions[DRIVES], float& pausedFeedRate, ui { positions[drive] += dda->GetEndCoordinate(drive, true); // update the amount of extrusion we are going to skip } - if (fPos == noFilePosition) - { - fPos = dda->GetFilePosition(); - } (void)dda->Free(); dda = dda->GetNext(); } @@ -389,6 +387,13 @@ FilePosition Move::PausePrint(float positions[DRIVES], float& pausedFeedRate, ui return fPos; } +// Request babystepping +void Move::Babystep(float zMovement) +{ + babysteppingLeft += zMovement; + // TODO use this value somewhere +} + uint32_t maxReps = 0; #if 0 @@ -402,7 +407,7 @@ void Move::Diagnostics(MessageType mtype) Platform * const p = reprap.GetPlatform(); p->Message(mtype, "=== Move ===\n"); p->MessageF(mtype, "MaxReps: %u, StepErrors: %u, MaxWait: %ums, Underruns: %u, %u\n", - maxReps, stepErrors, longestGcodeWaitInterval, numLookaheadUnderruns, numPrepareUnderruns); + maxReps, stepErrors, longestGcodeWaitInterval, numLookaheadUnderruns, numPrepareUnderruns); maxReps = 0; numLookaheadUnderruns = numPrepareUnderruns = 0; longestGcodeWaitInterval = 0; diff --git a/src/Movement/Move.h b/src/Movement/Move.h index 698fae2..ad94626 100644 --- a/src/Movement/Move.h +++ b/src/Movement/Move.h @@ -117,6 +117,7 @@ public: void UseHeightMap(bool b) { useGridHeights = b; } // Start or stop using the height map bool UsingHeightMap() const { return useGridHeights; } // Are we doing grid bed compensation? + void Babystep(float zMovement); // Request babystepping private: @@ -192,6 +193,8 @@ private: int coreXYMode; // 0 = Cartesian, 1 = CoreXY, 2 = CoreXZ, 3 = CoreYZ float axisFactors[MAX_AXES]; // How much further the motors need to move for each axis movement, on a CoreXY/CoreXZ/CoreYZ machine unsigned int stepErrors; // count of step errors, for diagnostics + + float babysteppingLeft; // the amount of Z babystepping left to do }; //****************************************************************************************************** diff --git a/src/Platform.cpp b/src/Platform.cpp index 3fb43cf..95ca1ed 100644 --- a/src/Platform.cpp +++ b/src/Platform.cpp @@ -227,8 +227,6 @@ void Platform::Init() stepperDacVoltageOffset = STEPPER_DAC_VOLTAGE_OFFSET; #endif - maxAverageAcceleration = 10000.0; // high enough to have no effect until it is changed - // Z PROBE zProbePin = Z_PROBE_PIN; zProbeAdcChannel = PinToAdcChannel(zProbePin); @@ -326,12 +324,17 @@ void Platform::Init() TMC2660::Init(ENABLE_PINS, numTMC2660Drivers); #endif + // Allow extrusion ancilliary PWM to use FAN0 even if FAN0 has not been disabled, for backwards compatibility extrusionAncilliaryPwmValue = 0.0; - extrusionAncilliaryPwmLogicalPin = -1; - extrusionAncilliaryPwmFirmwarePin = NoPin; - extrusionAncilliaryPwmInvert = false; - SetExtrusionAncilliaryPwmPin(Fan0LogicalPin); - + extrusionAncilliaryPwmFrequency = DefaultPinWritePwmFreq; + extrusionAncilliaryPwmLogicalPin = Fan0LogicalPin; + extrusionAncilliaryPwmFirmwarePin = COOLING_FAN_PINS[0]; + extrusionAncilliaryPwmInvert = +#if defined(DUET_NG) || defined(__RADDS__) + false; +#else + (board == BoardType::Duet_06 || board == BoardType::Duet_07); +#endif ARRAY_INIT(tempSensePins, TEMP_SENSE_PINS); ARRAY_INIT(heatOnPins, HEAT_ON_PINS); ARRAY_INIT(spiTempSenseCsPins, SpiTempSensorCsPins); @@ -1243,14 +1246,41 @@ void Platform::SoftwareReset(uint16_t reason) reason |= (uint16_t)reprap.GetSpinningModule(); // Record the reason for the software reset - SoftwareResetData temp; - temp.magic = SoftwareResetData::magicValue; - temp.version = SoftwareResetData::versionValue; - temp.resetReason = reason; - GetStackUsage(NULL, NULL, &temp.neverUsedRam); + // First find a free slot (wear levelling) + size_t slot = SoftwareResetData::numberOfSlots; + SoftwareResetData srdBuf[SoftwareResetData::numberOfSlots]; - // Save diagnostics data to Flash and reset the software - DueFlashStorage::write(SoftwareResetData::nvAddress, &temp, sizeof(SoftwareResetData)); +#ifdef DUET_NG + if (flash_read_user_signature(reinterpret_cast(srdBuf), sizeof(srdBuf)/sizeof(uint32_t)) == FLASH_RC_OK) +#else + DueFlashStorage::read(SoftwareResetData::nvAddress, srdBuf, sizeof(srdBuf)); +#endif + { + while (slot != 0 && srdBuf[slot - 1].isVacant()) + { + --slot; + } + } + + if (slot == SoftwareResetData::numberOfSlots) + { + // No free slots, so erase the area +#ifdef DUET_NG + flash_erase_user_signature(); +#endif + memset(srdBuf, 0xFF, sizeof(srdBuf)); + slot = 0; + } + srdBuf[slot].magic = SoftwareResetData::magicValue; + srdBuf[slot].resetReason = reason; + GetStackUsage(NULL, NULL, &srdBuf[slot].neverUsedRam); + + // Save diagnostics data to Flash +#ifdef DUET_NG + flash_write_user_signature(srdBuf, sizeof(srdBuf)/sizeof(uint32_t)); +#else + DueFlashStorage::write(SoftwareResetData::nvAddress, srdBuf, sizeof(srdBuf)); +#endif } Reset(); for(;;) {} @@ -1365,7 +1395,7 @@ void Platform::Diagnostics(MessageType mtype) MessageF(mtype, "Program static ram used: %d\n", &_end - ramstart); MessageF(mtype, "Dynamic ram used: %d\n", mi.uordblks); MessageF(mtype, "Recycled dynamic ram: %d\n", mi.fordblks); - size_t currentStack, maxStack, neverUsed; + uint32_t currentStack, maxStack, neverUsed; GetStackUsage(¤tStack, &maxStack, &neverUsed); MessageF(mtype, "Current stack ram used: %d\n", currentStack); MessageF(mtype, "Maximum stack ram used: %d\n", maxStack); @@ -1373,20 +1403,40 @@ void Platform::Diagnostics(MessageType mtype) // Show the up time and reason for the last reset const uint32_t now = (uint32_t)Time(); // get up time in seconds - const char* resetReasons[8] = { "power up", "backup", "watchdog", "software", "external", "?", "?", "?" }; + const char* resetReasons[8] = { "power up", "backup", "watchdog", "software", "reset button", "?", "?", "?" }; MessageF(mtype, "Last reset %02d:%02d:%02d ago, cause: %s\n", (unsigned int)(now/3600), (unsigned int)((now % 3600)/60), (unsigned int)(now % 60), resetReasons[(REG_RSTC_SR & RSTC_SR_RSTTYP_Msk) >> RSTC_SR_RSTTYP_Pos]); // Show the reset code stored at the last software reset + Message(mtype, "Last software reset code & available RAM: "); { - SoftwareResetData temp; - temp.magic = 0; - DueFlashStorage::read(SoftwareResetData::nvAddress, &temp, sizeof(SoftwareResetData)); - if (temp.magic == SoftwareResetData::magicValue && temp.version == SoftwareResetData::versionValue) + SoftwareResetData srdBuf[SoftwareResetData::numberOfSlots]; + memset(srdBuf, 0, sizeof(srdBuf)); + int slot = -1; + +#ifdef DUET_NG + if (flash_read_user_signature(reinterpret_cast(srdBuf), sizeof(srdBuf)/sizeof(uint32_t)) == FLASH_RC_OK) +#else + DueFlashStorage::read(SoftwareResetData::nvAddress, srdBuf, sizeof(srdBuf)); +#endif { - MessageF(mtype, "Last software reset code & available RAM: 0x%04x, %u\n", temp.resetReason, temp.neverUsedRam); - MessageF(mtype, "Spinning module during software reset: %s\n", moduleName[temp.resetReason & 0x0F]); + // Find the last slot written + slot = SoftwareResetData::numberOfSlots - 1; + while (slot >= 0 && srdBuf[slot].magic == 0xFFFF) + { + --slot; + } + } + + if (slot >= 0 && srdBuf[slot].magic == SoftwareResetData::magicValue) + { + MessageF(mtype, "0x%04x, %u (slot %d)\n", srdBuf[slot].resetReason, srdBuf[slot].neverUsedRam, slot); + MessageF(mtype, "Spinning module during software reset: %s\n", moduleName[srdBuf[slot].resetReason & 0x0F]); + } + else + { + Message(mtype, "not available\n"); } } @@ -1447,13 +1497,18 @@ void Platform::Diagnostics(MessageType mtype) #endif // Show current RTC time + Message(mtype, "Current date and time: "); struct tm timeInfo; if (gmtime_r(&realTime, &timeInfo) != nullptr) { - MessageF(mtype, "Current date and time: %04u-%02u-%02u %02u:%02u:%02u\n", + MessageF(mtype, "%04u-%02u-%02u %02u:%02u:%02u\n", timeInfo.tm_year + 1900, timeInfo.tm_mon + 1, timeInfo.tm_mday, timeInfo.tm_hour, timeInfo.tm_min, timeInfo.tm_sec); } + else + { + Message(mtype, "clock not set\n"); + } // Debug //MessageF(mtype, "TC_FMR = %08x, PWM_FPE = %08x, PWM_FSR = %08x\n", TC2->TC_FMR, PWM->PWM_FPE, PWM->PWM_FSR); @@ -1503,24 +1558,24 @@ void Platform::DiagnosticTest(int d) } // Return the stack usage and amount of memory that has never been used, in bytes -void Platform::GetStackUsage(size_t* currentStack, size_t* maxStack, size_t* neverUsed) const +void Platform::GetStackUsage(uint32_t* currentStack, uint32_t* maxStack, uint32_t* neverUsed) const { - const char *ramend = (const char *) -#ifdef DUET_NG - 0x20020000; // 0x20000000 + 128Kb + const char * const ramend = (const char *) +#if SAM4E + IRAM_ADDR + IRAM_SIZE; #else - 0x20088000; // 0x20070000 + 96Kb + IRAM0_ADDR + IRAM_SIZE; #endif register const char * stack_ptr asm ("sp"); - const char *heapend = sbrk(0); - const char* stack_lwm = heapend; + const char * const heapend = sbrk(0); + const char * stack_lwm = heapend; while (stack_lwm < stack_ptr && *stack_lwm == memPattern) { ++stack_lwm; } - if (currentStack) { *currentStack = ramend - stack_ptr; } - if (maxStack) { *maxStack = ramend - stack_lwm; } - if (neverUsed) { *neverUsed = stack_lwm - heapend; } + if (currentStack != nullptr) { *currentStack = ramend - stack_ptr; } + if (maxStack != nullptr) { *maxStack = ramend - stack_lwm; } + if (neverUsed != nullptr) { *neverUsed = stack_lwm - heapend; } } void Platform::ClassReport(float &lastTime) @@ -2541,11 +2596,11 @@ void Platform::SetBoardType(BoardType bt) #else // Determine whether this is a Duet 0.6 or a Duet 0.8.5 board. // If it is a 0.85 board then DAC0 (AKA digital pin 67) is connected to ground via a diode and a 2.15K resistor. - // So we enable the pullup (value 150K-150K) on pin 67 and read it, expecting a LOW on a 0.8.5 board and a HIGH on a 0.6 board. + // So we enable the pullup (value 100K-150K) on pin 67 and read it, expecting a LOW on a 0.8.5 board and a HIGH on a 0.6 board. // This may fail if anyone connects a load to the DAC0 pin on a Duet 0.6, hence we implement board selection in M115 as well. pinMode(Dac0DigitalPin, INPUT_PULLUP); board = (digitalRead(Dac0DigitalPin)) ? BoardType::Duet_06 : BoardType::Duet_085; - pinMode(Dac0DigitalPin, INPUT); // turn pullup off + pinMode(Dac0DigitalPin, INPUT); // turn pullup off #endif } else @@ -2628,6 +2683,9 @@ bool Platform::GetFirmwarePin(int logicalPin, PinAccess access, Pin& firmwarePin ) { firmwarePin = COOLING_FAN_PINS[logicalPin - Fan0LogicalPin]; +#if !defined(DUET_NG) && !defined(__RADDS__) + invert = (board == BoardType::Duet_06 || board == BoardType::Duet_07); +#endif } } else if (logicalPin >= EndstopXLogicalPin && logicalPin < EndstopXLogicalPin + (int)ARRAY_SIZE(endStopPins)) // pins 40-49 correspond to endstop pins diff --git a/src/Platform.h b/src/Platform.h index 8c9af3c..86668c7 100644 --- a/src/Platform.h +++ b/src/Platform.h @@ -509,10 +509,6 @@ public: float Acceleration(size_t drive) const; const float* Accelerations() const; void SetAcceleration(size_t drive, float value); - const float GetMaxAverageAcceleration() const - { return maxAverageAcceleration; } - void SetMaxAverageAcceleration(float f) - { maxAverageAcceleration = f; } float MaxFeedrate(size_t drive) const; const float* MaxFeedrates() const; void SetMaxFeedrate(size_t drive, float value); @@ -567,6 +563,8 @@ public: void SetExtrusionAncilliaryPwmValue(float v); float GetExtrusionAncilliaryPwmValue() const; + void SetExtrusionAncilliaryPwmFrequency(float f); + float GetExtrusionAncilliaryPwmFrequency() const; bool SetExtrusionAncilliaryPwmPin(int logicalPin); int GetExtrusionAncilliaryPwmPin() const { return extrusionAncilliaryPwmLogicalPin; } void ExtrudeOn(); @@ -681,31 +679,41 @@ private: static float AdcReadingToPowerVoltage(uint16_t reading); #endif - // These are the structures used to hold out non-volatile data. - // The SAM3X doesn't have EEPROM so we save the data to flash. This unfortunately means that it gets cleared + // These are the structures used to hold our non-volatile data. + // The SAM3X and SAM4E don't have EEPROM so we save the data to flash. This unfortunately means that it gets cleared // every time we reprogram the firmware via bossa, but it can be retained when firmware updates are performed // via the web interface. That's why it's a good idea to implement versioning here - increase these values // whenever the fields of the following structs have changed. - + // + // The SAM4E has a large page erase size (8K). For this reason we store the software reset data in the 512-byte user signature area + // instead, which doesn't get cleared when the Erase button is pressed. The SoftareResetData struct must have at least one 32-bit + // field to guarantee that values of this type will be 32-bit aligned. It must have no virtual members because it is read/written + // directly form/to flash memory. struct SoftwareResetData { - static const uint16_t magicValue = 0x7C5F; // value we use to recognise that all the flash data has been written - static const uint16_t versionValue = 1; // increment this whenever this struct changes + static const uint16_t versionValue = 2; // increment this whenever this struct changes + static const uint16_t magicValue = 0x7D00 | versionValue; // value we use to recognise that all the flash data has been written static const uint32_t nvAddress = 0; // must be 4-byte aligned + static const size_t numberOfSlots = 8; // number of storage slots used to implement wear levelling - uint16_t magic; - uint16_t version; - + uint16_t magic; // the magic number, including the version uint16_t resetReason; // this records why we did a software reset, for diagnostic purposes - uint16_t dummy; // padding to align the next field (should happen automatically I think) - size_t neverUsedRam; // the amount of never used RAM at the last abnormal software reset + uint32_t neverUsedRam; // the amount of never used RAM at the last abnormal software reset + + bool isVacant() const // return true if this struct can be written without erasing it first + { + return magic == 0xFFFF && resetReason == 0xFFFF && neverUsedRam == 0xFFFFFFFF; + } }; + static_assert(SoftwareResetData::numberOfSlots * sizeof(SoftwareResetData) <= 512, "Can't fit software reset data in SAM4E user signature area"); + + // The following struct is due to be replaced by the config-override.g file. struct FlashData { static const uint16_t magicValue = 0xE6C4; // value we use to recognise that the flash data has been written static const uint16_t versionValue = 5; // increment this whenever this struct changes - static const uint32_t nvAddress = (SoftwareResetData::nvAddress + sizeof(SoftwareResetData) + 3) & (~3); + static const uint32_t nvAddress = SoftwareResetData::nvAddress + (SoftwareResetData::numberOfSlots * sizeof(SoftwareResetData)); uint16_t magic; uint16_t version; @@ -742,7 +750,7 @@ private: uint32_t errorCodeBits; void InitialiseInterrupts(); - void GetStackUsage(size_t* currentStack, size_t* maxStack, size_t* neverUsed) const; + void GetStackUsage(uint32_t* currentStack, uint32_t* maxStack, uint32_t* neverUsed) const; // DRIVES @@ -770,7 +778,6 @@ private: uint32_t slowDriverStepPulseClocks; // minimum high and low step pulse widths, in processor clocks uint32_t slowDrivers; // bitmap of driver port bits that need extended step pulse timing float idleCurrentFactor; - float maxAverageAcceleration; #if defined(DUET_NG) size_t numTMC2660Drivers; // the number of TMC2660 drivers we have, the remaining are simple enable/step/dir drivers @@ -793,6 +800,7 @@ private: volatile ThermistorAveragingFilter thermistorFilters[HEATERS]; // bed and extruder thermistor readings float extrusionAncilliaryPwmValue; + float extrusionAncilliaryPwmFrequency; int extrusionAncilliaryPwmLogicalPin; Pin extrusionAncilliaryPwmFirmwarePin; bool extrusionAncilliaryPwmInvert; @@ -1125,6 +1133,16 @@ inline float Platform::GetExtrusionAncilliaryPwmValue() const return extrusionAncilliaryPwmValue; } +inline void Platform::SetExtrusionAncilliaryPwmFrequency(float f) +{ + extrusionAncilliaryPwmFrequency = f; +} + +inline float Platform::GetExtrusionAncilliaryPwmFrequency() const +{ + return extrusionAncilliaryPwmFrequency; +} + // For the Duet we use the fan output for this // DC 2015-03-21: To allow users to control the cooling fan via gcodes generated by slic3r etc., // only turn the fan on/off if the extruder ancilliary PWM has been set nonzero. @@ -1133,7 +1151,8 @@ inline void Platform::ExtrudeOn() { if (extrusionAncilliaryPwmValue > 0.0) { - WriteAnalog(extrusionAncilliaryPwmFirmwarePin, extrusionAncilliaryPwmValue, DefaultPinWritePwmFreq); + WriteAnalog(extrusionAncilliaryPwmFirmwarePin, + (extrusionAncilliaryPwmInvert) ? 1.0 - extrusionAncilliaryPwmValue : extrusionAncilliaryPwmValue, extrusionAncilliaryPwmFrequency); } } @@ -1144,7 +1163,8 @@ inline void Platform::ExtrudeOff() { if (extrusionAncilliaryPwmValue > 0.0) { - WriteAnalog(extrusionAncilliaryPwmFirmwarePin, 0.0, DefaultPinWritePwmFreq); + WriteAnalog(extrusionAncilliaryPwmFirmwarePin, + (extrusionAncilliaryPwmInvert) ? 1.0 : 0.0, extrusionAncilliaryPwmFrequency); } } diff --git a/src/Tool.cpp b/src/Tool.cpp index 5c6dd0b..e5e4bcb 100644 --- a/src/Tool.cpp +++ b/src/Tool.cpp @@ -306,15 +306,22 @@ void Tool::SetVariables(const float* standby, const float* active) else { const float temperatureLimit = reprap.GetHeat()->GetTemperatureLimit(heaters[heater]); + const Tool * const currentTool = reprap.GetCurrentTool(); if (active[heater] < temperatureLimit) { activeTemperatures[heater] = active[heater]; - reprap.GetHeat()->SetActiveTemperature(heaters[heater], activeTemperatures[heater]); + if (currentTool == nullptr || currentTool == this) + { + reprap.GetHeat()->SetActiveTemperature(heaters[heater], activeTemperatures[heater]); + } } if (standby[heater] < temperatureLimit) { standbyTemperatures[heater] = standby[heater]; - reprap.GetHeat()->SetStandbyTemperature(heaters[heater], standbyTemperatures[heater]); + if (currentTool == nullptr || currentTool == this) + { + reprap.GetHeat()->SetStandbyTemperature(heaters[heater], standbyTemperatures[heater]); + } } } }