diff --git a/internal_filesystem/main.py b/internal_filesystem/main.py index 00c708ba..5b2970f5 100644 --- a/internal_filesystem/main.py +++ b/internal_filesystem/main.py @@ -12,12 +12,11 @@ DRAWER_ANIM_DURATION=300 SLIDER_MIN_VALUE=1 SLIDER_MAX_VALUE=100 SLIDER_DEFAULT_VALUE=100 -OFFSET_WIFI_ICON = -60 -OFFSET_BATTERY_ICON = -40 CLOCK_UPDATE_INTERVAL = 100 # 10 or even 1 ms doesn't seem to change the framerate but 100ms is enough WIFI_ICON_UPDATE_INTERVAL = 1500 TEMPERATURE_UPDATE_INTERVAL = 2000 +MEMFREE_UPDATE_INTERVAL = 1000 # Color palette DARKPINK = lv.color_hex(0xEC048C) @@ -82,34 +81,43 @@ time_label.align(lv.ALIGN.LEFT_MID, 0, 0) time_label.set_style_text_color(COLOR_TEXT_WHITE, 0) temp_label = lv.label(notification_bar) -temp_label.set_text("") +temp_label.set_text("00°C") temp_label.align_to(time_label, lv.ALIGN.OUT_RIGHT_MID, PADDING_TINY, 0) temp_label.set_style_text_color(COLOR_TEXT_WHITE, 0) +memfree_label = lv.label(notification_bar) +memfree_label.set_text("") +memfree_label.align_to(temp_label, lv.ALIGN.OUT_RIGHT_MID, PADDING_TINY, 0) +memfree_label.set_style_text_color(COLOR_TEXT_WHITE, 0) +#style = lv.style_t() +#style.init() +#style.set_text_font(lv.font_montserrat_8) # tiny font +#memfree_label.add_style(style, 0) + # Notification icon (bell) #notif_icon = lv.label(notification_bar) #notif_icon.set_text(lv.SYMBOL.BELL) #notif_icon.align_to(time_label, lv.ALIGN.OUT_RIGHT_MID, PADDING_TINY, 0) #notif_icon.set_style_text_color(COLOR_TEXT_WHITE, 0) -# WiFi icon -wifi_icon = lv.label(notification_bar) -wifi_icon.set_text(lv.SYMBOL.WIFI) -wifi_icon.align(lv.ALIGN.RIGHT_MID, OFFSET_WIFI_ICON, 0) -wifi_icon.set_style_text_color(COLOR_TEXT_WHITE, 0) -wifi_icon.add_flag(lv.obj.FLAG.HIDDEN) - # Battery icon battery_icon = lv.label(notification_bar) battery_icon.set_text(lv.SYMBOL.BATTERY_FULL) -battery_icon.align(lv.ALIGN.RIGHT_MID, OFFSET_BATTERY_ICON, 0) +battery_icon.align(lv.ALIGN.RIGHT_MID, -PADDING_TINY, 0) battery_icon.set_style_text_color(COLOR_TEXT_WHITE, 0) -# Battery percentage -battery_label = lv.label(notification_bar) -battery_label.set_text("100%") -battery_label.align(lv.ALIGN.RIGHT_MID, 0, 0) -battery_label.set_style_text_color(COLOR_TEXT_WHITE, 0) +# WiFi icon +wifi_icon = lv.label(notification_bar) +wifi_icon.set_text(lv.SYMBOL.WIFI) +wifi_icon.align_to(battery_icon, lv.ALIGN.OUT_LEFT_MID, -PADDING_TINY, 0) +wifi_icon.set_style_text_color(COLOR_TEXT_WHITE, 0) +wifi_icon.add_flag(lv.obj.FLAG.HIDDEN) + +# Battery percentage - not shown to conserve space +#battery_label = lv.label(notification_bar) +#battery_label.set_text("100%") +#battery_label.align(lv.ALIGN.RIGHT_MID, 0, 0) +#battery_label.set_style_text_color(COLOR_TEXT_WHITE, 0) # Update time @@ -134,9 +142,16 @@ import esp32 def update_temperature(timer): temp_label.set_text(f"{esp32.mcu_temperature()}°C") +import gc +def update_memfree(timer): + memfree_label.set_text(f"{gc.mem_free()}") + lv.timer_create(update_time, CLOCK_UPDATE_INTERVAL, None) -lv.timer_create(update_wifi_icon, WIFI_ICON_UPDATE_INTERVAL, None) lv.timer_create(update_temperature, TEMPERATURE_UPDATE_INTERVAL, None) +lv.timer_create(update_memfree, MEMFREE_UPDATE_INTERVAL, None) +lv.timer_create(update_wifi_icon, WIFI_ICON_UPDATE_INTERVAL, None) + + notification_bar.add_event_cb(toggle_drawer, lv.EVENT.CLICKED, None)