Aktualizacja Marlin 1.1.9

Awatar użytkownika
JGFTW
Posty: 746
Rejestracja: 14 sie 2019, 05:19
Lokalizacja: Wrocław
Drukarka: Klony MK2s i CR10
x 398

Re: Aktualizacja Marlin 1.1.9

Postautor: JGFTW » 07 mar 2021, 04:33

Astaj pisze: [...] Chciałbym jednak wymianę części pozostawić jako ostateczność, nie wiem bowiem jakie termistory wybrać z dość szerokiej oferty i gdzie dokładnie się mieszczą. [...]



Nie przesadzaj, kabla nie potrafisz wymienić?

Bo do tego się to będzie sprowadzać.
Termistory podłączone są do gniazd T0 i T1 na Rampsie.

Tu masz listę wspieranych termistorów:
https://github.com/MarlinFirmware/Marli ... ion.h#L357

Kupuje się gotowe i te z oznaczeniami 100k Beta 3950 mają w Marlinie pozycję 11.

https://allegro.pl/kategoria/drukarki-i ... e-1-3-0304


Co do termistora to tak jak pisze Mati. Możesz spróbowac podpiąć drukarkę do kompa, uruchomić Pronterface i w terminalu coś popróbować wpisywać:
https://marlinfw.org/docs/gcode/M111.html
https://marlinfw.org/docs/gcode/M115.html
https://marlinfw.org/docs/gcode/M503.html

Ale nie nastawiałbym się na powodzenie.

Inwestycja 20zł i wymiana kabli to najprostsze rozwiązanie.
Cr10 2017 - direct, standalone ATX mod, 2ga oś Z, ABL, RPI + Octo
Klon MK2s - 1:1 własny sourcing części
Klon MK2s - 24v, silniki 809, Skr 1.3
Kolejny klon MK2s - SKR 1.3 , stół MK42
TinyCart v3.6 worklog
MPCNC worklog
Astaj
Posty: 12
Rejestracja: 06 cze 2019, 15:44

Re: Aktualizacja Marlin 1.1.9

Postautor: Astaj » 07 mar 2021, 15:01

Termistory podłączone są do gniazd T0 i T1 na Rampsie.


Dzięki powyższej informacji sprawdziłem rozmieszczenie termistorów i muszę przyznać rację, wymiana będzie dużo prostsza niż początkowo myślałem.

Dziękuję także za link do allegro, zakupię nowe :)
Astaj
Posty: 12
Rejestracja: 06 cze 2019, 15:44

Re: Aktualizacja Marlin 1.1.9

Postautor: Astaj » 10 mar 2021, 19:04

Otrzymałem nowe termistory i dokonałem zmian w kodzie obu plików. Nie jestem pewien poprawności owych zmian (zwłaszcza MOTHERBOARD), poniżej zamieszczam sekcje w których dokonałem zmian:

Configuration.h ( oryginał z adresu podanego wcześniej linku https://github.com/MarlinFirmware/Marli ... guration.h) :

Kod: Zaznacz cały

// Choose the name from boards.h that matches your setup
#ifndef MOTHERBOARD
  #define MOTHERBOARD BOARD_RAMPS_14_EFB
#endif

-------------------------------------------

#define TEMP_SENSOR_0 11
#define TEMP_SENSOR_1 0
#define TEMP_SENSOR_2 0
#define TEMP_SENSOR_3 0
#define TEMP_SENSOR_4 0
#define TEMP_SENSOR_5 0
#define TEMP_SENSOR_6 0
#define TEMP_SENSOR_7 0
#define TEMP_SENSOR_BED 11
#define TEMP_SENSOR_PROBE 0
#define TEMP_SENSOR_CHAMBER 0

-------------------------------------------

#define X_DRIVER_TYPE  A4988
#define Y_DRIVER_TYPE  A4988
#define Z_DRIVER_TYPE  A4988
//#define X2_DRIVER_TYPE A4988
//#define Y2_DRIVER_TYPE A4988
//#define Z2_DRIVER_TYPE A4988
//#define Z3_DRIVER_TYPE A4988
//#define Z4_DRIVER_TYPE A4988
//#define E0_DRIVER_TYPE A4988
#define E1_DRIVER_TYPE A4988
//#define E2_DRIVER_TYPE A4988
//#define E3_DRIVER_TYPE A4988
//#define E4_DRIVER_TYPE A4988
//#define E5_DRIVER_TYPE A4988
//#define E6_DRIVER_TYPE A4988
//#define E7_DRIVER_TYPE A4988

-------------------------------------------

/**
 * SD CARD
 *
 * SD Card support is disabled by default. If your controller has an SD slot,
 * you must uncomment the following option or it won't work.
 */
#define SDSUPPORT

-------------------------------------------

//
// RepRapDiscount Smart Controller.
// https://reprap.org/wiki/RepRapDiscount_Smart_Controller
//
// Note: Usually sold with a white PCB.
//
#define REPRAP_DISCOUNT_SMART_CONTROLLER


Configuration_adv.h ( oryginał z adresu podanego wcześniej linku
https://github.com/MarlinFirmware/Marli ... tion_adv.h) :

Kod: Zaznacz cały

/**
   * Continue after Power-Loss (Creality3D)
   *
   * Store the current state to the SD Card at the start of each layer
   * during SD printing. If the recovery file is found at boot time, present
   * an option on the LCD screen to continue the print from the last-known
   * point in the file.
   */
  #define POWER_LOSS_RECOVERY
  #if ENABLED(POWER_LOSS_RECOVERY)
    #define PLR_ENABLED_DEFAULT   false // Power Loss Recovery enabled by default. (Set with 'M413 Sn' & M500)
    //#define BACKUP_POWER_SUPPLY       // Backup power / UPS to move the steppers on power loss
    //#define POWER_LOSS_RECOVER_ZHOME  // Z homing is needed for proper recovery. 99.9% of the time this should be disabled!
    //#define POWER_LOSS_ZRAISE       2 // (mm) Z axis raise on resume (on power loss with UPS)
    //#define POWER_LOSS_PIN         44 // Pin to detect power loss. Set to -1 to disable default pin on boards without module.
    //#define POWER_LOSS_STATE     HIGH // State of pin indicating power loss
    //#define POWER_LOSS_PULL           // Set pullup / pulldown as appropriate
    //#define POWER_LOSS_PURGE_LEN   20 // (mm) Length of filament to purge on resume
    //#define POWER_LOSS_RETRACT_LEN 10 // (mm) Length of filament to retract on fail. Requires backup power.

    // Without a POWER_LOSS_PIN the following option helps reduce wear on the SD card,
    // especially with "vase mode" printing. Set too high and vases cannot be continued.
    #define POWER_LOSS_MIN_Z_CHANGE 0.05 // (mm) Minimum Z change before saving power-loss data
  #endif

-------------------------------------------

 /**
   * When using a bootloader that supports SD-Firmware-Flashing,
   * add a menu item to activate SD-FW-Update on the next reboot.
   *
   * Requires ATMEGA2560 (Arduino Mega)
   *
   * Tested with this bootloader:
   *   https://github.com/FleetProbe/MicroBridge-Arduino-ATMega2560
   */
  #define SD_FIRMWARE_UPDATE
  #if ENABLED(SD_FIRMWARE_UPDATE)
    #define SD_FIRMWARE_UPDATE_EEPROM_ADDR    0x1FF
    #define SD_FIRMWARE_UPDATE_ACTIVE_VALUE   0xF0
    #define SD_FIRMWARE_UPDATE_INACTIVE_VALUE 0xFF
  #endif


Chciałbym także włączyć opcję o której wspominał Mati, nie odnalazłem jej jednak:

W nowszych wersjach Marlina (o ile włączy się tą opcję podczas kompilacji) jest w menu coś takiego jak board info


Czy dokonać jakieś dodatkowe korekty?
Awatar użytkownika
JGFTW
Posty: 746
Rejestracja: 14 sie 2019, 05:19
Lokalizacja: Wrocław
Drukarka: Klony MK2s i CR10
x 398

Re: Aktualizacja Marlin 1.1.9

Postautor: JGFTW » 11 mar 2021, 14:12

Jeżeli to są jedyne rzeczy jakie zmieniłeś to zapewne paru pozycji jeszcze brakuję, ale to zależy jakie masz elementy wykonawcze w tej drukarce i jakie mają realizować funkcję - np czujnik indukcyjny albo BLTouch oraz wybór ABL albo w którą stronę bazują się osie, itp.

Raczej bez znajomości sprzętu to nikt Ci nie podpowie o czym zapomniałeś.

Tu masz opisane trochę szerzej poszczególne pozycję z plików konfiguracyjnych:
https://marlinfw.org/docs/configuration ... ation.html

Przejdź całe Configuration.h oraz Configuration_adv.h posiłkując się powyższym linkiem i sobie poradzisz.

Ewentualnie możesz oglądnąć jakiś filmik na YT albo może postawić komuś flaszkę i niech z Tobą ten plik przejdzie.

[...]
Chciałbym także włączyć opcję o której wspominał Mati, nie odnalazłem jej jednak
[...]


To jest opcja, której szukasz:
https://github.com/MarlinFirmware/Marli ... dv.h#L1084
Cr10 2017 - direct, standalone ATX mod, 2ga oś Z, ABL, RPI + Octo
Klon MK2s - 1:1 własny sourcing części
Klon MK2s - 24v, silniki 809, Skr 1.3
Kolejny klon MK2s - SKR 1.3 , stół MK42
TinyCart v3.6 worklog
MPCNC worklog
Astaj
Posty: 12
Rejestracja: 06 cze 2019, 15:44

Re: Aktualizacja Marlin 1.1.9

Postautor: Astaj » 12 mar 2021, 08:46

ok, dziękuję za informację, ponownie przejrzę pliki z pomocą opisów.
Awatar użytkownika
malyhenio1
Posty: 289
Rejestracja: 30 lip 2016, 14:31
x 13

Re: Aktualizacja Marlin 1.1.9

Postautor: malyhenio1 » 12 mar 2021, 09:53

Witam dodam , że trzeba jeszcze odblokować eeprom
Astaj
Posty: 12
Rejestracja: 06 cze 2019, 15:44

Re: Aktualizacja Marlin 1.1.9

Postautor: Astaj » 25 mar 2021, 18:51

Zajęło mi to więcej czasu niż powinno, niemniej ukończyłem konfigurację pierwszego pliku. Dziękuję za informacje z EEPROM, jakby nie patrzeć z tego powodu chcę dokonać aktualizacji. Poniżej zamieszczam wszystkie zmiany Configuration.h, jeśli jakieś są błędne, niepotrzebne lub czegoś brak to proszę o podpowiedź :)

Kod: Zaznacz cały

#define SERIAL_PORT_2 -1

----------------------------------------------------

#define BAUDRATE 115200

----------------------------------------------------

// Choose the name from boards.h that matches your setup
#ifndef MOTHERBOARD
  #define MOTHERBOARD BOARD_RAMPS_14_EFB
#endif

----------------------------------------------------

// Dummy thermistor constant temperature readings, for use with 998 and 999
//#define DUMMY_THERMISTOR_998_VALUE 25
//#define DUMMY_THERMISTOR_999_VALUE 100

----------------------------------------------------

#define TEMP_SENSOR_0 11
#define TEMP_SENSOR_1 0
#define TEMP_SENSOR_2 0
#define TEMP_SENSOR_3 0
#define TEMP_SENSOR_4 0
#define TEMP_SENSOR_5 0
#define TEMP_SENSOR_6 0
#define TEMP_SENSOR_7 0
#define TEMP_SENSOR_BED 11
#define TEMP_SENSOR_PROBE 0
#define TEMP_SENSOR_CHAMBER 0

----------------------------------------------------

#define MAX_REDUNDANT_TEMP_SENSOR_DIFF 10

#define TEMP_RESIDENCY_TIME     10  // (seconds) Time to wait for hotend to "settle" in M109
#define TEMP_WINDOW              1  // (°C) Temperature proximity for the "temperature reached" timer
#define TEMP_HYSTERESIS          2  // (°C) Temperature proximity considered "close enough" to the target

#define TEMP_BED_RESIDENCY_TIME 10  // (seconds) Time to wait for bed to "settle" in M190
#define TEMP_BED_WINDOW          1  // (°C) Temperature proximity for the "temperature reached" timer
#define TEMP_BED_HYSTERESIS      2  // (°C) Temperature proximity considered "close enough" to the target

----------------------------------------------------

// Below this temperature the heater will be switched off
// because it probably indicates a broken thermistor wire.
#define HEATER_0_MINTEMP   10
#define HEATER_1_MINTEMP   5
#define HEATER_2_MINTEMP   5
#define HEATER_3_MINTEMP   5
#define HEATER_4_MINTEMP   5
#define HEATER_5_MINTEMP   5
#define HEATER_6_MINTEMP   5
#define HEATER_7_MINTEMP   5
#define BED_MINTEMP        10
----------------------------------------------------

// Above this temperature the heater will be switched off.
// This can protect components from overheating, but NOT from shorts and failures.
// (Use MINTEMP for thermistor short/failure protection.)
#define HEATER_0_MAXTEMP 250
#define HEATER_1_MAXTEMP 0
#define HEATER_2_MAXTEMP 0
#define HEATER_3_MAXTEMP 0
#define HEATER_4_MAXTEMP 0
#define HEATER_5_MAXTEMP 0
#define HEATER_6_MAXTEMP 0
#define HEATER_7_MAXTEMP 0
#define BED_MAXTEMP      120

-----------------------------------------------------

/**
 * Prevent extrusion if the temperature is below EXTRUDE_MINTEMP.
 * Add M302 to set the minimum extrusion temperature and/or turn
 * cold extrusion prevention on and off.
 *
 * *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
 */
#define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 210
-----------------------------------------------------

#if ENABLED(PIDTEMP)
  #define PID_EDIT_MENU         // Add PID editing to the "Advanced Settings" menu. (~700 bytes of PROGMEM)
  #define PID_AUTOTUNE_MENU     // Add PID auto-tuning to the "Advanced Settings" menu. (~250 bytes of PROGMEM)
  //#define PID_PARAMS_PER_HOTEND // Uses separate PID parameters for each extruder (useful for mismatched extruders)
                                  // Set/get with gcode: M301 E[extruder number, 0-2]

----------------------------------------------------

//===========================================================================
//============================== Endstop Settings ===========================
//===========================================================================

// @section homing

// Specify here all the endstop connectors that are connected to any endstop or probe.
// Almost all printers will be using one per axis. Probes will use one or more of the
// extra connectors. Leave undefined any used for non-endstop and non-probe purposes.
#define USE_XMIN_PLUG
//#define USE_YMIN_PLUG
#define USE_ZMIN_PLUG
//#define USE_XMAX_PLUG
#define USE_YMAX_PLUG
//#define USE_ZMAX_PLUG

----------------------------------------------------

#define X_DRIVER_TYPE  A4988
#define Y_DRIVER_TYPE  A4988
#define Z_DRIVER_TYPE  A4988
//#define X2_DRIVER_TYPE A4988
//#define Y2_DRIVER_TYPE A4988
//#define Z2_DRIVER_TYPE A4988
//#define Z3_DRIVER_TYPE A4988
//#define Z4_DRIVER_TYPE A4988
#define E0_DRIVER_TYPE A4988
//#define E1_DRIVER_TYPE A4988
//#define E2_DRIVER_TYPE A4988
//#define E3_DRIVER_TYPE A4988
//#define E4_DRIVER_TYPE A4988
//#define E5_DRIVER_TYPE A4988
//#define E6_DRIVER_TYPE A4988
//#define E7_DRIVER_TYPE A4988

----------------------------------------------------

/**
 * Default Axis Steps Per Unit (steps/mm)
 * Override with M92
 *                                      X, Y, Z, E0 [, E1[, E2...]]
 */
#define DEFAULT_AXIS_STEPS_PER_UNIT   { 100, 100, 1600, 100 }

--------------------------------------------------

/**
 * S-Curve Acceleration
 *
 * This option eliminates vibration during printing by fitting a Bézier
 * curve to move acceleration, producing much smoother direction changes.
 *
 * See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained
 */
#define S_CURVE_ACCELERATION

----------------------------------------------------

 * The "Manual Probe" provides a means to do "Auto" Bed Leveling without a probe.
 * Use G29 repeatedly, adjusting the Z height at each point with movement commands
 * or (with LCD_BED_LEVELING) the LCD controller.
 */
#define PROBE_MANUALLY
#define MANUAL_PROBE_START_Z 0.2

----------------------------------------------------

#define NO_MOTION_BEFORE_HOMING // Inhibit movement until all axes have been homed

//#define UNKNOWN_Z_NO_RAISE      // Don't raise Z (lower the bed) if Z is "unknown." For beds that fall when Z is powered off.

#define Z_HOMING_HEIGHT  10      // (mm) Minimal Z height before homing (G28) for Z clearance above the bed, clamps, ...
                                  // Be sure to have this much clearance over your Z_MAX_POS to prevent grinding.

----------------------------------------------------

// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR -1
#define Y_HOME_DIR 1
#define Z_HOME_DIR -1

----------------------------------------------------

// The size of the print bed
#define X_BED_SIZE 210
#define Y_BED_SIZE 210

// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS 0
#define Y_MIN_POS 0
#define Z_MIN_POS 0
#define X_MAX_POS X_BED_SIZE
#define Y_MAX_POS Y_BED_SIZE
#define Z_MAX_POS 220

----------------------------------------------------

//#define AUTO_BED_LEVELING_3POINT
//#define AUTO_BED_LEVELING_LINEAR
//#define AUTO_BED_LEVELING_BILINEAR
//#define AUTO_BED_LEVELING_UBL
#define MESH_BED_LEVELING

----------------------------------------------------

  //===========================================================================
  //=================================== Mesh ==================================
  //===========================================================================

  #define MESH_INSET 10          // Set Mesh bounds as an inset region of the bed
  #define GRID_MAX_POINTS_X 5    // Don't use more than 7 points per axis, implementation limited.
  #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X

  //#define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS

#endif // BED_LEVELING

/**
 * Add a bed leveling sub-menu for ABL or MBL.
 * Include a guided procedure if manual probing is enabled.
 */
#define LCD_BED_LEVELING

#if ENABLED(LCD_BED_LEVELING)
  #define MESH_EDIT_Z_STEP  0.025 // (mm) Step size while manually probing Z axis.
  #define LCD_PROBE_Z_RANGE 4     // (mm) Z Range centered on Z_MIN_POS for LCD Z adjustment
  #define MESH_EDIT_MENU        // Add a menu to edit mesh points
#endif

// Add a menu item to move between bed corners for manual bed adjustment
#define LEVEL_BED_CORNERS

#if ENABLED(LEVEL_BED_CORNERS)
  #define LEVEL_CORNERS_INSET_LFRB { 30, 30, 30, 30 } // (mm) Left, Front, Right, Back insets
  #define LEVEL_CORNERS_HEIGHT      0.0   // (mm) Z height of nozzle at leveling points
  #define LEVEL_CORNERS_Z_HOP       4.0   // (mm) Z height of nozzle between leveling points
  #define LEVEL_CENTER_TOO              // Move to the center after the last corner
#endif

----------------------------------------------------



/**
 * EEPROM
 *
 * Persistent storage to preserve configurable settings across reboots.
 *
 *   M500 - Store settings to EEPROM.
 *   M501 - Read settings from EEPROM. (i.e., Throw away unsaved changes)
 *   M502 - Revert settings to "factory" defaults. (Follow with M500 to init the EEPROM.)
 */
#define EEPROM_SETTINGS     // Persistent storage with M500 and M501
//#define DISABLE_M503        // Saves ~2700 bytes of PROGMEM. Disable for release!
#define EEPROM_CHITCHAT       // Give feedback on EEPROM commands. Disable to save PROGMEM.
#define EEPROM_BOOT_SILENT    // Keep M503 quiet and only give errors during first load
#if ENABLED(EEPROM_SETTINGS)
  //#define EEPROM_AUTO_INIT  // Init EEPROM automatically on any errors.
#endif

----------------------------------------------------

// Preheat Constants
#define PREHEAT_1_LABEL       "PLA"
#define PREHEAT_1_TEMP_HOTEND 180
#define PREHEAT_1_TEMP_BED     40
#define PREHEAT_1_FAN_SPEED     0 // Value from 0 to 255

#define PREHEAT_2_LABEL       "ABS"
#define PREHEAT_2_TEMP_HOTEND 220
#define PREHEAT_2_TEMP_BED    80
#define PREHEAT_2_FAN_SPEED     0 // Value from 0 to 255

----------------------------------------------------

/**
 * SD CARD
 *
 * SD Card support is disabled by default. If your controller has an SD slot,
 * you must uncomment the following option or it won't work.
 */
#define SDSUPPORT

----------------------------------------------------

//
// Individual Axis Homing
//
// Add individual axis homing items (Home X, Home Y, and Home Z) to the LCD menu.
//
#define INDIVIDUAL_AXIS_HOMING_MENU

----------------------------------------------------


//=============================================================================
//======================== LCD / Controller Selection =========================
//========================   (Character-based LCDs)   =========================
//=============================================================================

//
// RepRapDiscount Smart Controller.
// https://reprap.org/wiki/RepRapDiscount_Smart_Controller
//
// Note: Usually sold with a white PCB.
//
#define REPRAP_DISCOUNT_SMART_CONTROLLER


Zmiany w pliku Configuration_adv.h postaram się udostępnić szybciej.
Awatar użytkownika
JGFTW
Posty: 746
Rejestracja: 14 sie 2019, 05:19
Lokalizacja: Wrocław
Drukarka: Klony MK2s i CR10
x 398

Re: Aktualizacja Marlin 1.1.9

Postautor: JGFTW » 26 mar 2021, 16:32

Możesz jeszcze odblokować sterowanie PID stołu:

Kod: Zaznacz cały

#define PIDTEMPBED



Zrobisz jego kalibrację komendą;

Kod: Zaznacz cały


M303 E-1 C8 S70 U1


https://marlinfw.org/docs/gcode/M303.html

Po zakończonej kalibracji zapisać do EEPROM ( M500 ).
Cr10 2017 - direct, standalone ATX mod, 2ga oś Z, ABL, RPI + Octo
Klon MK2s - 1:1 własny sourcing części
Klon MK2s - 24v, silniki 809, Skr 1.3
Kolejny klon MK2s - SKR 1.3 , stół MK42
TinyCart v3.6 worklog
MPCNC worklog

Wróć do „Anet”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 2 gości