Skip to content

Commit eaa0ed9

Browse files
committed
0.1.8rc2
fix references to commands after migrating to internal pybambu module
1 parent 14af93b commit eaa0ed9

8 files changed

Lines changed: 25 additions & 10 deletions

File tree

octoprint_bambu_printer/bambu_print_plugin.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
from __future__ import absolute_import, annotations
2+
3+
import json
24
from pathlib import Path
35
import threading
46
from time import perf_counter
@@ -101,7 +103,7 @@ def get_settings_defaults(self):
101103
"always_use_default_options": False,
102104
"ams_data": [],
103105
"ams_mapping": [],
104-
"ams_current_tray": None,
106+
"ams_current_tray": 255,
105107
}
106108

107109
def is_api_adminonly(self):

octoprint_bambu_printer/printer/bambu_virtual_printer.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ class BambuPrinterTelemetry:
4343
lastTempAt: float = time.monotonic()
4444
firmwareName: str = "Bambu"
4545
extruderCount: int = 1
46-
ams_current_tray: int = -1
46+
ams_current_tray: int = 255
4747

4848

4949
# noinspection PyBroadException
@@ -210,7 +210,8 @@ def _update_printer_info(self):
210210
self._telemetry.bedTemp = temperatures.bed_temp
211211
self._telemetry.bedTargetTemp = temperatures.target_bed_temp
212212
self._telemetry.chamberTemp = temperatures.chamber_temp
213-
self._telemetry.ams_current_tray = device_data.push_all_data["ams"]["tray_now"] or -1
213+
if device_data.push_all_data:
214+
self._telemetry.ams_current_tray = device_data.push_all_data["ams"]["tray_now"] or 255
214215

215216
if self._telemetry.ams_current_tray != self._settings.get_int(["ams_current_tray"]):
216217
self._settings.set_int(["ams_current_tray"], self._telemetry.ams_current_tray)
@@ -356,7 +357,7 @@ def select_project_file(self, file_path: str) -> bool:
356357
return True
357358

358359
if file_info is None:
359-
self._log.error(f"Cannot select not existing file: {file_path}")
360+
self._log.error(f"Cannot select non-existent file: {file_path}")
360361
return False
361362

362363
self._selected_project_file = file_info

octoprint_bambu_printer/printer/print_job.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@
1010
class PrintJob:
1111
file_info: FileInfo
1212
progress: int
13+
remaining_time: int
14+
current_layer: int
15+
total_layers: int
1316

1417
@property
1518
def file_position(self):

octoprint_bambu_printer/printer/states/paused_state.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,14 @@ def finalize(self):
3737

3838
def start_new_print(self):
3939
if self._printer.bambu_client.connected:
40-
if self._printer.bambu_client.publish(pybambu.commands.RESUME):
40+
if self._printer.bambu_client.publish(octoprint_bambu_printer.printer.pybambu.commands.RESUME):
4141
self._log.info("print resumed")
4242
else:
4343
self._log.info("print resume failed")
4444

4545
def cancel_print(self):
4646
if self._printer.bambu_client.connected:
47-
if self._printer.bambu_client.publish(pybambu.commands.STOP):
47+
if self._printer.bambu_client.publish(octoprint_bambu_printer.printer.pybambu.commands.STOP):
4848
self._log.info("print cancelled")
4949
self._printer.finalize_print_job()
5050
else:

octoprint_bambu_printer/printer/states/printing_state.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -75,19 +75,19 @@ def update_print_job_info(self):
7575
return
7676

7777
progress = print_job_info.print_percentage
78-
self._printer.current_print_job = PrintJob(project_file_info, progress)
78+
self._printer.current_print_job = PrintJob(project_file_info, progress, print_job_info.remaining_time, print_job_info.current_layer, print_job_info.total_layers)
7979
self._printer.select_project_file(project_file_info.path.as_posix())
8080

8181
def pause_print(self):
8282
if self._printer.bambu_client.connected:
83-
if self._printer.bambu_client.publish(pybambu.commands.PAUSE):
83+
if self._printer.bambu_client.publish(octoprint_bambu_printer.printer.pybambu.commands.PAUSE):
8484
self._log.info("print paused")
8585
else:
8686
self._log.info("print pause failed")
8787

8888
def cancel_print(self):
8989
if self._printer.bambu_client.connected:
90-
if self._printer.bambu_client.publish(pybambu.commands.STOP):
90+
if self._printer.bambu_client.publish(octoprint_bambu_printer.printer.pybambu.commands.STOP):
9191
self._log.info("print cancelled")
9292
self._printer.finalize_print_job()
9393
else:

octoprint_bambu_printer/static/js/bambu_printer.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ $(function () {
1818
self.use_ams = true;
1919
self.ams_mapping = ko.observableArray([]);
2020

21+
self.job_info = ko.observable();
22+
2123
self.ams_mapping_computed = function(){
2224
var output_list = [];
2325
var index = 0;
@@ -92,6 +94,10 @@ $(function () {
9294
self.listHelper.updateItems(data.files);
9395
self.listHelper.resetPage();
9496
}
97+
98+
if (data.job_info !== undefined) {
99+
self.job_info(data.job_info);
100+
}
95101
};
96102

97103
self.onBeforeBinding = function () {

octoprint_bambu_printer/templates/bambu_printer_sidebar.jinja2

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,6 @@
1010
</div>
1111
<!-- /ko -->
1212
</div>
13+
<div class="row-fluid" data-bind="visible: job_info">
14+
<div class="span6">{{ _('Layer') }}:</div><div class="span6" data-bind="text: function(){return (job_info.current_layer() + ' of ' + job_info.total_layers);}"></div>
15+
</div>

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
plugin_name = "OctoPrint-BambuPrinter"
1515

1616
# The plugin's version. Can be overwritten within OctoPrint's internal data via __plugin_version__ in the plugin module
17-
plugin_version = "0.1.8rc1"
17+
plugin_version = "0.1.8rc2"
1818

1919
# The plugin's description. Can be overwritten within OctoPrint's internal data via __plugin_description__ in the plugin
2020
# module

0 commit comments

Comments
 (0)