Merge remote-tracking branch 'ul/dev' into mntm-dev --nobuild

This commit is contained in:
Willy-JL
2024-10-08 02:24:17 +01:00
31 changed files with 3109 additions and 1798 deletions

View File

@@ -1,7 +1,7 @@
Filetype: IR library file
Version: 1
# Last Updated 27th Sept, 2024
# Last Checked 27th Sept, 2024
# Last Updated 5th Oct, 2024
# Last Checked 5th Oct, 2024
#
name: Power
type: parsed
@@ -5103,7 +5103,6 @@ protocol: NECext
address: 78 0E 00 00
command: 02 FD 00 00
#
# Model: Dutch Originals Sound Bar
name: Prev
type: parsed
protocol: NEC

View File

@@ -1,7 +1,7 @@
Filetype: IR library file
Version: 1
#Last Updated 27th Sept, 2024
#Last Checked 27th Sept, 2024
# Last Updated 5th Oct, 2024
# Last Checked 5th Oct, 2024
#
name: Power
type: raw

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
Filetype: IR library file
Version: 1
# Last Updated 27th Sept, 2024
# Last Checked 27th Sept, 2024
# Last Updated 5th Oct, 2024
# Last Checked 5th Oct, 2024
#
# TEMP FIX FOR POWER: Power signals are duplicated, since projectors require second confirm to poweroff
#
@@ -149,7 +149,6 @@ type: parsed
protocol: NEC
address: 02 00 00 00
command: 1D 00 00 00
#
# ON
name: Power
type: raw
@@ -162,7 +161,6 @@ type: parsed
protocol: NEC
address: 02 00 00 00
command: 1D 00 00 00
#
# ON
name: Power
type: raw

View File

@@ -1,7 +1,7 @@
Filetype: IR library file
Version: 1
# Last Updated 27th Sept, 2024
# Last Checked 27th Sept, 2024
# Last Updated 5th Oct, 2024
# Last Checked 5th Oct, 2024
#
name: Power
type: parsed
@@ -3678,16 +3678,12 @@ protocol: NECext
address: 00 7F 00 00
command: 5B A4 00 00
#
# Koro Box
#
name: Power
type: parsed
protocol: NEC
address: 01 00 00 00
command: 18 00 00 00
#
# TCL 75S451
#
name: Ch_next
type: parsed
protocol: NECext

View File

@@ -16,13 +16,13 @@ ADD_SCENE(infrared, remote, Remote)
ADD_SCENE(infrared, remote_list, RemoteList)
ADD_SCENE(infrared, universal, Universal)
ADD_SCENE(infrared, universal_tv, UniversalTV)
ADD_SCENE(infrared, universal_monitor, UniversalMonitor)
ADD_SCENE(infrared, universal_digital_sign, UniversalDigitalSign)
ADD_SCENE(infrared, universal_projector, UniversalProjector)
ADD_SCENE(infrared, universal_audio, UniversalAudio)
ADD_SCENE(infrared, universal_led, UniversalLED)
ADD_SCENE(infrared, universal_ac, UniversalAC)
ADD_SCENE(infrared, universal_leds, UniversalLEDs)
ADD_SCENE(infrared, universal_fan, UniversalFan)
ADD_SCENE(infrared, universal_monitor, UniversalMonitor)
ADD_SCENE(infrared, universal_digital_sign, UniversalDigitalSign)
ADD_SCENE(infrared, gpio_settings, GpioSettings)
ADD_SCENE(infrared, debug, Debug)
ADD_SCENE(infrared, error_databases, ErrorDatabases)

View File

@@ -5,10 +5,10 @@ typedef enum {
SubmenuIndexUniversalProjector,
SubmenuIndexUniversalAudio,
SubmenuIndexUniversalAirConditioner,
SubmenuIndexUniversalLEDs,
SubmenuIndexUniversalFan,
SubmenuIndexUniversalMonitor,
SubmenuIndexUniversalDigitalSign,
SubmenuIndexUniversalLED,
} SubmenuIndex;
static void infrared_scene_universal_submenu_callback(void* context, uint32_t index) {
@@ -48,6 +48,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",
@@ -69,13 +76,6 @@ void infrared_scene_universal_on_enter(void* context) {
infrared_scene_universal_submenu_callback,
context);
submenu_add_item(
submenu,
"LEDs",
SubmenuIndexUniversalLED,
infrared_scene_universal_submenu_callback,
context);
submenu_set_selected_item(
submenu, scene_manager_get_scene_state(infrared->scene_manager, InfraredSceneUniversal));
@@ -100,6 +100,9 @@ bool infrared_scene_universal_on_event(void* context, SceneManagerEvent event) {
} else if(event.event == SubmenuIndexUniversalAirConditioner) {
scene_manager_next_scene(scene_manager, InfraredSceneUniversalAC);
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;
@@ -109,9 +112,6 @@ bool infrared_scene_universal_on_event(void* context, SceneManagerEvent event) {
} else if(event.event == SubmenuIndexUniversalDigitalSign) {
scene_manager_next_scene(scene_manager, InfraredSceneUniversalDigitalSign);
consumed = true;
} else if(event.event == SubmenuIndexUniversalLED) {
scene_manager_next_scene(scene_manager, InfraredSceneUniversalLED);
consumed = true;
}
scene_manager_set_scene_state(scene_manager, InfraredSceneUniversal, event.event);
}

View File

@@ -1,81 +0,0 @@
#include "../infrared_app_i.h"
#include "common/infrared_scene_universal_common.h"
void infrared_scene_universal_led_on_enter(void* context) {
InfraredApp* infrared = context;
ButtonPanel* button_panel = infrared->button_panel;
InfraredBruteForce* brute_force = infrared->brute_force;
infrared_brute_force_set_db_filename(brute_force, EXT_PATH("infrared/assets/led.ir"));
button_panel_reserve(button_panel, 2, 2);
uint32_t i = 0;
button_panel_add_item(
button_panel,
i,
0,
0,
6,
24,
&I_power_19x20,
&I_power_hover_19x20,
infrared_scene_universal_common_item_callback,
context);
button_panel_add_icon(button_panel, 4, 46, &I_power_text_24x5);
infrared_brute_force_add_record(brute_force, i++, "POWER");
button_panel_add_item(
button_panel,
i,
1,
0,
37,
21,
&I_volup_24x21,
&I_volup_hover_24x21,
infrared_scene_universal_common_item_callback,
context);
infrared_brute_force_add_record(brute_force, i++, "BRIGHTNESS+");
button_panel_add_item(
button_panel,
i,
1,
1,
37,
55,
&I_voldown_24x21,
&I_voldown_hover_24x21,
infrared_scene_universal_common_item_callback,
context);
infrared_brute_force_add_record(brute_force, i++, "BRIGHTNESS-");
button_panel_add_icon(button_panel, 34, 34, &I_bright_text_30x30);
button_panel_add_item(
button_panel,
i,
0,
1,
6,
53,
&I_flash_19x20,
&I_flash_hover_19x20,
infrared_scene_universal_common_item_callback,
context);
button_panel_add_icon(button_panel, 6, 75, &I_flash_text_21x5);
infrared_brute_force_add_record(brute_force, i++, "FLASH");
button_panel_add_label(button_panel, 21, 11, FontPrimary, "LEDs");
infrared_scene_universal_common_on_enter(context);
}
bool infrared_scene_universal_led_on_event(void* context, SceneManagerEvent event) {
return infrared_scene_universal_common_on_event(context, event);
}
void infrared_scene_universal_led_on_exit(void* context) {
infrared_scene_universal_common_on_exit(context);
}

View File

@@ -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);
}