添加热敏打印机调试功能

This commit is contained in:
admin
2026-02-27 16:39:54 +08:00
parent 2b6bcc83dc
commit 46a800c499
10 changed files with 951 additions and 35 deletions

View File

@@ -51,6 +51,14 @@ static const char *TAG = "printer_protocol";
static void on_rx_frame(const uint8_t *data, size_t len);
static printer_backend_t default_backend_on_startup(void) {
// This hardware has a first-class direct path; BLE remains opt-in via API.
if (runtime_policy_direct_printer_enabled()) {
return PRINTER_BACKEND_DIRECT;
}
return PRINTER_BACKEND_BLE;
}
static void backend_capabilities_for(printer_backend_t backend, printer_capabilities_t *out_caps) {
if (out_caps == NULL) {
return;
@@ -643,9 +651,7 @@ esp_err_t printer_protocol_init(void) {
s_protocol_initialized = true;
s_protocol_stopping = false;
s_ble_client_initialized = false;
s_backend = (runtime_policy_printer_default_backend() == 1 && runtime_policy_direct_printer_enabled())
? PRINTER_BACKEND_DIRECT
: PRINTER_BACKEND_BLE;
s_backend = default_backend_on_startup();
esp_err_t err = ensure_backend_ready(s_backend);
if (err != ESP_OK) {
@@ -757,7 +763,7 @@ esp_err_t printer_protocol_stop(uint32_t timeout_ms) {
s_protocol_initialized = false;
s_protocol_stopping = false;
s_ble_client_initialized = false;
s_backend = PRINTER_BACKEND_BLE;
s_backend = default_backend_on_startup();
runtime_diag_set_gauge(RUNTIME_DIAG_GAUGE_STATUS_POLL_PAUSE_DEPTH, 0);
runtime_diag_set_gauge(RUNTIME_DIAG_GAUGE_PRINTER_QUEUE_DEPTH, 0);