Upgraded extruder assembly to a 2.5S But with MK2 BED
 
Avisos
Vaciar todo

Upgraded extruder assembly to a 2.5S But with MK2 BED  

Página 2 / 2
  RSS
mollysmith54435
(@mollysmith54435)
New Member
RE:

Thanks for this info. I really want to know about here. 

Respondido : 09/06/2022 8:41 pm
VlackRasberry
(@vlackrasberry)
Active Member
RE: Upgraded extruder assembly to a 2.5S But with MK2 BED

Additionally I had to tweak a few things in xyzcal.cpp, because the 32x32 calibration matrix would run out of the printers travel boundaries and lock the X and Y axies (loose steps, no calibration possible). To much to publish here, but I changed the xyzcal_scan_pixels_32x32_Zhop() function, so that it would initialize the pixels[] variable with zeros and only measure pixel/position 4-28 in X and Y direction. This finally gave me the new 32x32 scan calibration feature, without loosing steps

Hi wolf, is it possible for you to explain more in depth what you did in this step? I am trying to do the same thing and I am stuck.

Mk3s+Mk2.5s 13Mk2.5s 10a

Respondido : 22/08/2023 3:14 pm
samueljt
(@samueljt-2)
Miembro
MK2 printer, MK42 bed, with MK2.5S Bed

For anyone still interested in this problem, I recently dusted off my 10-year-old MK2 and wanted to get it moderately functional for a project. I printed a new head from the MK2.5s design files so I could run the IR filament sensor and PINDA v2. I also glued some heat-resistant neodymium magnets (strategically placed to avoid the 3×3 mesh grid) to the underside of the heated bed and added a knockoff steel sheet from China.

So, what I’ve got now is essentially a hybrid: MK2 frame, motors, board, and power supply, with an MK42 bed (but with magnets and a sheet) and an MK2.5s hotend all on 12v. I think I spent under $50 in total to do all these updates.

After all this, I had to sort out the firmware. I downloaded the latest version for the MK2.5S (3.14.1) and made a few modifications. I’m running a RAMBo13a board, so I compiled with that profile (download link: MK25S-RAMBo13a), but here are my changes if you need to replicate this for a different board.

In MK25S-RAMBo13a.h (travel limits after homing, adjusted by trial and error):

#define X_MAX_POS 246
#define X_MIN_POS 0
#define Y_MAX_POS 210
#define Y_MIN_POS -2.2
#define Z_MAX_POS 200 // MK2 had 200 mm Z height
#define Z_MIN_POS 0.15

In mesh_bed_calibration.h (adjusted bed reference for MK42):

#define BED_ZERO_REF_X (-22.f + X_PROBE_OFFSET_FROM_EXTRUDER)  // -22 + 23 = 1
#define BED_ZERO_REF_Y (-0.6f + Y_PROBE_OFFSET_FROM_EXTRUDER)  // -0.6 + 5 = 4.4

#ifdef HEATBED_V2
  #define BED_X0 (14.0f  - BED_ZERO_REF_X)   // 14.0 - 1.0 = 13.0
  #define BED_Y0 (10.8f - BED_ZERO_REF_Y)   // 10.8 - 4.4 = 6.4
  #define BED_Xn (217.0f - BED_ZERO_REF_X)   // 217.0 - 1.0 = 216.0
  #define BED_Yn (206.4f - BED_ZERO_REF_Y)   // 206.4 - 4.4 = 202.0
#else
  #define BED_X0 (13.f - BED_ZERO_REF_X)
  #define BED_Y0 (8.4f - BED_ZERO_REF_Y)
  #define BED_Xn (216.f - BED_ZERO_REF_X)
  #define BED_Yn (202.4f - BED_ZERO_REF_Y)
#endif

In mesh_bed_calibration.cpp (modified mesh points + probe radii so it doesn’t hit endstops):

#ifdef HEATBED_V2
  const float bed_ref_points_4[] PROGMEM = {
    115.f - BED_ZERO_REF_X,  10.8f  - BED_ZERO_REF_Y,  // 10.8 - 4.4 = 6.4
    216.f - BED_ZERO_REF_X,  108.8f - BED_ZERO_REF_Y,  // 108.8 - 4.4 = 104.4
    115.f - BED_ZERO_REF_X,  206.4f - BED_ZERO_REF_Y,  // 206.4 - 4.4 = 202.0
     13.f - BED_ZERO_REF_X,  108.8f - BED_ZERO_REF_Y   // 108.8 - 4.4 = 104.4
  };
#else
  const float bed_ref_points_4[] PROGMEM = {
    115.f - BED_ZERO_REF_X,   8.4f - BED_ZERO_REF_Y,
    216.f - BED_ZERO_REF_X, 104.4f - BED_ZERO_REF_Y,
    115.f - BED_ZERO_REF_X, 202.4f - BED_ZERO_REF_Y,
     13.f - BED_ZERO_REF_X, 104.4f - BED_ZERO_REF_Y
  };
#endif

...............

#define FIND_BED_INDUCTION_SENSOR_POINT_X_RADIUS (4.f)
static const float search_radius = 4.f;
#define IMPROVE_BED_INDUCTION_SENSOR_POINT3_SEARCH_RADIUS (4.f)

 

 

Respondido : 20/08/2025 11:56 pm
Página 2 / 2
Compartir: