diff --git a/components/domain/CMakeLists.txt b/components/domain/CMakeLists.txt index b341edc..17c94d8 100644 --- a/components/domain/CMakeLists.txt +++ b/components/domain/CMakeLists.txt @@ -29,7 +29,6 @@ idf_component_register( espressif__libpng json mbedtls - esp_coex EMBED_FILES "assets/fonts/cn16_index.bin" "assets/fonts/cn16_glyphs.bin" diff --git a/components/domain/src/image_generation.c b/components/domain/src/image_generation.c index 449faaf..88da384 100644 --- a/components/domain/src/image_generation.c +++ b/components/domain/src/image_generation.c @@ -6,7 +6,6 @@ #include #include "cJSON.h" -#include "esp_coexist.h" #include "esp_crt_bundle.h" #include "esp_heap_caps.h" #include "esp_http_client.h" @@ -80,36 +79,6 @@ static SemaphoreHandle_t s_prewarm_lock; static bool s_prewarm_running; static char s_last_oss_origin[160] = "https://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/"; -static bool image_generation_boost_coex_for_download(void) { -#if CONFIG_ESP_COEX_SW_COEXIST_ENABLE && CONFIG_TQ_Z_IMAGE_COEX_PREFER_WIFI_DURING_DOWNLOAD - esp_err_t rc = esp_coex_preference_set(ESP_COEX_PREFER_WIFI); - if (rc != ESP_OK) { - ESP_LOGW(TAG, "failed to prefer Wi-Fi coexist mode, rc=0x%x", (unsigned)rc); - return false; - } - ESP_LOGI(TAG, "coexist prefer Wi-Fi enabled for image download"); - return true; -#else - return false; -#endif -} - -static void image_generation_restore_coex_after_download(bool boosted) { -#if CONFIG_ESP_COEX_SW_COEXIST_ENABLE && CONFIG_TQ_Z_IMAGE_COEX_PREFER_WIFI_DURING_DOWNLOAD - if (!boosted) { - return; - } - esp_err_t rc = esp_coex_preference_set(ESP_COEX_PREFER_BALANCE); - if (rc != ESP_OK) { - ESP_LOGW(TAG, "failed to restore coexist balance mode, rc=0x%x", (unsigned)rc); - return; - } - ESP_LOGI(TAG, "coexist preference restored to balance"); -#else - (void)boosted; -#endif -} - static void image_generation_fill_err(char *err, size_t err_len, const char *msg) { if (err != NULL && err_len > 0) { snprintf(err, err_len, "%s", msg != NULL ? msg : "unknown error"); @@ -791,7 +760,6 @@ static esp_err_t image_generation_download_png(image_generation_result_t *out_re char *err, size_t err_len) { ESP_LOGI(TAG, "generated image download start, timeout_ms=%u", (unsigned)timeout_ms); - bool coex_boosted = image_generation_boost_coex_for_download(); esp_http_client_config_t config = { .url = out_result->image_url, @@ -822,7 +790,6 @@ static esp_err_t image_generation_download_png(image_generation_result_t *out_re (unsigned)rc, (err != NULL && err[0] != '\0') ? err : "download failed"); bytes_buffer_free(&resp); - image_generation_restore_coex_after_download(coex_boosted); return rc; } @@ -831,7 +798,6 @@ static esp_err_t image_generation_download_png(image_generation_result_t *out_re if (rc != ESP_OK) { bytes_buffer_free(&resp); image_generation_fill_err(err, err_len, "image download failed"); - image_generation_restore_coex_after_download(coex_boosted); return ESP_FAIL; } extract_remote_error_message((const char *)resp.data, http_status, err, err_len); @@ -840,7 +806,6 @@ static esp_err_t image_generation_download_png(image_generation_result_t *out_re http_status, (err != NULL && err[0] != '\0') ? err : "image download failed"); bytes_buffer_free(&resp); - image_generation_restore_coex_after_download(coex_boosted); return ESP_FAIL; } @@ -851,14 +816,12 @@ static esp_err_t image_generation_download_png(image_generation_result_t *out_re bytes_buffer_free(&resp); image_generation_fill_err(err, err_len, "downloaded image is not png"); ESP_LOGW(TAG, "generated image download invalid png signature"); - image_generation_restore_coex_after_download(coex_boosted); return ESP_FAIL; } out_result->png = resp.data; out_result->png_len = resp.len; ESP_LOGI(TAG, "generated image download done, png_bytes=%u", (unsigned)out_result->png_len); - image_generation_restore_coex_after_download(coex_boosted); return ESP_OK; } diff --git a/components/domain/src/printer_protocol.c b/components/domain/src/printer_protocol.c index e60cc39..b47475d 100644 --- a/components/domain/src/printer_protocol.c +++ b/components/domain/src/printer_protocol.c @@ -42,11 +42,11 @@ static const char *TAG = "printer_protocol"; #define PRINT_WORKER_CORE_ID 1 #endif -static esp_err_t ensure_direct_backend_ready(void) { +static esp_err_t ensure_printer_driver_ready(void) { return platform_printer_init(); } -static void refresh_direct_status_locked(void) { +static void refresh_printer_status_locked(void) { platform_printer_sensors_t sensors = {0}; if (platform_printer_get_sensors(&sensors) == ESP_OK) { s_status.has_paper = sensors.has_paper; @@ -224,7 +224,7 @@ static void status_poll_task(void *arg) { } if (can_poll && xSemaphoreTake(s_mutex, pdMS_TO_TICKS(100)) == pdTRUE) { - refresh_direct_status_locked(); + refresh_printer_status_locked(); xSemaphoreGive(s_mutex); } @@ -287,7 +287,7 @@ esp_err_t printer_protocol_init(void) { s_protocol_initialized = true; s_protocol_stopping = false; - esp_err_t err = ensure_direct_backend_ready(); + esp_err_t err = ensure_printer_driver_ready(); if (err != ESP_OK) { s_protocol_initialized = false; destroy_runtime_objects(); @@ -295,7 +295,7 @@ esp_err_t printer_protocol_init(void) { } if (xSemaphoreTake(s_mutex, pdMS_TO_TICKS(200)) == pdTRUE) { - refresh_direct_status_locked(); + refresh_printer_status_locked(); xSemaphoreGive(s_mutex); } ESP_LOGI(TAG, "printer driver ready at startup"); diff --git a/components/domain/src/printer_protocol_worker.c b/components/domain/src/printer_protocol_worker.c index a1c2192..b380afb 100644 --- a/components/domain/src/printer_protocol_worker.c +++ b/components/domain/src/printer_protocol_worker.c @@ -63,7 +63,7 @@ static bool precheck_printer_ready(bool ignore_precheck, char *err, size_t err_l return true; } -static bool run_print_job_direct(job_slot_t *job) { +static bool run_print_job_printer_driver(job_slot_t *job) { char check_err[96]; if (!precheck_printer_ready(job->ignore_precheck, check_err, sizeof(check_err))) { snprintf(job->error, sizeof(job->error), "%s", check_err); @@ -89,11 +89,11 @@ static bool run_print_job_direct(job_slot_t *job) { xSemaphoreGive(s_mutex); } - char direct_err[96] = {0}; - esp_err_t rc = platform_printer_print(&req, direct_err, sizeof(direct_err)); + char print_err[96] = {0}; + esp_err_t rc = platform_printer_print(&req, print_err, sizeof(print_err)); if (rc != ESP_OK) { - if (direct_err[0] != 0) { - snprintf(job->error, sizeof(job->error), "%s", direct_err); + if (print_err[0] != 0) { + snprintf(job->error, sizeof(job->error), "%s", print_err); } else if (rc == ESP_ERR_TIMEOUT) { snprintf(job->error, sizeof(job->error), "print timeout"); } else if (rc == ESP_ERR_INVALID_STATE && job->cancel_requested) { @@ -113,7 +113,7 @@ static bool run_print_job_direct(job_slot_t *job) { static bool run_print_job(job_slot_t *job) { ESP_LOGI(TAG, - "job %u print start, mode=printer, raster_bytes=%u, size=%ux%u, density=%s, ignore_precheck=%d", + "job %u print start, raster_bytes=%u, size=%ux%u, density=%s, ignore_precheck=%d", (unsigned)job->id, (unsigned)job->data_len, (unsigned)job->width, @@ -126,7 +126,7 @@ static bool run_print_job(job_slot_t *job) { return false; } - return run_print_job_direct(job); + return run_print_job_printer_driver(job); } void printer_protocol_worker_task(void *arg) { diff --git a/components/domain/src/raster_tools_image_qr.c b/components/domain/src/raster_tools_image_qr.c index f430426..403bac2 100644 --- a/components/domain/src/raster_tools_image_qr.c +++ b/components/domain/src/raster_tools_image_qr.c @@ -15,16 +15,6 @@ static const uint8_t s_bit_mask[8] = {0x80u, 0x40u, 0x20u, 0x10u, 0x08u, 0x04u, 0x02u, 0x01u}; -static void set_black(uint8_t *buf, uint16_t width, uint16_t x, uint16_t y) { - if (x >= width) { - return; - } - uint16_t bpr = width / 8; - size_t idx = (size_t)y * bpr + (x / 8); - uint8_t bit = (uint8_t)(7 - (x % 8)); - buf[idx] |= (uint8_t)(1u << bit); -} - static void *alloc_prefer_psram(size_t size) { void *ptr = heap_caps_malloc(size, MALLOC_CAP_SPIRAM | MALLOC_CAP_8BIT); if (ptr == NULL) { diff --git a/main/Kconfig.projbuild b/main/Kconfig.projbuild index 9b750aa..e19314f 100644 --- a/main/Kconfig.projbuild +++ b/main/Kconfig.projbuild @@ -192,10 +192,6 @@ config TQ_Z_IMAGE_HTTP_READ_CHUNK_BYTES range 4096 32768 default 16384 -config TQ_Z_IMAGE_COEX_PREFER_WIFI_DURING_DOWNLOAD - bool "Prefer Wi-Fi RF during image download" - default y - config TQ_VOICE_API_KEY string "Voice API Key for DashScope WebSocket (optional)" default "sk-7a50eca6856d4afb968ac3bf512f6d1b" diff --git a/sdkconfig.defaults b/sdkconfig.defaults index fe746ab..260f356 100644 --- a/sdkconfig.defaults +++ b/sdkconfig.defaults @@ -21,7 +21,6 @@ CONFIG_TQ_WIFI_PROV_SOFTAP_MAX_CONN=4 CONFIG_TQ_Z_IMAGE_DEFAULT_SIZE="512*768" CONFIG_TQ_Z_IMAGE_HTTP_BUFFER_BYTES=16384 CONFIG_TQ_Z_IMAGE_HTTP_READ_CHUNK_BYTES=16384 -CONFIG_TQ_Z_IMAGE_COEX_PREFER_WIFI_DURING_DOWNLOAD=y # CONFIG_PARTITION_TABLE_SINGLE_APP_LARGE is not set CONFIG_PARTITION_TABLE_CUSTOM=y CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv"