Merge branch 'develop' of https://server.creatbot.com/Gitea/CreatBot/CreatBotKlipper into develop
This commit is contained in:
commit
5875595331
@ -373,7 +373,10 @@ gcode:
|
||||
|
||||
[gcode_macro T0]
|
||||
gcode:
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor|default("") == ""
|
||||
else True if not printer[client.filament_sensor].enabled
|
||||
else printer[client.filament_sensor].filament_detected|default(False) %}
|
||||
{% set printing = printer.print_stats.state == "printing" %}
|
||||
{% if filament_insert or printing == False %}
|
||||
SET_SERVO SERVO=switch_nozzle angle=135
|
||||
@ -400,7 +403,10 @@ gcode:
|
||||
{% set y_offset = sv.nozzle_y_offset_val|default(0)|float %}
|
||||
{% set z_offset = sv.nozzle_z_offset_val|default(0)|float %}
|
||||
{% set x_offset = x_offset - 59 %}
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder1"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor1|default("") == ""
|
||||
else True if not printer[client.filament_sensor1].enabled
|
||||
else printer[client.filament_sensor1].filament_detected|default(False) %}
|
||||
{% set printing = (printer.print_stats.state == "printing") %}
|
||||
{% if filament_insert or printing == False %}
|
||||
SET_SERVO SERVO=switch_nozzle angle=135
|
||||
|
@ -305,7 +305,10 @@ gcode:
|
||||
|
||||
[gcode_macro T0]
|
||||
gcode:
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor|default("") == ""
|
||||
else True if not printer[client.filament_sensor].enabled
|
||||
else printer[client.filament_sensor].filament_detected|default(False) %}
|
||||
{% set printing = printer.print_stats.state == "printing" %}
|
||||
{% if filament_insert or printing == False %}
|
||||
SET_SERVO SERVO=switch_nozzle angle=135
|
||||
@ -332,7 +335,10 @@ gcode:
|
||||
{% set y_offset = sv.nozzle_y_offset_val|default(0)|float %}
|
||||
{% set z_offset = sv.nozzle_z_offset_val|default(0)|float %}
|
||||
{% set x_offset = x_offset - 59 %}
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder1"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor1|default("") == ""
|
||||
else True if not printer[client.filament_sensor1].enabled
|
||||
else printer[client.filament_sensor1].filament_detected|default(False) %}
|
||||
{% set printing = (printer.print_stats.state == "printing") %}
|
||||
{% if filament_insert or printing == False %}
|
||||
SET_SERVO SERVO=switch_nozzle angle=135
|
||||
|
@ -373,7 +373,10 @@ gcode:
|
||||
|
||||
[gcode_macro T0]
|
||||
gcode:
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor|default("") == ""
|
||||
else True if not printer[client.filament_sensor].enabled
|
||||
else printer[client.filament_sensor].filament_detected|default(False) %}
|
||||
{% set printing = printer.print_stats.state == "printing" %}
|
||||
{% if filament_insert or printing == False %}
|
||||
SET_SERVO SERVO=switch_nozzle angle=135
|
||||
@ -400,7 +403,10 @@ gcode:
|
||||
{% set y_offset = sv.nozzle_y_offset_val|default(0)|float %}
|
||||
{% set z_offset = sv.nozzle_z_offset_val|default(0)|float %}
|
||||
{% set x_offset = x_offset - 59 %}
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder1"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor1|default("") == ""
|
||||
else True if not printer[client.filament_sensor1].enabled
|
||||
else printer[client.filament_sensor1].filament_detected|default(False) %}
|
||||
{% set printing = (printer.print_stats.state == "printing") %}
|
||||
{% if filament_insert or printing == False %}
|
||||
SET_SERVO SERVO=switch_nozzle angle=135
|
||||
|
@ -306,7 +306,10 @@ gcode:
|
||||
|
||||
[gcode_macro T0]
|
||||
gcode:
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor|default("") == ""
|
||||
else True if not printer[client.filament_sensor].enabled
|
||||
else printer[client.filament_sensor].filament_detected|default(False) %}
|
||||
{% set printing = printer.print_stats.state == "printing" %}
|
||||
{% if filament_insert or printing == False %}
|
||||
SET_SERVO SERVO=switch_nozzle angle=135
|
||||
@ -332,8 +335,11 @@ gcode:
|
||||
{% set x_offset = sv.nozzle_x_offset_val|default(0)|float %}
|
||||
{% set y_offset = sv.nozzle_y_offset_val|default(0)|float %}
|
||||
{% set z_offset = sv.nozzle_z_offset_val|default(0)|float %}
|
||||
{% set x_offset = x_offset - 59 %}
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder1"].filament_detected|default(False) %}
|
||||
{% set x_offset = x_offset - 59 %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor1|default("") == ""
|
||||
else True if not printer[client.filament_sensor1].enabled
|
||||
else printer[client.filament_sensor1].filament_detected|default(False) %}
|
||||
{% set printing = (printer.print_stats.state == "printing") %}
|
||||
{% if filament_insert or printing == False %}
|
||||
SET_SERVO SERVO=switch_nozzle angle=135
|
||||
|
@ -49,7 +49,7 @@ square_corner_velocity: 5.0
|
||||
speed: 100
|
||||
horizontal_move_z: 7
|
||||
mesh_min: 34.6,17.4
|
||||
mesh_max: 420, 300
|
||||
mesh_max: 420, 290
|
||||
probe_count: 5,4
|
||||
mesh_pps: 2,2
|
||||
fade_end: 5
|
||||
@ -66,7 +66,7 @@ full_steps_per_rotation: 200
|
||||
endstop_pin: ^PC10
|
||||
position_min: -20
|
||||
position_endstop: -20
|
||||
position_max: 475
|
||||
position_max: 400
|
||||
homing_speed: 100
|
||||
homing_retract_dist: 10
|
||||
step_pulse_duration:0.0000025
|
||||
@ -447,7 +447,10 @@ gcode:
|
||||
|
||||
[gcode_macro T0]
|
||||
gcode:
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor|default("") == ""
|
||||
else True if not printer[client.filament_sensor].enabled
|
||||
else printer[client.filament_sensor].filament_detected|default(False) %}
|
||||
{% set printing = printer.print_stats.state == "printing" %}
|
||||
{% if filament_insert or printing == False %}
|
||||
{% if "x" not in printer.toolhead.homed_axes %}
|
||||
@ -495,7 +498,10 @@ gcode:
|
||||
{% set y_offset = svv.nozzle_y_offset_val|default(0)|float %}
|
||||
{% set z_offset = svv.nozzle_z_offset_val|default(0)|float %}
|
||||
|
||||
{% set filament_insert = printer["filament_switch_sensor extruder1"].filament_detected|default(False) %}
|
||||
{% set client = printer['gcode_macro _CLIENT_VARIABLE']|default({}) %}
|
||||
{% set filament_insert = True if client.filament_sensor1|default("") == ""
|
||||
else True if not printer[client.filament_sensor1].enabled
|
||||
else printer[client.filament_sensor1].filament_detected|default(False) %}
|
||||
{% set printing = (printer.print_stats.state == "printing") %}
|
||||
{% if filament_insert or printing == False %}
|
||||
{% if "x" not in printer.toolhead.homed_axes %}
|
||||
|
@ -560,6 +560,7 @@ class MCU:
|
||||
self._baud = 0
|
||||
self._canbus_iface = None
|
||||
canbus_uuid = config.get('canbus_uuid', None)
|
||||
self.min_firmware_version = config.get('min_firmware_version', '1.0.0')
|
||||
if canbus_uuid is not None:
|
||||
self._serialport = canbus_uuid
|
||||
self._canbus_iface = config.get('canbus_interface', 'can0')
|
||||
@ -822,6 +823,7 @@ class MCU:
|
||||
self._get_status_info['mcu_version'] = version
|
||||
self._get_status_info['mcu_build_versions'] = build_versions
|
||||
self._get_status_info['mcu_constants'] = msgparser.get_constants()
|
||||
self._get_status_info['min_firmware_version'] = self.min_firmware_version
|
||||
self.register_response(self._handle_shutdown, 'shutdown')
|
||||
self.register_response(self._handle_shutdown, 'is_shutdown')
|
||||
self.register_response(self._handle_mcu_stats, 'stats')
|
||||
|
@ -201,6 +201,15 @@ config CANBUS_FILTER
|
||||
bool
|
||||
default y if CANSERIAL
|
||||
|
||||
menu "CAN bus UUID"
|
||||
depends on CANBUS && LOW_LEVEL_OPTIONS
|
||||
config CAN_UUID_USE_CHIPID
|
||||
bool "CAN bus UUID Hash from CHIPID" if HAVE_CHIPID
|
||||
config CAN_UUID_CUSTOM
|
||||
string "CAN bus UUID Hash" if !CAN_UUID_USE_CHIPID
|
||||
default "000000000010"
|
||||
endmenu
|
||||
|
||||
# Support setting gpio state at startup
|
||||
config INITIAL_PINS
|
||||
string "GPIO pins to set at micro-controller startup"
|
||||
|
@ -345,11 +345,59 @@ command_get_canbus_id(uint32_t *args)
|
||||
}
|
||||
DECL_COMMAND_FLAGS(command_get_canbus_id, HF_IN_SHUTDOWN, "get_canbus_id");
|
||||
|
||||
int
|
||||
hex_char_to_decimal(char c) {
|
||||
if (c >= '0' && c <= '9') {
|
||||
return c - '0';
|
||||
} else if (c >= 'A' && c <= 'F') {
|
||||
return c - 'A' + 10;
|
||||
} else if (c >= 'a' && c <= 'f') {
|
||||
return c - 'a' + 10;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint64_t
|
||||
hex_to_decimal(const char *hex_num) {
|
||||
uint64_t decimal_num = 0;
|
||||
int len = strlen(hex_num);
|
||||
uint64_t power = 1;
|
||||
for (int i = len - 1; i >= 0; i--) {
|
||||
int digit = hex_char_to_decimal(hex_num[i]);
|
||||
decimal_num += (uint64_t)digit * power;
|
||||
power *= 16;
|
||||
}
|
||||
return decimal_num;
|
||||
}
|
||||
|
||||
void
|
||||
reverse_hex_string(char *hex_str) {
|
||||
int len = strlen(hex_str);
|
||||
if (len % 2 != 0) {
|
||||
return;
|
||||
}
|
||||
for (int i = 0; i < len / 2; i += 2) {
|
||||
char temp1 = hex_str[i];
|
||||
char temp2 = hex_str[i + 1];
|
||||
hex_str[i] = hex_str[len - i - 2];
|
||||
hex_str[i + 1] = hex_str[len - i - 1];
|
||||
hex_str[len - i - 2] = temp1;
|
||||
hex_str[len - i - 1] = temp2;
|
||||
}
|
||||
}
|
||||
void
|
||||
canserial_set_uuid(uint8_t *raw_uuid, uint32_t raw_uuid_len)
|
||||
{
|
||||
uint64_t hash = fasthash64(raw_uuid, raw_uuid_len, 0xA16231A7);
|
||||
memcpy(CanData.uuid, &hash, sizeof(CanData.uuid));
|
||||
if (CONFIG_CAN_UUID_USE_CHIPID){
|
||||
uint64_t hash = fasthash64(raw_uuid, raw_uuid_len, 0xA16231A7);
|
||||
memcpy(CanData.uuid, &hash, sizeof(CanData.uuid));
|
||||
}else{
|
||||
char uuid_str[32];
|
||||
strcpy(uuid_str, CONFIG_CAN_UUID_CUSTOM);
|
||||
reverse_hex_string(uuid_str);
|
||||
uint64_t config_uuid = hex_to_decimal(uuid_str);
|
||||
memcpy(CanData.uuid, &config_uuid, sizeof(CanData.uuid));
|
||||
}
|
||||
canserial_notify_rx();
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user