Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
93 changes: 93 additions & 0 deletions main/ZgatewayIR.ino
Original file line number Diff line number Diff line change
Expand Up @@ -1184,6 +1184,99 @@ bool sendIdentifiedProtocol(const char* protocol_name, SIGNAL_SIZE_UL_ULL data,
irsend.sendSanyoAc(dataarray, valueBITS, valueRPT);
return true;
}
# endif
# ifdef IR_VOLTAS
if (strcmp(protocol_name, "VOLTAS") == 0) {
Log.notice(F("Sending IR signal with %s" CR), protocol_name);
if (valueBITS == 0)
valueBITS = kVoltasStateLength;
irsend.sendVoltas(dataarray, valueBITS, valueRPT);
return true;
}
# endif
# ifdef IR_METZ
if (strcmp(protocol_name, "METZ") == 0) {
Log.notice(F("Sending IR signal with %s" CR), protocol_name);
if (valueRPT == repeatIRwNumber)
valueRPT = std::max(valueRPT, kMetzMinRepeat);
if (valueBITS == 0)
valueBITS = kMetzBits;
irsend.sendMetz(data, valueBITS, valueRPT);
return true;
}
# endif
# ifdef IR_TRANSCOLD
if (strcmp(protocol_name, "TRANSCOLD") == 0) {
Log.notice(F("Sending IR signal with %s" CR), protocol_name);
if (valueRPT == repeatIRwNumber)
valueRPT = std::max(valueRPT, kTranscoldDefaultRepeat);
if (valueBITS == 0)
valueBITS = kTranscoldBits;
irsend.sendTranscold(data, valueBITS, valueRPT);
return true;
}
# endif
# ifdef IR_TECHNIBEL_AC
if (strcmp(protocol_name, "TECHNIBELAC") == 0) {
Log.notice(F("Sending IR signal with %s" CR), protocol_name);
if (valueRPT == repeatIRwNumber)
valueRPT = std::max(valueRPT, kTechnibelAcDefaultRepeat);
if (valueBITS == 0)
valueBITS = kTechnibelAcBits;
irsend.sendTechnibelAc(data, valueBITS, valueRPT);
return true;
}
# endif
# ifdef IR_MIRAGE
if (strcmp(protocol_name, "MIRAGE") == 0) {
Log.notice(F("Sending IR signal with %s" CR), protocol_name);
if (valueRPT == repeatIRwNumber)
valueRPT = std::max(valueRPT, kMirageMinRepeat);
if (valueBITS == 0)
valueBITS = kMirageStateLength;
irsend.sendMirage(dataarray, valueBITS, valueRPT);
return true;
}
# endif
# ifdef IR_ELITESCREENS
if (strcmp(protocol_name, "ELITESCREENS") == 0) {
Log.notice(F("Sending IR signal with %s" CR), protocol_name);
if (valueRPT == repeatIRwNumber)
valueRPT = std::max(valueRPT, kEliteScreensDefaultRepeat);
if (valueBITS == 0)
valueBITS = kEliteScreensBits;
irsend.sendElitescreens(data, valueBITS, valueRPT);
return true;
}
# endif
# ifdef IR_PANASONIC_AC32
if (strcmp(protocol_name, "PANASONIC_AC32") == 0) {
Log.notice(F("Sending IR signal with %s" CR), protocol_name);
if (valueBITS == 0)
valueBITS = kPioneerBits;
irsend.sendPanasonicAC32(data, valueBITS, valueRPT);
return true;
}
# endif
# ifdef IR_MILESTAG2
if (strcmp(protocol_name, "MILESTAG2") == 0) {
Log.notice(F("Sending IR signal with %s" CR), protocol_name);
if (valueRPT == repeatIRwNumber)
valueRPT = std::max(valueRPT, kMilesMinRepeat);
if (valueBITS == 0)
valueBITS = kMilesTag2ShotBits;
irsend.sendMilestag2(data, valueBITS, valueRPT);
return true;
}
# endif
# ifdef IR_ECOCLIM
if (strcmp(protocol_name, "ECOCLIM") == 0) {
Log.notice(F("Sending IR signal with %s" CR), protocol_name);
if (valueBITS == 0)
valueBITS = kEcoclimBits;
irsend.sendEcoclim(data, valueBITS, valueRPT);
return true;
}
# endif
Log.warning(F("Unknown IR protocol" CR));
return false;
Expand Down
9 changes: 9 additions & 0 deletions main/config_IR.h
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,15 @@ extern void MQTTtoIR(char* topicOri, JsonObject& RFdata);
# define IR_MIDEA24
# define IR_ZEPEAL
# define IR_SANYO_AC
# define IR_VOLTAS
# define IR_METZ
# define IR_TRANSCOLD
# define IR_TECHNIBEL_AC
# define IR_MIRAGE
# define IR_ELITESCREENS
# define IR_PANASONIC_AC32
# define IR_MILESTAG2
# define IR_ECOCLIM
#elif __AVR_ATmega2560__
# define IR_COOLIX
# define IR_Whynter
Expand Down
2 changes: 1 addition & 1 deletion platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ pubsubclient = PubSubClient@2.8
rc-switch = https://github.com/1technophile/rc-switch.git#385a7e0
newremoteswitch = https://github.com/1technophile/NewRemoteSwitch.git#8eb980e
ble = https://github.com/h2zero/NimBLE-Arduino.git#1.2.0
irremoteesp = IRremoteESP8266@2.7.9
irremoteesp = IRremoteESP8266@2.7.15
irremote = https://github.com/z3t0/Arduino-IRremote.git#1c08a37
lora = https://github.com/sandeepmistry/arduino-LoRa.git#f4a1d27
esppilight = ESPiLight@0.17.0
Expand Down