only activate used commands. Saves 15k of memory

This commit is contained in:
KlausMu 2024-03-12 20:26:55 +01:00
parent cfc8dde54e
commit dd36f09c15
7 changed files with 294 additions and 285 deletions

View File

@ -20,7 +20,7 @@ lib_deps =
build_flags =
;-- OMOTE -----------------------------------------------------------------
-D ENABLE_WIFI_AND_MQTT=1
-D ENABLE_KEYBOARD_MQTT=1
-D ENABLE_KEYBOARD_MQTT=0
-D ENABLE_BLUETOOTH=1
-D ENABLE_KEYBOARD_BLE=1
-D SCR_WIDTH=${env.custom_screen_width}

View File

@ -3,91 +3,93 @@
#include "applicationInternal/hardware/hardwarePresenter.h"
#include "device_denonAvr.h"
uint16_t DENON_POWER_TOGGLE ; //"DENON_POWER_TOGGLE";
uint16_t DENON_POWER_SLEEP ; //"DENON_POWER_SLEEP";
uint16_t DENON_VOL_MINUS ; //"DENON_VOL_MINUS";
uint16_t DENON_VOL_PLUS ; //"DENON_VOL_PLUS";
uint16_t DENON_VOL_MUTE ; //"DENON_VOL_MUTE";
uint16_t DENON_CHAN_PLUS ; //"DENON_CHAN_PLUS";
uint16_t DENON_CHAN_MINUS ; //"DENON_CHAN_MINUS";
uint16_t DENON_INPUT_CABLESAT ; //"DENON_INPUT_CABLESAT";
uint16_t DENON_INPUT_MEDIAPLAYER ; //"DENON_INPUT_MEDIAPLAYER";
uint16_t DENON_INPUT_BLURAY ; //"DENON_INPUT_BLURAY";
uint16_t DENON_INPUT_GAME ; //"DENON_INPUT_GAME";
uint16_t DENON_INPUT_AUX1 ; //"DENON_INPUT_AUX1";
uint16_t DENON_INPUT_AUX2 ; //"DENON_INPUT_AUX2";
uint16_t DENON_INPUT_PHONO ; //"DENON_INPUT_PHONO";
uint16_t DENON_INPUT_TUNER ; //"DENON_INPUT_TUNER";
uint16_t DENON_INPUT_TV ; //"DENON_INPUT_TV";
uint16_t DENON_INPUT_USB ; //"DENON_INPUT_USB";
uint16_t DENON_INPUT_BLUETOOTH ; //"DENON_INPUT_BLUETOOTH";
uint16_t DENON_INPUT_INTERNET ; //"DENON_INPUT_INTERNET";
uint16_t DENON_INPUT_HEOS ; //"DENON_INPUT_HEOS";
uint16_t DENON_POWER_ECO ; //"DENON_POWER_ECO";
uint16_t DENON_INFO ; //"DENON_INFO";
uint16_t DENON_OPTION ; //"DENON_OPTION";
uint16_t DENON_BACK ; //"DENON_BACK";
uint16_t DENON_SETUP ; //"DENON_SETUP";
uint16_t DENON_MENU_ENTER ; //"DENON_MENU_ENTER";
uint16_t DENON_MENU_UP ; //"DENON_MENU_UP";
uint16_t DENON_MENU_LEFT ; //"DENON_MENU_LEFT";
uint16_t DENON_MENU_RIGHT ; //"DENON_MENU_RIGHT";
uint16_t DENON_MENU_DOWN ; //"DENON_MENU_DOWN";
uint16_t DENON_SOUNDMODE_MOVIE ; //"DENON_SOUNDMODE_MOVIE";
uint16_t DENON_SOUNDMODE_MUSIC ; //"DENON_SOUNDMODE_MUSIC";
uint16_t DENON_SOUNDMODE_GAME ; //"DENON_SOUNDMODE_GAME";
uint16_t DENON_SOUNDMODE_PURE ; //"DENON_SOUNDMODE_PURE";
uint16_t DENON_QUICKSELECT_1 ; //"DENON_QUICKSELECT_1";
uint16_t DENON_QUICKSELECT_2 ; //"DENON_QUICKSELECT_2";
uint16_t DENON_QUICKSELECT_3 ; //"DENON_QUICKSELECT_3";
uint16_t DENON_QUICKSELECT_4 ; //"DENON_QUICKSELECT_4";
uint16_t DENON_MEDIA_PREV ; //"DENON_MEDIA_PREV";
uint16_t DENON_MEDIA_PLAYPAUSE ; //"DENON_MEDIA_PLAYPAUSE";
uint16_t DENON_MEDIA_NEXT ; //"DENON_MEDIA_NEXT";
// Only activate the commands that are used. Every command takes 100 bytes, wether used or not.
// uint16_t DENON_POWER_TOGGLE ; //"DENON_POWER_TOGGLE";
// uint16_t DENON_POWER_SLEEP ; //"DENON_POWER_SLEEP";
// uint16_t DENON_VOL_MINUS ; //"DENON_VOL_MINUS";
// uint16_t DENON_VOL_PLUS ; //"DENON_VOL_PLUS";
// uint16_t DENON_VOL_MUTE ; //"DENON_VOL_MUTE";
// uint16_t DENON_CHAN_PLUS ; //"DENON_CHAN_PLUS";
// uint16_t DENON_CHAN_MINUS ; //"DENON_CHAN_MINUS";
// uint16_t DENON_INPUT_CABLESAT ; //"DENON_INPUT_CABLESAT";
// uint16_t DENON_INPUT_MEDIAPLAYER ; //"DENON_INPUT_MEDIAPLAYER";
// uint16_t DENON_INPUT_BLURAY ; //"DENON_INPUT_BLURAY";
// uint16_t DENON_INPUT_GAME ; //"DENON_INPUT_GAME";
// uint16_t DENON_INPUT_AUX1 ; //"DENON_INPUT_AUX1";
// uint16_t DENON_INPUT_AUX2 ; //"DENON_INPUT_AUX2";
// uint16_t DENON_INPUT_PHONO ; //"DENON_INPUT_PHONO";
// uint16_t DENON_INPUT_TUNER ; //"DENON_INPUT_TUNER";
// uint16_t DENON_INPUT_TV ; //"DENON_INPUT_TV";
// uint16_t DENON_INPUT_USB ; //"DENON_INPUT_USB";
// uint16_t DENON_INPUT_BLUETOOTH ; //"DENON_INPUT_BLUETOOTH";
// uint16_t DENON_INPUT_INTERNET ; //"DENON_INPUT_INTERNET";
// uint16_t DENON_INPUT_HEOS ; //"DENON_INPUT_HEOS";
// uint16_t DENON_POWER_ECO ; //"DENON_POWER_ECO";
// uint16_t DENON_INFO ; //"DENON_INFO";
// uint16_t DENON_OPTION ; //"DENON_OPTION";
// uint16_t DENON_BACK ; //"DENON_BACK";
// uint16_t DENON_SETUP ; //"DENON_SETUP";
// uint16_t DENON_MENU_ENTER ; //"DENON_MENU_ENTER";
// uint16_t DENON_MENU_UP ; //"DENON_MENU_UP";
// uint16_t DENON_MENU_LEFT ; //"DENON_MENU_LEFT";
// uint16_t DENON_MENU_RIGHT ; //"DENON_MENU_RIGHT";
// uint16_t DENON_MENU_DOWN ; //"DENON_MENU_DOWN";
// uint16_t DENON_SOUNDMODE_MOVIE ; //"DENON_SOUNDMODE_MOVIE";
// uint16_t DENON_SOUNDMODE_MUSIC ; //"DENON_SOUNDMODE_MUSIC";
// uint16_t DENON_SOUNDMODE_GAME ; //"DENON_SOUNDMODE_GAME";
// uint16_t DENON_SOUNDMODE_PURE ; //"DENON_SOUNDMODE_PURE";
// uint16_t DENON_QUICKSELECT_1 ; //"DENON_QUICKSELECT_1";
// uint16_t DENON_QUICKSELECT_2 ; //"DENON_QUICKSELECT_2";
// uint16_t DENON_QUICKSELECT_3 ; //"DENON_QUICKSELECT_3";
// uint16_t DENON_QUICKSELECT_4 ; //"DENON_QUICKSELECT_4";
// uint16_t DENON_MEDIA_PREV ; //"DENON_MEDIA_PREV";
// uint16_t DENON_MEDIA_PLAYPAUSE ; //"DENON_MEDIA_PLAYPAUSE";
// uint16_t DENON_MEDIA_NEXT ; //"DENON_MEDIA_NEXT";
void register_device_denonAvr() {
// tested with Denon AVR-S660H, works also with others
register_command(&DENON_POWER_TOGGLE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028A0088"}));
register_command(&DENON_POWER_SLEEP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C02822CAC"}));
register_command(&DENON_VOL_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0288E862"}));
register_command(&DENON_VOL_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0280E86A"}));
register_command(&DENON_VOL_MUTE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0284E86E"}));
register_command(&DENON_CHAN_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0288DC56"}));
register_command(&DENON_CHAN_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0284DC5A"}));
register_command(&DENON_INPUT_CABLESAT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028CB43A"}));
register_command(&DENON_INPUT_MEDIAPLAYER , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0286B430"}));
register_command(&DENON_INPUT_BLURAY , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0288B43E"}));
register_command(&DENON_INPUT_GAME , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028AB43C"}));
register_command(&DENON_INPUT_AUX1 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0289B43F"}));
register_command(&DENON_INPUT_AUX2 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0285B433"}));
register_command(&DENON_INPUT_PHONO , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028034B6"}));
register_command(&DENON_INPUT_TUNER , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028F34B9"}));
register_command(&DENON_INPUT_TV , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0284B432"}));
register_command(&DENON_INPUT_USB , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028734B1"}));
register_command(&DENON_INPUT_BLUETOOTH , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028F74F9"}));
register_command(&DENON_INPUT_INTERNET , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028A74FC"}));
register_command(&DENON_INPUT_HEOS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028E34B8"}));
register_command(&DENON_POWER_ECO , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C02816CEF"}));
register_command(&DENON_INFO , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0280E466"}));
register_command(&DENON_OPTION , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028ADC54"}));
register_command(&DENON_BACK , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028440C6"}));
register_command(&DENON_SETUP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028C40CE"}));
register_command(&DENON_MENU_ENTER , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028F800D"}));
register_command(&DENON_MENU_UP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028D800F"}));
register_command(&DENON_MENU_LEFT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028B8009"}));
register_command(&DENON_MENU_RIGHT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C02878005"}));
register_command(&DENON_MENU_DOWN , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C02838001"}));
register_command(&DENON_SOUNDMODE_MOVIE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028928A3"}));
register_command(&DENON_SOUNDMODE_MUSIC , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028528AF"}));
register_command(&DENON_SOUNDMODE_GAME , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028D28A7"}));
register_command(&DENON_SOUNDMODE_PURE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028AC840"}));
register_command(&DENON_QUICKSELECT_1 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028248C8"}));
register_command(&DENON_QUICKSELECT_2 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028A48C0"}));
register_command(&DENON_QUICKSELECT_3 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028648CC"}));
register_command(&DENON_QUICKSELECT_4 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028E48C4"}));
register_command(&DENON_MEDIA_PREV , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028C7CF2"}));
register_command(&DENON_MEDIA_PLAYPAUSE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C02807CFE"}));
register_command(&DENON_MEDIA_NEXT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C02827CFC"}));
// Only activate the commands that are used. Every command takes 100 bytes, wether used or not.
// register_command(&DENON_POWER_TOGGLE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028A0088"}));
// register_command(&DENON_POWER_SLEEP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C02822CAC"}));
// register_command(&DENON_VOL_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0288E862"}));
// register_command(&DENON_VOL_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0280E86A"}));
// register_command(&DENON_VOL_MUTE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0284E86E"}));
// register_command(&DENON_CHAN_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0288DC56"}));
// register_command(&DENON_CHAN_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0284DC5A"}));
// register_command(&DENON_INPUT_CABLESAT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028CB43A"}));
// register_command(&DENON_INPUT_MEDIAPLAYER , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0286B430"}));
// register_command(&DENON_INPUT_BLURAY , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0288B43E"}));
// register_command(&DENON_INPUT_GAME , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028AB43C"}));
// register_command(&DENON_INPUT_AUX1 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0289B43F"}));
// register_command(&DENON_INPUT_AUX2 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0285B433"}));
// register_command(&DENON_INPUT_PHONO , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028034B6"}));
// register_command(&DENON_INPUT_TUNER , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028F34B9"}));
// register_command(&DENON_INPUT_TV , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0284B432"}));
// register_command(&DENON_INPUT_USB , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028734B1"}));
// register_command(&DENON_INPUT_BLUETOOTH , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028F74F9"}));
// register_command(&DENON_INPUT_INTERNET , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028A74FC"}));
// register_command(&DENON_INPUT_HEOS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028E34B8"}));
// register_command(&DENON_POWER_ECO , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C02816CEF"}));
// register_command(&DENON_INFO , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C0280E466"}));
// register_command(&DENON_OPTION , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028ADC54"}));
// register_command(&DENON_BACK , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028440C6"}));
// register_command(&DENON_SETUP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028C40CE"}));
// register_command(&DENON_MENU_ENTER , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028F800D"}));
// register_command(&DENON_MENU_UP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028D800F"}));
// register_command(&DENON_MENU_LEFT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028B8009"}));
// register_command(&DENON_MENU_RIGHT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C02878005"}));
// register_command(&DENON_MENU_DOWN , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C02838001"}));
// register_command(&DENON_SOUNDMODE_MOVIE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028928A3"}));
// register_command(&DENON_SOUNDMODE_MUSIC , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028528AF"}));
// register_command(&DENON_SOUNDMODE_GAME , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028D28A7"}));
// register_command(&DENON_SOUNDMODE_PURE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028AC840"}));
// register_command(&DENON_QUICKSELECT_1 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028248C8"}));
// register_command(&DENON_QUICKSELECT_2 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028A48C0"}));
// register_command(&DENON_QUICKSELECT_3 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028648CC"}));
// register_command(&DENON_QUICKSELECT_4 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028E48C4"}));
// register_command(&DENON_MEDIA_PREV , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C028C7CF2"}));
// register_command(&DENON_MEDIA_PLAYPAUSE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C02807CFE"}));
// register_command(&DENON_MEDIA_NEXT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_DENON), "0x2A4C02827CFC"}));
}

View File

@ -1,45 +1,46 @@
#pragma once
extern uint16_t DENON_POWER_TOGGLE;
extern uint16_t DENON_POWER_SLEEP;
extern uint16_t DENON_VOL_MINUS;
extern uint16_t DENON_VOL_PLUS;
extern uint16_t DENON_VOL_MUTE;
extern uint16_t DENON_CHAN_PLUS;
extern uint16_t DENON_CHAN_MINUS;
extern uint16_t DENON_INPUT_CABLESAT;
extern uint16_t DENON_INPUT_MEDIAPLAYER;
extern uint16_t DENON_INPUT_BLURAY;
extern uint16_t DENON_INPUT_GAME;
extern uint16_t DENON_INPUT_AUX1;
extern uint16_t DENON_INPUT_AUX2;
extern uint16_t DENON_INPUT_PHONO;
extern uint16_t DENON_INPUT_TUNER;
extern uint16_t DENON_INPUT_TV;
extern uint16_t DENON_INPUT_USB;
extern uint16_t DENON_INPUT_BLUETOOTH;
extern uint16_t DENON_INPUT_INTERNET;
extern uint16_t DENON_INPUT_HEOS;
extern uint16_t DENON_POWER_ECO;
extern uint16_t DENON_INFO;
extern uint16_t DENON_OPTION;
extern uint16_t DENON_BACK;
extern uint16_t DENON_SETUP;
extern uint16_t DENON_MENU_ENTER;
extern uint16_t DENON_MENU_UP;
extern uint16_t DENON_MENU_LEFT;
extern uint16_t DENON_MENU_RIGHT;
extern uint16_t DENON_MENU_DOWN;
extern uint16_t DENON_SOUNDMODE_MOVIE;
extern uint16_t DENON_SOUNDMODE_MUSIC;
extern uint16_t DENON_SOUNDMODE_GAME;
extern uint16_t DENON_SOUNDMODE_PURE;
extern uint16_t DENON_QUICKSELECT_1;
extern uint16_t DENON_QUICKSELECT_2;
extern uint16_t DENON_QUICKSELECT_3;
extern uint16_t DENON_QUICKSELECT_4;
extern uint16_t DENON_MEDIA_PREV;
extern uint16_t DENON_MEDIA_PLAYPAUSE;
extern uint16_t DENON_MEDIA_NEXT;
// Only activate the commands that are used. Every command takes 100 bytes, wether used or not.
// extern uint16_t DENON_POWER_TOGGLE;
// extern uint16_t DENON_POWER_SLEEP;
// extern uint16_t DENON_VOL_MINUS;
// extern uint16_t DENON_VOL_PLUS;
// extern uint16_t DENON_VOL_MUTE;
// extern uint16_t DENON_CHAN_PLUS;
// extern uint16_t DENON_CHAN_MINUS;
// extern uint16_t DENON_INPUT_CABLESAT;
// extern uint16_t DENON_INPUT_MEDIAPLAYER;
// extern uint16_t DENON_INPUT_BLURAY;
// extern uint16_t DENON_INPUT_GAME;
// extern uint16_t DENON_INPUT_AUX1;
// extern uint16_t DENON_INPUT_AUX2;
// extern uint16_t DENON_INPUT_PHONO;
// extern uint16_t DENON_INPUT_TUNER;
// extern uint16_t DENON_INPUT_TV;
// extern uint16_t DENON_INPUT_USB;
// extern uint16_t DENON_INPUT_BLUETOOTH;
// extern uint16_t DENON_INPUT_INTERNET;
// extern uint16_t DENON_INPUT_HEOS;
// extern uint16_t DENON_POWER_ECO;
// extern uint16_t DENON_INFO;
// extern uint16_t DENON_OPTION;
// extern uint16_t DENON_BACK;
// extern uint16_t DENON_SETUP;
// extern uint16_t DENON_MENU_ENTER;
// extern uint16_t DENON_MENU_UP;
// extern uint16_t DENON_MENU_LEFT;
// extern uint16_t DENON_MENU_RIGHT;
// extern uint16_t DENON_MENU_DOWN;
// extern uint16_t DENON_SOUNDMODE_MOVIE;
// extern uint16_t DENON_SOUNDMODE_MUSIC;
// extern uint16_t DENON_SOUNDMODE_GAME;
// extern uint16_t DENON_SOUNDMODE_PURE;
// extern uint16_t DENON_QUICKSELECT_1;
// extern uint16_t DENON_QUICKSELECT_2;
// extern uint16_t DENON_QUICKSELECT_3;
// extern uint16_t DENON_QUICKSELECT_4;
// extern uint16_t DENON_MEDIA_PREV;
// extern uint16_t DENON_MEDIA_PLAYPAUSE;
// extern uint16_t DENON_MEDIA_NEXT;
void register_device_denonAvr();

View File

@ -3,70 +3,72 @@
#include "applicationInternal/hardware/hardwarePresenter.h"
#include "device_yamahaAmp.h"
uint16_t YAMAHA_INPUT_DVD ; //"Yamaha_input_dvd";
uint16_t YAMAHA_INPUT_DTV ; //"Yamaha_input_dtv";
uint16_t YAMAHA_INPUT_VCR ; //"Yamaha_input_vcr";
uint16_t YAMAHA_POWER_TOGGLE ; //"Yamaha_power_toggle";
uint16_t YAMAHA_INPUT_CD ; //"Yamaha_input_cd";
uint16_t YAMAHA_INPUT_MD ; //"Yamaha_input_md";
uint16_t YAMAHA_INPUT_VAUX ; //"Yamaha_input_vaux";
uint16_t YAMAHA_MULTICHANNEL ; //"Yamaha_multichannel";
uint16_t YAMAHA_INPUT_TUNER ; //"Yamaha_input_tuner";
uint16_t YAMAHA_PRESETGROUP ; //"Yamaha_presetgroup";
uint16_t YAMAHA_PRESETSTATION_MINUS ; //"Yamaha_presetstation-";
uint16_t YAMAHA_PRESETSTATION_PLUS ; //"Yamaha_presetstation+";
uint16_t YAMAHA_STANDARD ; //"Yamaha_standard";
uint16_t YAMAHA_5CHSTEREO ; //"Yamaha_5chstereo";
uint16_t YAMAHA_NIGHT ; //"Yamaha_night";
uint16_t YAMAHA_SLEEP ; //"Yamaha_sleep";
uint16_t YAMAHA_TEST ; //"Yamaha_test";
uint16_t YAMAHA_STRAIGHT ; //"Yamaha_straight";
uint16_t YAMAHA_VOL_MINUS ; //"Yamaha_vol-";
uint16_t YAMAHA_VOL_PLUS ; //"Yamaha_vol+";
uint16_t YAMAHA_PROG_MINUS ; //"Yamaha_prog-";
uint16_t YAMAHA_PROG_PLUS ; //"Yamaha_prog+";
uint16_t YAMAHA_MUTE_TOGGLE ; //"Yamaha_mute_toggle";
uint16_t YAMAHA_LEVEL ; //"Yamaha_level";
uint16_t YAMAHA_SETMENU ; //"Yamaha_setmenu";
uint16_t YAMAHA_SETMENU_UP ; //"Yamaha_setmenu_up";
uint16_t YAMAHA_SETMENU_DOWN ; //"Yamaha_setmenu_down";
uint16_t YAMAHA_SETMENU_MINUS ; //"Yamaha_setmenu_-";
uint16_t YAMAHA_SETMENU_PLUS ; //"Yamaha_setmenu_+";
uint16_t YAMAHA_POWER_OFF ; //"Yamaha_power_off";
uint16_t YAMAHA_POWER_ON ; //"Yamaha_power_on";
// Only activate the commands that are used. Every command takes 100 bytes, wether used or not.
uint16_t YAMAHA_INPUT_DVD ; //"Yamaha_input_dvd";
uint16_t YAMAHA_INPUT_DTV ; //"Yamaha_input_dtv";
// uint16_t YAMAHA_INPUT_VCR ; //"Yamaha_input_vcr";
// uint16_t YAMAHA_POWER_TOGGLE ; //"Yamaha_power_toggle";
// uint16_t YAMAHA_INPUT_CD ; //"Yamaha_input_cd";
// uint16_t YAMAHA_INPUT_MD ; //"Yamaha_input_md";
// uint16_t YAMAHA_INPUT_VAUX ; //"Yamaha_input_vaux";
// uint16_t YAMAHA_MULTICHANNEL ; //"Yamaha_multichannel";
// uint16_t YAMAHA_INPUT_TUNER ; //"Yamaha_input_tuner";
// uint16_t YAMAHA_PRESETGROUP ; //"Yamaha_presetgroup";
// uint16_t YAMAHA_PRESETSTATION_MINUS ; //"Yamaha_presetstation-";
// uint16_t YAMAHA_PRESETSTATION_PLUS ; //"Yamaha_presetstation+";
uint16_t YAMAHA_STANDARD ; //"Yamaha_standard";
// uint16_t YAMAHA_5CHSTEREO ; //"Yamaha_5chstereo";
// uint16_t YAMAHA_NIGHT ; //"Yamaha_night";
// uint16_t YAMAHA_SLEEP ; //"Yamaha_sleep";
// uint16_t YAMAHA_TEST ; //"Yamaha_test";
// uint16_t YAMAHA_STRAIGHT ; //"Yamaha_straight";
uint16_t YAMAHA_VOL_MINUS ; //"Yamaha_vol-";
uint16_t YAMAHA_VOL_PLUS ; //"Yamaha_vol+";
// uint16_t YAMAHA_PROG_MINUS ; //"Yamaha_prog-";
// uint16_t YAMAHA_PROG_PLUS ; //"Yamaha_prog+";
uint16_t YAMAHA_MUTE_TOGGLE ; //"Yamaha_mute_toggle";
// uint16_t YAMAHA_LEVEL ; //"Yamaha_level";
// uint16_t YAMAHA_SETMENU ; //"Yamaha_setmenu";
// uint16_t YAMAHA_SETMENU_UP ; //"Yamaha_setmenu_up";
// uint16_t YAMAHA_SETMENU_DOWN ; //"Yamaha_setmenu_down";
// uint16_t YAMAHA_SETMENU_MINUS ; //"Yamaha_setmenu_-";
// uint16_t YAMAHA_SETMENU_PLUS ; //"Yamaha_setmenu_+";
uint16_t YAMAHA_POWER_OFF ; //"Yamaha_power_off";
uint16_t YAMAHA_POWER_ON ; //"Yamaha_power_on";
void register_device_yamahaAmp() {
// tested with Yamaha RX-V359, works also with others
// Only activate the commands that are used. Every command takes 100 bytes, wether used or not.
register_command(&YAMAHA_INPUT_DVD , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1837C"}));
register_command(&YAMAHA_INPUT_DTV , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA12AD5"}));
register_command(&YAMAHA_INPUT_VCR , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1F00F"}));
register_command(&YAMAHA_POWER_TOGGLE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1F807"}));
register_command(&YAMAHA_INPUT_CD , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1A857"}));
register_command(&YAMAHA_INPUT_MD , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1936C"}));
register_command(&YAMAHA_INPUT_VAUX , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1AA55"}));
register_command(&YAMAHA_MULTICHANNEL , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1E11E"}));
register_command(&YAMAHA_INPUT_TUNER , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA16897"}));
register_command(&YAMAHA_PRESETGROUP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA148B7"}));
register_command(&YAMAHA_PRESETSTATION_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA18877"}));
register_command(&YAMAHA_PRESETSTATION_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA108F7"}));
// register_command(&YAMAHA_INPUT_VCR , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1F00F"}));
// register_command(&YAMAHA_POWER_TOGGLE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1F807"}));
// register_command(&YAMAHA_INPUT_CD , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1A857"}));
// register_command(&YAMAHA_INPUT_MD , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1936C"}));
// register_command(&YAMAHA_INPUT_VAUX , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1AA55"}));
// register_command(&YAMAHA_MULTICHANNEL , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1E11E"}));
// register_command(&YAMAHA_INPUT_TUNER , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA16897"}));
// register_command(&YAMAHA_PRESETGROUP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA148B7"}));
// register_command(&YAMAHA_PRESETSTATION_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA18877"}));
// register_command(&YAMAHA_PRESETSTATION_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA108F7"}));
register_command(&YAMAHA_STANDARD , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA109F6"}));
register_command(&YAMAHA_5CHSTEREO , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1E916"}));
register_command(&YAMAHA_NIGHT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1A956"}));
register_command(&YAMAHA_SLEEP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1EA15"}));
register_command(&YAMAHA_TEST , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1A15E"}));
register_command(&YAMAHA_STRAIGHT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA16A95"}));
// register_command(&YAMAHA_5CHSTEREO , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1E916"}));
// register_command(&YAMAHA_NIGHT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1A956"}));
// register_command(&YAMAHA_SLEEP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1EA15"}));
// register_command(&YAMAHA_TEST , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1A15E"}));
// register_command(&YAMAHA_STRAIGHT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA16A95"}));
register_command(&YAMAHA_VOL_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1D827"}));
register_command(&YAMAHA_VOL_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA158A7"}));
register_command(&YAMAHA_PROG_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA19A65"}));
register_command(&YAMAHA_PROG_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA11AE5"}));
// register_command(&YAMAHA_PROG_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA19A65"}));
// register_command(&YAMAHA_PROG_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA11AE5"}));
register_command(&YAMAHA_MUTE_TOGGLE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA138C7"}));
register_command(&YAMAHA_LEVEL , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1619E"}));
register_command(&YAMAHA_SETMENU , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA139C6"}));
register_command(&YAMAHA_SETMENU_UP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA119E6"}));
register_command(&YAMAHA_SETMENU_DOWN , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA19966"}));
register_command(&YAMAHA_SETMENU_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1CA35"}));
register_command(&YAMAHA_SETMENU_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA14AB5"}));
// register_command(&YAMAHA_LEVEL , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1619E"}));
// register_command(&YAMAHA_SETMENU , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA139C6"}));
// register_command(&YAMAHA_SETMENU_UP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA119E6"}));
// register_command(&YAMAHA_SETMENU_DOWN , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA19966"}));
// register_command(&YAMAHA_SETMENU_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1CA35"}));
// register_command(&YAMAHA_SETMENU_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA14AB5"}));
register_command(&YAMAHA_POWER_OFF , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA17887"}));
register_command(&YAMAHA_POWER_ON , makeCommandData(IR, {std::to_string(IR_PROTOCOL_NEC), "0x5EA1B847"}));

View File

@ -1,34 +1,35 @@
#pragma once
// Only activate the commands that are used. Every command takes 100 bytes, wether used or not.
extern uint16_t YAMAHA_INPUT_DVD;
extern uint16_t YAMAHA_INPUT_DTV;
extern uint16_t YAMAHA_INPUT_VCR;
extern uint16_t YAMAHA_POWER_TOGGLE;
extern uint16_t YAMAHA_INPUT_CD;
extern uint16_t YAMAHA_INPUT_MD;
extern uint16_t YAMAHA_INPUT_VAUX;
extern uint16_t YAMAHA_MULTICHANNEL;
extern uint16_t YAMAHA_INPUT_TUNER;
extern uint16_t YAMAHA_PRESETGROUP;
extern uint16_t YAMAHA_PRESETSTATION_MINUS;
extern uint16_t YAMAHA_PRESETSTATION_PLUS;
// extern uint16_t YAMAHA_INPUT_VCR;
// extern uint16_t YAMAHA_POWER_TOGGLE;
// extern uint16_t YAMAHA_INPUT_CD;
// extern uint16_t YAMAHA_INPUT_MD;
// extern uint16_t YAMAHA_INPUT_VAUX;
// extern uint16_t YAMAHA_MULTICHANNEL;
// extern uint16_t YAMAHA_INPUT_TUNER;
// extern uint16_t YAMAHA_PRESETGROUP;
// extern uint16_t YAMAHA_PRESETSTATION_MINUS;
// extern uint16_t YAMAHA_PRESETSTATION_PLUS;
extern uint16_t YAMAHA_STANDARD;
extern uint16_t YAMAHA_5CHSTEREO;
extern uint16_t YAMAHA_NIGHT;
extern uint16_t YAMAHA_SLEEP;
extern uint16_t YAMAHA_TEST;
extern uint16_t YAMAHA_STRAIGHT;
// extern uint16_t YAMAHA_5CHSTEREO;
// extern uint16_t YAMAHA_NIGHT;
// extern uint16_t YAMAHA_SLEEP;
// extern uint16_t YAMAHA_TEST;
// extern uint16_t YAMAHA_STRAIGHT;
extern uint16_t YAMAHA_VOL_MINUS;
extern uint16_t YAMAHA_VOL_PLUS;
extern uint16_t YAMAHA_PROG_MINUS;
extern uint16_t YAMAHA_PROG_PLUS;
// extern uint16_t YAMAHA_PROG_MINUS;
// extern uint16_t YAMAHA_PROG_PLUS;
extern uint16_t YAMAHA_MUTE_TOGGLE;
extern uint16_t YAMAHA_LEVEL;
extern uint16_t YAMAHA_SETMENU;
extern uint16_t YAMAHA_SETMENU_UP;
extern uint16_t YAMAHA_SETMENU_DOWN;
extern uint16_t YAMAHA_SETMENU_MINUS;
extern uint16_t YAMAHA_SETMENU_PLUS;
// extern uint16_t YAMAHA_LEVEL;
// extern uint16_t YAMAHA_SETMENU;
// extern uint16_t YAMAHA_SETMENU_UP;
// extern uint16_t YAMAHA_SETMENU_DOWN;
// extern uint16_t YAMAHA_SETMENU_MINUS;
// extern uint16_t YAMAHA_SETMENU_PLUS;
extern uint16_t YAMAHA_POWER_OFF;
extern uint16_t YAMAHA_POWER_ON;

View File

@ -3,9 +3,10 @@
#include "applicationInternal/hardware/hardwarePresenter.h"
#include "device_samsungTV.h"
uint16_t SAMSUNG_POWER_TOGGLE ; //"Samsung_power_toggle";
uint16_t SAMSUNG_SOURCE ; //"Samsung_source";
uint16_t SAMSUNG_HDMI ; //"Samsung_hdmi";
// Only activate the commands that are used. Every command takes 100 bytes, wether used or not.
// uint16_t SAMSUNG_POWER_TOGGLE ; //"Samsung_power_toggle";
// uint16_t SAMSUNG_SOURCE ; //"Samsung_source";
// uint16_t SAMSUNG_HDMI ; //"Samsung_hdmi";
uint16_t SAMSUNG_NUM_1 ; //"Samsung_num_1";
uint16_t SAMSUNG_NUM_2 ; //"Samsung_num_2";
uint16_t SAMSUNG_NUM_3 ; //"Samsung_num_3";
@ -16,49 +17,49 @@ uint16_t SAMSUNG_NUM_7 ; //"Samsung_num_7";
uint16_t SAMSUNG_NUM_8 ; //"Samsung_num_8";
uint16_t SAMSUNG_NUM_9 ; //"Samsung_num_9";
uint16_t SAMSUNG_NUM_0 ; //"Samsung_num_0";
uint16_t SAMSUNG_TTXMIX ; //"Samsung_ttxmix";
uint16_t SAMSUNG_PRECH ; //"Samsung_prech";
uint16_t SAMSUNG_VOL_MINUS ; //"Samsung_vol_minus";
uint16_t SAMSUNG_VOL_PLUS ; //"Samsung_vol_plus";
uint16_t SAMSUNG_MUTE_TOGGLE ; //"Samsung_mute_toggle";
uint16_t SAMSUNG_CHLIST ; //"Samsung_chlist";
// uint16_t SAMSUNG_TTXMIX ; //"Samsung_ttxmix";
// uint16_t SAMSUNG_PRECH ; //"Samsung_prech";
// uint16_t SAMSUNG_VOL_MINUS ; //"Samsung_vol_minus";
// uint16_t SAMSUNG_VOL_PLUS ; //"Samsung_vol_plus";
// uint16_t SAMSUNG_MUTE_TOGGLE ; //"Samsung_mute_toggle";
// uint16_t SAMSUNG_CHLIST ; //"Samsung_chlist";
uint16_t SAMSUNG_CHANNEL_UP ; //"Samsung_channel_up";
uint16_t SAMSUNG_CHANNEL_DOWN ; //"Samsung_channel_down";
uint16_t SAMSUNG_MENU ; //"Samsung_menu";
uint16_t SAMSUNG_APPS ; //"Samsung_apps";
// uint16_t SAMSUNG_APPS ; //"Samsung_apps";
uint16_t SAMSUNG_GUIDE ; //"Samsung_guide";
uint16_t SAMSUNG_TOOLS ; //"Samsung_tools";
uint16_t SAMSUNG_INFO ; //"Samsung_info";
// uint16_t SAMSUNG_TOOLS ; //"Samsung_tools";
// uint16_t SAMSUNG_INFO ; //"Samsung_info";
uint16_t SAMSUNG_UP ; //"Samsung_up";
uint16_t SAMSUNG_DOWN ; //"Samsung_down";
uint16_t SAMSUNG_LEFT ; //"Samsung_left";
uint16_t SAMSUNG_RIGHT ; //"Samsung_right";
uint16_t SAMSUNG_SELECT ; //"Samsung_select";
uint16_t SAMSUNG_RETURN ; //"Samsung_return";
// uint16_t SAMSUNG_RETURN ; //"Samsung_return";
uint16_t SAMSUNG_EXIT ; //"Samsung_exit";
uint16_t SAMSUNG_KEY_A ; //"Samsung_key_a";
uint16_t SAMSUNG_KEY_B ; //"Samsung_key_b";
uint16_t SAMSUNG_KEY_C ; //"Samsung_key_c";
uint16_t SAMSUNG_KEY_D ; //"Samsung_key_d";
uint16_t SAMSUNG_FAMILYSTORY ; //"Samsung_familystory";
uint16_t SAMSUNG_SEARCH ; //"Samsung_search";
uint16_t SAMSUNG_DUALI_II ; //"Samsung_duali-ii";
uint16_t SAMSUNG_SUPPORT ; //"Samsung_support";
uint16_t SAMSUNG_PSIZE ; //"Samsung_psize";
uint16_t SAMSUNG_ADSUBT ; //"Samsung_adsubt";
// uint16_t SAMSUNG_KEY_A ; //"Samsung_key_a";
// uint16_t SAMSUNG_KEY_B ; //"Samsung_key_b";
// uint16_t SAMSUNG_KEY_C ; //"Samsung_key_c";
// uint16_t SAMSUNG_KEY_D ; //"Samsung_key_d";
// uint16_t SAMSUNG_FAMILYSTORY ; //"Samsung_familystory";
// uint16_t SAMSUNG_SEARCH ; //"Samsung_search";
// uint16_t SAMSUNG_DUALI_II ; //"Samsung_duali-ii";
// uint16_t SAMSUNG_SUPPORT ; //"Samsung_support";
// uint16_t SAMSUNG_PSIZE ; //"Samsung_psize";
// uint16_t SAMSUNG_ADSUBT ; //"Samsung_adsubt";
uint16_t SAMSUNG_REWIND ; //"Samsung_rewind";
uint16_t SAMSUNG_PAUSE ; //"Samsung_pause";
uint16_t SAMSUNG_FASTFORWARD ; //"Samsung_fastforward";
uint16_t SAMSUNG_RECORD ; //"Samsung_record";
// uint16_t SAMSUNG_RECORD ; //"Samsung_record";
uint16_t SAMSUNG_PLAY ; //"Samsung_play";
uint16_t SAMSUNG_STOP ; //"Samsung_stop";
// uint16_t SAMSUNG_STOP ; //"Samsung_stop";
uint16_t SAMSUNG_POWER_OFF ; //"Samsung_power_off";
uint16_t SAMSUNG_POWER_ON ; //"Samsung_power_on";
uint16_t SAMSUNG_INPUT_HDMI_1 ; //"Samsung_input_hdmi_1";
uint16_t SAMSUNG_INPUT_HDMI_2 ; //"Samsung_input_hdmi_2";
uint16_t SAMSUNG_INPUT_HDMI_3 ; //"Samsung_input_hdmi_3";
uint16_t SAMSUNG_INPUT_HDMI_4 ; //"Samsung_input_hdmi_4";
uint16_t SAMSUNG_INPUT_COMPONENT ; //"Samsung_input_component";
// uint16_t SAMSUNG_INPUT_HDMI_3 ; //"Samsung_input_hdmi_3";
// uint16_t SAMSUNG_INPUT_HDMI_4 ; //"Samsung_input_hdmi_4";
// uint16_t SAMSUNG_INPUT_COMPONENT ; //"Samsung_input_component";
uint16_t SAMSUNG_INPUT_TV ; //"Samsung_input_tv";
void register_device_samsungTV() {
@ -66,9 +67,10 @@ void register_device_samsungTV() {
// both GC and SAMSUNG work well
// https://github.com/natcl/studioimaginaire/blob/master/arduino_remote/ircodes.py
register_command(&SAMSUNG_POWER_TOGGLE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E040BF"}));
register_command(&SAMSUNG_SOURCE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0807F"}));
register_command(&SAMSUNG_HDMI , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0D12E"}));
// Only activate the commands that are used. Every command takes 100 bytes, wether used or not.
// register_command(&SAMSUNG_POWER_TOGGLE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E040BF"}));
// register_command(&SAMSUNG_SOURCE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0807F"}));
// register_command(&SAMSUNG_HDMI , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0D12E"}));
register_command(&SAMSUNG_NUM_1 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E020DF"}));
register_command(&SAMSUNG_NUM_2 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0A05F"}));
register_command(&SAMSUNG_NUM_3 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0609F"}));
@ -79,49 +81,49 @@ void register_device_samsungTV() {
register_command(&SAMSUNG_NUM_8 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0B04F"}));
register_command(&SAMSUNG_NUM_9 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0708F"}));
register_command(&SAMSUNG_NUM_0 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E08877"}));
register_command(&SAMSUNG_TTXMIX , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E034CB"}));
register_command(&SAMSUNG_PRECH , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0C837"}));
register_command(&SAMSUNG_VOL_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0D02F"}));
register_command(&SAMSUNG_VOL_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0E01F"}));
register_command(&SAMSUNG_MUTE_TOGGLE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0F00F"}));
register_command(&SAMSUNG_CHLIST , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0D629"}));
// register_command(&SAMSUNG_TTXMIX , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E034CB"}));
// register_command(&SAMSUNG_PRECH , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0C837"}));
// register_command(&SAMSUNG_VOL_MINUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0D02F"}));
// register_command(&SAMSUNG_VOL_PLUS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0E01F"}));
// register_command(&SAMSUNG_MUTE_TOGGLE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0F00F"}));
// register_command(&SAMSUNG_CHLIST , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0D629"}));
register_command(&SAMSUNG_CHANNEL_UP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E048B7"}));
register_command(&SAMSUNG_CHANNEL_DOWN , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E008F7"}));
register_command(&SAMSUNG_MENU , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E058A7"}));
register_command(&SAMSUNG_APPS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E09E61"}));
// register_command(&SAMSUNG_APPS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E09E61"}));
register_command(&SAMSUNG_GUIDE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0F20D"}));
register_command(&SAMSUNG_TOOLS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0D22D"}));
register_command(&SAMSUNG_INFO , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0F807"}));
// register_command(&SAMSUNG_TOOLS , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0D22D"}));
// register_command(&SAMSUNG_INFO , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0F807"}));
register_command(&SAMSUNG_UP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E006F9"}));
register_command(&SAMSUNG_DOWN , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E08679"}));
register_command(&SAMSUNG_LEFT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0A659"}));
register_command(&SAMSUNG_RIGHT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E046B9"}));
register_command(&SAMSUNG_SELECT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E016E9"}));
register_command(&SAMSUNG_RETURN , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E01AE5"}));
// register_command(&SAMSUNG_RETURN , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E01AE5"}));
register_command(&SAMSUNG_EXIT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0B44B"}));
register_command(&SAMSUNG_KEY_A , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E036C9"}));
register_command(&SAMSUNG_KEY_B , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E028D7"}));
register_command(&SAMSUNG_KEY_C , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0A857"}));
register_command(&SAMSUNG_KEY_D , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E06897"}));
register_command(&SAMSUNG_FAMILYSTORY , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0639C"}));
register_command(&SAMSUNG_SEARCH , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0CE31"}));
register_command(&SAMSUNG_DUALI_II , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E000FF"}));
register_command(&SAMSUNG_SUPPORT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0FC03"}));
register_command(&SAMSUNG_PSIZE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E07C83"}));
register_command(&SAMSUNG_ADSUBT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0A45B"}));
// register_command(&SAMSUNG_KEY_A , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E036C9"}));
// register_command(&SAMSUNG_KEY_B , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E028D7"}));
// register_command(&SAMSUNG_KEY_C , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0A857"}));
// register_command(&SAMSUNG_KEY_D , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E06897"}));
// register_command(&SAMSUNG_FAMILYSTORY , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0639C"}));
// register_command(&SAMSUNG_SEARCH , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0CE31"}));
// register_command(&SAMSUNG_DUALI_II , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E000FF"}));
// register_command(&SAMSUNG_SUPPORT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0FC03"}));
// register_command(&SAMSUNG_PSIZE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E07C83"}));
// register_command(&SAMSUNG_ADSUBT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0A45B"}));
register_command(&SAMSUNG_REWIND , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0A25D"}));
register_command(&SAMSUNG_PAUSE , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E052AD"}));
register_command(&SAMSUNG_FASTFORWARD , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E012ED"}));
register_command(&SAMSUNG_RECORD , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0926D"}));
// register_command(&SAMSUNG_RECORD , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0926D"}));
register_command(&SAMSUNG_PLAY , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0E21D"}));
register_command(&SAMSUNG_STOP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0629D"}));
// register_command(&SAMSUNG_STOP , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0629D"}));
register_command(&SAMSUNG_POWER_OFF , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E019E6"}));
register_command(&SAMSUNG_POWER_ON , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E09966"}));
register_command(&SAMSUNG_INPUT_HDMI_1 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E09768"}));
register_command(&SAMSUNG_INPUT_HDMI_2 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E07D82"}));
register_command(&SAMSUNG_INPUT_HDMI_3 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E043BC"}));
register_command(&SAMSUNG_INPUT_HDMI_4 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0A35C"}));
register_command(&SAMSUNG_INPUT_COMPONENT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0619E"}));
// register_command(&SAMSUNG_INPUT_HDMI_3 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E043BC"}));
// register_command(&SAMSUNG_INPUT_HDMI_4 , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0A35C"}));
// register_command(&SAMSUNG_INPUT_COMPONENT , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0619E"}));
register_command(&SAMSUNG_INPUT_TV , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0D827"}));
// unknown commands. Not on my remote
// register_command(&- , makeCommandData(IR, {std::to_string(IR_PROTOCOL_SAMSUNG), "0xE0E0C43B"}));

View File

@ -1,8 +1,9 @@
#pragma once
extern uint16_t SAMSUNG_POWER_TOGGLE;
extern uint16_t SAMSUNG_SOURCE;
extern uint16_t SAMSUNG_HDMI;
// Only activate the commands that are used. Every command takes 100 bytes, wether used or not.
// extern uint16_t SAMSUNG_POWER_TOGGLE;
// extern uint16_t SAMSUNG_SOURCE;
// extern uint16_t SAMSUNG_HDMI;
extern uint16_t SAMSUNG_NUM_1;
extern uint16_t SAMSUNG_NUM_2;
extern uint16_t SAMSUNG_NUM_3;
@ -13,49 +14,49 @@ extern uint16_t SAMSUNG_NUM_7;
extern uint16_t SAMSUNG_NUM_8;
extern uint16_t SAMSUNG_NUM_9;
extern uint16_t SAMSUNG_NUM_0;
extern uint16_t SAMSUNG_TTXMIX;
extern uint16_t SAMSUNG_PRECH;
extern uint16_t SAMSUNG_VOL_MINUS;
extern uint16_t SAMSUNG_VOL_PLUS;
extern uint16_t SAMSUNG_MUTE_TOGGLE;
extern uint16_t SAMSUNG_CHLIST;
// extern uint16_t SAMSUNG_TTXMIX;
// extern uint16_t SAMSUNG_PRECH;
// extern uint16_t SAMSUNG_VOL_MINUS;
// extern uint16_t SAMSUNG_VOL_PLUS;
// extern uint16_t SAMSUNG_MUTE_TOGGLE;
// extern uint16_t SAMSUNG_CHLIST;
extern uint16_t SAMSUNG_CHANNEL_UP;
extern uint16_t SAMSUNG_CHANNEL_DOWN;
extern uint16_t SAMSUNG_MENU;
extern uint16_t SAMSUNG_APPS;
// extern uint16_t SAMSUNG_APPS;
extern uint16_t SAMSUNG_GUIDE;
extern uint16_t SAMSUNG_TOOLS;
extern uint16_t SAMSUNG_INFO;
// extern uint16_t SAMSUNG_TOOLS;
// extern uint16_t SAMSUNG_INFO;
extern uint16_t SAMSUNG_UP;
extern uint16_t SAMSUNG_DOWN;
extern uint16_t SAMSUNG_LEFT;
extern uint16_t SAMSUNG_RIGHT;
extern uint16_t SAMSUNG_SELECT;
extern uint16_t SAMSUNG_RETURN;
// extern uint16_t SAMSUNG_RETURN;
extern uint16_t SAMSUNG_EXIT;
extern uint16_t SAMSUNG_KEY_A;
extern uint16_t SAMSUNG_KEY_B;
extern uint16_t SAMSUNG_KEY_C;
extern uint16_t SAMSUNG_KEY_D;
extern uint16_t SAMSUNG_FAMILYSTORY;
extern uint16_t SAMSUNG_SEARCH;
extern uint16_t SAMSUNG_DUALI_II;
extern uint16_t SAMSUNG_SUPPORT;
extern uint16_t SAMSUNG_PSIZE;
extern uint16_t SAMSUNG_ADSUBT;
// extern uint16_t SAMSUNG_KEY_A;
// extern uint16_t SAMSUNG_KEY_B;
// extern uint16_t SAMSUNG_KEY_C;
// extern uint16_t SAMSUNG_KEY_D;
// extern uint16_t SAMSUNG_FAMILYSTORY;
// extern uint16_t SAMSUNG_SEARCH;
// extern uint16_t SAMSUNG_DUALI_II;
// extern uint16_t SAMSUNG_SUPPORT;
// extern uint16_t SAMSUNG_PSIZE;
// extern uint16_t SAMSUNG_ADSUBT;
extern uint16_t SAMSUNG_REWIND;
extern uint16_t SAMSUNG_PAUSE;
extern uint16_t SAMSUNG_FASTFORWARD;
extern uint16_t SAMSUNG_RECORD;
// extern uint16_t SAMSUNG_RECORD;
extern uint16_t SAMSUNG_PLAY;
extern uint16_t SAMSUNG_STOP;
// extern uint16_t SAMSUNG_STOP;
extern uint16_t SAMSUNG_POWER_OFF;
extern uint16_t SAMSUNG_POWER_ON;
extern uint16_t SAMSUNG_INPUT_HDMI_1;
extern uint16_t SAMSUNG_INPUT_HDMI_2;
extern uint16_t SAMSUNG_INPUT_HDMI_3;
extern uint16_t SAMSUNG_INPUT_HDMI_4;
extern uint16_t SAMSUNG_INPUT_COMPONENT;
// extern uint16_t SAMSUNG_INPUT_HDMI_3;
// extern uint16_t SAMSUNG_INPUT_HDMI_4;
// extern uint16_t SAMSUNG_INPUT_COMPONENT;
extern uint16_t SAMSUNG_INPUT_TV;
void register_device_samsungTV();