Skip to content

Commit 0440ae2

Browse files
committed
Merge branch 'bugfix-2.0.x' into 2.0.x-Sapphire-Pro
2 parents e28d928 + c4df5cf commit 0440ae2

16 files changed

+213
-87
lines changed

Marlin/Configuration.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -379,8 +379,8 @@
379379
* 13 : 100k Hisens 3950 1% up to 300°C for hotend "Simple ONE " & "Hotend "All In ONE"
380380
* 15 : 100k thermistor calibration for JGAurora A5 hotend
381381
* 18 : ATC Semitec 204GT-2 (4.7k pullup) Dagoma.Fr - MKS_Base_DKU001327
382-
* 20 : Pt100 with circuit in the Ultimainboard V2.x
383-
* 21 : Pt100 with circuit on 32 bit mcu
382+
* 20 : Pt100 with circuit in the Ultimainboard V2.x with 5v excitation (AVR)
383+
* 21 : Pt100 with circuit in the Ultimainboard V2.x with 3.3v excitation (STM32 \ LPC176x....)
384384
* 201 : Pt100 with circuit in Overlord, similar to Ultimainboard V2.x
385385
* 60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
386386
* 61 : 100k Formbot / Vivedino 3950 350C thermistor 4.7k pullup

Marlin/src/inc/SanityCheck.h

+4-2
Original file line numberDiff line numberDiff line change
@@ -718,14 +718,16 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
718718
#if ENABLED(ADVANCED_PAUSE_FEATURE)
719719
#if !HAS_RESUME_CONTINUE
720720
#error "ADVANCED_PAUSE_FEATURE currently requires an LCD controller or EMERGENCY_PARSER."
721+
#elif DISABLED(NOZZLE_PARK_FEATURE)
722+
#error "ADVANCED_PAUSE_FEATURE requires NOZZLE_PARK_FEATURE."
723+
#elif !defined(FILAMENT_UNLOAD_PURGE_FEEDRATE)
724+
#error "ADVANCED_PAUSE_FEATURE requires FILAMENT_UNLOAD_PURGE_FEEDRATE. Please add it to Configuration_adv.h."
721725
#elif ENABLED(EXTRUDER_RUNOUT_PREVENT)
722726
#error "EXTRUDER_RUNOUT_PREVENT is incompatible with ADVANCED_PAUSE_FEATURE."
723727
#elif ENABLED(PARK_HEAD_ON_PAUSE) && NONE(SDSUPPORT, NEWPANEL, EMERGENCY_PARSER)
724728
#error "PARK_HEAD_ON_PAUSE requires SDSUPPORT, EMERGENCY_PARSER, or an LCD controller."
725729
#elif ENABLED(HOME_BEFORE_FILAMENT_CHANGE) && DISABLED(PAUSE_PARK_NO_STEPPER_TIMEOUT)
726730
#error "HOME_BEFORE_FILAMENT_CHANGE requires PAUSE_PARK_NO_STEPPER_TIMEOUT."
727-
#elif DISABLED(NOZZLE_PARK_FEATURE)
728-
#error "ADVANCED_PAUSE_FEATURE requires NOZZLE_PARK_FEATURE."
729731
#elif ENABLED(PREVENT_LENGTHY_EXTRUDE) && FILAMENT_CHANGE_UNLOAD_LENGTH > EXTRUDE_MAXLENGTH
730732
#error "FILAMENT_CHANGE_UNLOAD_LENGTH must be less than or equal to EXTRUDE_MAXLENGTH."
731733
#elif ENABLED(PREVENT_LENGTHY_EXTRUDE) && FILAMENT_CHANGE_SLOW_LOAD_LENGTH > EXTRUDE_MAXLENGTH

Marlin/src/inc/Version.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
* version was tagged.
4343
*/
4444
#ifndef STRING_DISTRIBUTION_DATE
45-
#define STRING_DISTRIBUTION_DATE "2020-01-30"
45+
#define STRING_DISTRIBUTION_DATE "2020-01-31"
4646
#endif
4747

4848
/**

Marlin/src/lcd/thermistornames.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -85,9 +85,9 @@
8585
#elif THERMISTOR_ID == 18
8686
#define THERMISTOR_NAME "ATC Semitec 204GT-2"
8787
#elif THERMISTOR_ID == 20
88-
#define THERMISTOR_NAME "Pt100 UltiMB"
88+
#define THERMISTOR_NAME "Pt100 UltiMB 5v"
8989
#elif THERMISTOR_ID == 21
90-
#define THERMISTOR_NAME "Pt100 32 bit"
90+
#define THERMISTOR_NAME "Pt100 UltiMB 3.3v"
9191
#elif THERMISTOR_ID == 201
9292
#define THERMISTOR_NAME "Pt100 OverLord"
9393
#elif THERMISTOR_ID == 60

Marlin/src/lcd/ultralcd.cpp

+8-5
Original file line numberDiff line numberDiff line change
@@ -777,13 +777,12 @@ void MarlinUI::update() {
777777
static bool wait_for_unclick; // = false
778778

779779
#if ENABLED(TOUCH_BUTTONS)
780-
781780
if (touch_buttons) {
782781
RESET_STATUS_TIMEOUT();
783-
if (buttons & (EN_A | EN_B)) { // Menu arrows, in priority
782+
if (touch_buttons & (EN_A | EN_B)) { // Menu arrows, in priority
784783
if (ELAPSED(ms, next_button_update_ms)) {
785784
encoderDiff = (ENCODER_STEPS_PER_MENU_ITEM) * (ENCODER_PULSES_PER_STEP) * encoderDirection;
786-
if (buttons & EN_A) encoderDiff *= -1;
785+
if (touch_buttons & EN_A) encoderDiff *= -1;
787786
#if ENABLED(AUTO_BED_LEVELING_UBL)
788787
if (external_control) ubl.encoder_diff = encoderDiff;
789788
#endif
@@ -1246,7 +1245,11 @@ void MarlinUI::update() {
12461245
| slow_buttons
12471246
#endif
12481247
#if ENABLED(TOUCH_BUTTONS) && HAS_ENCODER_ACTION
1249-
| touch_buttons
1248+
| (touch_buttons
1249+
#if HAS_ENCODER_WHEEL
1250+
& (~(EN_A | EN_B))
1251+
#endif
1252+
)
12501253
#endif
12511254
);
12521255

@@ -1277,7 +1280,7 @@ void MarlinUI::update() {
12771280

12781281
} // next_button_update_ms
12791282

1280-
#if HAS_ENCODER_WHEEL && DISABLED(TOUCH_BUTTONS)
1283+
#if HAS_ENCODER_WHEEL
12811284
static uint8_t lastEncoderBits;
12821285

12831286
#define encrot0 0

Marlin/src/module/delta.h

+1
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
*/
2727

2828
#include "../core/types.h"
29+
#include "../core/macros.h"
2930

3031
extern float delta_height;
3132
extern abc_float_t delta_endstop_adj;

Marlin/src/module/thermistor/thermistor_21.h

+49-43
Original file line numberDiff line numberDiff line change
@@ -23,49 +23,55 @@
2323

2424
#define REVERSE_TEMP_SENSOR_RANGE
2525

26-
// Pt100 with INA826 amp on 32 bit mcu based on "Pt100 with INA826 amp on Ultimaker v2.0 electronics"
26+
#undef OV_SCALE
27+
#define OV_SCALE(N) (float((N) * 5) / 3.3f)
28+
29+
// Pt100 with INA826 amp with 3.3v excitation based on "Pt100 with INA826 amp on Ultimaker v2.0 electronics"
2730
const short temptable_21[][2] PROGMEM = {
2831
{ OV( 0), 0 },
29-
{ OV(344), 1 },
30-
{ OV(358), 10 },
31-
{ OV(371), 20 },
32-
{ OV(383), 30 },
33-
{ OV(397), 40 },
34-
{ OV(409), 50 },
35-
{ OV(423), 60 },
36-
{ OV(435), 70 },
37-
{ OV(447), 80 },
38-
{ OV(461), 90 },
39-
{ OV(473), 100 },
40-
{ OV(485), 110 },
41-
{ OV(498), 120 },
42-
{ OV(511), 130 },
43-
{ OV(523), 140 },
44-
{ OV(535), 150 },
45-
{ OV(547), 160 },
46-
{ OV(559), 170 },
47-
{ OV(571), 180 },
48-
{ OV(583), 190 },
49-
{ OV(595), 200 },
50-
{ OV(608), 210 },
51-
{ OV(620), 220 },
52-
{ OV(632), 230 },
53-
{ OV(642), 240 },
54-
{ OV(655), 250 },
55-
{ OV(667), 260 },
56-
{ OV(677), 270 },
57-
{ OV(689), 280 },
58-
{ OV(702), 290 },
59-
{ OV(712), 300 },
60-
{ OV(724), 310 },
61-
{ OV(735), 320 },
62-
{ OV(747), 330 },
63-
{ OV(758), 340 },
64-
{ OV(768), 350 },
65-
{ OV(780), 360 },
66-
{ OV(791), 370 },
67-
{ OV(802), 380 },
68-
{ OV(814), 390 },
69-
{ OV(824), 400 },
70-
{ OV(930), 500 }
32+
{ OV(227), 1 },
33+
{ OV(236), 10 },
34+
{ OV(245), 20 },
35+
{ OV(253), 30 },
36+
{ OV(262), 40 },
37+
{ OV(270), 50 },
38+
{ OV(279), 60 },
39+
{ OV(287), 70 },
40+
{ OV(295), 80 },
41+
{ OV(304), 90 },
42+
{ OV(312), 100 },
43+
{ OV(320), 110 },
44+
{ OV(329), 120 },
45+
{ OV(337), 130 },
46+
{ OV(345), 140 },
47+
{ OV(353), 150 },
48+
{ OV(361), 160 },
49+
{ OV(369), 170 },
50+
{ OV(377), 180 },
51+
{ OV(385), 190 },
52+
{ OV(393), 200 },
53+
{ OV(401), 210 },
54+
{ OV(409), 220 },
55+
{ OV(417), 230 },
56+
{ OV(424), 240 },
57+
{ OV(432), 250 },
58+
{ OV(440), 260 },
59+
{ OV(447), 270 },
60+
{ OV(455), 280 },
61+
{ OV(463), 290 },
62+
{ OV(470), 300 },
63+
{ OV(478), 310 },
64+
{ OV(485), 320 },
65+
{ OV(493), 330 },
66+
{ OV(500), 340 },
67+
{ OV(507), 350 },
68+
{ OV(515), 360 },
69+
{ OV(522), 370 },
70+
{ OV(529), 380 },
71+
{ OV(537), 390 },
72+
{ OV(544), 400 },
73+
{ OV(614), 500 }
7174
};
75+
76+
#undef OV_SCALE
77+
#define OV_SCALE(N) (N)

Marlin/src/module/thermistor/thermistors.h

+3-2
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,8 @@
3737
#error "MAX_RAW_THERMISTOR_VALUE is too large for int16_t. Reduce OVERSAMPLENR or HAL_ADC_RESOLUTION."
3838
#endif
3939

40-
#define OV(N) int16_t((N) * (OVERSAMPLENR) * (THERMISTOR_TABLE_SCALE))
40+
#define OV_SCALE(N) (N)
41+
#define OV(N) int16_t(OV_SCALE(N) * (OVERSAMPLENR) * (THERMISTOR_TABLE_SCALE))
4142

4243
#define ANY_THERMISTOR_IS(n) (THERMISTOR_HEATER_0 == n || THERMISTOR_HEATER_1 == n || THERMISTOR_HEATER_2 == n || THERMISTOR_HEATER_3 == n || THERMISTOR_HEATER_4 == n || THERMISTOR_HEATER_5 == n || THERMISTOR_HEATER_6 == n || THERMISTOR_HEATER_7 == n || THERMISTORBED == n || THERMISTORCHAMBER == n || THERMISTORPROBE == n)
4344

@@ -105,7 +106,7 @@
105106
#if ANY_THERMISTOR_IS(20) // Pt100 with INA826 amp on Ultimaker v2.0 electronics
106107
#include "thermistor_20.h"
107108
#endif
108-
#if ANY_THERMISTOR_IS(21) // Pt100 with INA826 amp on 32 bit mcu based "Pt100 with INA826 amp on Ultimaker v2.0 electronics"
109+
#if ANY_THERMISTOR_IS(21) // Pt100 with INA826 amp with 3.3v excitation based on "Pt100 with INA826 amp on Ultimaker v2.0 electronics"
109110
#include "thermistor_21.h"
110111
#endif
111112
#if ANY_THERMISTOR_IS(51) // beta25 = 4092 K, R25 = 100 kOhm, Pull-up = 1 kOhm, "EPCOS"

Marlin/src/pins/linux/pins_RAMPS_LINUX.h

+18
Original file line numberDiff line numberDiff line change
@@ -363,6 +363,24 @@
363363
#ifndef E4_SERIAL_RX_PIN
364364
#define E4_SERIAL_RX_PIN -1
365365
#endif
366+
#ifndef E5_SERIAL_TX_PIN
367+
#define E5_SERIAL_TX_PIN -1
368+
#endif
369+
#ifndef E5_SERIAL_RX_PIN
370+
#define E5_SERIAL_RX_PIN -1
371+
#endif
372+
#ifndef E6_SERIAL_TX_PIN
373+
#define E6_SERIAL_TX_PIN -1
374+
#endif
375+
#ifndef E6_SERIAL_RX_PIN
376+
#define E6_SERIAL_RX_PIN -1
377+
#endif
378+
#ifndef E7_SERIAL_TX_PIN
379+
#define E7_SERIAL_TX_PIN -1
380+
#endif
381+
#ifndef E7_SERIAL_RX_PIN
382+
#define E7_SERIAL_RX_PIN -1
383+
#endif
366384
#endif
367385

368386
//////////////////////////

Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h

+3-9
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,10 @@
3636
* Limit Switches
3737
*/
3838
#if X_STALL_SENSITIVITY
39+
#define X_STOP_PIN X_DIAG_PIN
3940
#if X_HOME_DIR < 0
40-
#define X_MIN_PIN X_DIAG_PIN
4141
#define X_MAX_PIN P1_28 // X+
4242
#else
43-
#define X_MAX_PIN X_DIAG_PIN
4443
#define X_MIN_PIN P1_28 // X+
4544
#endif
4645
#else
@@ -49,11 +48,10 @@
4948
#endif
5049

5150
#if Y_STALL_SENSITIVITY
51+
#define Y_STOP_PIN Y_DIAG_PIN
5252
#if Y_HOME_DIR < 0
53-
#define Y_MIN_PIN Y_DIAG_PIN
5453
#define Y_MAX_PIN P1_26 // Y+
5554
#else
56-
#define Y_MAX_PIN Y_DIAG_PIN
5755
#define Y_MIN_PIN P1_26 // Y+
5856
#endif
5957
#else
@@ -62,11 +60,10 @@
6260
#endif
6361

6462
#if Z_STALL_SENSITIVITY
63+
#define Z_STOP_PIN Z_DIAG_PIN
6564
#if Z_HOME_DIR < 0
66-
#define Z_MIN_PIN Z_DIAG_PIN
6765
#define Z_MAX_PIN P1_24 // Z+
6866
#else
69-
#define Z_MAX_PIN Z_DIAG_PIN
7067
#define Z_MIN_PIN P1_24 // Z+
7168
#endif
7269
#else
@@ -184,9 +181,6 @@
184181
#define E1_SERIAL_TX_PIN P1_04
185182
#define E1_SERIAL_RX_PIN P1_01
186183

187-
#define Z2_SERIAL_TX_PIN P1_04
188-
#define Z2_SERIAL_RX_PIN P1_01
189-
190184
// Reduce baud rate to improve software serial reliability
191185
#define TMC_BAUD_RATE 19200
192186
#endif

Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h

+45-7
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,50 @@
3737
//
3838
#define SERVO0_PIN P2_00
3939

40+
//
41+
// TMC StallGuard DIAG pins
42+
//
43+
#define X_DIAG_PIN P1_29 // X-STOP
44+
#define Y_DIAG_PIN P1_28 // Y-STOP
45+
#define Z_DIAG_PIN P1_27 // Z-STOP
46+
#define E0_DIAG_PIN P1_26 // E0DET
47+
#define E1_DIAG_PIN P1_25 // E1DET
48+
4049
//
4150
// Limit Switches
4251
//
43-
#define X_STOP_PIN P1_29
44-
#define Y_STOP_PIN P1_28
45-
#define Z_STOP_PIN P1_27
52+
#if X_STALL_SENSITIVITY
53+
#define X_STOP_PIN X_DIAG_PIN
54+
#if X_HOME_DIR < 0
55+
#define X_MAX_PIN P1_26 // E0DET
56+
#else
57+
#define X_MIN_PIN P1_26 // E0DET
58+
#endif
59+
#else
60+
#define X_STOP_PIN P1_29 // X-STOP
61+
#endif
62+
63+
#if Y_STALL_SENSITIVITY
64+
#define Y_STOP_PIN Y_DIAG_PIN
65+
#if Y_HOME_DIR < 0
66+
#define Y_MAX_PIN P1_25 // E1DET
67+
#else
68+
#define Y_MIN_PIN P1_25 // E1DET
69+
#endif
70+
#else
71+
#define Y_STOP_PIN P1_28 // Y-STOP
72+
#endif
73+
74+
#if Z_STALL_SENSITIVITY
75+
#define Z_STOP_PIN Z_DIAG_PIN
76+
#if Z_HOME_DIR < 0
77+
#define Z_MAX_PIN P1_24 // PWRDET
78+
#else
79+
#define Z_MIN_PIN P1_24 // PWRDET
80+
#endif
81+
#else
82+
#define Z_STOP_PIN P1_27 // Z-STOP
83+
#endif
4684

4785
//
4886
// Z Probe (when not Z_MIN_PIN)
@@ -54,21 +92,21 @@
5492
//
5593
// Filament Runout Sensor
5694
//
57-
#define FIL_RUNOUT_PIN P1_26
58-
#define FIL_RUNOUT2_PIN P1_25
95+
#define FIL_RUNOUT_PIN P1_26 // E0DET
96+
#define FIL_RUNOUT2_PIN P1_25 // E1DET
5997

6098
//
6199
// Power Supply Control
62100
//
63101
#ifndef PS_ON_PIN
64-
#define PS_ON_PIN P1_00
102+
#define PS_ON_PIN P1_00 // PWRDET
65103
#endif
66104

67105
//
68106
// Power Loss Detection
69107
//
70108
#ifndef POWER_LOSS_PIN
71-
#define POWER_LOSS_PIN P1_00
109+
#define POWER_LOSS_PIN P1_00 // PWRDET
72110
#endif
73111

74112
//

0 commit comments

Comments
 (0)