#ifndef DEVICEIRTX_H #define DEVICEIRTX_H #include "Device.h" #include #include class DeviceIrTx : public Device { public: inline DeviceIrTx(byte irtxPin):irsend(irtxPin) { pin_irtx = irtxPin; } virtual void deviceSetup(); virtual void deviceRegister(); virtual void deviceLoop(); private: byte pin_irtx; IRsend irsend; bool irTxHandler(String message); HomieNode irTxNode = HomieNode("irtx", "irtx"); }; void DeviceIrTx::deviceSetup() { // pinMode(pin_irtx, OUTPUT); // this is done by begin() irsend.begin(); } bool DeviceIrTx::irTxHandler(String message) { irsend.sendSony(0xa90, 12); return true; } void DeviceIrTx::deviceRegister() { irTxNode.subscribe("irtx", [this](String value) { return irTxHandler(value); }); Homie.registerNode(irTxNode); } void DeviceIrTx::deviceLoop() { return; } #endif