Merge remote-tracking branch 'upstream/MK3' into PFW-960
This commit is contained in:
commit
92db282eca
|
|
@ -96,7 +96,7 @@ void Config_PrintSettings(uint8_t level)
|
|||
"%SMaximum feedrates - stealth (mm/s):\n%S M203 X%.2f Y%.2f Z%.2f E%.2f\n"
|
||||
"%SMaximum acceleration - normal (mm/s2):\n%S M201 X%lu Y%lu Z%lu E%lu\n"
|
||||
"%SMaximum acceleration - stealth (mm/s2):\n%S M201 X%lu Y%lu Z%lu E%lu\n"
|
||||
"%SAcceleration: S=acceleration, T=retract acceleration\n%S M204 S%.2f T%.2f\n"
|
||||
"%SAcceleration: P=print, R=retract, T=travel\n%S M204 P%.2f R%.2f T%.2f\n"
|
||||
"%SAdvanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum XY jerk (mm/s), Z=maximum Z jerk (mm/s), E=maximum E jerk (mm/s)\n%S M205 S%.2f T%.2f B%.2f X%.2f Y%.2f Z%.2f E%.2f\n"
|
||||
"%SHome offset (mm):\n%S M206 X%.2f Y%.2f Z%.2f\n"
|
||||
),
|
||||
|
|
@ -106,7 +106,7 @@ void Config_PrintSettings(uint8_t level)
|
|||
echomagic, echomagic, cs.max_feedrate_silent[X_AXIS], cs.max_feedrate_silent[Y_AXIS], cs.max_feedrate_silent[Z_AXIS], cs.max_feedrate_silent[E_AXIS],
|
||||
echomagic, echomagic, cs.max_acceleration_units_per_sq_second_normal[X_AXIS], cs.max_acceleration_units_per_sq_second_normal[Y_AXIS], cs.max_acceleration_units_per_sq_second_normal[Z_AXIS], cs.max_acceleration_units_per_sq_second_normal[E_AXIS],
|
||||
echomagic, echomagic, cs.max_acceleration_units_per_sq_second_silent[X_AXIS], cs.max_acceleration_units_per_sq_second_silent[Y_AXIS], cs.max_acceleration_units_per_sq_second_silent[Z_AXIS], cs.max_acceleration_units_per_sq_second_silent[E_AXIS],
|
||||
echomagic, echomagic, cs.acceleration, cs.retract_acceleration,
|
||||
echomagic, echomagic, cs.acceleration, cs.retract_acceleration, cs.travel_acceleration,
|
||||
echomagic, echomagic, cs.minimumfeedrate, cs.mintravelfeedrate, cs.minsegmenttime, cs.max_jerk[X_AXIS], cs.max_jerk[Y_AXIS], cs.max_jerk[Z_AXIS], cs.max_jerk[E_AXIS],
|
||||
echomagic, echomagic, cs.add_homing[X_AXIS], cs.add_homing[Y_AXIS], cs.add_homing[Z_AXIS]
|
||||
#else //TMC2130
|
||||
|
|
@ -114,14 +114,14 @@ void Config_PrintSettings(uint8_t level)
|
|||
"%SSteps per unit:\n%S M92 X%.2f Y%.2f Z%.2f E%.2f\n"
|
||||
"%SMaximum feedrates (mm/s):\n%S M203 X%.2f Y%.2f Z%.2f E%.2f\n"
|
||||
"%SMaximum acceleration (mm/s2):\n%S M201 X%lu Y%lu Z%lu E%lu\n"
|
||||
"%SAcceleration: S=acceleration, T=retract acceleration\n%S M204 S%.2f T%.2f\n"
|
||||
"%SAcceleration: P=print, R=retract, T=travel\n%S M204 P%.2f R%.2f T%.2f\n"
|
||||
"%SAdvanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum XY jerk (mm/s), Z=maximum Z jerk (mm/s), E=maximum E jerk (mm/s)\n%S M205 S%.2f T%.2f B%.2f X%.2f Y%.2f Z%.2f E%.2f\n"
|
||||
"%SHome offset (mm):\n%S M206 X%.2f Y%.2f Z%.2f\n"
|
||||
),
|
||||
echomagic, echomagic, cs.axis_steps_per_unit[X_AXIS], cs.axis_steps_per_unit[Y_AXIS], cs.axis_steps_per_unit[Z_AXIS], cs.axis_steps_per_unit[E_AXIS],
|
||||
echomagic, echomagic, max_feedrate[X_AXIS], max_feedrate[Y_AXIS], max_feedrate[Z_AXIS], max_feedrate[E_AXIS],
|
||||
echomagic, echomagic, max_acceleration_units_per_sq_second[X_AXIS], max_acceleration_units_per_sq_second[Y_AXIS], max_acceleration_units_per_sq_second[Z_AXIS], max_acceleration_units_per_sq_second[E_AXIS],
|
||||
echomagic, echomagic, cs.acceleration, cs.retract_acceleration,
|
||||
echomagic, echomagic, cs.acceleration, cs.retract_acceleration, cs.travel_acceleration,
|
||||
echomagic, echomagic, cs.minimumfeedrate, cs.mintravelfeedrate, cs.minsegmenttime, cs.max_jerk[X_AXIS], cs.max_jerk[Y_AXIS], cs.max_jerk[Z_AXIS], cs.max_jerk[E_AXIS],
|
||||
echomagic, echomagic, cs.add_homing[X_AXIS], cs.add_homing[Y_AXIS], cs.add_homing[Z_AXIS]
|
||||
#endif //TMC2130
|
||||
|
|
@ -184,7 +184,7 @@ static_assert (false, "zprobe_zoffset was not initialized in printers in field t
|
|||
"0.0, if this is not acceptable, increment EEPROM_VERSION to force use default_conf");
|
||||
#endif
|
||||
|
||||
static_assert (sizeof(M500_conf) == 192, "sizeof(M500_conf) has changed, ensure that EEPROM_VERSION has been incremented, "
|
||||
static_assert (sizeof(M500_conf) == 196, "sizeof(M500_conf) has changed, ensure that EEPROM_VERSION has been incremented, "
|
||||
"or if you added members in the end of struct, ensure that historically uninitialized values will be initialized."
|
||||
"If this is caused by change to more then 8bit processor, decide whether make this struct packed to save EEPROM,"
|
||||
"leave as it is to keep fast code, or reorder struct members to pack more tightly.");
|
||||
|
|
@ -232,8 +232,21 @@ static const M500_conf default_conf PROGMEM =
|
|||
#else // TMC2130
|
||||
{16,16,16,16},
|
||||
#endif
|
||||
DEFAULT_TRAVEL_ACCELERATION,
|
||||
};
|
||||
|
||||
|
||||
static bool is_uninitialized(void* addr, uint8_t len)
|
||||
{
|
||||
while(len--)
|
||||
{
|
||||
if(reinterpret_cast<uint8_t*>(addr)[len] != 0xff)
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
//! @brief Read M500 configuration
|
||||
//! @retval true Succeeded. Stored settings retrieved or default settings retrieved in case EEPROM has been erased.
|
||||
//! @retval false Failed. Default settings has been retrieved, because of older version or corrupted data.
|
||||
|
|
@ -257,13 +270,9 @@ bool Config_RetrieveSettings()
|
|||
for (uint8_t i = 0; i < (sizeof(cs.max_feedrate_silent)/sizeof(cs.max_feedrate_silent[0])); ++i)
|
||||
{
|
||||
const uint32_t erased = 0xffffffff;
|
||||
bool initialized = false;
|
||||
|
||||
for(uint8_t j = 0; j < sizeof(float); ++j)
|
||||
{
|
||||
if(0xff != reinterpret_cast<uint8_t*>(&(cs.max_feedrate_silent[i]))[j]) initialized = true;
|
||||
if (is_uninitialized(&(cs.max_feedrate_silent[i]), sizeof(float))) {
|
||||
memcpy_P(&cs.max_feedrate_silent[i],&default_conf.max_feedrate_silent[i], sizeof(cs.max_feedrate_silent[i]));
|
||||
}
|
||||
if (!initialized) memcpy_P(&cs.max_feedrate_silent[i],&default_conf.max_feedrate_silent[i], sizeof(cs.max_feedrate_silent[i]));
|
||||
if (erased == cs.max_acceleration_units_per_sq_second_silent[i]) {
|
||||
memcpy_P(&cs.max_acceleration_units_per_sq_second_silent[i],&default_conf.max_acceleration_units_per_sq_second_silent[i],sizeof(cs.max_acceleration_units_per_sq_second_silent[i]));
|
||||
}
|
||||
|
|
@ -293,6 +302,9 @@ bool Config_RetrieveSettings()
|
|||
tmc2130_set_res(E_AXIS, cs.axis_ustep_resolution[E_AXIS]);
|
||||
#endif //TMC2130
|
||||
|
||||
if(is_uninitialized(&cs.travel_acceleration, sizeof(cs.travel_acceleration)))
|
||||
cs.travel_acceleration = cs.acceleration;
|
||||
|
||||
reset_acceleration_rates();
|
||||
|
||||
// Call updatePID (similar to when we have processed M301)
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ typedef struct
|
|||
float max_feedrate_silent[4]; //!< max speeds for silent mode
|
||||
unsigned long max_acceleration_units_per_sq_second_silent[4];
|
||||
unsigned char axis_ustep_resolution[4];
|
||||
float travel_acceleration; //!< travel acceleration mm/s^2
|
||||
} M500_conf;
|
||||
|
||||
extern M500_conf cs;
|
||||
|
|
|
|||
|
|
@ -352,7 +352,7 @@ extern bool mesh_bed_run_from_menu;
|
|||
|
||||
extern bool sortAlpha;
|
||||
|
||||
extern char dir_names[3][9];
|
||||
extern char dir_names[][9];
|
||||
|
||||
extern int8_t lcd_change_fil_state;
|
||||
// save/restore printing
|
||||
|
|
@ -501,4 +501,6 @@ void raise_z_above(float target, bool plan=true);
|
|||
|
||||
extern "C" void softReset();
|
||||
|
||||
extern uint32_t IP_address;
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -228,7 +228,7 @@ bool fan_state[2];
|
|||
int fan_edge_counter[2];
|
||||
int fan_speed[2];
|
||||
|
||||
char dir_names[3][9];
|
||||
char dir_names[MAX_DIR_DEPTH][9];
|
||||
|
||||
bool sortAlpha = false;
|
||||
|
||||
|
|
@ -321,6 +321,8 @@ uint16_t print_time_remaining_normal = PRINT_TIME_REMAINING_INIT; //estimated re
|
|||
uint8_t print_percent_done_silent = PRINT_PERCENT_DONE_INIT;
|
||||
uint16_t print_time_remaining_silent = PRINT_TIME_REMAINING_INIT; //estimated remaining print time in minutes
|
||||
|
||||
uint32_t IP_address = 0;
|
||||
|
||||
//===========================================================================
|
||||
//=============================Private Variables=============================
|
||||
//===========================================================================
|
||||
|
|
@ -3042,6 +3044,8 @@ bool gcode_M45(bool onlyZ, int8_t verbosity_level)
|
|||
//set_destination_to_current();
|
||||
int l_feedmultiply = setup_for_endstop_move();
|
||||
lcd_display_message_fullscreen_P(_T(MSG_AUTO_HOME));
|
||||
raise_z_above(MESH_HOME_Z_SEARCH);
|
||||
st_synchronize();
|
||||
home_xy();
|
||||
|
||||
enable_endstops(false);
|
||||
|
|
@ -3732,6 +3736,7 @@ extern uint8_t st_backlash_y;
|
|||
//!@n M503 - print the current settings (from memory not from EEPROM)
|
||||
//!@n M509 - force language selection on next restart
|
||||
//!@n M540 - Use S[0|1] to enable or disable the stop SD card print on endstop hit (requires ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED)
|
||||
//!@n M552 - Set IP address
|
||||
//!@n M600 - Pause for filament change X[pos] Y[pos] Z[relative lift] E[initial retract] L[later retract distance for removal]
|
||||
//!@n M605 - Set dual x-carriage movement mode: S<mode> [ X<duplication x-offset> R<duplication temp offset> ]
|
||||
//!@n M860 - Wait for PINDA thermistor to reach target temperature.
|
||||
|
|
@ -7268,7 +7273,7 @@ Sigma_Exit:
|
|||
// Legacy acceleration format. This format is used by the legacy Marlin, MK2 or MK3 firmware,
|
||||
// and it is also generated by Slic3r to control acceleration per extrusion type
|
||||
// (there is a separate acceleration settings in Slicer for perimeter, first layer etc).
|
||||
cs.acceleration = code_value();
|
||||
cs.acceleration = cs.travel_acceleration = code_value();
|
||||
// Interpret the T value as retract acceleration in the old Marlin format.
|
||||
if(code_seen('T'))
|
||||
cs.retract_acceleration = code_value();
|
||||
|
|
@ -7278,13 +7283,8 @@ Sigma_Exit:
|
|||
cs.acceleration = code_value();
|
||||
if(code_seen('R'))
|
||||
cs.retract_acceleration = code_value();
|
||||
if(code_seen('T')) {
|
||||
// Interpret the T value as the travel acceleration in the new Marlin format.
|
||||
/*!
|
||||
@todo Prusa3D firmware currently does not support travel acceleration value independent from the extruding acceleration value.
|
||||
*/
|
||||
// travel_acceleration = code_value();
|
||||
}
|
||||
if(code_seen('T'))
|
||||
cs.travel_acceleration = code_value();
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
|
@ -8017,6 +8017,36 @@ Sigma_Exit:
|
|||
}
|
||||
#endif // CUSTOM_M_CODE_SET_Z_PROBE_OFFSET
|
||||
|
||||
/*!
|
||||
### M552 - Set IP address <a href="https://reprap.org/wiki/G-code#M552:_Set_IP_address.2C_enable.2Fdisable_network_interface">M552: Set IP address, enable/disable network interface"</a>
|
||||
Sets the printer IP address that is shown in the support menu. Designed to be used with the help of host software.
|
||||
If P is not specified nothing happens.
|
||||
If the structure of the IP address is invalid, 0.0.0.0 is assumed and nothing is shown on the screen in the Support menu.
|
||||
#### Usage
|
||||
|
||||
M552 [ P<IP_address> ]
|
||||
|
||||
#### Parameters
|
||||
- `P` - The IP address in xxx.xxx.xxx.xxx format. Eg: P192.168.1.14
|
||||
*/
|
||||
case 552:
|
||||
{
|
||||
if (code_seen('P'))
|
||||
{
|
||||
uint8_t valCnt = 0;
|
||||
IP_address = 0;
|
||||
do
|
||||
{
|
||||
*strchr_pointer = '*';
|
||||
((uint8_t*)&IP_address)[valCnt] = code_value_short();
|
||||
valCnt++;
|
||||
} while ((valCnt < 4) && code_seen('.'));
|
||||
|
||||
if (valCnt != 4)
|
||||
IP_address = 0;
|
||||
}
|
||||
} break;
|
||||
|
||||
#ifdef FILAMENTCHANGEENABLE
|
||||
|
||||
/*!
|
||||
|
|
@ -10948,6 +10978,10 @@ void uvlo_()
|
|||
#endif
|
||||
eeprom_update_word((uint16_t*)(EEPROM_EXTRUDEMULTIPLY), (uint16_t)extrudemultiply);
|
||||
|
||||
eeprom_update_float((float*)(EEPROM_UVLO_ACCELL), cs.acceleration);
|
||||
eeprom_update_float((float*)(EEPROM_UVLO_RETRACT_ACCELL), cs.retract_acceleration);
|
||||
eeprom_update_float((float*)(EEPROM_UVLO_TRAVEL_ACCELL), cs.travel_acceleration);
|
||||
|
||||
// Store the saved target
|
||||
eeprom_update_float((float*)(EEPROM_UVLO_SAVED_TARGET+0*4), saved_target[X_AXIS]);
|
||||
eeprom_update_float((float*)(EEPROM_UVLO_SAVED_TARGET+1*4), saved_target[Y_AXIS]);
|
||||
|
|
@ -11292,6 +11326,13 @@ void restore_print_from_eeprom(bool mbl_was_active) {
|
|||
sprintf_P(cmd, PSTR("G1 Z%f"), eeprom_read_float((float*)(EEPROM_UVLO_CURRENT_POSITION_Z)));
|
||||
enquecommand(cmd);
|
||||
|
||||
// Restore acceleration settings
|
||||
float acceleration = eeprom_read_float((float*)(EEPROM_UVLO_ACCELL));
|
||||
float retract_acceleration = eeprom_read_float((float*)(EEPROM_UVLO_RETRACT_ACCELL));
|
||||
float travel_acceleration = eeprom_read_float((float*)(EEPROM_UVLO_TRAVEL_ACCELL));
|
||||
sprintf_P(cmd, PSTR("M204 P%f R%f T%f"), acceleration, retract_acceleration, travel_acceleration);
|
||||
enquecommand(cmd);
|
||||
|
||||
// Unretract.
|
||||
sprintf_P(cmd, PSTR("G1 E%0.3f F2700"), default_retraction);
|
||||
enquecommand(cmd);
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
#ifdef SDSUPPORT
|
||||
|
||||
#define MAX_DIR_DEPTH 10
|
||||
#define MAX_DIR_DEPTH 6
|
||||
|
||||
#include "SdFile.h"
|
||||
enum LsAction {LS_SerialPrint,LS_SerialPrint_LFN,LS_Count,LS_GetFilename};
|
||||
|
|
|
|||
|
|
@ -319,8 +319,10 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP
|
|||
| ^ | ^ | ^ | 00h 0 | ^ | PINDA has no temp compensation PINDA v1/2 | ^ | ^
|
||||
| ^ | ^ | ^ | 01h 1 | ^ | PINDA has temp compensation aka SuperPINDA | ^ | ^
|
||||
| 0x0D15 3349 | char[20] | EEPROM_PRUSA_SN | SN[19] == 0 | ffffffffffffffff... | PRUSA Serial number string | PRUSA SN | D3 Ax0d15 C20
|
||||
| 0x0D11 3345 | float | EEPROM_UVLO_ACCELL | ??? | ff ff ff ffh | Power panic saved normal acceleration | ??? | D3 Ax0d11 C4
|
||||
| 0x0D0D 3341 | float | EEPROM_UVLO_RETRACT_ACCELL | ??? | ff ff ff ffh | Power panic saved retract acceleration | ??? | D3 Ax0d0d C4
|
||||
| 0x0D09 3337 | float | EEPROM_UVLO_TRAVEL_ACCELL | ??? | ff ff ff ffh | Power panic saved travel acceleration | ??? | D3 Ax0d09 C4
|
||||
|
||||
|
||||
| Address begin | Bit/Type | Name | Valid values | Default/FactoryReset | Description | Gcode/Function| Debug code
|
||||
| :--: | :--: | :--: | :--: | :--: | :--: | :--: | :--:
|
||||
| 0x0012 18 | uint16 | EEPROM_FIRMWARE_VERSION_END | ??? | ff ffh 65535 | ??? | ??? | D3 Ax0012 C2
|
||||
|
|
@ -525,8 +527,13 @@ static Sheets * const EEPROM_Sheets_base = (Sheets*)(EEPROM_SHEETS_BASE);
|
|||
#define EEPROM_EXPERIMENTAL_VISIBILITY (EEPROM_ALTFAN_OVERRIDE-1) //uint8
|
||||
#define EEPROM_PINDA_TEMP_COMPENSATION (EEPROM_EXPERIMENTAL_VISIBILITY-1) //uint8
|
||||
#define EEPROM_PRUSA_SN (EEPROM_PINDA_TEMP_COMPENSATION-20) //char[20]
|
||||
|
||||
#define EEPROM_UVLO_ACCELL (EEPROM_PRUSA_SN-4) // float
|
||||
#define EEPROM_UVLO_RETRACT_ACCELL (EEPROM_UVLO_ACCELL-4) // float
|
||||
#define EEPROM_UVLO_TRAVEL_ACCELL (EEPROM_UVLO_RETRACT_ACCELL-4) // float
|
||||
|
||||
//This is supposed to point to last item to allow EEPROM overrun check. Please update when adding new items.
|
||||
#define EEPROM_LAST_ITEM EEPROM_PRUSA_SN
|
||||
#define EEPROM_LAST_ITEM EEPROM_UVLO_TRAVEL_ACCELL
|
||||
// !!!!!
|
||||
// !!!!! this is end of EEPROM section ... all updates MUST BE inserted before this mark !!!!!
|
||||
// !!!!!
|
||||
|
|
|
|||
|
|
@ -1082,7 +1082,8 @@ Having the real displacement of the head, we can calculate the total movement le
|
|||
}
|
||||
else
|
||||
{
|
||||
block->acceleration_st = ceil(cs.acceleration * steps_per_mm); // convert to: acceleration steps/sec^2
|
||||
float acceleration = (block->steps_e.wide == 0? cs.travel_acceleration: cs.acceleration);
|
||||
block->acceleration_st = ceil(acceleration * steps_per_mm); // convert to: acceleration steps/sec^2
|
||||
|
||||
#ifdef LIN_ADVANCE
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -2059,8 +2059,8 @@ static void lcd_support_menu()
|
|||
{ // 22bytes total
|
||||
int8_t status; // 1byte
|
||||
bool is_flash_air; // 1byte
|
||||
uint8_t ip[4]; // 4bytes
|
||||
char ip_str[3*4+3+1]; // 16bytes
|
||||
uint32_t ip; // 4bytes
|
||||
char ip_str[IP4_STR_SIZE]; // 16bytes
|
||||
} _menu_data_t;
|
||||
static_assert(sizeof(menu_data)>= sizeof(_menu_data_t),"_menu_data_t doesn't fit into menu_data");
|
||||
_menu_data_t* _md = (_menu_data_t*)&(menu_data[0]);
|
||||
|
|
@ -2071,17 +2071,10 @@ static void lcd_support_menu()
|
|||
_md->status = 1;
|
||||
_md->is_flash_air = card.ToshibaFlashAir_isEnabled();
|
||||
if (_md->is_flash_air) {
|
||||
card.ToshibaFlashAir_GetIP(_md->ip); // ip[4] filled with 0 if it failed
|
||||
// Prepare IP string from ip[4]
|
||||
sprintf_P(_md->ip_str, PSTR("%d.%d.%d.%d"),
|
||||
_md->ip[0], _md->ip[1],
|
||||
_md->ip[2], _md->ip[3]);
|
||||
card.ToshibaFlashAir_GetIP((uint8_t*)(&_md->ip)); // ip == 0 if it failed
|
||||
}
|
||||
} else if (_md->is_flash_air &&
|
||||
_md->ip[0] == 0 && _md->ip[1] == 0 &&
|
||||
_md->ip[2] == 0 && _md->ip[3] == 0 &&
|
||||
++ _md->status == 16)
|
||||
{
|
||||
} else if (_md->is_flash_air && _md->ip == 0 && ++ _md->status == 16)
|
||||
{
|
||||
// Waiting for the FlashAir card to get an IP address from a router. Force an update.
|
||||
_md->status = 0;
|
||||
}
|
||||
|
|
@ -2145,6 +2138,20 @@ static void lcd_support_menu()
|
|||
MENU_ITEM_BACK_P(PSTR(" "));
|
||||
if (((menu_item - 1) == menu_line) && lcd_draw_update) {
|
||||
lcd_set_cursor(2, menu_row);
|
||||
ip4_to_str(_md->ip_str, (uint8_t*)(&_md->ip));
|
||||
lcd_printf_P(PSTR("%s"), _md->ip_str);
|
||||
}
|
||||
}
|
||||
|
||||
// Show the printer IP address, if it is available.
|
||||
if (IP_address) {
|
||||
|
||||
MENU_ITEM_BACK_P(STR_SEPARATOR);
|
||||
MENU_ITEM_BACK_P(PSTR("Printer IP Addr:")); //c=18 r=1
|
||||
MENU_ITEM_BACK_P(PSTR(" "));
|
||||
if (((menu_item - 1) == menu_line) && lcd_draw_update) {
|
||||
lcd_set_cursor(2, menu_row);
|
||||
ip4_to_str(_md->ip_str, (uint8_t*)(&IP_address));
|
||||
lcd_printf_P(PSTR("%s"), _md->ip_str);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
#include "sound.h"
|
||||
#include "language.h"
|
||||
#include "util.h"
|
||||
#include <avr/pgmspace.h>
|
||||
|
||||
// Allocate the version string in the program memory. Otherwise the string lands either on the stack or in the global RAM.
|
||||
const char FW_VERSION_STR[] PROGMEM = FW_VERSION;
|
||||
|
|
@ -604,3 +605,9 @@ else {
|
|||
sPrinterName=_sPrinterName;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void ip4_to_str(char* dest, uint8_t* IP)
|
||||
{
|
||||
sprintf_P(dest, PSTR("%u.%u.%u.%u"), IP[0], IP[1], IP[2], IP[3]);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -110,4 +110,7 @@ void gcode_level_check(uint16_t nGcodeLevel);
|
|||
|
||||
void fSetMmuMode(bool bMMu);
|
||||
|
||||
#define IP4_STR_SIZE 16
|
||||
extern void ip4_to_str(char* dest, uint8_t* IP);
|
||||
|
||||
#endif /* UTIL_H */
|
||||
|
|
|
|||
|
|
@ -90,8 +90,9 @@ AXIS SETTINGS
|
|||
#define DEFAULT_MAX_ACCELERATION {9000,9000,500,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for Skeinforge 40+, for older versions raise them a lot.
|
||||
#define DEFAULT_MAX_ACCELERATION_SILENT {960, 960, 200, 5000} // (mm/sec^2) max acceleration (M201), silent mode
|
||||
|
||||
#define DEFAULT_ACCELERATION 1500 // X, Y, Z and E max acceleration in mm/s^2 for printing moves
|
||||
#define DEFAULT_ACCELERATION 1500 // X, Y, Z and E max acceleration in mm/s^2 for printing moves
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1500 // X, Y, Z and E max acceleration in mm/s^2 for retracts
|
||||
#define DEFAULT_TRAVEL_ACCELERATION 1500 // X, Y, Z and E max acceleration in mm/s^2 for travels
|
||||
|
||||
|
||||
#define MANUAL_FEEDRATE {3000, 3000, 1000, 100} // set the speeds for manual moves (mm/min)
|
||||
|
|
|
|||
|
|
@ -90,8 +90,9 @@ AXIS SETTINGS
|
|||
#define DEFAULT_MAX_ACCELERATION {9000,9000,500,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for Skeinforge 40+, for older versions raise them a lot.
|
||||
#define DEFAULT_MAX_ACCELERATION_SILENT {960, 960, 200, 5000} // (mm/sec^2) max acceleration (M201), silent mode
|
||||
|
||||
#define DEFAULT_ACCELERATION 1500 // X, Y, Z and E max acceleration in mm/s^2 for printing moves
|
||||
#define DEFAULT_ACCELERATION 1500 // X, Y, Z and E max acceleration in mm/s^2 for printing moves
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1500 // X, Y, Z and E max acceleration in mm/s^2 for retracts
|
||||
#define DEFAULT_TRAVEL_ACCELERATION 1500 // X, Y, Z and E max acceleration in mm/s^2 for travels
|
||||
|
||||
|
||||
#define MANUAL_FEEDRATE {3000, 3000, 1000, 100} // set the speeds for manual moves (mm/min)
|
||||
|
|
|
|||
|
|
@ -94,8 +94,9 @@
|
|||
#define DEFAULT_MAX_ACCELERATION {1000, 1000, 200, 5000} // (mm/sec^2) max acceleration (M201)
|
||||
#define DEFAULT_MAX_ACCELERATION_SILENT {960, 960, 200, 5000} // (mm/sec^2) max acceleration (M201), silent mode
|
||||
|
||||
#define DEFAULT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for printing moves (M204S)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for retracts (M204T)
|
||||
#define DEFAULT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for printing moves (M204P)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for retracts (M204R)
|
||||
#define DEFAULT_TRAVEL_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for travels (M204T)
|
||||
|
||||
#define MANUAL_FEEDRATE {2700, 2700, 1000, 100} // set the speeds for manual moves (mm/min)
|
||||
|
||||
|
|
|
|||
|
|
@ -95,8 +95,9 @@
|
|||
#define DEFAULT_MAX_ACCELERATION_SILENT {960, 960, 200, 5000} // (mm/sec^2) max acceleration (M201), silent mode
|
||||
|
||||
|
||||
#define DEFAULT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for printing moves (M204S)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for retracts (M204T)
|
||||
#define DEFAULT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for printing moves (M204P)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for retracts (M204R)
|
||||
#define DEFAULT_TRAVEL_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for travels (M204T)
|
||||
|
||||
#define MANUAL_FEEDRATE {2700, 2700, 1000, 100} // set the speeds for manual moves (mm/min)
|
||||
|
||||
|
|
|
|||
|
|
@ -94,8 +94,9 @@
|
|||
#define DEFAULT_MAX_ACCELERATION {1000, 1000, 200, 5000} // (mm/sec^2) max acceleration (M201)
|
||||
#define DEFAULT_MAX_ACCELERATION_SILENT {960, 960, 200, 5000} // (mm/sec^2) max acceleration (M201), silent mode
|
||||
|
||||
#define DEFAULT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for printing moves (M204S)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for retracts (M204T)
|
||||
#define DEFAULT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for printing moves (M204P)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for retracts (M204R)
|
||||
#define DEFAULT_TRAVEL_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for travels (M204T)
|
||||
|
||||
#define MANUAL_FEEDRATE {2700, 2700, 1000, 100} // set the speeds for manual moves (mm/min)
|
||||
|
||||
|
|
|
|||
|
|
@ -95,8 +95,9 @@
|
|||
#define DEFAULT_MAX_ACCELERATION_SILENT {960, 960, 200, 5000} // (mm/sec^2) max acceleration (M201), silent mode
|
||||
|
||||
|
||||
#define DEFAULT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for printing moves (M204S)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for retracts (M204T)
|
||||
#define DEFAULT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for printing moves (M204P)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for retracts (M204R)
|
||||
#define DEFAULT_TRAVEL_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for travels (M204T)
|
||||
|
||||
#define MANUAL_FEEDRATE {2700, 2700, 1000, 100} // set the speeds for manual moves (mm/min)
|
||||
|
||||
|
|
|
|||
|
|
@ -99,8 +99,9 @@
|
|||
#define DEFAULT_MAX_ACCELERATION_SILENT {960, 960, 200, 5000} // (mm/sec^2) max acceleration (M201), silent mode
|
||||
|
||||
|
||||
#define DEFAULT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for printing moves (M204S)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for retracts (M204T)
|
||||
#define DEFAULT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for printing moves (M204P)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for retracts (M204R)
|
||||
#define DEFAULT_TRAVEL_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for travels (M204T)
|
||||
|
||||
#define MANUAL_FEEDRATE {2700, 2700, 1000, 100} // set the speeds for manual moves (mm/min)
|
||||
|
||||
|
|
|
|||
|
|
@ -101,8 +101,9 @@
|
|||
#define DEFAULT_MAX_ACCELERATION_SILENT {960, 960, 200, 5000} // (mm/sec^2) max acceleration (M201), silent mode
|
||||
|
||||
|
||||
#define DEFAULT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for printing moves (M204S)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for retracts (M204T)
|
||||
#define DEFAULT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for printing moves (M204P)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for retracts (M204R)
|
||||
#define DEFAULT_TRAVEL_ACCELERATION 1250 // X, Y, Z and E max acceleration in mm/s^2 for travels (M204T)
|
||||
|
||||
#define MANUAL_FEEDRATE {2700, 2700, 1000, 100} // set the speeds for manual moves (mm/min)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue