Compare commits

...

17 Commits

Author SHA1 Message Date
Scott Lahteine
5f27f7de47 Version 2.0.4.2 Release 2020-02-22 18:49:59 -06:00
Scott Lahteine
282f4678cd Merge nightly patches 2020-02-22 18:47:09 -06:00
ZMiguel Alves
2471a8bb91 Define ANET_FULL_GRAPHICS_LCD pins for SKR 1.4 (#16928) 2020-02-22 18:45:10 -06:00
ellensp
7bf3581b02 Fix M0/M1 broken wait loop (#16921) 2020-02-22 18:37:39 -06:00
Scott Lahteine
b9b29bf4c0 Followup to babystep hotfix 2020-02-22 18:34:49 -06:00
thisiskeithb
20df64814e Finish Custom User Menu sanity-check (#16917) 2020-02-22 18:33:34 -06:00
thinkyhead
34c92bbc17 [cron] Bump distribution date (2020-02-23) 2020-02-23 00:03:55 +00:00
Scott Lahteine
c41f3f8582 Version 2.0.4.1 Release 2020-02-22 07:02:55 -06:00
Scott Lahteine
8670df08a2 CoreXY Babystepping hotfix 2020-02-22 07:02:55 -06:00
vivian-ng
eeec4c27e7 [ESP32] Allow user to define pins for hardware Serial1 and Serial2 (#16918) 2020-02-22 04:00:10 -06:00
Scott Lahteine
730690ea03 Hotfix for Babystepping 2020-02-22 02:55:26 -06:00
Scott Lahteine
3543873da7 Use moves_free in ok_to_send 2020-02-22 02:55:26 -06:00
thinkyhead
c505626c42 [cron] Bump distribution date (2020-02-22) 2020-02-22 02:55:26 -06:00
Scott Lahteine
484e1a624c CoreXY Babystepping hotfix 2020-02-22 02:52:59 -06:00
Scott Lahteine
ac3e27c026 Hotfix for Babystepping 2020-02-22 02:52:21 -06:00
Scott Lahteine
1ab6f910b6 Use moves_free in ok_to_send 2020-02-22 02:30:59 -06:00
thinkyhead
cfd49740eb [cron] Bump distribution date (2020-02-22) 2020-02-22 00:03:47 +00:00
11 changed files with 149 additions and 19 deletions

View File

@@ -28,7 +28,7 @@
/**
* Marlin release version identifier
*/
//#define SHORT_BUILD_VERSION "2.0.4"
//#define SHORT_BUILD_VERSION "2.0.4.2"
/**
* Verbose version identifier which should contain a reference to the location

View File

@@ -27,6 +27,7 @@
#include <rom/rtc.h>
#include <driver/adc.h>
#include <esp_adc_cal.h>
#include <HardwareSerial.h>
#include "../../inc/MarlinConfigPre.h"
@@ -105,6 +106,27 @@ void HAL_init_board() {
#endif
server.begin();
#endif
// ESP32 uses a GPIO matrix that allows pins to be assigned to hardware serial ports.
// The following code initializes hardware Serial1 and Serial2 to use user-defined pins
// if they have been defined.
#if defined(HARDWARE_SERIAL1_RX) && defined(HARDWARE_SERIAL1_TX)
HardwareSerial Serial1(1);
#ifdef TMC_BAUD_RATE // use TMC_BAUD_RATE for Serial1 if defined
Serial1.begin(TMC_BAUD_RATE, SERIAL_8N1, HARDWARE_SERIAL1_RX, HARDWARE_SERIAL1_TX);
#else // use default BAUDRATE if TMC_BAUD_RATE not defined
Serial1.begin(BAUDRATE, SERIAL_8N1, HARDWARE_SERIAL1_RX, HARDWARE_SERIAL1_TX);
#endif
#endif
#if defined(HARDWARE_SERIAL2_RX) && defined(HARDWARE_SERIAL2_TX)
HardwareSerial Serial2(2);
#ifdef TMC_BAUD_RATE // use TMC_BAUD_RATE for Serial1 if defined
Serial2.begin(TMC_BAUD_RATE, SERIAL_8N1, HARDWARE_SERIAL2_RX, HARDWARE_SERIAL2_TX);
#else // use default BAUDRATE if TMC_BAUD_RATE not defined
Serial2.begin(BAUDRATE, SERIAL_8N1, HARDWARE_SERIAL2_RX, HARDWARE_SERIAL2_TX);
#endif
#endif
}
void HAL_idletask() {

View File

@@ -73,7 +73,7 @@ public:
// apply accumulated babysteps to the axes.
//
static inline void task() {
LOOP_L_N(axis, BS_TODO_AXIS(Z_AXIS)) step_axis((AxisEnum)axis);
LOOP_LE_N(axis, BS_TODO_AXIS(Z_AXIS)) step_axis((AxisEnum)axis);
}
private:

View File

@@ -102,7 +102,7 @@ void GcodeSuite::M0_M1() {
#endif
if (ms > 0) ms += millis(); // wait until this time for a click
while (wait_for_user && (ms > 0 || PENDING(millis(), ms))) idle();
while (wait_for_user || (ms > 0 && PENDING(millis(), ms))) idle();
#if HAS_LEDS_OFF_FLAG
printerEventLEDs.onResumeAfterWait();

View File

@@ -253,7 +253,7 @@ void GCodeQueue::ok_to_send() {
while (NUMERIC_SIGNED(*p))
SERIAL_ECHO(*p++);
}
SERIAL_ECHOPAIR_P(SP_P_STR, int(BLOCK_BUFFER_SIZE - planner.movesplanned() - 1));
SERIAL_ECHOPAIR_P(SP_P_STR, int(planner.moves_free()));
SERIAL_ECHOPAIR(" B", int(BUFSIZE - length));
#endif
SERIAL_EOL();

View File

@@ -2474,6 +2474,86 @@ static_assert( _ARR_TEST(3,0) && _ARR_TEST(3,1) && _ARR_TEST(3,2)
constexpr char _chr5 = USER_GCODE_5[strlen(USER_GCODE_5) - 1];
static_assert(_chr5 != '\n' && _chr5 != '\r', "USER_GCODE_5 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_6
constexpr char _chr6 = USER_GCODE_6[strlen(USER_GCODE_6) - 1];
static_assert(_chr6 != '\n' && _chr6 != '\r', "USER_GCODE_6 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_7
constexpr char _chr7 = USER_GCODE_7[strlen(USER_GCODE_7) - 1];
static_assert(_chr7 != '\n' && _chr7 != '\r', "USER_GCODE_7 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_8
constexpr char _chr8 = USER_GCODE_8[strlen(USER_GCODE_8) - 1];
static_assert(_chr8 != '\n' && _chr8 != '\r', "USER_GCODE_8 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_9
constexpr char _chr9 = USER_GCODE_9[strlen(USER_GCODE_9) - 1];
static_assert(_chr9 != '\n' && _chr9 != '\r', "USER_GCODE_9 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_10
constexpr char _chr10 = USER_GCODE_10[strlen(USER_GCODE_10) - 1];
static_assert(_chr10 != '\n' && _chr10 != '\r', "USER_GCODE_10 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_11
constexpr char _chr11 = USER_GCODE_11[strlen(USER_GCODE_11) - 1];
static_assert(_chr11 != '\n' && _chr11 != '\r', "USER_GCODE_11 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_12
constexpr char _chr12 = USER_GCODE_12[strlen(USER_GCODE_12) - 1];
static_assert(_chr12 != '\n' && _chr12 != '\r', "USER_GCODE_12 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_13
constexpr char _chr13 = USER_GCODE_13[strlen(USER_GCODE_13) - 1];
static_assert(_chr13 != '\n' && _chr13 != '\r', "USER_GCODE_13 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_14
constexpr char _chr14 = USER_GCODE_14[strlen(USER_GCODE_14) - 1];
static_assert(_chr14 != '\n' && _chr14 != '\r', "USER_GCODE_14 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_15
constexpr char _chr15 = USER_GCODE_15[strlen(USER_GCODE_15) - 1];
static_assert(_chr15 != '\n' && _chr15 != '\r', "USER_GCODE_15 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_16
constexpr char _chr16 = USER_GCODE_16[strlen(USER_GCODE_16) - 1];
static_assert(_chr16 != '\n' && _chr16 != '\r', "USER_GCODE_16 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_17
constexpr char _chr17 = USER_GCODE_17[strlen(USER_GCODE_17) - 1];
static_assert(_chr17 != '\n' && _chr17 != '\r', "USER_GCODE_17 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_18
constexpr char _chr18 = USER_GCODE_18[strlen(USER_GCODE_18) - 1];
static_assert(_chr18 != '\n' && _chr18 != '\r', "USER_GCODE_18 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_19
constexpr char _chr19 = USER_GCODE_19[strlen(USER_GCODE_19) - 1];
static_assert(_chr19 != '\n' && _chr19 != '\r', "USER_GCODE_19 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_20
constexpr char _chr20 = USER_GCODE_20[strlen(USER_GCODE_20) - 1];
static_assert(_chr20 != '\n' && _chr20 != '\r', "USER_GCODE_20 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_21
constexpr char _chr21 = USER_GCODE_21[strlen(USER_GCODE_21) - 1];
static_assert(_chr21 != '\n' && _chr21 != '\r', "USER_GCODE_21 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_22
constexpr char _chr22 = USER_GCODE_22[strlen(USER_GCODE_22) - 1];
static_assert(_chr22 != '\n' && _chr22 != '\r', "USER_GCODE_22 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_23
constexpr char _chr23 = USER_GCODE_23[strlen(USER_GCODE_23) - 1];
static_assert(_chr23 != '\n' && _chr23 != '\r', "USER_GCODE_23 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_24
constexpr char _chr24 = USER_GCODE_24[strlen(USER_GCODE_24) - 1];
static_assert(_chr24 != '\n' && _chr24 != '\r', "USER_GCODE_24 cannot have a newline at the end. Please remove it.");
#endif
#ifdef USER_GCODE_25
constexpr char _chr25 = USER_GCODE_25[strlen(USER_GCODE_25) - 1];
static_assert(_chr25 != '\n' && _chr25 != '\r', "USER_GCODE_25 cannot have a newline at the end. Please remove it.");
#endif
#endif
#if ENABLED(BACKLASH_COMPENSATION)

View File

@@ -25,7 +25,7 @@
* Release version. Leave the Marlin version or apply a custom scheme.
*/
#ifndef SHORT_BUILD_VERSION
#define SHORT_BUILD_VERSION "2.0.4"
#define SHORT_BUILD_VERSION "2.0.4.2"
#endif
/**
@@ -42,7 +42,7 @@
* version was tagged.
*/
#ifndef STRING_DISTRIBUTION_DATE
#define STRING_DISTRIBUTION_DATE "2020-02-21"
#define STRING_DISTRIBUTION_DATE "2020-02-23"
#endif
/**

View File

@@ -2526,12 +2526,12 @@ void Stepper::report_positions() {
#elif IS_CORE
#define BABYSTEP_CORE(A, B, INV, DIR) do{ \
#define BABYSTEP_CORE(A, B, INV, DIR, ALT) do{ \
const xy_byte_t old_dir = { _READ_DIR(A), _READ_DIR(B) }; \
_ENABLE_AXIS(A); _ENABLE_AXIS(B); \
DIR_WAIT_BEFORE(); \
_APPLY_DIR(A, _INVERT_DIR(A)^DIR^INV); \
_APPLY_DIR(B, _INVERT_DIR(B)^DIR^INV^(CORESIGN(1)<0)); \
_APPLY_DIR(B, _INVERT_DIR(B)^DIR^INV^ALT); \
DIR_WAIT_AFTER(); \
_SAVE_START(); \
_APPLY_STEP(A, !_INVERT_STEP_PIN(A), true); \
@@ -2560,21 +2560,21 @@ void Stepper::report_positions() {
case X_AXIS:
#if CORE_IS_XY
BABYSTEP_CORE(X, Y, false, direction);
BABYSTEP_CORE(X, Y, 0, direction, 0);
#elif CORE_IS_XZ
BABYSTEP_CORE(X, Z, false, direction);
BABYSTEP_CORE(X, Z, 0, direction, 0);
#else
BABYSTEP_AXIS(X, false, direction);
BABYSTEP_AXIS(X, 0, direction);
#endif
break;
case Y_AXIS:
#if CORE_IS_XY
BABYSTEP_CORE(X, Y, false, direction);
BABYSTEP_CORE(X, Y, 0, direction, (CORESIGN(1)<0));
#elif CORE_IS_YZ
BABYSTEP_CORE(Y, Z, false, direction);
BABYSTEP_CORE(Y, Z, 0, direction, (CORESIGN(1)<0));
#else
BABYSTEP_AXIS(Y, false, direction);
BABYSTEP_AXIS(Y, 0, direction);
#endif
break;
@@ -2583,9 +2583,9 @@ void Stepper::report_positions() {
case Z_AXIS: {
#if CORE_IS_XZ
BABYSTEP_CORE(X, Z, BABYSTEP_INVERT_Z, direction);
BABYSTEP_CORE(X, Z, BABYSTEP_INVERT_Z, direction, (CORESIGN(1)<0));
#elif CORE_IS_YZ
BABYSTEP_CORE(Y, Z, BABYSTEP_INVERT_Z, direction);
BABYSTEP_CORE(Y, Z, BABYSTEP_INVERT_Z, direction, (CORESIGN(1)<0));
#elif DISABLED(DELTA)
BABYSTEP_AXIS(Z, BABYSTEP_INVERT_Z, direction);

View File

@@ -101,3 +101,10 @@
#define SDSS 5
#define USES_SHARED_SPI // SPI is shared by SD card with TMC SPI drivers
// Hardware serial pins
// Add the following to Configuration.h or Configuration_adv.h to assign
// specific pins to hardware Serial1.
// Note: Serial2 can be defined using HARDWARE_SERIAL2_RX and HARDWARE_SERIAL2_TX but
// MRR ESPA does not have enough spare pins for such reassignment.
//#define HARDWARE_SERIAL1_RX 21
//#define HARDWARE_SERIAL1_TX 22

View File

@@ -139,7 +139,7 @@
#define BEEPER_PIN 151
//#define LCD_PINS_D5 150
//#define LCD_PINS_D6 151
//#define LCD_PINS_D6 152
//#define LCD_PINS_D7 153
#else
@@ -153,3 +153,13 @@
#define BTN_ENC 14
#endif // HAS_GRAPHICAL_LCD
// Hardware serial pins
// Add the following to Configuration.h or Configuration_adv.h to assign
// specific pins to hardware Serial1 and Serial2.
// Note: Serial2 can be defined using HARDWARE_SERIAL2_RX and HARDWARE_SERIAL2_TX but
// MRR ESPA does not have enough spare pins for such reassignment.
//#define HARDWARE_SERIAL1_RX 21
//#define HARDWARE_SERIAL1_TX 22
//#define HARDWARE_SERIAL2_RX 2
//#define HARDWARE_SERIAL2_TX 4

View File

@@ -232,9 +232,19 @@
* EXP2 EXP1
*/
#if HAS_SPI_LCD
#define BTN_ENC P0_28 // (58) open-drain
#if ENABLED(ANET_FULL_GRAPHICS_LCD)
#if ENABLED(CR10_STOCKDISPLAY)
#define LCD_PINS_RS P1_23
#define BTN_EN1 P1_20
#define BTN_EN2 P1_22
#define BTN_ENC P1_18
#define LCD_PINS_ENABLE P1_21
#define LCD_PINS_D4 P1_19
#elif ENABLED(CR10_STOCKDISPLAY)
#define BTN_ENC P0_28 // (58) open-drain
#define LCD_PINS_RS P1_22
#define BTN_EN1 P1_18
@@ -244,6 +254,7 @@
#define LCD_PINS_D4 P1_21
#else
#define BTN_ENC P0_28 // (58) open-drain
#define LCD_PINS_RS P1_19
#define BTN_EN1 P3_26 // (31) J3-2 & AUX-4