Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Duet3D/RepRapFirmware.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Crocker <dcrocker@eschertech.com>2018-11-13 02:35:25 +0300
committerDavid Crocker <dcrocker@eschertech.com>2018-11-13 02:35:25 +0300
commit86a555acf94e8988c0d743b1781da350ff5a57e4 (patch)
tree8ca51e93f513f27c7508c7a945083808d5757fb6 /src/DuetNG/DueXn.cpp
parent891a7ff5fb578a82d3ae43f1748be7a347634bee (diff)
Closer to 2.02RC4
New and changed features: - Send the mapped fan speed at the start of the fan speed list in the M408 response for PanelDue - Support PanelDue emergency stop interrupt from UART driver - Execute residual babystepping immediately - Warning message are now generated if trying to move motors on internal drivers but VIN is too low or too high - Increased minimum fullsteps for motor open detection from 4 to 20 - I2C addresses can be specified in hex format e.g. "0x71" or "x71" - M584 can now use dummy (high) driver numbers to assign an axis or extruder to no driver - M122 now tells you if the drivers are enabled, or disabled and waiting for the correct voltage - Added special support for coast-to-end in RecalculateMove - Brought RADDS build up to date and use RTOS - Improved HTTP 'page not found' message - M260 now lets you receive I2C data after sending data Bug fixes: - G30 H parameters didn't work if deployprobe.g or retractprobe.g file present - M600 stopped the machine - Watchdog initialisation timing was marginal - Possible fix for issue with using 3 independent Z motors each with a separate endstop switch - Use a I2C mutex instead of a critical section lock - Use new I2C driver in CoreNG - M557 P parameter was not working - G30 S-2 tool offset was set in the wrong direction - After G30 S-2, user coordinates were not updated to account for new tool offset - M918 with a P parameter now resets the display - Improved the mechanism used to determine which layer is being printed - 12864 display buttons sometimes disappeared when moving between them - 12864 display: last byte of images didn't display correctly - 12864 display: in button commands, "#0" should be substituted, not "menu" - Don't start executing a G30 S-2 command if no tool is selected - Http responses now use \r\n as the line ending, not \n
Diffstat (limited to 'src/DuetNG/DueXn.cpp')
-rw-r--r--src/DuetNG/DueXn.cpp18
1 files changed, 6 insertions, 12 deletions
diff --git a/src/DuetNG/DueXn.cpp b/src/DuetNG/DueXn.cpp
index 3a642559..b164fb18 100644
--- a/src/DuetNG/DueXn.cpp
+++ b/src/DuetNG/DueXn.cpp
@@ -9,6 +9,7 @@
#include "SX1509.h"
#include "Platform.h"
#include "RepRap.h"
+#include "Wire.h"
namespace DuetExpansion
{
@@ -57,7 +58,7 @@ namespace DuetExpansion
// Identify which expansion board (if any) is attached and initialise it
ExpansionBoardType DueXnInit()
{
- reprap.GetPlatform().InitI2c(); // initialise I2C
+ reprap.GetPlatform().InitI2c(); // initialise I2C
// DC 2018-07-12: occasionally the SX1509B isn't found after doing a software reset, so try a few more attempts
bool ret;
@@ -68,6 +69,7 @@ namespace DuetExpansion
delay(50);
ret = dueXnExpander.begin(DueXnAddress);
} while (!ret && attempts < 5);
+ (void)I2C_IFACE.GetErrorCounts(true); // clear the error counts in case there wasn't a device there or we didn't find it first time
if (ret)
{
@@ -104,7 +106,7 @@ namespace DuetExpansion
// Look for an additional output pin expander
void AdditionalOutputInit()
{
- reprap.GetPlatform().InitI2c(); // initialise I2C
+ reprap.GetPlatform().InitI2c(); // initialise I2C
bool ret;
unsigned int attempts = 0;
@@ -114,6 +116,7 @@ namespace DuetExpansion
delay(50);
ret = additionalIoExpander.begin(AdditionalIoExpanderAddress);
} while (!ret && attempts < 5);
+ (void)I2C_IFACE.GetErrorCounts(true); // clear the error counts in case there wasn't a device there or we didn't find it first time
if (ret)
{
@@ -275,18 +278,9 @@ namespace DuetExpansion
}
// Print diagnostic data
+ // I2C error counts are now reported by Platform, so nothing to report here.
void Diagnostics(MessageType mtype)
{
- Platform& p = reprap.GetPlatform();
- p.Message(mtype, "=== Expansion ===\n");
- if (dueXnBoardType != ExpansionBoardType::none)
- {
- p.MessageF(mtype, "DueX I2C errors %" PRIu32 "\n", dueXnExpander.GetErrorCount());
- }
- if (additionalIoExpanderPresent)
- {
- p.MessageF(mtype, "Additional expander I2C errors %" PRIu32 "\n", additionalIoExpander.GetErrorCount());
- }
}
// Diagnose the SX1509 by setting all pins as inputs and reading them