Work on Malyan M200 V1 build
This commit is contained in:
+41
-30
@@ -71,7 +71,7 @@
|
||||
// @section info
|
||||
|
||||
// Author info of this build printed to the host during boot and M115
|
||||
#define STRING_CONFIG_H_AUTHOR "(none, default config)" // Who made the changes.
|
||||
#define STRING_CONFIG_H_AUTHOR "(xC0000005, Malyan M200 build)" // Who made the changes.
|
||||
//#define CUSTOM_VERSION_FILE Version.h // Path from the root directory (no quotes)
|
||||
|
||||
/**
|
||||
@@ -104,10 +104,11 @@
|
||||
*
|
||||
* :[-1, 0, 1, 2, 3, 4, 5, 6, 7]
|
||||
*/
|
||||
#define SERIAL_PORT 0
|
||||
#define SERIAL_PORT -1
|
||||
|
||||
/**
|
||||
* Select a secondary serial port on the board to use for communication with the host.
|
||||
*
|
||||
* :[-1, 0, 1, 2, 3, 4, 5, 6, 7]
|
||||
*/
|
||||
//#define SERIAL_PORT_2 -1
|
||||
@@ -121,18 +122,18 @@
|
||||
*
|
||||
* :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000]
|
||||
*/
|
||||
#define BAUDRATE 250000
|
||||
#define BAUDRATE 500000
|
||||
|
||||
// Enable the Bluetooth serial interface on AT90USB devices
|
||||
//#define BLUETOOTH
|
||||
|
||||
// Choose the name from boards.h that matches your setup
|
||||
#ifndef MOTHERBOARD
|
||||
#define MOTHERBOARD BOARD_RAMPS_14_EFB
|
||||
#define MOTHERBOARD BOARD_MALYAN_M200
|
||||
#endif
|
||||
|
||||
// Name displayed in the LCD "Ready" message and Info menu
|
||||
//#define CUSTOM_MACHINE_NAME "3D Printer"
|
||||
#define CUSTOM_MACHINE_NAME "STM32F103CB_malyan-tests (1)"
|
||||
|
||||
// Printer's unique ID, used by some programs to differentiate between machines.
|
||||
// Choose your own or use a service like http://www.uuidgenerator.net/version4
|
||||
@@ -145,7 +146,7 @@
|
||||
#define EXTRUDERS 1
|
||||
|
||||
// Generally expected filament diameter (1.75, 2.85, 3.0, ...). Used for Volumetric, Filament Width Sensor, etc.
|
||||
#define DEFAULT_NOMINAL_FILAMENT_DIA 3.0
|
||||
#define DEFAULT_NOMINAL_FILAMENT_DIA 1.75
|
||||
|
||||
// For Cyclops or any "multi-extruder" that shares a single nozzle.
|
||||
//#define SINGLENOZZLE
|
||||
@@ -406,7 +407,7 @@
|
||||
* 998 : Dummy Table that ALWAYS reads 25°C or the temperature defined below.
|
||||
* 999 : Dummy Table that ALWAYS reads 100°C or the temperature defined below.
|
||||
*/
|
||||
#define TEMP_SENSOR_0 1
|
||||
#define TEMP_SENSOR_0 11
|
||||
#define TEMP_SENSOR_1 0
|
||||
#define TEMP_SENSOR_2 0
|
||||
#define TEMP_SENSOR_3 0
|
||||
@@ -414,7 +415,7 @@
|
||||
#define TEMP_SENSOR_5 0
|
||||
#define TEMP_SENSOR_6 0
|
||||
#define TEMP_SENSOR_7 0
|
||||
#define TEMP_SENSOR_BED 0
|
||||
#define TEMP_SENSOR_BED 11
|
||||
#define TEMP_SENSOR_PROBE 0
|
||||
#define TEMP_SENSOR_CHAMBER 0
|
||||
|
||||
@@ -450,7 +451,7 @@
|
||||
// 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 275
|
||||
#define HEATER_0_MAXTEMP 250
|
||||
#define HEATER_1_MAXTEMP 275
|
||||
#define HEATER_2_MAXTEMP 275
|
||||
#define HEATER_3_MAXTEMP 275
|
||||
@@ -458,7 +459,7 @@
|
||||
#define HEATER_5_MAXTEMP 275
|
||||
#define HEATER_6_MAXTEMP 275
|
||||
#define HEATER_7_MAXTEMP 275
|
||||
#define BED_MAXTEMP 150
|
||||
#define BED_MAXTEMP 100
|
||||
|
||||
//===========================================================================
|
||||
//============================= PID Settings ================================
|
||||
@@ -484,9 +485,9 @@
|
||||
// If you are using a pre-configured hotend then you can use one of the value sets by uncommenting it
|
||||
|
||||
// Ultimaker
|
||||
#define DEFAULT_Kp 22.2
|
||||
#define DEFAULT_Ki 1.08
|
||||
#define DEFAULT_Kd 114
|
||||
//#define DEFAULT_Kp 26.15
|
||||
//#define DEFAULT_Ki 2.74
|
||||
//#define DEFAULT_Kd 62.35
|
||||
|
||||
// MakerGear
|
||||
//#define DEFAULT_Kp 7.0
|
||||
@@ -498,6 +499,11 @@
|
||||
//#define DEFAULT_Ki 2.25
|
||||
//#define DEFAULT_Kd 440
|
||||
|
||||
// Malyan M200
|
||||
#define DEFAULT_Kp 20.0
|
||||
#define DEFAULT_Ki 2.02
|
||||
#define DEFAULT_Kd 100.00
|
||||
|
||||
#endif // PIDTEMP
|
||||
|
||||
//===========================================================================
|
||||
@@ -517,7 +523,7 @@
|
||||
* heater. If your configuration is significantly different than this and you don't understand
|
||||
* the issues involved, don't use bed PID until someone else verifies that your hardware works.
|
||||
*/
|
||||
//#define PIDTEMPBED
|
||||
#define PIDTEMPBED
|
||||
|
||||
//#define BED_LIMIT_SWITCHING
|
||||
|
||||
@@ -535,9 +541,9 @@
|
||||
|
||||
//120V 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
|
||||
//from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, aggressive factor of .15 (vs .1, 1, 10)
|
||||
#define DEFAULT_bedKp 10.00
|
||||
#define DEFAULT_bedKi .023
|
||||
#define DEFAULT_bedKd 305.4
|
||||
//#define DEFAULT_bedKp 231.09
|
||||
//#define DEFAULT_bedKi 45.21
|
||||
//#define DEFAULT_bedKd 295.34
|
||||
|
||||
//120V 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
|
||||
//from pidautotune
|
||||
@@ -545,6 +551,11 @@
|
||||
//#define DEFAULT_bedKi 1.41
|
||||
//#define DEFAULT_bedKd 1675.16
|
||||
|
||||
// Malyan M200
|
||||
#define DEFAULT_bedKp 14.00
|
||||
#define DEFAULT_bedKi 0.9
|
||||
#define DEFAULT_bedKd 120.4
|
||||
|
||||
// FIND YOUR OWN: "M303 E-1 C8 S90" to run autotune on the bed at 90 degreesC for 8 cycles.
|
||||
#endif // PIDTEMPBED
|
||||
|
||||
@@ -646,9 +657,9 @@
|
||||
#endif
|
||||
|
||||
// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
|
||||
#define X_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.
|
||||
#define Y_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.
|
||||
#define X_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.
|
||||
#define Y_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.
|
||||
#define X_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.
|
||||
#define Y_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.
|
||||
@@ -730,7 +741,7 @@
|
||||
* Override with M92
|
||||
* X, Y, Z, E0 [, E1[, E2...]]
|
||||
*/
|
||||
#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 4000, 500 }
|
||||
#define DEFAULT_AXIS_STEPS_PER_UNIT { 93, 93, 1097.5, 97 }
|
||||
|
||||
/**
|
||||
* Default Max Feed Rate (mm/s)
|
||||
@@ -1041,9 +1052,9 @@
|
||||
|
||||
// Disables axis stepper immediately when it's not being used.
|
||||
// WARNING: When motors turn off there is a chance of losing position accuracy!
|
||||
#define DISABLE_X false
|
||||
#define DISABLE_Y false
|
||||
#define DISABLE_Z false
|
||||
#define DISABLE_X true
|
||||
#define DISABLE_Y true
|
||||
#define DISABLE_Z true
|
||||
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
@@ -1063,7 +1074,7 @@
|
||||
// @section extruder
|
||||
|
||||
// For direct drive extruder v9 set to true, for geared extruder set to false.
|
||||
#define INVERT_E0_DIR false
|
||||
#define INVERT_E0_DIR true
|
||||
#define INVERT_E1_DIR false
|
||||
#define INVERT_E2_DIR false
|
||||
#define INVERT_E3_DIR false
|
||||
@@ -1092,8 +1103,8 @@
|
||||
// @section machine
|
||||
|
||||
// The size of the print bed
|
||||
#define X_BED_SIZE 200
|
||||
#define Y_BED_SIZE 200
|
||||
#define X_BED_SIZE 120
|
||||
#define Y_BED_SIZE 120
|
||||
|
||||
// Travel limits (mm) after homing, corresponding to endstop positions.
|
||||
#define X_MIN_POS 0
|
||||
@@ -1101,7 +1112,7 @@
|
||||
#define Z_MIN_POS 0
|
||||
#define X_MAX_POS X_BED_SIZE
|
||||
#define Y_MAX_POS Y_BED_SIZE
|
||||
#define Z_MAX_POS 200
|
||||
#define Z_MAX_POS 120
|
||||
|
||||
/**
|
||||
* Software Endstops
|
||||
@@ -1656,7 +1667,7 @@
|
||||
* you must uncomment the following option or it won't work.
|
||||
*
|
||||
*/
|
||||
//#define SDSUPPORT
|
||||
#define SDSUPPORT
|
||||
|
||||
/**
|
||||
* SD CARD: SPI SPEED
|
||||
@@ -2071,7 +2082,7 @@
|
||||
//
|
||||
// Touch-screen LCD for Malyan M200 printers
|
||||
//
|
||||
//#define MALYAN_LCD
|
||||
#define MALYAN_LCD
|
||||
|
||||
//
|
||||
// Touch UI for FTDI EVE (FT800/FT810) displays
|
||||
|
||||
+15
-16
@@ -177,7 +177,7 @@
|
||||
* Thermal Protection parameters for the bed are just as above for hotends.
|
||||
*/
|
||||
#if ENABLED(THERMAL_PROTECTION_BED)
|
||||
#define THERMAL_PROTECTION_BED_PERIOD 20 // Seconds
|
||||
#define THERMAL_PROTECTION_BED_PERIOD 50 // Seconds
|
||||
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
|
||||
|
||||
/**
|
||||
@@ -340,11 +340,10 @@
|
||||
*
|
||||
* The fan turns on automatically whenever any driver is enabled and turns
|
||||
* off (or reduces to idle speed) shortly after drivers are turned off.
|
||||
*
|
||||
*/
|
||||
//#define USE_CONTROLLER_FAN
|
||||
#define USE_CONTROLLER_FAN // Malyan M200: uncomment if you use FAN2 to cool the board (original)
|
||||
#if ENABLED(USE_CONTROLLER_FAN)
|
||||
//#define CONTROLLER_FAN_PIN -1 // Set a custom pin for the controller fan
|
||||
#define CONTROLLER_FAN_PIN MALYAN_FAN2_PIN // Set a custom pin for the controller fan
|
||||
//#define CONTROLLER_FAN_USE_Z_ONLY // With this option only the Z axis is considered
|
||||
#define CONTROLLERFAN_SPEED_MIN 0 // (0-255) Minimum speed. (If set below this value the fan is turned off.)
|
||||
#define CONTROLLERFAN_SPEED_ACTIVE 255 // (0-255) Active speed, used when any motor is enabled
|
||||
@@ -420,7 +419,9 @@
|
||||
* Multiple extruders can be assigned to the same pin in which case
|
||||
* the fan will turn on when any selected extruder is above the threshold.
|
||||
*/
|
||||
#define E0_AUTO_FAN_PIN -1
|
||||
//#define FAN_PIN MALYAN_FAN1_PIN // Malyan M200: uncomment if you use FAN1 to cool the part and FAN2 to cool the extruder
|
||||
//#define E0_AUTO_FAN_PIN MALYAN_FAN2_PIN // Malyan M200: uncomment if you use FAN1 to cool the part and FAN2 to cool the extruder
|
||||
#define E0_AUTO_FAN_PIN MALYAN_FAN1_PIN // Malyan M200: uncomment if you use FAN1 to cool the extruder and the part (original)
|
||||
#define E1_AUTO_FAN_PIN -1
|
||||
#define E2_AUTO_FAN_PIN -1
|
||||
#define E3_AUTO_FAN_PIN -1
|
||||
@@ -470,7 +471,7 @@
|
||||
|
||||
// @section extras
|
||||
|
||||
//#define Z_LATE_ENABLE // Enable Z the last moment. Needed if your Z driver overheats.
|
||||
#define Z_LATE_ENABLE // Enable Z the last moment. Needed if your Z driver overheats.
|
||||
|
||||
// Employ an external closed loop controller. Override pins here if needed.
|
||||
//#define EXTERNAL_CLOSED_LOOP_CONTROLLER
|
||||
@@ -715,14 +716,14 @@
|
||||
// Define one position per Z stepper in stepper driver order.
|
||||
#define Z_STEPPER_ALIGN_STEPPER_XY { { 210.7, 102.5 }, { 152.6, 220.0 }, { 94.5, 102.5 } }
|
||||
#else
|
||||
// Amplification factor. Used to scale the correction step up or down in case
|
||||
// the stepper (spindle) position is farther out than the test point.
|
||||
#define Z_STEPPER_ALIGN_AMP 1.0 // Use a value > 1.0 NOTE: This may cause instability!
|
||||
// Amplification factor. Used to scale the correction step up or down.
|
||||
// In case the stepper (spindle) position is further out than the test point.
|
||||
// Use a value > 1. NOTE: This may cause instability
|
||||
#define Z_STEPPER_ALIGN_AMP 1.0
|
||||
#endif
|
||||
|
||||
// On a 300mm bed a 5% grade would give a misalignment of ~1.5cm
|
||||
#define G34_MAX_GRADE 5 // (%) Maximum incline that G34 will handle
|
||||
#define Z_STEPPER_ALIGN_ITERATIONS 5 // Number of iterations to apply during alignment
|
||||
#define Z_STEPPER_ALIGN_ITERATIONS 3 // Number of iterations to apply during alignment
|
||||
#define Z_STEPPER_ALIGN_ACC 0.02 // Stop iterating early if the accuracy is better than this
|
||||
#define RESTORE_LEVELING_AFTER_G34 // Restore leveling after G34 is done?
|
||||
// After G34, re-home Z (G28 Z) or just calculate it from the last probe heights?
|
||||
@@ -760,6 +761,7 @@
|
||||
// Minimum time that a segment needs to take if the buffer is emptied
|
||||
#define DEFAULT_MINSEGMENTTIME 20000 // (ms)
|
||||
|
||||
// If defined the movements slow down when the look ahead buffer is only half full
|
||||
// Slow down the machine if the look ahead buffer is (by default) half full.
|
||||
// Increase the slowdown divisor for larger buffer sizes.
|
||||
#define SLOWDOWN
|
||||
@@ -1056,9 +1058,6 @@
|
||||
* 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.
|
||||
*
|
||||
* If the machine reboots when resuming a print you may need to replace or
|
||||
* reformat the SD card. (Bad sectors delay startup triggering the watchdog.)
|
||||
*/
|
||||
//#define POWER_LOSS_RECOVERY
|
||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
||||
@@ -1115,7 +1114,7 @@
|
||||
#endif
|
||||
|
||||
// This allows hosts to request long names for files and folders with M33
|
||||
//#define LONG_FILENAME_HOST_SUPPORT
|
||||
#define LONG_FILENAME_HOST_SUPPORT
|
||||
|
||||
// Enable this option to scroll long filenames in the SD card menu
|
||||
//#define SCROLL_LONG_FILENAMES
|
||||
@@ -1625,7 +1624,7 @@
|
||||
//
|
||||
// G2/G3 Arc Support
|
||||
//
|
||||
#define ARC_SUPPORT // Disable this feature to save ~3226 bytes
|
||||
//#define ARC_SUPPORT // Disable this feature to save ~3226 bytes
|
||||
#if ENABLED(ARC_SUPPORT)
|
||||
#define MM_PER_ARC_SEGMENT 1 // (mm) Length (or minimum length) of each arc segment
|
||||
//#define ARC_SEGMENTS_PER_R 1 // Max segment length, MM_PER = Min
|
||||
|
||||
@@ -58,7 +58,7 @@ class ControllerFan {
|
||||
#if ENABLED(CONTROLLER_FAN_EDITABLE)
|
||||
static controllerFan_settings_t settings;
|
||||
#else
|
||||
static const controllerFan_settings_t constexpr &settings = controllerFan_defaults;
|
||||
static const controllerFan_settings_t constexpr settings = controllerFan_defaults;
|
||||
#endif
|
||||
static inline bool state() { return speed > 0; }
|
||||
static inline void init() { reset(); }
|
||||
|
||||
@@ -194,18 +194,19 @@ void process_lcd_eb_command(const char* command) {
|
||||
* {J:E}{J:X+200}{J:E}
|
||||
* X, Y, Z, A (extruder)
|
||||
*/
|
||||
void process_lcd_j_command(const char* command) {
|
||||
auto move_axis = [command](const auto axis) {
|
||||
const float dist = atof(command + 1) / 10.0;
|
||||
ExtUI::setAxisPosition_mm(ExtUI::getAxisPosition_mm(axis) + dist, axis);
|
||||
};
|
||||
template<typename T>
|
||||
void j_move_axis(const char* command, const T axis) {
|
||||
const float dist = atof(command + 1) / 10.0;
|
||||
ExtUI::setAxisPosition_mm(ExtUI::getAxisPosition_mm(axis) + dist, axis);
|
||||
};
|
||||
|
||||
void process_lcd_j_command(const char* command) {
|
||||
switch (command[0]) {
|
||||
case 'E': break;
|
||||
case 'A': move_axis(ExtUI::extruder_t::E0); break;
|
||||
case 'Y': move_axis(ExtUI::axis_t::Y); break;
|
||||
case 'Z': move_axis(ExtUI::axis_t::Z); break;
|
||||
case 'X': move_axis(ExtUI::axis_t::X); break;
|
||||
case 'A': j_move_axis<ExtUI::extruder_t>(command, ExtUI::extruder_t::E0); break;
|
||||
case 'Y': j_move_axis<ExtUI::axis_t>(command, ExtUI::axis_t::Y); break;
|
||||
case 'Z': j_move_axis<ExtUI::axis_t>(command, ExtUI::axis_t::Z); break;
|
||||
case 'X': j_move_axis<ExtUI::axis_t>(command, ExtUI::axis_t::X); break;
|
||||
default: DEBUG_ECHOLNPAIR("UNKNOWN J COMMAND ", command);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -469,7 +469,7 @@
|
||||
#elif MB(STM32F103RE)
|
||||
#include "stm32f1/pins_STM32F1R.h" // STM32F1 env:STM32F103RE
|
||||
#elif MB(MALYAN_M200)
|
||||
#include "stm32f1/pins_MALYAN_M200.h" // STM32F1 env:STM32F103CB_malyan
|
||||
#include "stm32f1/pins_MALYAN_M200.h" // STM32F1 env:STM32F103CB_malyan env:malyanM200
|
||||
#elif MB(MALYAN_M200_V2)
|
||||
#include "stm32f1/pins_MALYAN_M200.h" // STM32F1 env:STM32F070CB_malyan
|
||||
#elif MB(STM3R_MINI)
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
],
|
||||
"ldscript": "jtagOffset.ld",
|
||||
"mcu": "stm32f103cb",
|
||||
"variant": "malyanM200",
|
||||
"variant": "MALYANM200_F103CB",
|
||||
"genericvariant" : "MALYAN_M200_V1",
|
||||
"vec_tab_addr": "0x8002000"
|
||||
},
|
||||
|
||||
+12
-1
@@ -567,7 +567,7 @@ lib_ignore = Adafruit NeoPixel, SPI
|
||||
#
|
||||
# Malyan M200 (STM32F103CB)
|
||||
#
|
||||
[env:STM32F103CB_malyan]
|
||||
[env:malyanM200]
|
||||
platform = ststm32
|
||||
board = malyanM200
|
||||
build_flags = !python Marlin/src/HAL/STM32F1/build_flags.py -DMCU_STM32F103CB -D __STM32F1__=1 -std=c++1y -D MOTHERBOARD="BOARD_MALYAN_M200" -DSERIAL_USB -ffunction-sections -fdata-sections -Wl,--gc-sections
|
||||
@@ -575,6 +575,17 @@ build_flags = !python Marlin/src/HAL/STM32F1/build_flags.py -DMCU_STM32F103CB -D
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/STM32F1>
|
||||
lib_ignore = Adafruit NeoPixel, LiquidCrystal, LiquidTWI2, TMCStepper, U8glib-HAL, SPI
|
||||
|
||||
#
|
||||
# Malyan M200 (STM32F103CB)
|
||||
#
|
||||
[env:STM32F103CB_malyan]
|
||||
platform = ststm32
|
||||
board = maple
|
||||
build_flags = !python Marlin/src/HAL/STM32F1/build_flags.py -DMCU_STM32F103CB -D __STM32F1__=1 -std=c++1y -DSERIAL_USB -ffunction-sections -fdata-sections -Wl,--gc-sections
|
||||
-DDEBUG_LEVEL=0 -D__MARLIN_FIRMWARE__
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/STM32F1>
|
||||
lib_ignore = Adafruit NeoPixel, LiquidCrystal, LiquidTWI2, TMCStepper, U8glib-HAL, SPI
|
||||
|
||||
#
|
||||
# Malyan M200 (STM32F070CB)
|
||||
#
|
||||
|
||||
Reference in New Issue
Block a user