Merge branch 'bugfix-2.0.x' into CrealityDwin2.0_Bleeding
This commit is contained in:
@@ -3564,8 +3564,18 @@
|
||||
#define SPINDLE_LASER_POWERDOWN_DELAY 50 // (ms) Delay to allow the spindle to stop
|
||||
|
||||
#endif
|
||||
|
||||
//
|
||||
// Laser I2C Ammeter (High precision INA226 low/high side module)
|
||||
//
|
||||
//#define I2C_AMMETER
|
||||
#if ENABLED(I2C_AMMETER)
|
||||
#define I2C_AMMETER_IMAX 0.1 // (Amps) Calibration value for the expected current range
|
||||
#define I2C_AMMETER_SHUNT_RESISTOR 0.1 // (Ohms) Calibration shunt resistor value
|
||||
#endif
|
||||
|
||||
#endif
|
||||
#endif
|
||||
#endif // SPINDLE_FEATURE || LASER_FEATURE
|
||||
|
||||
/**
|
||||
* Synchronous Laser Control with M106/M107
|
||||
|
||||
@@ -186,7 +186,7 @@ inline void HAL_adc_init() {
|
||||
#define GET_PIN_MAP_INDEX(pin) pin
|
||||
#define PARSED_PIN_INDEX(code, dval) parser.intval(code, dval)
|
||||
|
||||
#define HAL_SENSITIVE_PINS 0, 1
|
||||
#define HAL_SENSITIVE_PINS 0, 1,
|
||||
|
||||
#ifdef __AVR_AT90USB1286__
|
||||
#define JTAG_DISABLE() do{ MCUCR = 0x80; MCUCR = 0x80; }while(0)
|
||||
|
||||
@@ -25,43 +25,6 @@
|
||||
|
||||
#include "../../../gcode/parser.h"
|
||||
|
||||
uint8_t analog_offset = NUM_DIGITAL_PINS - NUM_ANALOG_INPUTS;
|
||||
|
||||
// Get the digital pin for an analog index
|
||||
pin_t analogInputToDigitalPin(const int8_t p) {
|
||||
return (WITHIN(p, 0, NUM_ANALOG_INPUTS) ? analog_offset + p : P_NC);
|
||||
}
|
||||
|
||||
// Return the index of a pin number
|
||||
int16_t GET_PIN_MAP_INDEX(const pin_t pin) {
|
||||
return pin;
|
||||
}
|
||||
|
||||
// Test whether the pin is valid
|
||||
bool VALID_PIN(const pin_t p) {
|
||||
return WITHIN(p, 0, NUM_DIGITAL_PINS);
|
||||
}
|
||||
|
||||
// Get the analog index for a digital pin
|
||||
int8_t DIGITAL_PIN_TO_ANALOG_PIN(const pin_t p) {
|
||||
return (WITHIN(p, analog_offset, NUM_DIGITAL_PINS) ? p - analog_offset : P_NC);
|
||||
}
|
||||
|
||||
// Test whether the pin is PWM
|
||||
bool PWM_PIN(const pin_t p) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Test whether the pin is interruptable
|
||||
bool INTERRUPT_PIN(const pin_t p) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Get the pin number at the given index
|
||||
pin_t GET_PIN_MAP_PIN(const int16_t ind) {
|
||||
return ind;
|
||||
}
|
||||
|
||||
int16_t PARSED_PIN_INDEX(const char code, const int16_t dval) {
|
||||
return parser.intval(code, dval);
|
||||
}
|
||||
|
||||
@@ -34,26 +34,32 @@ constexpr uint8_t NUM_ANALOG_INPUTS = 16;
|
||||
|
||||
#define HAL_SENSITIVE_PINS
|
||||
|
||||
constexpr uint8_t analog_offset = NUM_DIGITAL_PINS - NUM_ANALOG_INPUTS;
|
||||
|
||||
// Get the digital pin for an analog index
|
||||
pin_t analogInputToDigitalPin(const int8_t p);
|
||||
|
||||
// Return the index of a pin number
|
||||
int16_t GET_PIN_MAP_INDEX(const pin_t pin);
|
||||
|
||||
// Test whether the pin is valid
|
||||
bool VALID_PIN(const pin_t p);
|
||||
constexpr pin_t analogInputToDigitalPin(const int8_t p) {
|
||||
return (WITHIN(p, 0, NUM_ANALOG_INPUTS) ? analog_offset + p : P_NC);
|
||||
}
|
||||
|
||||
// Get the analog index for a digital pin
|
||||
int8_t DIGITAL_PIN_TO_ANALOG_PIN(const pin_t p);
|
||||
constexpr int8_t DIGITAL_PIN_TO_ANALOG_PIN(const pin_t p) {
|
||||
return (WITHIN(p, analog_offset, NUM_DIGITAL_PINS) ? p - analog_offset : P_NC);
|
||||
}
|
||||
|
||||
// Return the index of a pin number
|
||||
constexpr int16_t GET_PIN_MAP_INDEX(const pin_t pin) { return pin; }
|
||||
|
||||
// Test whether the pin is valid
|
||||
constexpr bool VALID_PIN(const pin_t p) { return WITHIN(p, 0, NUM_DIGITAL_PINS); }
|
||||
|
||||
// Test whether the pin is PWM
|
||||
bool PWM_PIN(const pin_t p);
|
||||
constexpr bool PWM_PIN(const pin_t p) { return false; }
|
||||
|
||||
// Test whether the pin is interruptable
|
||||
bool INTERRUPT_PIN(const pin_t p);
|
||||
constexpr bool INTERRUPT_PIN(const pin_t p) { return false; }
|
||||
|
||||
// Get the pin number at the given index
|
||||
pin_t GET_PIN_MAP_PIN(const int16_t ind);
|
||||
constexpr pin_t GET_PIN_MAP_PIN(const int16_t ind) { return ind; }
|
||||
|
||||
// Parse a G-code word into a pin index
|
||||
int16_t PARSED_PIN_INDEX(const char code, const int16_t dval);
|
||||
|
||||
@@ -198,7 +198,7 @@ constexpr pin_t GET_PIN_MAP_PIN(const int16_t index) {
|
||||
// Parse a G-code word into a pin index
|
||||
int16_t PARSED_PIN_INDEX(const char code, const int16_t dval);
|
||||
// P0.6 thru P0.9 are for the onboard SD card
|
||||
#define HAL_SENSITIVE_PINS P0_06, P0_07, P0_08, P0_09
|
||||
#define HAL_SENSITIVE_PINS P0_06, P0_07, P0_08, P0_09,
|
||||
|
||||
#define HAL_IDLETASK 1
|
||||
void HAL_idletask();
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
|
||||
// Better: "utility/stm32_eeprom.h", but only after updating stm32duino to 2.0.0
|
||||
// Use EEPROM.h for compatibility, for now.
|
||||
#include <EEPROM.h>
|
||||
#include <EEPROM.h>
|
||||
|
||||
/**
|
||||
* The STM32 HAL supports chips that deal with "pages" and some with "sectors" and some that
|
||||
|
||||
@@ -30,3 +30,6 @@
|
||||
#undef F_CPU
|
||||
#define F_CPU BOARD_F_CPU
|
||||
#endif
|
||||
|
||||
// The Sensitive Pins array is not optimizable
|
||||
#define RUNTIME_ONLY_ANALOG_TO_DIGITAL
|
||||
|
||||
@@ -61,11 +61,24 @@ static constexpr uint8_t eeprom_device_address = I2C_ADDRESS(EEPROM_DEVICE_ADDRE
|
||||
// Public functions
|
||||
// ------------------------
|
||||
|
||||
#define SMALL_EEPROM (MARLIN_EEPROM_SIZE <= 2048)
|
||||
|
||||
// Combine Address high bits into the device address on <=16Kbit (2K) and >512Kbit (64K) EEPROMs.
|
||||
// Note: MARLIN_EEPROM_SIZE is specified in bytes, whereas EEPROM model numbers refer to bits.
|
||||
// e.g., The "16" in BL24C16 indicates a 16Kbit (2KB) size.
|
||||
static uint8_t _eeprom_calc_device_address(uint8_t * const pos) {
|
||||
const unsigned eeprom_address = (unsigned)pos;
|
||||
return (SMALL_EEPROM || MARLIN_EEPROM_SIZE > 65536)
|
||||
? uint8_t(eeprom_device_address | ((eeprom_address >> (SMALL_EEPROM ? 8 : 16)) & 0x07))
|
||||
: eeprom_device_address;
|
||||
}
|
||||
|
||||
static void _eeprom_begin(uint8_t * const pos) {
|
||||
const unsigned eeprom_address = (unsigned)pos;
|
||||
Wire.beginTransmission(eeprom_device_address);
|
||||
Wire.write(int(eeprom_address >> 8)); // Address High
|
||||
Wire.write(int(eeprom_address & 0xFF)); // Address Low
|
||||
Wire.beginTransmission(_eeprom_calc_device_address(pos));
|
||||
if (!SMALL_EEPROM)
|
||||
Wire.write(uint8_t((eeprom_address >> 8) & 0xFF)); // Address High, if needed
|
||||
Wire.write(uint8_t(eeprom_address & 0xFF)); // Address Low
|
||||
}
|
||||
|
||||
void eeprom_write_byte(uint8_t *pos, uint8_t value) {
|
||||
@@ -81,7 +94,7 @@ void eeprom_write_byte(uint8_t *pos, uint8_t value) {
|
||||
uint8_t eeprom_read_byte(uint8_t *pos) {
|
||||
_eeprom_begin(pos);
|
||||
Wire.endTransmission();
|
||||
Wire.requestFrom(eeprom_device_address, (byte)1);
|
||||
Wire.requestFrom(_eeprom_calc_device_address(pos), (byte)1);
|
||||
return Wire.available() ? Wire.read() : 0xFF;
|
||||
}
|
||||
|
||||
|
||||
@@ -282,8 +282,15 @@ bool wait_for_heatup = true;
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wnarrowing"
|
||||
|
||||
#ifdef RUNTIME_ONLY_ANALOG_TO_DIGITAL
|
||||
static const pin_t sensitive_pins[] PROGMEM = { SENSITIVE_PINS };
|
||||
#else
|
||||
template <pin_t ...D>
|
||||
constexpr pin_t OnlyPins<-2, D...>::table[sizeof...(D)];
|
||||
#define sensitive_pins OnlyPins<SENSITIVE_PINS>::table
|
||||
#endif
|
||||
|
||||
bool pin_is_protected(const pin_t pin) {
|
||||
static const pin_t sensitive_pins[] PROGMEM = SENSITIVE_PINS;
|
||||
LOOP_L_N(i, COUNT(sensitive_pins)) {
|
||||
pin_t sensitive_pin;
|
||||
memcpy_P(&sensitive_pin, &sensitive_pins[i], sizeof(pin_t));
|
||||
|
||||
@@ -321,7 +321,7 @@
|
||||
#define BOARD_BTT_SKR_MINI_V1_1 4023 // BigTreeTech SKR Mini v1.1 (STM32F103RC)
|
||||
#define BOARD_BTT_SKR_MINI_E3_V1_0 4024 // BigTreeTech SKR Mini E3 (STM32F103RC)
|
||||
#define BOARD_BTT_SKR_MINI_E3_V1_2 4025 // BigTreeTech SKR Mini E3 V1.2 (STM32F103RC)
|
||||
#define BOARD_BTT_SKR_MINI_E3_V2_0 4026 // BigTreeTech SKR Mini E3 V2.0 (STM32F103RC)
|
||||
#define BOARD_BTT_SKR_MINI_E3_V2_0 4026 // BigTreeTech SKR Mini E3 V2.0 (STM32F103RC / STM32F103RE)
|
||||
#define BOARD_BTT_SKR_MINI_MZ_V1_0 4027 // BigTreeTech SKR Mini MZ V1.0 (STM32F103RC)
|
||||
#define BOARD_BTT_SKR_E3_DIP 4028 // BigTreeTech SKR E3 DIP V1.0 (STM32F103RC / STM32F103RE)
|
||||
#define BOARD_BTT_SKR_CR6 4029 // BigTreeTech SKR CR6 v1.0 (STM32F103RE)
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
/**
|
||||
* Marlin 3D Printer Firmware
|
||||
* Copyright (c) 2021 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 <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
#include "../inc/MarlinConfig.h"
|
||||
|
||||
#if ENABLED(I2C_AMMETER)
|
||||
|
||||
#include "ammeter.h"
|
||||
|
||||
#ifndef I2C_AMMETER_IMAX
|
||||
#define I2C_AMMETER_IMAX 0.500 // Calibration range 500 Milliamps
|
||||
#endif
|
||||
|
||||
INA226 ina;
|
||||
|
||||
Ammeter ammeter;
|
||||
|
||||
float Ammeter::scale;
|
||||
float Ammeter::current;
|
||||
|
||||
void Ammeter::init() {
|
||||
ina.begin();
|
||||
ina.configure(INA226_AVERAGES_16, INA226_BUS_CONV_TIME_1100US, INA226_SHUNT_CONV_TIME_1100US, INA226_MODE_SHUNT_BUS_CONT);
|
||||
ina.calibrate(I2C_AMMETER_SHUNT_RESISTOR, I2C_AMMETER_IMAX);
|
||||
}
|
||||
|
||||
float Ammeter::read() {
|
||||
scale = 1;
|
||||
current = ina.readShuntCurrent();
|
||||
if (current <= 0.0001f) current = 0; // Clean up least-significant-bit amplification errors
|
||||
if (current < 0.1f) scale = 1000;
|
||||
return current * scale;
|
||||
}
|
||||
|
||||
#endif // I2C_AMMETER
|
||||
@@ -0,0 +1,39 @@
|
||||
/**
|
||||
* Marlin 3D Printer Firmware
|
||||
* Copyright (c) 2021 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 <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include "../inc/MarlinConfigPre.h"
|
||||
|
||||
#include <Wire.h>
|
||||
#include <INA226.h>
|
||||
|
||||
class Ammeter {
|
||||
private:
|
||||
static float scale;
|
||||
|
||||
public:
|
||||
static float current;
|
||||
static void init();
|
||||
static float read();
|
||||
};
|
||||
|
||||
extern Ammeter ammeter;
|
||||
@@ -24,7 +24,7 @@
|
||||
#include "../../inc/MarlinConfigPre.h"
|
||||
|
||||
#if EITHER(RESTORE_LEVELING_AFTER_G28, ENABLE_LEVELING_AFTER_G28)
|
||||
#define G28_L0_ENSURES_LEVELING_OFF 1
|
||||
#define CAN_SET_LEVELING_AFTER_G28 1
|
||||
#endif
|
||||
|
||||
#if ENABLED(PROBE_MANUALLY)
|
||||
|
||||
@@ -88,7 +88,7 @@ typedef struct {
|
||||
uint8_t fan_speed[FAN_COUNT];
|
||||
#endif
|
||||
|
||||
#if ENABLED(HAS_LEVELING)
|
||||
#if HAS_LEVELING
|
||||
float fade;
|
||||
#endif
|
||||
|
||||
@@ -120,7 +120,7 @@ typedef struct {
|
||||
bool raised:1; // Raised before saved
|
||||
bool dryrun:1; // M111 S8
|
||||
bool allow_cold_extrusion:1; // M302 P1
|
||||
#if ENABLED(HAS_LEVELING)
|
||||
#if HAS_LEVELING
|
||||
bool leveling:1; // M420 S
|
||||
#endif
|
||||
#if DISABLED(NO_VOLUMETRICS)
|
||||
|
||||
@@ -34,6 +34,10 @@
|
||||
#include "../module/servo.h"
|
||||
#endif
|
||||
|
||||
#if ENABLED(I2C_AMMETER)
|
||||
#include "../feature/ammeter.h"
|
||||
#endif
|
||||
|
||||
SpindleLaser cutter;
|
||||
uint8_t SpindleLaser::power;
|
||||
#if ENABLED(LASER_FEATURE)
|
||||
@@ -74,6 +78,9 @@ void SpindleLaser::init() {
|
||||
#if ENABLED(AIR_ASSIST)
|
||||
OUT_WRITE(AIR_ASSIST_PIN, !AIR_ASSIST_ACTIVE); // Init Air Assist OFF
|
||||
#endif
|
||||
#if ENABLED(I2C_AMMETER)
|
||||
ammeter.init(); // Init I2C Ammeter
|
||||
#endif
|
||||
}
|
||||
|
||||
#if ENABLED(SPINDLE_LASER_PWM)
|
||||
|
||||
@@ -246,7 +246,7 @@ G29_TYPE GcodeSuite::G29() {
|
||||
|
||||
// Send 'N' to force homing before G29 (internal only)
|
||||
if (parser.seen_test('N'))
|
||||
process_subcommands_now_P(TERN(G28_L0_ENSURES_LEVELING_OFF, PSTR("G28L0"), G28_STR));
|
||||
process_subcommands_now_P(TERN(CAN_SET_LEVELING_AFTER_G28, PSTR("G28L0"), G28_STR));
|
||||
|
||||
// Don't allow auto-leveling without homing first
|
||||
if (homing_needed_error()) G29_RETURN(false);
|
||||
|
||||
@@ -87,7 +87,7 @@ void GcodeSuite::G29() {
|
||||
mbl.reset();
|
||||
mbl_probe_index = 0;
|
||||
if (!ui.wait_for_move) {
|
||||
queue.inject_P(parser.seen_test('N') ? PSTR("G28" TERN(G28_L0_ENSURES_LEVELING_OFF, "L0", "") "\nG29S2") : PSTR("G29S2"));
|
||||
queue.inject_P(parser.seen_test('N') ? PSTR("G28" TERN(CAN_SET_LEVELING_AFTER_G28, "L0", "") "\nG29S2") : PSTR("G29S2"));
|
||||
return;
|
||||
}
|
||||
state = MeshNext;
|
||||
|
||||
@@ -242,12 +242,16 @@ void GcodeSuite::G28() {
|
||||
SET_SOFT_ENDSTOP_LOOSE(false); // Reset a leftover 'loose' motion state
|
||||
|
||||
// Disable the leveling matrix before homing
|
||||
#if HAS_LEVELING
|
||||
const bool leveling_restore_state = parser.boolval('L', TERN(RESTORE_LEVELING_AFTER_G28, planner.leveling_active, ENABLED(ENABLE_LEVELING_AFTER_G28)));
|
||||
IF_ENABLED(PROBE_MANUALLY, g29_in_progress = false); // Cancel the active G29 session
|
||||
set_bed_leveling_enabled(false);
|
||||
#if CAN_SET_LEVELING_AFTER_G28
|
||||
const bool leveling_restore_state = parser.boolval('L', TERN1(RESTORE_LEVELING_AFTER_G28, planner.leveling_active));
|
||||
#endif
|
||||
|
||||
// Cancel any prior G29 session
|
||||
TERN_(PROBE_MANUALLY, g29_in_progress = false);
|
||||
|
||||
// Disable leveling before homing
|
||||
TERN_(HAS_LEVELING, set_bed_leveling_enabled(false));
|
||||
|
||||
// Reset to the XY plane
|
||||
TERN_(CNC_WORKSPACE_PLANES, workspace_plane = PLANE_XY);
|
||||
|
||||
@@ -353,13 +357,14 @@ void GcodeSuite::G28() {
|
||||
|
||||
const float z_homing_height = parser.seenval('R') ? parser.value_linear_units() : Z_HOMING_HEIGHT;
|
||||
|
||||
if (z_homing_height && (0 LINEAR_AXIS_GANG(|| doX, || doY, || TERN0(Z_SAFE_HOMING, doZ), || doI, || doJ, || doK))) {
|
||||
if (z_homing_height && (LINEAR_AXIS_GANG(doX, || doY, || TERN0(Z_SAFE_HOMING, doZ), || doI, || doJ, || doK))) {
|
||||
// Raise Z before homing any other axes and z is not already high enough (never lower z)
|
||||
if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPAIR("Raise Z (before homing) by ", z_homing_height);
|
||||
do_z_clearance(z_homing_height);
|
||||
TERN_(BLTOUCH, bltouch.init());
|
||||
}
|
||||
|
||||
// Diagonal move first if both are homing
|
||||
TERN_(QUICK_HOME, if (doX && doY) quick_home_xy());
|
||||
|
||||
// Home Y (before X)
|
||||
@@ -464,12 +469,10 @@ void GcodeSuite::G28() {
|
||||
// Clear endstop state for polled stallGuard endstops
|
||||
TERN_(SPI_ENDSTOPS, endstops.clear_endstop_state());
|
||||
|
||||
#if BOTH(DELTA, DELTA_HOME_TO_SAFE_ZONE)
|
||||
// move to a height where we can use the full xy-area
|
||||
do_blocking_move_to_z(delta_clip_start_height);
|
||||
#endif
|
||||
// Move to a height where we can use the full xy-area
|
||||
TERN_(DELTA_HOME_TO_SAFE_ZONE, do_blocking_move_to_z(delta_clip_start_height));
|
||||
|
||||
TERN_(HAS_LEVELING, set_bed_leveling_enabled(leveling_restore_state));
|
||||
TERN_(CAN_SET_LEVELING_AFTER_G28, if (leveling_restore_state) set_bed_leveling_enabled());
|
||||
|
||||
restore_feedrate_and_scaling();
|
||||
|
||||
|
||||
@@ -439,7 +439,7 @@ inline void probe_sides(measurements_t &m, const float uncertainty) {
|
||||
#if HAS_Z_AXIS && AXIS_CAN_CALIBRATE(Z)
|
||||
SERIAL_ECHOLNPAIR(" Top: ", m.backlash[TOP]);
|
||||
#endif
|
||||
#if LINEAR_AXES >= 4 AXIS_CAN_CALIBRATE(I)
|
||||
#if LINEAR_AXES >= 4 && AXIS_CAN_CALIBRATE(I)
|
||||
#if ENABLED(CALIBRATION_MEASURE_IMIN)
|
||||
SERIAL_ECHOLNPAIR(" " STR_I_MIN ": ", m.backlash[IMINIMUM]);
|
||||
#endif
|
||||
@@ -447,7 +447,7 @@ inline void probe_sides(measurements_t &m, const float uncertainty) {
|
||||
SERIAL_ECHOLNPAIR(" " STR_I_MAX ": ", m.backlash[IMAXIMUM]);
|
||||
#endif
|
||||
#endif
|
||||
#if LINEAR_AXES >= 5 AXIS_CAN_CALIBRATE(J)
|
||||
#if LINEAR_AXES >= 5 && AXIS_CAN_CALIBRATE(J)
|
||||
#if ENABLED(CALIBRATION_MEASURE_JMIN)
|
||||
SERIAL_ECHOLNPAIR(" " STR_J_MIN ": ", m.backlash[JMINIMUM]);
|
||||
#endif
|
||||
@@ -455,7 +455,7 @@ inline void probe_sides(measurements_t &m, const float uncertainty) {
|
||||
SERIAL_ECHOLNPAIR(" " STR_J_MAX ": ", m.backlash[JMAXIMUM]);
|
||||
#endif
|
||||
#endif
|
||||
#if LINEAR_AXES >= 6 AXIS_CAN_CALIBRATE(K)
|
||||
#if LINEAR_AXES >= 6 && AXIS_CAN_CALIBRATE(K)
|
||||
#if ENABLED(CALIBRATION_MEASURE_KMIN)
|
||||
SERIAL_ECHOLNPAIR(" " STR_K_MIN ": ", m.backlash[KMINIMUM]);
|
||||
#endif
|
||||
|
||||
@@ -392,7 +392,7 @@ public:
|
||||
static void process_subcommands_now(char * gcode);
|
||||
|
||||
static inline void home_all_axes(const bool keep_leveling=false) {
|
||||
process_subcommands_now_P(keep_leveling ? G28_STR : TERN(G28_L0_ENSURES_LEVELING_OFF, PSTR("G28L0"), G28_STR));
|
||||
process_subcommands_now_P(keep_leveling ? G28_STR : TERN(CAN_SET_LEVELING_AFTER_G28, PSTR("G28L0"), G28_STR));
|
||||
}
|
||||
|
||||
#if EITHER(HAS_AUTO_REPORTING, HOST_KEEPALIVE_FEATURE)
|
||||
|
||||
@@ -405,6 +405,10 @@
|
||||
|
||||
#endif
|
||||
|
||||
#if EITHER(LCD_I2C_TYPE_MCP23017, LCD_I2C_TYPE_MCP23008) && DISABLED(NO_LCD_DETECT)
|
||||
#define DETECT_I2C_LCD_DEVICE 1
|
||||
#endif
|
||||
|
||||
#ifndef STD_ENCODER_PULSES_PER_STEP
|
||||
#if ENABLED(TOUCH_SCREEN)
|
||||
#define STD_ENCODER_PULSES_PER_STEP 2
|
||||
@@ -713,14 +717,19 @@
|
||||
#ifndef Z_PROBE_SERVO_NR
|
||||
#define Z_PROBE_SERVO_NR 0
|
||||
#endif
|
||||
#undef DEACTIVATE_SERVOS_AFTER_MOVE
|
||||
#ifdef DEACTIVATE_SERVOS_AFTER_MOVE
|
||||
#error "BLTOUCH requires DEACTIVATE_SERVOS_AFTER_MOVE to be to disabled. Please update your Configuration.h file."
|
||||
#endif
|
||||
|
||||
// Always disable probe pin inverting for BLTouch
|
||||
#undef Z_MIN_PROBE_ENDSTOP_INVERTING
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false
|
||||
#if Z_MIN_PROBE_ENDSTOP_INVERTING
|
||||
#error "BLTOUCH requires Z_MIN_PROBE_ENDSTOP_INVERTING set to false. Please update your Configuration.h file."
|
||||
#endif
|
||||
|
||||
#if ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)
|
||||
#undef Z_MIN_ENDSTOP_INVERTING
|
||||
#define Z_MIN_ENDSTOP_INVERTING false
|
||||
#if Z_MIN_ENDSTOP_INVERTING
|
||||
#error "BLTOUCH requires Z_MIN_ENDSTOP_INVERTING set to false. Please update your Configuration.h file."
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -1013,6 +1022,10 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if DISABLED(DELTA)
|
||||
#undef DELTA_HOME_TO_SAFE_ZONE
|
||||
#endif
|
||||
|
||||
// This flag indicates some kind of jerk storage is needed
|
||||
#if EITHER(CLASSIC_JERK, IS_KINEMATIC)
|
||||
#define HAS_CLASSIC_JERK 1
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
* version was tagged.
|
||||
*/
|
||||
#ifndef STRING_DISTRIBUTION_DATE
|
||||
#define STRING_DISTRIBUTION_DATE "2021-06-06"
|
||||
#define STRING_DISTRIBUTION_DATE "2021-06-11"
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
||||
@@ -50,6 +50,10 @@
|
||||
#include "../../feature/cooler.h"
|
||||
#endif
|
||||
|
||||
#if ENABLED(I2C_AMMETER)
|
||||
#include "../../feature/ammeter.h"
|
||||
#endif
|
||||
|
||||
#if ENABLED(AUTO_BED_LEVELING_UBL)
|
||||
#include "../../feature/bedlevel/bedlevel.h"
|
||||
#endif
|
||||
@@ -64,11 +68,7 @@
|
||||
|
||||
#elif EITHER(LCD_I2C_TYPE_MCP23017, LCD_I2C_TYPE_MCP23008)
|
||||
|
||||
LCD_CLASS lcd(LCD_I2C_ADDRESS
|
||||
#ifdef DETECT_DEVICE
|
||||
, 1
|
||||
#endif
|
||||
);
|
||||
LCD_CLASS lcd(LCD_I2C_ADDRESS OPTARG(DETECT_I2C_LCD_DEVICE, 1));
|
||||
|
||||
#elif ENABLED(LCD_I2C_TYPE_PCA8574)
|
||||
|
||||
@@ -376,11 +376,7 @@ void MarlinUI::init_lcd() {
|
||||
}
|
||||
|
||||
bool MarlinUI::detected() {
|
||||
return (true
|
||||
#if EITHER(LCD_I2C_TYPE_MCP23017, LCD_I2C_TYPE_MCP23008) && defined(DETECT_DEVICE)
|
||||
&& lcd.LcdDetected() == 1
|
||||
#endif
|
||||
);
|
||||
return TERN1(DETECT_I2C_LCD_DEVICE, lcd.LcdDetected() == 1);
|
||||
}
|
||||
|
||||
#if HAS_SLOW_BUTTONS
|
||||
@@ -588,12 +584,27 @@ FORCE_INLINE void _draw_cooler_status(const char prefix, const bool blink) {
|
||||
|
||||
#if ENABLED(LASER_COOLANT_FLOW_METER)
|
||||
FORCE_INLINE void _draw_flowmeter_status() {
|
||||
lcd_put_u8str("~ ");
|
||||
lcd_put_u8str("~");
|
||||
lcd_put_u8str(ftostr11ns(cooler.flowrate));
|
||||
lcd_put_wchar('L');
|
||||
}
|
||||
#endif
|
||||
|
||||
#if ENABLED(I2C_AMMETER)
|
||||
FORCE_INLINE void _draw_ammeter_status() {
|
||||
lcd_put_u8str(" ");
|
||||
ammeter.read();
|
||||
if (ammeter.current <= 0.999f) {
|
||||
lcd_put_u8str(ui16tostr3rj(uint16_t(ammeter.current * 1000 + 0.5f)));
|
||||
lcd_put_u8str("mA");
|
||||
}
|
||||
else {
|
||||
lcd_put_u8str(ftostr12ns(ammeter.current));
|
||||
lcd_put_wchar('A');
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
FORCE_INLINE void _draw_bed_status(const bool blink) {
|
||||
_draw_heater_status(H_BED, TERN0(HAS_LEVELING, blink && planner.leveling_active) ? '_' : LCD_STR_BEDTEMP[0], blink);
|
||||
}
|
||||
@@ -829,12 +840,9 @@ void MarlinUI::draw_status_screen() {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if HAS_COOLER
|
||||
_draw_cooler_status('*', blink);
|
||||
#endif
|
||||
#if ENABLED(LASER_COOLANT_FLOW_METER)
|
||||
_draw_flowmeter_status();
|
||||
#endif
|
||||
TERN_(HAS_COOLER, _draw_cooler_status('*', blink));
|
||||
TERN_(LASER_COOLANT_FLOW_METER, _draw_flowmeter_status());
|
||||
TERN_(I2C_AMMETER, _draw_ammeter_status());
|
||||
|
||||
#endif // LCD_WIDTH >= 20
|
||||
|
||||
|
||||
@@ -107,7 +107,17 @@
|
||||
#define STATUS_FLOWMETER_BYTEWIDTH BW(STATUS_FLOWMETER_WIDTH)
|
||||
#endif
|
||||
|
||||
|
||||
//
|
||||
// Laser Ammeter
|
||||
//
|
||||
#if ENABLED(I2C_AMMETER)
|
||||
#if !STATUS_AMMETER_WIDTH
|
||||
#include "status/ammeter.h"
|
||||
#endif
|
||||
#ifndef STATUS_AMMETER_WIDTH
|
||||
#define STATUS_AMMETER_WIDTH 0
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// Bed
|
||||
@@ -603,6 +613,31 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// I2C Laser Ammeter
|
||||
//
|
||||
#if ENABLED(I2C_AMMETER) && STATUS_AMMETER_WIDTH
|
||||
#ifndef STATUS_AMMETER_BYTEWIDTH
|
||||
#define STATUS_AMMETER_BYTEWIDTH BW(STATUS_AMMETER_WIDTH)
|
||||
#endif
|
||||
#ifndef STATUS_AMMETER_X
|
||||
#define STATUS_AMMETER_X (LCD_PIXEL_WIDTH - (STATUS_AMMETER_BYTEWIDTH + STATUS_FLOWMETER_BYTEWIDTH + STATUS_FAN_BYTEWIDTH + STATUS_CUTTER_BYTEWIDTH + STATUS_COOLER_BYTEWIDTH) * 8)
|
||||
#endif
|
||||
#ifndef STATUS_AMMETER_HEIGHT
|
||||
#define STATUS_AMMETER_HEIGHT(S) (sizeof(status_ammeter_bmp1) / (STATUS_AMMETER_BYTEWIDTH))
|
||||
#endif
|
||||
#ifndef STATUS_AMMETER_Y
|
||||
#define STATUS_AMMETER_Y(S) (18 - STATUS_AMMETER_HEIGHT(S))
|
||||
#endif
|
||||
#ifndef STATUS_AMMETER_TEXT_X
|
||||
#define STATUS_AMMETER_TEXT_X (STATUS_AMMETER_X + 7)
|
||||
#endif
|
||||
static_assert(
|
||||
sizeof(status_ammeter_bmp1) == (STATUS_AMMETER_BYTEWIDTH) * STATUS_AMMETER_HEIGHT(0),
|
||||
"Status ammeter bitmap (status_ammeter_bmp1) dimensions don't match data."
|
||||
);
|
||||
#endif
|
||||
|
||||
//
|
||||
// Bed Bitmap Properties
|
||||
//
|
||||
@@ -696,6 +731,9 @@
|
||||
#if ENABLED(LASER_COOLANT_FLOW_METER)
|
||||
#define DO_DRAW_FLOWMETER 1
|
||||
#endif
|
||||
#if ENABLED(I2C_AMMETER)
|
||||
#define DO_DRAW_AMMETER 1
|
||||
#endif
|
||||
|
||||
#if HAS_TEMP_CHAMBER && STATUS_CHAMBER_WIDTH && HOTENDS <= 4
|
||||
#define DO_DRAW_CHAMBER 1
|
||||
|
||||
@@ -0,0 +1,68 @@
|
||||
/**
|
||||
* Marlin 3D Printer Firmware
|
||||
* Copyright (c) 2021 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 <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
//
|
||||
// lcd/dogm/status/ammeter.h - Status Screen Laser Ammeter bitmaps
|
||||
//
|
||||
|
||||
#define STATUS_AMMETER_WIDTH 20
|
||||
|
||||
const unsigned char status_ammeter_bmp_mA[] PROGMEM = {
|
||||
B00000000,B11111100,B00000000,
|
||||
B00000011,B00000011,B00000000,
|
||||
B00000100,B00000000,B10000000,
|
||||
B00001000,B00000000,B01000000,
|
||||
B00010000,B00000110,B00100000,
|
||||
B00010000,B00001001,B00100000,
|
||||
B00100000,B00001001,B00010000,
|
||||
B00100011,B01001111,B00010000,
|
||||
B11100010,B10101001,B00011100,
|
||||
B00100010,B10101001,B00010000,
|
||||
B00100010,B10101001,B00010000,
|
||||
B00010000,B00000000,B00100000,
|
||||
B00010000,B00000000,B00100000,
|
||||
B00001000,B00000000,B01000000,
|
||||
B00000100,B00000000,B10000000,
|
||||
B00000011,B00000011,B00000000,
|
||||
B00000000,B11111100,B00000000
|
||||
};
|
||||
|
||||
const unsigned char status_ammeter_bmp_A[] PROGMEM = {
|
||||
B00000000,B11111100,B00000000,
|
||||
B00000011,B00000011,B00000000,
|
||||
B00000100,B00000000,B10000000,
|
||||
B00001000,B00000000,B01000000,
|
||||
B00010000,B00000000,B00100000,
|
||||
B00010000,B00110000,B00100000,
|
||||
B00100000,B01001000,B00010000,
|
||||
B00100000,B01001000,B00010000,
|
||||
B11100000,B01111000,B00011100,
|
||||
B00100000,B01001000,B00010000,
|
||||
B00100000,B01001000,B00010000,
|
||||
B00010000,B01001000,B00100000,
|
||||
B00010000,B00000000,B00100000,
|
||||
B00001000,B00000000,B01000000,
|
||||
B00000100,B00000000,B10000000,
|
||||
B00000011,B00000011,B00000000,
|
||||
B00000000,B11111100,B00000000,
|
||||
};
|
||||
@@ -29,40 +29,40 @@
|
||||
#define STATUS_COOLER_WIDTH 22
|
||||
|
||||
const unsigned char status_cooler_bmp2[] PROGMEM = {
|
||||
B00000100,B00000010,B00000000,
|
||||
B00000100,B10010010,B01000000,
|
||||
B00010101,B00001010,B10000000,
|
||||
B00001110,B00000111,B00000000,
|
||||
B00111111,B10111111,B11000000,
|
||||
B00001110,B00000111,B00000000,
|
||||
B00010101,B00001010,B10000000,
|
||||
B00100100,B00100010,B01000000,
|
||||
B00000100,B00100000,B00000000,
|
||||
B00000001,B00100100,B00000000,
|
||||
B00000000,B10101000,B00000000,
|
||||
B00000000,B01110000,B00000000,
|
||||
B00000111,B11111111,B00000000,
|
||||
B00000000,B01110000,B00000000,
|
||||
B00000000,B10101000,B00000000,
|
||||
B00000001,B00100100,B00000000
|
||||
B00000001,B00000000,B10000000,
|
||||
B00000001,B00100100,B10010000,
|
||||
B00000101,B01000010,B10100000,
|
||||
B00000011,B10000001,B11000000,
|
||||
B00001111,B11101111,B11110000,
|
||||
B00000011,B10000001,B11000000,
|
||||
B00000101,B01000010,B10100000,
|
||||
B00001001,B00001000,B10010000,
|
||||
B00000001,B00001000,B00000000,
|
||||
B00000000,B01001001,B00000000,
|
||||
B00000000,B00101010,B00000000,
|
||||
B00000000,B00011100,B00000000,
|
||||
B00000001,B11111111,B11000000,
|
||||
B00000000,B00011100,B00000000,
|
||||
B00000000,B00101010,B00000000,
|
||||
B00000000,B01001001,B00000000
|
||||
};
|
||||
const unsigned char status_cooler_bmp1[] PROGMEM = {
|
||||
B00000100,B00000010,B00000000,
|
||||
B00000100,B10010010,B01000000,
|
||||
B00010101,B00001010,B10000000,
|
||||
B00001010,B00000101,B00000000,
|
||||
B00110001,B11011000,B11000000,
|
||||
B00001010,B00000101,B00000000,
|
||||
B00010101,B00001010,B10000000,
|
||||
B00100100,B00100010,B01000000,
|
||||
B00000100,B00100000,B00000000,
|
||||
B00000001,B00100100,B00000000,
|
||||
B00000000,B10101000,B00000000,
|
||||
B00000000,B01010000,B00000000,
|
||||
B00000111,B10001111,B00000000,
|
||||
B00000000,B01010000,B00000000,
|
||||
B00000000,B10101000,B00000000,
|
||||
B00000001,B00100100,B00000000
|
||||
B00000001,B00000000,B10000000,
|
||||
B00000001,B00100100,B10010000,
|
||||
B00000101,B01000010,B10100000,
|
||||
B00000010,B10000001,B01000000,
|
||||
B00001100,B01110110,B00110000,
|
||||
B00000010,B10000001,B01000000,
|
||||
B00000101,B01000010,B10100000,
|
||||
B00001001,B00001000,B10010000,
|
||||
B00000001,B00001000,B00000000,
|
||||
B00000000,B01001001,B00000000,
|
||||
B00000000,B00101010,B00000000,
|
||||
B00000000,B00010100,B00000000,
|
||||
B00000001,B11100011,B11000000,
|
||||
B00000000,B00010100,B00000000,
|
||||
B00000000,B00101010,B00000000,
|
||||
B00000000,B01001001,B00000000
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -205,6 +205,14 @@ FORCE_INLINE void _draw_centered_temp(const celsius_t temp, const uint8_t tx, co
|
||||
}
|
||||
#endif
|
||||
|
||||
#if DO_DRAW_AMMETER
|
||||
FORCE_INLINE void _draw_centered_current(const float current, const uint8_t tx, const uint8_t ty) {
|
||||
const char *str = ftostr31ns(current);
|
||||
const uint8_t len = str[0] != ' ' ? 3 : str[1] != ' ' ? 2 : 1;
|
||||
lcd_put_u8str(tx - len * (INFO_FONT_WIDTH) / 2 + 1, ty, &str[3-len]);
|
||||
}
|
||||
#endif
|
||||
|
||||
#if DO_DRAW_HOTENDS
|
||||
|
||||
// Draw hotend bitmap with current and target temperatures
|
||||
@@ -404,6 +412,13 @@ FORCE_INLINE void _draw_centered_temp(const celsius_t temp, const uint8_t tx, co
|
||||
}
|
||||
#endif
|
||||
|
||||
#if DO_DRAW_AMMETER
|
||||
FORCE_INLINE void _draw_ammeter_status() {
|
||||
if (PAGE_CONTAINS(28 - INFO_FONT_ASCENT, 28 - 1))
|
||||
_draw_centered_current(ammeter.read(), STATUS_AMMETER_TEXT_X, 28);
|
||||
}
|
||||
#endif
|
||||
|
||||
//
|
||||
// Before homing, blink '123' <-> '???'.
|
||||
// Homed but unknown... '123' <-> ' '.
|
||||
@@ -677,6 +692,13 @@ void MarlinUI::draw_status_screen() {
|
||||
u8g.drawBitmapP(STATUS_FLOWMETER_X, flowmetery, STATUS_FLOWMETER_BYTEWIDTH, flowmeterh, blink && cooler.flowpulses ? status_flowmeter_bmp2 : status_flowmeter_bmp1);
|
||||
#endif
|
||||
|
||||
// Laser Ammeter
|
||||
#if DO_DRAW_AMMETER
|
||||
const uint8_t ammetery = STATUS_AMMETER_Y(status_ammeter_bmp_mA),
|
||||
ammeterh = STATUS_AMMETER_HEIGHT(status_ammeter_bmp_mA);
|
||||
if (PAGE_CONTAINS(ammetery, ammetery + ammeterh - 1))
|
||||
u8g.drawBitmapP(STATUS_AMMETER_X, ammetery, STATUS_AMMETER_BYTEWIDTH, ammeterh, (ammeter.current < 0.1f) ? status_ammeter_bmp_mA : status_ammeter_bmp_A);
|
||||
#endif
|
||||
|
||||
// Heated Bed
|
||||
TERN_(DO_DRAW_BED, _draw_bed_status(blink));
|
||||
@@ -690,6 +712,9 @@ void MarlinUI::draw_status_screen() {
|
||||
// Flowmeter
|
||||
TERN_(DO_DRAW_FLOWMETER, _draw_flowmeter_status());
|
||||
|
||||
// Flowmeter
|
||||
TERN_(DO_DRAW_AMMETER, _draw_ammeter_status());
|
||||
|
||||
// Fan, if a bitmap was provided
|
||||
#if DO_DRAW_FAN
|
||||
if (PAGE_CONTAINS(STATUS_FAN_TEXT_Y - INFO_FONT_ASCENT, STATUS_FAN_TEXT_Y - 1)) {
|
||||
|
||||
@@ -27,9 +27,7 @@
|
||||
|
||||
#if ENABLED(SDSUPPORT)
|
||||
bool MediaFileReader::open(const char *filename) {
|
||||
card.init(SD_SPI_SPEED, SDSS);
|
||||
volume.init(&card);
|
||||
root.openRoot(&volume);
|
||||
root = CardReader::getroot();
|
||||
return file.open(&root, filename, O_READ);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_BIO_ADVANCED_SETTINGS_MENU
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_BIO_CONFIRM_HOME_E
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_BIO_CONFIRM_HOME_XYZ
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_BIO_MAIN_MENU
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_BIO_PRINTING_DIALOG_BOX
|
||||
|
||||
+3
-3
@@ -22,14 +22,14 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_BIO_STATUS_SCREEN
|
||||
|
||||
#if ENABLED(TOUCH_UI_PORTRAIT)
|
||||
#include "bio_printer_ui_portrait.h"
|
||||
#include "ui_portrait.h"
|
||||
#else
|
||||
#include "bio_printer_ui_landscape.h"
|
||||
#include "ui_landscape.h"
|
||||
#endif
|
||||
|
||||
#define GRID_COLS 2
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_BIO_TUNE_MENU
|
||||
|
||||
+4
-4
@@ -1,5 +1,5 @@
|
||||
/*****************************************
|
||||
* cocoa_press_advance_settings_menu.cpp *
|
||||
* cocoa_press/advance_settings_menu.cpp *
|
||||
*****************************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -21,9 +21,9 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_COCOA_ADVANCED_SETTINGS_MENU
|
||||
#ifdef COCOA_ADVANCED_SETTINGS_MENU
|
||||
|
||||
using namespace FTDI;
|
||||
using namespace ExtUI;
|
||||
@@ -92,4 +92,4 @@ bool AdvancedSettingsMenu::onTouchEnd(uint8_t tag) {
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#endif // FTDI_COCOA_ADVANCED_SETTINGS_MENU
|
||||
#endif // COCOA_ADVANCED_SETTINGS_MENU
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/***************************************
|
||||
* cocoa_press_advance_settings_menu.h *
|
||||
* cocoa_press/advance_settings_menu.h *
|
||||
***************************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -22,8 +22,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define FTDI_COCOA_ADVANCED_SETTINGS_MENU
|
||||
#define FTDI_COCOA_ADVANCED_SETTINGS_MENU_CLASS AdvancedSettingsMenu
|
||||
#define COCOA_ADVANCED_SETTINGS_MENU
|
||||
#define COCOA_ADVANCED_SETTINGS_MENU_CLASS AdvancedSettingsMenu
|
||||
|
||||
class AdvancedSettingsMenu : public BaseScreen, public CachedScreen<ADVANCED_SETTINGS_SCREEN_CACHE> {
|
||||
public:
|
||||
+7
-7
@@ -1,6 +1,6 @@
|
||||
/************************************
|
||||
* cocoa_press_unload_cartridge.cpp *
|
||||
************************************/
|
||||
/**********************************
|
||||
* cocoa_press/load_chocolate.cpp *
|
||||
**********************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Written By Mark Pelletier 2017 - Aleph Objects, Inc. *
|
||||
@@ -22,10 +22,10 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "screen_data.h"
|
||||
#include "../screens.h"
|
||||
#include "../screen_data.h"
|
||||
|
||||
#ifdef FTDI_COCOA_LOAD_CHOCOLATE_SCREEN
|
||||
#ifdef COCOA_LOAD_CHOCOLATE_SCREEN
|
||||
|
||||
#include "cocoa_press_ui.h"
|
||||
|
||||
@@ -215,4 +215,4 @@ void LoadChocolateScreen::onIdle() {
|
||||
}
|
||||
BaseScreen::onIdle();
|
||||
}
|
||||
#endif // FTDI_COCOA_LOAD_CHOCOLATE_SCREEN
|
||||
#endif // COCOA_LOAD_CHOCOLATE_SCREEN
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/********************************
|
||||
* cocoa_press_load_chocolate.h *
|
||||
* cocoa_press/load_chocolate.h *
|
||||
********************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -23,8 +23,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define FTDI_COCOA_LOAD_CHOCOLATE_SCREEN
|
||||
#define FTDI_COCOA_LOAD_CHOCOLATE_SCREEN_CLASS LoadChocolateScreen
|
||||
#define COCOA_LOAD_CHOCOLATE_SCREEN
|
||||
#define COCOA_LOAD_CHOCOLATE_SCREEN_CLASS LoadChocolateScreen
|
||||
|
||||
struct LoadChocolateScreenData {
|
||||
uint8_t repeat_tag;
|
||||
+4
-4
@@ -1,5 +1,5 @@
|
||||
/*****************************
|
||||
* cocoa_press_main_menu.cpp *
|
||||
* cocoa_press/main_menu.cpp *
|
||||
*****************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -22,9 +22,9 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_COCOA_MAIN_MENU
|
||||
#ifdef COCOA_MAIN_MENU
|
||||
|
||||
using namespace FTDI;
|
||||
using namespace Theme;
|
||||
@@ -97,4 +97,4 @@ bool MainMenu::onTouchEnd(uint8_t tag) {
|
||||
return true;
|
||||
}
|
||||
|
||||
#endif // FTDI_COCOA_MAIN_MENU
|
||||
#endif // COCOA_MAIN_MENU
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/***************************
|
||||
* cocoa_press_main_menu.h *
|
||||
* cocoa_press/main_menu.h *
|
||||
***************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -23,8 +23,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define FTDI_COCOA_MAIN_MENU
|
||||
#define FTDI_COCOA_MAIN_MENU_CLASS MainMenu
|
||||
#define COCOA_MAIN_MENU
|
||||
#define COCOA_MAIN_MENU_CLASS MainMenu
|
||||
|
||||
class MainMenu : public BaseScreen, public CachedScreen<MENU_SCREEN_CACHE> {
|
||||
public:
|
||||
+5
-5
@@ -1,5 +1,5 @@
|
||||
/*********************************
|
||||
* cocoa_press_move_e_screen.cpp *
|
||||
* cocoa_press/move_e_screen.cpp *
|
||||
*********************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -22,10 +22,10 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "screen_data.h"
|
||||
#include "../screens.h"
|
||||
#include "../screen_data.h"
|
||||
|
||||
#ifdef FTDI_COCOA_MOVE_E_SCREEN
|
||||
#ifdef COCOA_MOVE_E_SCREEN
|
||||
|
||||
using namespace FTDI;
|
||||
using namespace ExtUI;
|
||||
@@ -60,4 +60,4 @@ void MoveEScreen::onIdle() {
|
||||
}
|
||||
BaseScreen::onIdle();
|
||||
}
|
||||
#endif // FTDI_COCOA_MOVE_E_SCREEN
|
||||
#endif // COCOA_MOVE_E_SCREEN
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/*******************************
|
||||
* cocoa_press_move_e_screen.h *
|
||||
* cocoa_press/move_e_screen.h *
|
||||
*******************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -23,8 +23,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define FTDI_COCOA_MOVE_E_SCREEN
|
||||
#define FTDI_COCOA_MOVE_E_SCREEN_CLASS MoveEScreen
|
||||
#define COCOA_MOVE_E_SCREEN
|
||||
#define COCOA_MOVE_E_SCREEN_CLASS MoveEScreen
|
||||
|
||||
class MoveEScreen : public BaseMoveAxisScreen, public CachedScreen<MOVE_E_SCREEN_CACHE> {
|
||||
public:
|
||||
+5
-5
@@ -1,5 +1,5 @@
|
||||
/***********************************
|
||||
* cocoa_press_move_xyz_screen.cpp *
|
||||
* cocoa_press/move_xyz_screen.cpp *
|
||||
***********************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -22,10 +22,10 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "screen_data.h"
|
||||
#include "../screens.h"
|
||||
#include "../screen_data.h"
|
||||
|
||||
#ifdef FTDI_COCOA_MOVE_XYZ_SCREEN
|
||||
#ifdef COCOA_MOVE_XYZ_SCREEN
|
||||
|
||||
using namespace FTDI;
|
||||
using namespace ExtUI;
|
||||
@@ -49,4 +49,4 @@ void MoveXYZScreen::onIdle() {
|
||||
}
|
||||
BaseScreen::onIdle();
|
||||
}
|
||||
#endif // FTDI_COCOA_MOVE_XYZ_SCREEN
|
||||
#endif // COCOA_MOVE_XYZ_SCREEN
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/*********************************
|
||||
* cocoa_press_move_xyz_screen.h *
|
||||
* cocoa_press/move_xyz_screen.h *
|
||||
*********************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -23,8 +23,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define FTDI_COCOA_MOVE_XYZ_SCREEN
|
||||
#define FTDI_COCOA_MOVE_XYZ_SCREEN_CLASS MoveXYZScreen
|
||||
#define COCOA_MOVE_XYZ_SCREEN
|
||||
#define COCOA_MOVE_XYZ_SCREEN_CLASS MoveXYZScreen
|
||||
|
||||
class MoveXYZScreen : public BaseMoveAxisScreen, public CachedScreen<MOVE_XYZ_SCREEN_CACHE> {
|
||||
public:
|
||||
+4
-4
@@ -1,5 +1,5 @@
|
||||
/********************************
|
||||
* cocoa_press_preheat_menu.cpp *
|
||||
* cocoa_press/preheat_menu.cpp *
|
||||
********************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -20,9 +20,9 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_COCOA_PREHEAT_MENU
|
||||
#ifdef COCOA_PREHEAT_MENU
|
||||
|
||||
using namespace FTDI;
|
||||
using namespace ExtUI;
|
||||
@@ -113,4 +113,4 @@ bool PreheatMenu::onTouchEnd(uint8_t tag) {
|
||||
return true;
|
||||
}
|
||||
|
||||
#endif // FTDI_COCOA_PREHEAT_MENU
|
||||
#endif // COCOA_PREHEAT_MENU
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/******************************
|
||||
* cocoa_press_preheat_menu.h *
|
||||
* cocoa_press/preheat_menu.h *
|
||||
******************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -21,8 +21,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define FTDI_COCOA_PREHEAT_MENU
|
||||
#define FTDI_COCOA_PREHEAT_MENU_CLASS PreheatMenu
|
||||
#define COCOA_PREHEAT_MENU
|
||||
#define COCOA_PREHEAT_MENU_CLASS PreheatMenu
|
||||
|
||||
class PreheatMenu : public BaseScreen, public CachedScreen<PREHEAT_MENU_CACHE> {
|
||||
public:
|
||||
+7
-7
@@ -1,6 +1,6 @@
|
||||
/****************************
|
||||
* preheat_timer_screen.cpp *
|
||||
****************************/
|
||||
/***************************************
|
||||
* cocoapress/preheat_timer_screen.cpp *
|
||||
***************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Written By Marcio Teixeira 2019 - Cocoa Press *
|
||||
@@ -20,10 +20,10 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "screen_data.h"
|
||||
#include "../screens.h"
|
||||
#include "../screen_data.h"
|
||||
|
||||
#ifdef FTDI_COCOA_PREHEAT_SCREEN
|
||||
#ifdef COCOA_PREHEAT_SCREEN
|
||||
|
||||
using namespace FTDI;
|
||||
using namespace ExtUI;
|
||||
@@ -168,4 +168,4 @@ void PreheatTimerScreen::onIdle() {
|
||||
BaseScreen::onIdle();
|
||||
}
|
||||
|
||||
#endif // FTDI_COCOA_PREHEAT_SCREEN
|
||||
#endif // COCOA_PREHEAT_SCREEN
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/*********************************
|
||||
* cocoapress_preheat_screen.cpp *
|
||||
* cocoapress/preheat_screen.cpp *
|
||||
*********************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -21,8 +21,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define FTDI_COCOA_PREHEAT_SCREEN
|
||||
#define FTDI_COCOA_PREHEAT_SCREEN_CLASS PreheatTimerScreen
|
||||
#define COCOA_PREHEAT_SCREEN
|
||||
#define COCOA_PREHEAT_SCREEN_CLASS PreheatTimerScreen
|
||||
|
||||
struct PreheatTimerScreenData {
|
||||
uint32_t start_ms;
|
||||
+4
-4
@@ -1,5 +1,5 @@
|
||||
/*********************************
|
||||
* cocoa_press_status_screen.cpp *
|
||||
* cocoa_press/status_screen.cpp *
|
||||
*********************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -22,9 +22,9 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_COCOA_STATUS_SCREEN
|
||||
#ifdef COCOA_STATUS_SCREEN
|
||||
|
||||
#include "cocoa_press_ui.h"
|
||||
|
||||
@@ -294,4 +294,4 @@ void StatusScreen::onIdle() {
|
||||
}
|
||||
}
|
||||
|
||||
#endif // FTDI_COCOA_STATUS_SCREEN
|
||||
#endif // COCOA_STATUS_SCREEN
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/*******************************
|
||||
* cocoa_press_status_screen.h *
|
||||
* cocoa_press/status_screen.h *
|
||||
*******************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -23,8 +23,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define FTDI_COCOA_STATUS_SCREEN
|
||||
#define FTDI_COCOA_STATUS_SCREEN_CLASS StatusScreen
|
||||
#define COCOA_STATUS_SCREEN
|
||||
#define COCOA_STATUS_SCREEN_CLASS StatusScreen
|
||||
|
||||
class StatusScreen : public BaseScreen, public CachedScreen<STATUS_SCREEN_CACHE> {
|
||||
private:
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
#if ENABLED(TOUCH_UI_FTDI_EVE)
|
||||
|
||||
#include "screens/screens.h"
|
||||
#include "screens.h"
|
||||
|
||||
namespace ExtUI {
|
||||
using namespace Theme;
|
||||
|
||||
@@ -82,8 +82,8 @@ namespace FTDI {
|
||||
box_width = w;
|
||||
measure_text_box(fm, str, box_width, box_height);
|
||||
if (box_width <= (uint16_t)w && box_height <= (uint16_t)h) break;
|
||||
fm.load(--font);
|
||||
if (font == 26) break;
|
||||
fm.load(--font);
|
||||
}
|
||||
|
||||
const uint16_t dx = (options & OPT_RIGHTX) ? w :
|
||||
|
||||
+5
-5
@@ -21,12 +21,12 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_ABOUT_SCREEN
|
||||
|
||||
#define GRID_COLS 4
|
||||
#define GRID_ROWS 7
|
||||
#define GRID_ROWS 8
|
||||
|
||||
using namespace FTDI;
|
||||
using namespace Theme;
|
||||
@@ -47,9 +47,9 @@ void AboutScreen::onRedraw(draw_mode_t) {
|
||||
#define HEADING_POS BTN_POS(1,2), BTN_SIZE(4,1)
|
||||
#define FW_VERS_POS BTN_POS(1,3), BTN_SIZE(4,1)
|
||||
#define FW_INFO_POS BTN_POS(1,4), BTN_SIZE(4,1)
|
||||
#define LICENSE_POS BTN_POS(1,5), BTN_SIZE(4,2)
|
||||
#define STATS_POS BTN_POS(1,7), BTN_SIZE(2,1)
|
||||
#define BACK_POS BTN_POS(3,7), BTN_SIZE(2,1)
|
||||
#define LICENSE_POS BTN_POS(1,5), BTN_SIZE(4,3)
|
||||
#define STATS_POS BTN_POS(1,8), BTN_SIZE(2,1)
|
||||
#define BACK_POS BTN_POS(3,8), BTN_SIZE(2,1)
|
||||
|
||||
#define _INSET_POS(x,y,w,h) x + w/10, y, w - w/5, h
|
||||
#define INSET_POS(pos) _INSET_POS(pos)
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_ADVANCED_SETTINGS_MENU
|
||||
|
||||
+2
-2
@@ -21,8 +21,8 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "screen_data.h"
|
||||
#include "../screens.h"
|
||||
#include "../screen_data.h"
|
||||
|
||||
#ifdef FTDI_ALERT_DIALOG_BOX
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_BACKLASH_COMP_SCREEN
|
||||
|
||||
+2
-2
@@ -21,8 +21,8 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "screen_data.h"
|
||||
#include "../screens.h"
|
||||
#include "../screen_data.h"
|
||||
|
||||
#ifdef FTDI_BASE_NUMERIC_ADJ_SCREEN
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_BASE_SCREEN
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_BED_MESH_BASE
|
||||
|
||||
+2
-2
@@ -20,8 +20,8 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "screen_data.h"
|
||||
#include "../screens.h"
|
||||
#include "../screen_data.h"
|
||||
|
||||
#ifdef FTDI_BED_MESH_EDIT_SCREEN
|
||||
|
||||
+4
-4
@@ -20,8 +20,8 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "screen_data.h"
|
||||
#include "../screens.h"
|
||||
#include "../screen_data.h"
|
||||
|
||||
#ifdef FTDI_BED_MESH_VIEW_SCREEN
|
||||
|
||||
@@ -69,7 +69,7 @@ void BedMeshViewScreen::onEntry() {
|
||||
void BedMeshViewScreen::drawHighlightedPointValue() {
|
||||
CommandProcessor cmd;
|
||||
cmd.font(Theme::font_medium)
|
||||
.colors(normal_btn)
|
||||
.cmd(COLOR_RGB(bg_text_enabled))
|
||||
.text(Z_LABEL_POS, GET_TEXT_F(MSG_MESH_EDIT_Z))
|
||||
.font(font_small);
|
||||
|
||||
@@ -161,7 +161,7 @@ void BedMeshViewScreen::doProbe() {
|
||||
void BedMeshViewScreen::doMeshValidation() {
|
||||
mydata.count = 0;
|
||||
GOTO_SCREEN(StatusScreen);
|
||||
injectCommands_P(PSTR("G28 O\nM117 Heating...\nG26 R X0 Y0"));
|
||||
injectCommands_P(PSTR("M75\nG28 O\nM117 Heating...\nG26 R X0 Y0\nG27\nM77"));
|
||||
}
|
||||
|
||||
void BedMeshViewScreen::show() {
|
||||
+1
-1
@@ -22,7 +22,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_BOOT_SCREEN
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_CASE_LIGHT_SCREEN
|
||||
|
||||
+2
-2
@@ -21,8 +21,8 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "screen_data.h"
|
||||
#include "../screens.h"
|
||||
#include "../screen_data.h"
|
||||
|
||||
#ifdef FTDI_CHANGE_FILAMENT_SCREEN
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_CONFIRM_ABORT_PRINT_DIALOG_BOX
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_CONFIRM_AUTO_CALIBRATION_DIALOG_BOX
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_CONFIRM_ERASE_FLASH_DIALOG_BOX
|
||||
|
||||
+2
-2
@@ -21,8 +21,8 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "screen_data.h"
|
||||
#include "../screens.h"
|
||||
#include "../screen_data.h"
|
||||
|
||||
#ifdef FTDI_CONFIRM_START_PRINT_DIALOG_BOX
|
||||
|
||||
+2
-2
@@ -21,8 +21,8 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "screen_data.h"
|
||||
#include "../screens.h"
|
||||
#include "../screen_data.h"
|
||||
|
||||
#ifdef FTDI_CONFIRM_USER_REQUEST_ALERT_BOX
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
*/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_CUSTOM_USER_MENUS
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include "../config.h"
|
||||
#include "screens.h"
|
||||
#include "../screens.h"
|
||||
|
||||
#ifdef FTDI_DEFAULT_ACCELERATION_SCREEN
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user