dashboard: enlarge coolant meter and lower fuel bar

This commit is contained in:
2026-06-11 01:35:17 -06:00
parent 942cd7233b
commit 4ab2c51d5a
2 changed files with 19 additions and 17 deletions
@@ -1,6 +1,6 @@
#pragma once #pragma once
static const char *DASHBOARD_VERSION = "0.1.48-vehicle-gauge-card"; static const char *DASHBOARD_VERSION = "0.1.49-vehicle-meter-fit";
// Update these if your Cargo ESP AP credentials are different. // Update these if your Cargo ESP AP credentials are different.
static const char *CARGO_WIFI_SSID = "OverlandController"; static const char *CARGO_WIFI_SSID = "OverlandController";
@@ -1139,20 +1139,20 @@ static void create_overland_overview_screen()
lv_label_set_text(coolant_title, "Coolant"); lv_label_set_text(coolant_title, "Coolant");
lv_obj_set_style_text_color(coolant_title, lv_color_hex(0xDDE3EA), 0); lv_obj_set_style_text_color(coolant_title, lv_color_hex(0xDDE3EA), 0);
lv_obj_set_style_text_font(coolant_title, &lv_font_montserrat_26, 0); lv_obj_set_style_text_font(coolant_title, &lv_font_montserrat_26, 0);
lv_obj_align(coolant_title, LV_ALIGN_TOP_MID, 0, 10); lv_obj_align(coolant_title, LV_ALIGN_TOP_MID, 0, 4);
#if LV_USE_METER #if LV_USE_METER
vehicle_coolant_meter = lv_meter_create(vehicle_card); vehicle_coolant_meter = lv_meter_create(vehicle_card);
lv_obj_set_size(vehicle_coolant_meter, 180, 180); lv_obj_set_size(vehicle_coolant_meter, 220, 220);
lv_obj_align(vehicle_coolant_meter, LV_ALIGN_TOP_MID, 0, 36); lv_obj_align(vehicle_coolant_meter, LV_ALIGN_TOP_MID, 0, 24);
lv_obj_set_style_bg_opa(vehicle_coolant_meter, LV_OPA_TRANSP, 0); lv_obj_set_style_bg_opa(vehicle_coolant_meter, LV_OPA_TRANSP, 0);
lv_obj_set_style_border_width(vehicle_coolant_meter, 0, 0); lv_obj_set_style_border_width(vehicle_coolant_meter, 0, 0);
lv_obj_clear_flag(vehicle_coolant_meter, LV_OBJ_FLAG_SCROLLABLE); lv_obj_clear_flag(vehicle_coolant_meter, LV_OBJ_FLAG_SCROLLABLE);
lv_meter_scale_t *coolant_scale = lv_meter_add_scale(vehicle_coolant_meter); lv_meter_scale_t *coolant_scale = lv_meter_add_scale(vehicle_coolant_meter);
lv_meter_set_scale_range(vehicle_coolant_meter, coolant_scale, 100, 260, 270, 135); lv_meter_set_scale_range(vehicle_coolant_meter, coolant_scale, 100, 260, 270, 135);
lv_meter_set_scale_ticks(vehicle_coolant_meter, coolant_scale, 33, 2, 8, lv_color_hex(0x7D8996)); lv_meter_set_scale_ticks(vehicle_coolant_meter, coolant_scale, 33, 2, 10, lv_color_hex(0x7D8996));
lv_meter_set_scale_major_ticks(vehicle_coolant_meter, coolant_scale, 4, 4, 12, lv_color_hex(0xDDE3EA), 8); lv_meter_set_scale_major_ticks(vehicle_coolant_meter, coolant_scale, 4, 4, 16, lv_color_hex(0xDDE3EA), 10);
lv_meter_indicator_t *cool_arc = lv_meter_add_arc(vehicle_coolant_meter, coolant_scale, 5, lv_color_hex(0x84CAFF), 0); lv_meter_indicator_t *cool_arc = lv_meter_add_arc(vehicle_coolant_meter, coolant_scale, 5, lv_color_hex(0x84CAFF), 0);
lv_meter_set_indicator_start_value(vehicle_coolant_meter, cool_arc, 100); lv_meter_set_indicator_start_value(vehicle_coolant_meter, cool_arc, 100);
@@ -1172,40 +1172,42 @@ static void create_overland_overview_screen()
lv_obj_set_style_text_font(vehicle_coolant_value_label, &lv_font_montserrat_40, 0); lv_obj_set_style_text_font(vehicle_coolant_value_label, &lv_font_montserrat_40, 0);
lv_obj_set_width(vehicle_coolant_value_label, 120); lv_obj_set_width(vehicle_coolant_value_label, 120);
lv_obj_set_style_text_align(vehicle_coolant_value_label, LV_TEXT_ALIGN_CENTER, 0); lv_obj_set_style_text_align(vehicle_coolant_value_label, LV_TEXT_ALIGN_CENTER, 0);
lv_obj_align(vehicle_coolant_value_label, LV_ALIGN_TOP_MID, 0, 120); lv_obj_align(vehicle_coolant_value_label, LV_ALIGN_TOP_MID, 0, 126);
lv_obj_t *fuel_title = lv_label_create(vehicle_card); lv_obj_t *fuel_title = lv_label_create(vehicle_card);
lv_label_set_text(fuel_title, "Fuel"); lv_label_set_text(fuel_title, "Fuel");
lv_obj_set_style_text_color(fuel_title, lv_color_hex(0xDDE3EA), 0); lv_obj_set_style_text_color(fuel_title, lv_color_hex(0xDDE3EA), 0);
lv_obj_set_style_text_font(fuel_title, &lv_font_montserrat_26, 0); lv_obj_set_style_text_font(fuel_title, &lv_font_montserrat_26, 0);
lv_obj_align(fuel_title, LV_ALIGN_BOTTOM_LEFT, 18, -38); lv_obj_align(fuel_title, LV_ALIGN_BOTTOM_LEFT, 14, -18);
vehicle_fuel_bar = lv_bar_create(vehicle_card); vehicle_fuel_bar = lv_bar_create(vehicle_card);
lv_obj_set_size(vehicle_fuel_bar, 150, 22); lv_obj_set_size(vehicle_fuel_bar, 154, 20);
lv_obj_align(vehicle_fuel_bar, LV_ALIGN_BOTTOM_LEFT, 80, -42); lv_obj_align(vehicle_fuel_bar, LV_ALIGN_BOTTOM_LEFT, 76, -21);
lv_bar_set_range(vehicle_fuel_bar, 0, 100); lv_bar_set_range(vehicle_fuel_bar, 0, 100);
lv_bar_set_value(vehicle_fuel_bar, 72, LV_ANIM_OFF); lv_bar_set_value(vehicle_fuel_bar, 72, LV_ANIM_OFF);
lv_obj_set_style_radius(vehicle_fuel_bar, 4, 0); lv_obj_set_style_radius(vehicle_fuel_bar, 3, 0);
lv_obj_set_style_radius(vehicle_fuel_bar, 4, LV_PART_INDICATOR); lv_obj_set_style_radius(vehicle_fuel_bar, 3, LV_PART_INDICATOR);
lv_obj_set_style_bg_color(vehicle_fuel_bar, lv_color_hex(0x17202A), 0); lv_obj_set_style_bg_color(vehicle_fuel_bar, lv_color_hex(0x101820), 0);
lv_obj_set_style_bg_color(vehicle_fuel_bar, lv_color_hex(0x32D583), LV_PART_INDICATOR); lv_obj_set_style_bg_color(vehicle_fuel_bar, lv_color_hex(0x32D583), LV_PART_INDICATOR);
lv_obj_set_style_border_color(vehicle_fuel_bar, lv_color_hex(0x7D8996), 0); lv_obj_set_style_bg_grad_color(vehicle_fuel_bar, lv_color_hex(0x027A48), LV_PART_INDICATOR);
lv_obj_set_style_bg_grad_dir(vehicle_fuel_bar, LV_GRAD_DIR_VER, LV_PART_INDICATOR);
lv_obj_set_style_border_color(vehicle_fuel_bar, lv_color_hex(0xDDE3EA), 0);
lv_obj_set_style_border_width(vehicle_fuel_bar, 2, 0); lv_obj_set_style_border_width(vehicle_fuel_bar, 2, 0);
for (int i = 1; i <= 3; i++) { for (int i = 1; i <= 3; i++) {
lv_obj_t *tick = lv_obj_create(vehicle_card); lv_obj_t *tick = lv_obj_create(vehicle_card);
lv_obj_set_size(tick, 2, 28); lv_obj_set_size(tick, 2, 28);
lv_obj_set_style_bg_color(tick, lv_color_hex(0xDDE3EA), 0); lv_obj_set_style_bg_color(tick, lv_color_hex(0x7D8996), 0);
lv_obj_set_style_border_width(tick, 0, 0); lv_obj_set_style_border_width(tick, 0, 0);
lv_obj_set_style_radius(tick, 0, 0); lv_obj_set_style_radius(tick, 0, 0);
lv_obj_align(tick, LV_ALIGN_BOTTOM_LEFT, 80 + (i * 37), -39); lv_obj_align(tick, LV_ALIGN_BOTTOM_LEFT, 76 + (i * 38), -18);
} }
vehicle_fuel_value_label = lv_label_create(vehicle_card); vehicle_fuel_value_label = lv_label_create(vehicle_card);
lv_label_set_text(vehicle_fuel_value_label, "72%"); lv_label_set_text(vehicle_fuel_value_label, "72%");
lv_obj_set_style_text_color(vehicle_fuel_value_label, lv_color_hex(0xFFFFFF), 0); lv_obj_set_style_text_color(vehicle_fuel_value_label, lv_color_hex(0xFFFFFF), 0);
lv_obj_set_style_text_font(vehicle_fuel_value_label, &lv_font_montserrat_30, 0); lv_obj_set_style_text_font(vehicle_fuel_value_label, &lv_font_montserrat_30, 0);
lv_obj_align(vehicle_fuel_value_label, LV_ALIGN_BOTTOM_RIGHT, -16, -35); lv_obj_align(vehicle_fuel_value_label, LV_ALIGN_BOTTOM_RIGHT, -12, -15);
for (int i = 0; i < 6; i++) { for (int i = 0; i < 6; i++) {
relay_buttons[i] = lv_btn_create(relay_card); relay_buttons[i] = lv_btn_create(relay_card);