Skip to content

Commit

Permalink
LED universal remote
Browse files Browse the repository at this point in the history
DB by amec0e
other things by me
  • Loading branch information
xMasterX committed Oct 7, 2024
1 parent 2e241f5 commit 86b8c8d
Show file tree
Hide file tree
Showing 19 changed files with 3,083 additions and 0 deletions.
2,938 changes: 2,938 additions & 0 deletions applications/main/infrared/resources/infrared/assets/leds.ir

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions applications/main/infrared/scenes/infrared_scene_config.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ ADD_SCENE(infrared, universal_ac, UniversalAC)
ADD_SCENE(infrared, universal_fan, UniversalFan)
ADD_SCENE(infrared, universal_audio, UniversalAudio)
ADD_SCENE(infrared, universal_projector, UniversalProjector)
ADD_SCENE(infrared, universal_leds, UniversalLEDs)
ADD_SCENE(infrared, gpio_settings, GpioSettings)
ADD_SCENE(infrared, debug, Debug)
ADD_SCENE(infrared, error_databases, ErrorDatabases)
Expand Down
11 changes: 11 additions & 0 deletions applications/main/infrared/scenes/infrared_scene_universal.c
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ typedef enum {
SubmenuIndexUniversalTV,
SubmenuIndexUniversalAudio,
SubmenuIndexUniversalProjector,
SubmenuIndexUniversalLEDs,
SubmenuIndexUniversalFan,
SubmenuIndexUniversalAirConditioner,
} SubmenuIndex;
Expand Down Expand Up @@ -38,6 +39,13 @@ void infrared_scene_universal_on_enter(void* context) {
infrared_scene_universal_submenu_callback,
context);

submenu_add_item(
submenu,
"LEDs",
SubmenuIndexUniversalLEDs,
infrared_scene_universal_submenu_callback,
context);

submenu_add_item(
submenu,
"Fans",
Expand Down Expand Up @@ -73,6 +81,9 @@ bool infrared_scene_universal_on_event(void* context, SceneManagerEvent event) {
} else if(event.event == SubmenuIndexUniversalProjector) {
scene_manager_next_scene(scene_manager, InfraredSceneUniversalProjector);
consumed = true;
} else if(event.event == SubmenuIndexUniversalLEDs) {
scene_manager_next_scene(scene_manager, InfraredSceneUniversalLEDs);
consumed = true;
} else if(event.event == SubmenuIndexUniversalFan) {
scene_manager_next_scene(scene_manager, InfraredSceneUniversalFan);
consumed = true;
Expand Down
133 changes: 133 additions & 0 deletions applications/main/infrared/scenes/infrared_scene_universal_leds.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
#include "../infrared_app_i.h"

#include "common/infrared_scene_universal_common.h"

void infrared_scene_universal_leds_on_enter(void* context) {
InfraredApp* infrared = context;
ButtonPanel* button_panel = infrared->button_panel;
InfraredBruteForce* brute_force = infrared->brute_force;

// Button codes
// Power_off, Power_on, Brightness_up, Brightness_dn, Red, Blue, Green, White

infrared_brute_force_set_db_filename(brute_force, EXT_PATH("infrared/assets/leds.ir"));

button_panel_reserve(button_panel, 2, 4);
uint32_t i = 0;
button_panel_add_item(
button_panel,
i,
0,
0,
10,
12,
&I_power_19x20,
&I_power_hover_19x20,
infrared_scene_universal_common_item_callback,
context);
button_panel_add_icon(button_panel, 15, 34, &I_on_text_9x5);
infrared_brute_force_add_record(brute_force, i++, "Power_on");

button_panel_add_item(
button_panel,
i,
1,
0,
35,
12,
&I_off_19x20,
&I_off_hover_19x20,
infrared_scene_universal_common_item_callback,
context);
button_panel_add_icon(button_panel, 38, 34, &I_off_text_12x5);
infrared_brute_force_add_record(brute_force, i++, "Power_off");

button_panel_add_item(
button_panel,
i,
0,
1,
10,
42,
&I_plus_19x20,
&I_plus_hover_19x20,
infrared_scene_universal_common_item_callback,
context);
infrared_brute_force_add_record(brute_force, i++, "Brightness_up");

button_panel_add_item(
button_panel,
i,
1,
1,
35,
42,
&I_minus_19x20,
&I_minus_hover_19x20,
infrared_scene_universal_common_item_callback,
context);
button_panel_add_icon(button_panel, 12, 64, &I_brightness_text_40x5);
infrared_brute_force_add_record(brute_force, i++, "Brightness_dn");

button_panel_add_item(
button_panel,
i,
0,
2,
10,
74,
&I_red_19x20,
&I_red_hover_19x20,
infrared_scene_universal_common_item_callback,
context);
infrared_brute_force_add_record(brute_force, i++, "Red");
button_panel_add_item(
button_panel,
i,
1,
2,
35,
74,
&I_green_19x20,
&I_green_hover_19x20,
infrared_scene_universal_common_item_callback,
context);
infrared_brute_force_add_record(brute_force, i++, "Green");
button_panel_add_item(
button_panel,
i,
0,
3,
10,
99,
&I_blue_19x20,
&I_blue_hover_19x20,
infrared_scene_universal_common_item_callback,
context);
infrared_brute_force_add_record(brute_force, i++, "Blue");
button_panel_add_item(
button_panel,
i,
1,
3,
35,
99,
&I_white_19x20,
&I_white_hover_19x20,
infrared_scene_universal_common_item_callback,
context);
button_panel_add_icon(button_panel, 19, 121, &I_color_text_24x5);
infrared_brute_force_add_record(brute_force, i++, "White");

button_panel_add_label(button_panel, 20, 9, FontPrimary, "LEDs");

infrared_scene_universal_common_on_enter(context);
}

bool infrared_scene_universal_leds_on_event(void* context, SceneManagerEvent event) {
return infrared_scene_universal_common_on_event(context, event);
}

void infrared_scene_universal_leds_on_exit(void* context) {
infrared_scene_universal_common_on_exit(context);
}
Binary file added assets/icons/Infrared/blue_19x20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/blue_hover_19x20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/brightness_text_40x5.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/color_text_24x5.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/green_19x20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/green_hover_19x20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/minus_19x20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/minus_hover_19x20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/on_text_9x5.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/plus_19x20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/plus_hover_19x20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/red_19x20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/red_hover_19x20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/white_19x20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/icons/Infrared/white_hover_19x20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 86b8c8d

Please sign in to comment.