From 9e6593c09e7c57745b1546892fb5f090df78b06a Mon Sep 17 00:00:00 2001 From: Dmitry422 Date: Tue, 11 Mar 2025 18:54:12 +0700 Subject: [PATCH] Start moving RGB MOD from Notification to RGB MOD service. --- applications/services/application.fam | 1 + .../services/rgb_backlight/application.fam | 11 +++++++++++ .../services/rgb_backlight/rgb_backlight.c | 15 +++++++++++++++ .../services/rgb_backlight/rgb_backlight.h | 0 applications/settings/application.fam | 2 ++ .../rgb_backlight_settings/application.fam | 9 +++++++++ .../rgb_backlight_settings.c | 13 +++++++++++++ .../rgb_backlight_settings.h | 0 lib/drivers/SK6805.c | 4 ++-- targets/f7/api_symbols.csv | 1 + 10 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 applications/services/rgb_backlight/application.fam create mode 100644 applications/services/rgb_backlight/rgb_backlight.c create mode 100644 applications/services/rgb_backlight/rgb_backlight.h create mode 100644 applications/settings/rgb_backlight_settings/application.fam create mode 100644 applications/settings/rgb_backlight_settings/rgb_backlight_settings.c create mode 100644 applications/settings/rgb_backlight_settings/rgb_backlight_settings.h diff --git a/applications/services/application.fam b/applications/services/application.fam index 90631408a..8cfb22cdb 100644 --- a/applications/services/application.fam +++ b/applications/services/application.fam @@ -11,5 +11,6 @@ App( "loader", "power", "namechanger_srv", + "rgb_backlight", ], ) diff --git a/applications/services/rgb_backlight/application.fam b/applications/services/rgb_backlight/application.fam new file mode 100644 index 000000000..168a7bbd0 --- /dev/null +++ b/applications/services/rgb_backlight/application.fam @@ -0,0 +1,11 @@ +App( + appid="rgb_backlight", + name="RgbBackLightSrv", + apptype=FlipperAppType.SERVICE, + entry_point="rgb_backlight_srv", + cdefines=["SRV_RGB_BACKLIGHT"], + stack_size=1 * 1024, + order=99, + sdk_headers=["rgb_backlight.h"], + provides=["rgb_backlight_settings"], +) \ No newline at end of file diff --git a/applications/services/rgb_backlight/rgb_backlight.c b/applications/services/rgb_backlight/rgb_backlight.c new file mode 100644 index 000000000..046cd4771 --- /dev/null +++ b/applications/services/rgb_backlight/rgb_backlight.c @@ -0,0 +1,15 @@ +#include +#include +#include +#include "rgb_backlight.h" + +#define TAG "RGB_BACKLIGHT_SRV" + +int32_t rgb_backlight_srv (void* p){ +UNUSED (p); +while (1){ + FURI_LOG_I (TAG,"working"); + furi_delay_ms (2000); +} +return 0; +} \ No newline at end of file diff --git a/applications/services/rgb_backlight/rgb_backlight.h b/applications/services/rgb_backlight/rgb_backlight.h new file mode 100644 index 000000000..e69de29bb diff --git a/applications/settings/application.fam b/applications/settings/application.fam index 1d6db35a7..8e184a706 100644 --- a/applications/settings/application.fam +++ b/applications/settings/application.fam @@ -6,6 +6,8 @@ App( "passport", "system_settings", "clock_settings", + "input_settings", + "rgb_backlight_settings", "about", ], ) diff --git a/applications/settings/rgb_backlight_settings/application.fam b/applications/settings/rgb_backlight_settings/application.fam new file mode 100644 index 000000000..50621228a --- /dev/null +++ b/applications/settings/rgb_backlight_settings/application.fam @@ -0,0 +1,9 @@ +App( + appid="rgb_backlight_settings", + name="RGB backlight", + apptype=FlipperAppType.SETTINGS, + entry_point="rgb_backlight_settings", + requires=["rgb_backlight"], + stack_size=1 * 1024, + order=110, +) \ No newline at end of file diff --git a/applications/settings/rgb_backlight_settings/rgb_backlight_settings.c b/applications/settings/rgb_backlight_settings/rgb_backlight_settings.c new file mode 100644 index 000000000..096852063 --- /dev/null +++ b/applications/settings/rgb_backlight_settings/rgb_backlight_settings.c @@ -0,0 +1,13 @@ +#include +#include +#include +#include "rgb_backlight_settings.h" + +#define TAG "RGB_BACKLIGHT_SETTINGS" + +int32_t rgb_backlight_settings (void* p){ +UNUSED (p); +FURI_LOG_I (TAG,"Settings"); +furi_delay_ms (2000); +return 0; +} \ No newline at end of file diff --git a/applications/settings/rgb_backlight_settings/rgb_backlight_settings.h b/applications/settings/rgb_backlight_settings/rgb_backlight_settings.h new file mode 100644 index 000000000..e69de29bb diff --git a/lib/drivers/SK6805.c b/lib/drivers/SK6805.c index 8158c55a4..b6f525eb8 100644 --- a/lib/drivers/SK6805.c +++ b/lib/drivers/SK6805.c @@ -58,7 +58,7 @@ void SK6805_set_led_color(uint8_t led_index, uint8_t r, uint8_t g, uint8_t b) { void SK6805_update(void) { SK6805_init(); FURI_CRITICAL_ENTER(); - furi_delay_us(150); + furi_delay_us(100); uint32_t end; /* Последовательная отправка цветов светодиодов */ for(uint8_t lednumber = 0; lednumber < SK6805_LED_COUNT; lednumber++) { @@ -98,6 +98,6 @@ void SK6805_update(void) { } } } - furi_delay_us(150); + furi_delay_us(100); FURI_CRITICAL_EXIT(); } diff --git a/targets/f7/api_symbols.csv b/targets/f7/api_symbols.csv index 7ad21efb5..f78775215 100644 --- a/targets/f7/api_symbols.csv +++ b/targets/f7/api_symbols.csv @@ -39,6 +39,7 @@ Header,+,applications/services/locale/locale.h,, Header,+,applications/services/notification/notification.h,, Header,+,applications/services/notification/notification_messages.h,, Header,+,applications/services/power/power_service/power.h,, +Header,+,applications/services/rgb_backlight/rgb_backlight.h,, Header,+,applications/services/rpc/rpc_app.h,, Header,+,applications/services/storage/storage.h,, Header,+,lib/bit_lib/bit_lib.h,,