Skip to content

Commit

Permalink
update GUI, display 5V error
Browse files Browse the repository at this point in the history
  • Loading branch information
GLinnik21 committed Aug 28, 2023
1 parent 37b5c9b commit 264b285
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 11 deletions.
7 changes: 4 additions & 3 deletions application.fam
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,13 @@ App(
requires=["gui"],
stack_size=1 * 1024,
order=90,
fap_libs=["assets"],
fap_private_libs=[Lib(name="mh_z19_uart_tools")],
fap_icon="assets/co2_icon.png",
fap_icon="assets/co2_icon.png",
fap_icon_assets="assets",
fap_category="GPIO",
fap_description="Read the CO2 concentration from the MH-Z19 sensor via UART interface",
fap_author="glinnik21",
fap_weburl="https://github.com/GLinnik21/flipper-zero-mh-z19-uart",
fap_version=(0, 2)
)
fap_version=(0, 2),
)
34 changes: 27 additions & 7 deletions mh_z19_ui.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
#include "mh_z19_ui.h"

#include <assets_icons.h>

Check failure on line 3 in mh_z19_ui.c

View workflow job for this annotation

GitHub Actions / ufbt: Build for Dev branch

assets_icons.h: No such file or directory
#include <gui/elements.h>

#include "mh_z19_app_i.h"

void mh_z19_app_input_callback(InputEvent* event, void* context) {
Expand All @@ -11,15 +14,32 @@ void mh_z19_app_input_callback(InputEvent* event, void* context) {

void mh_z19_app_draw_callback(Canvas* canvas, void* context) {
furi_assert(context);

MhZ19App* app = context;
canvas_clear(canvas);
canvas_set_font(canvas, FontPrimary);
static char buffer[50];

furi_mutex_acquire(app->thread_data.mutex, FuriWaitForever);
snprintf(buffer, sizeof(buffer), "ppm: %lu", app->ppm);
furi_mutex_release(app->thread_data.mutex);
canvas_set_bitmap_mode(canvas, 1);

if(!app->power_data.is_5V_enabled) {
canvas_draw_icon(canvas, 5, 4, &I_Alert_9x8);
canvas_set_font(canvas, FontPrimary);
canvas_draw_str(canvas, 19, 12, "Oops! 5V is off");
canvas_set_font(canvas, FontSecondary);
elements_multiline_text(
canvas,
5,
28,
"Enable manually in\n"
"GPIO app -> 5V on GPIO -> ON\n"
"or put Flipper on charge.");
} else {
static char buffer[5] = {0};
furi_mutex_acquire(app->thread_data.mutex, FuriWaitForever);
snprintf(buffer, sizeof(buffer), "%lu", app->ppm);
furi_mutex_release(app->thread_data.mutex);

canvas_draw_str(canvas, 0, 10, buffer);
canvas_set_font(canvas, FontBigNumbers);
canvas_draw_str_aligned(canvas, 63, 31, AlignCenter, AlignCenter, buffer);
canvas_set_font(canvas, FontPrimary);
canvas_draw_str(canvas, 93, 37, "ppm");
}
}
2 changes: 1 addition & 1 deletion mh_z19_ui.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#pragma once

#include <gui/gui.h>
#include <gui/canvas.h>
#include <input/input.h>

void mh_z19_app_draw_callback(Canvas* canvas, void* context);
Expand Down

0 comments on commit 264b285

Please sign in to comment.