Skip to content

Commit

Permalink
✨ Add ZRIB v53, patch G35 Z drop, related issues (#23636)
Browse files Browse the repository at this point in the history
  • Loading branch information
SidSkiba authored and thinkyhead committed May 7, 2022
1 parent 15eabba commit 21935b4
Show file tree
Hide file tree
Showing 12 changed files with 816 additions and 111 deletions.
3 changes: 3 additions & 0 deletions Marlin/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -436,6 +436,9 @@
* 5 : 100kΩ ATC Semitec 104GT-2/104NT-4-R025H42G - Used in ParCan, J-Head, and E3D, SliceEngineering 300°C
* 501 : 100kΩ Zonestar - Tronxy X3A
* 502 : 100kΩ Zonestar - used by hot bed in Zonestar Průša P802M
* 503 : 100kΩ Zonestar (Z8XM2) Heated Bed thermistor
* 504 : 100kΩ Zonestar P802QR2 (Part# QWG-104F-B3950) Hotend Thermistor
* 505 : 100kΩ Zonestar P802QR2 (Part# QWG-104F-3950) Bed Thermistor
* 512 : 100kΩ RPW-Ultra hotend
* 6 : 100kΩ EPCOS - Not as accurate as table #1 (created using a fluke thermocouple)
* 7 : 100kΩ Honeywell 135-104LAG-J01
Expand Down
1 change: 1 addition & 0 deletions Marlin/src/core/boards.h
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,7 @@
#define BOARD_RAMPS_S_12_EFFB 1159 // Ramps S 1.2 by Sakul.cz (Power outputs: Hotend, Fan0, Fan1, Bed)
#define BOARD_LONGER3D_LK1_PRO 1160 // Longer LK1 PRO / Alfawise U20 Pro (PRO version)
#define BOARD_LONGER3D_LKx_PRO 1161 // Longer LKx PRO / Alfawise Uxx Pro (PRO version)
#define BOARD_ZRIB_V53 1162 // Zonestar zrib V5.3 (Chinese RAMPS replica)

//
// RAMBo and derivatives
Expand Down
4 changes: 3 additions & 1 deletion Marlin/src/gcode/bedlevel/G35.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,9 @@ void GcodeSuite::G35() {
// In BLTOUCH HS mode, the probe travels in a deployed state.
// Users of G35 might have a badly misaligned bed, so raise Z by the
// length of the deployed pin (BLTOUCH stroke < 7mm)
do_blocking_move_to_z(Z_CLEARANCE_BETWEEN_PROBES + TERN0(BLTOUCH, bltouch.z_extra_clearance()));

// Unsure if this is even required. The probe seems to lift correctly after probe done.
do_blocking_move_to_z(SUM_TERN(BLTOUCH, Z_CLEARANCE_BETWEEN_PROBES, bltouch.z_extra_clearance()));
const float z_probed_height = probe.probe_at_point(tramming_points[i], PROBE_PT_RAISE, 0, true);

if (isnan(z_probed_height)) {
Expand Down
3 changes: 2 additions & 1 deletion Marlin/src/lcd/marlinui.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -704,7 +704,8 @@ void MarlinUI::init() {
TERN_(HAS_MARLINUI_MENU, refresh());

#if HAS_ENCODER_ACTION
if (clear_buttons) buttons = 0;
if (clear_buttons)
TERN_(HAS_ADC_BUTTONS, keypad_buttons =) buttons = 0;
next_button_update_ms = millis() + 500;
#else
UNUSED(clear_buttons);
Expand Down
4 changes: 4 additions & 0 deletions Marlin/src/lcd/thermistornames.h
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,10 @@
#define THERMISTOR_NAME "Zonestar (P802M Hot Bed)"
#elif THERMISTOR_ID == 503
#define THERMISTOR_NAME "Zonestar (Z8XM2 Bed)"
#elif THERMISTOR_ID == 504
#define THERMISTOR_NAME "Zonestar (P802QR2 Hot End)"
#elif THERMISTOR_ID == 505
#define THERMISTOR_NAME "Zonestar (P802QR2 Bed)"
#elif THERMISTOR_ID == 512
#define THERMISTOR_NAME "RPW-Ultra"
#elif THERMISTOR_ID == 6
Expand Down
93 changes: 93 additions & 0 deletions Marlin/src/module/thermistor/thermistor_504.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
/**
* Marlin 3D Printer Firmware
* Copyright (C) 2022 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
#pragma once

// QWG 104F B3950 thermistor
constexpr temp_entry_t temptable_504[] PROGMEM = {
{ OV( 15), 330 },
{ OV( 17), 315 },
{ OV( 19), 300 },
{ OV( 20), 295 },
{ OV( 21), 290 },
{ OV( 23), 285 },
{ OV( 25), 280 },
{ OV( 27), 275 },
{ OV( 28), 270 },
{ OV( 31), 265 },
{ OV( 33), 260 },
{ OV( 35), 255 },
{ OV( 38), 250 },
{ OV( 41), 245 },
{ OV( 44), 240 },
{ OV( 48), 235 },
{ OV( 52), 230 },
{ OV( 56), 225 },
{ OV( 61), 220 },
{ OV( 66), 215 },
{ OV( 78), 210 },
{ OV( 92), 205 },
{ OV( 100), 200 },
{ OV( 109), 195 },
{ OV( 120), 190 },
{ OV( 143), 185 },
{ OV( 148), 180 },
{ OV( 156), 175 },
{ OV( 171), 170 },
{ OV( 187), 165 },
{ OV( 205), 160 },
{ OV( 224), 155 },
{ OV( 268), 150 },
{ OV( 293), 145 },
{ OV( 320), 140 },
{ OV( 348), 135 },
{ OV( 379), 130 },
{ OV( 411), 125 },
{ OV( 445), 120 },
{ OV( 480), 115 },
{ OV( 516), 110 },
{ OV( 553), 105 },
{ OV( 591), 100 },
{ OV( 628), 95 },
{ OV( 665), 90 },
{ OV( 702), 85 },
{ OV( 737), 80 },
{ OV( 770), 75 },
{ OV( 801), 70 },
{ OV( 830), 65 },
{ OV( 857), 60 },
{ OV( 881), 55 },
{ OV( 903), 50 },
{ OV( 922), 45 },
{ OV( 939), 40 },
{ OV( 954), 35 },
{ OV( 966), 30 },
{ OV( 977), 25 },
{ OV( 985), 23 },
{ OV( 993), 20 },
{ OV( 999), 18 },
{ OV(1004), 15 },
{ OV(1008), 12 },
{ OV(1012), 8 },
{ OV(1016), 5 },
{ OV(1020), 0 },
{ OV(1023), -5 }
};
82 changes: 82 additions & 0 deletions Marlin/src/module/thermistor/thermistor_505.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
/**
* Marlin 3D Printer Firmware
* Copyright (C) 2022 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
#pragma once

// ZONESTAR hotbed QWG-104F-3950 thermistor
constexpr temp_entry_t temptable_505[] PROGMEM = {
{ OV( 1), 938 },
{ OV( 8), 320 },
{ OV( 16), 300 },
{ OV( 27), 290 },
{ OV( 36), 272 },
{ OV( 47), 258 },
{ OV( 56), 248 },
{ OV( 68), 245 },
{ OV( 78), 237 },
{ OV( 89), 228 },
{ OV( 99), 221 },
{ OV( 110), 215 },
{ OV( 120), 209 },
{ OV( 131), 204 },
{ OV( 141), 199 },
{ OV( 151), 195 },
{ OV( 161), 190 },
{ OV( 171), 187 },
{ OV( 181), 183 },
{ OV( 201), 179 },
{ OV( 221), 170 },
{ OV( 251), 165 },
{ OV( 261), 160 },
{ OV( 321), 150 },
{ OV( 361), 144 },
{ OV( 401), 140 },
{ OV( 421), 133 },
{ OV( 451), 130 },
{ OV( 551), 120 },
{ OV( 571), 117 },
{ OV( 596), 110 },
{ OV( 626), 105 },
{ OV( 666), 100 },
{ OV( 677), 95 },
{ OV( 697), 90 },
{ OV( 717), 85 },
{ OV( 727), 79 },
{ OV( 750), 72 },
{ OV( 789), 69 },
{ OV( 819), 65 },
{ OV( 861), 57 },
{ OV( 870), 55 },
{ OV( 881), 51 },
{ OV( 911), 45 },
{ OV( 922), 39 },
{ OV( 968), 28 },
{ OV( 977), 25 },
{ OV( 985), 23 },
{ OV( 993), 20 },
{ OV( 999), 18 },
{ OV(1004), 15 },
{ OV(1008), 12 },
{ OV(1012), 8 },
{ OV(1016), 5 },
{ OV(1020), 0 },
{ OV(1023), -5 }
};
6 changes: 6 additions & 0 deletions Marlin/src/module/thermistor/thermistors.h
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,12 @@ typedef struct { int16_t value; celsius_t celsius; } temp_entry_t;
#if ANY_THERMISTOR_IS(503) // Zonestar (Z8XM2) Heated Bed thermistor
#include "thermistor_503.h"
#endif
#if ANY_THERMISTOR_IS(504) // Zonestar (P802QR2 Hot End) thermistors
#include "thermistor_504.h"
#endif
#if ANY_THERMISTOR_IS(505) // Zonestar (P802QR2 Bed) thermistor
#include "thermistor_505.h"
#endif
#if ANY_THERMISTOR_IS(512) // 100k thermistor in RPW-Ultra hotend, Pull-up = 4.7 kOhm, "unknown model"
#include "thermistor_512.h"
#endif
Expand Down
2 changes: 2 additions & 0 deletions Marlin/src/pins/pins.h
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,8 @@
#include "ramps/pins_ZRIB_V20.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280
#elif MB(ZRIB_V52)
#include "ramps/pins_ZRIB_V52.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280
#elif MB(ZRIB_V53)
#include "ramps/pins_ZRIB_V53.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280
#elif MB(FELIX2)
#include "ramps/pins_FELIX2.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280
#elif MB(RIGIDBOARD)
Expand Down
Loading

0 comments on commit 21935b4

Please sign in to comment.