 |
LightHub
v4.0.0
Smarthome controller firmware
|
Go to the documentation of this file.
40 #define S_ADDITIONAL 14
42 #define CH_DIMMER 0 //DMX 1-4 ch
43 #define CH_RGBW 1 //DMX 4 ch
44 #define CH_RGB 2 //DMX 3 ch
45 #define CH_PWM 3 //PWM output directly to PIN 1-4 CH
46 #define CH_MODBUS 4 //Modbus AC Dimmer
47 #define CH_THERMO 5 //Simple ON/OFF thermostat
48 #define CH_RELAY 6 //ON_OFF relay output
49 #define CH_GROUP 7 //Group pseudochannel
50 #define CH_VCTEMP 8 //Vacom PID regulator
51 #define CH_VC 9 //Vacom modbus motor regulator
52 #define CH_AC 10 //AC Haier
57 #define CH_UARTBRIDGE 15
60 #define CH_MULTIVENT 18
61 #define CH_ELEVATOR 19
68 #define CH_WHITE 127//
73 #define POLLING_SLOW 1
74 #define POLLING_FAST 2
78 #define I_TYPE 0 //Type of item
79 #define I_ARG 1 //Chanel-type depended argument or array of arguments (pin, address etc)
80 #define I_VAL 2 //Latest preset (int or array of presets)
81 #define I_CMD 3 //Latest CMD received
82 #define I_EXT 4 //Chanell-depended extension - array
85 #define MODBUS_CMD_ARG_ADDR 0
86 #define MODBUS_CMD_ARG_REG 1
87 #define MODBUS_CMD_ARG_MASK 2
88 #define MODBUS_CMD_ARG_MAX_SCALE 3
89 #define MODBUS_CMD_ARG_REG_TYPE 4
91 #define MODBUS_COIL_REG_TYPE 0
92 #define MODBUS_DISCRETE_REG_TYPE 1
93 #define MODBUS_HOLDING_REG_TYPE 2
94 #define MODBUS_INPUT_REG_TYPE 3
98 extern aJsonObject *
items;
102 bool digGroup (aJsonObject *itemArr,
itemCmd *cmd = NULL,
char* subItem = NULL);
111 Item(aJsonObject * obj);
118 int Ctrl(
itemCmd cmd,
char* subItem=NULL,
bool allowRecursion =
true);
119 int Ctrl(
char * payload,
char * subItem=NULL);
129 void setExt(
long int par);
132 void setCmd(uint8_t cmdValue);
136 void setVal(
long int par);
154 int modbusDimmerSet(
int addr, uint16_t _reg,
int _regType,
int _mask, uint16_t value);
void setCmd(uint8_t cmdValue)
Definition: item.cpp:286
boolean isValid()
Definition: item.cpp:491
uint8_t getSubtype()
Definition: item.cpp:392
int isActive()
Definition: item.cpp:1192
int Toggle()
Definition: item.h:146
Definition: itemCmd.h:153
int Ctrl(itemCmd cmd, char *subItem=NULL, bool allowRecursion=true)
Definition: item.cpp:693
int getArg(short n=0)
Definition: item.cpp:329
#define ST_VOID
Definition of all possible types of argument, contained in class.
Definition: itemCmd.h:82
uint16_t timestamp16
Definition: item.h:178
chPersistent * setPersistent(chPersistent *par)
Definition: item.cpp:471
Definition: abstractout.h:7
~Item()
Definition: item.cpp:240
void setExt(long int par)
Definition: item.cpp:448
void Parse()
Definition: item.cpp:127
long int getVal()
Definition: item.cpp:381
int Off()
Definition: item.h:145
#define FLAG_MASK
Definition: itemCmd.h:61
Definition: abstractout.h:8
int SendStatus(int sendFlags)
Definition: item.cpp:1346
aJsonObject * items
Definition: main.cpp:92
int getChanType()
Definition: item.cpp:1526
void clearFlag(short flag)
Definition: item.cpp:318
char defaultSubItem[10]
Definition: item.h:168
#define CMD_OFF
Definition: itemCmd.h:36
boolean Setup()
Definition: item.cpp:215
int modbusDimmerSet(itemCmd st)
Definition: item.cpp:1659
void setSubtype(uint8_t par)
Definition: item.cpp:430
int32_t asint
Definition: item.h:180
#define CMD_TOGGLE
Definition: itemCmd.h:38
int defaultSuffixCode
Definition: item.h:169
uint8_t getCmd()
Definition: item.cpp:278
void Stop()
Definition: item.cpp:231
int checkModbusDimmer()
Definition: item.cpp:1954
uint8_t itemType
Definition: item.h:107
int txt2cmd(char *payload)
Definition: itemCmd.cpp:18
chPersistent * getPersistent()
Definition: item.cpp:464
#define CMD_ON
Definition of Commands.
Definition: itemCmd.h:35
int16_t tempX100
Definition: item.h:177
int checkModbusRetry()
Definition: item.cpp:1552
void mb_fail(int result=0)
Definition: item.cpp:1534
aJsonObject * itemVal
Definition: item.h:106
int checkFM()
Definition: item.cpp:1843
aJsonObject * itemExt
Definition: item.h:106
void sendDelayedStatus()
Definition: item.cpp:1335
short thermoSetCurTemp(char *name, float t)
void setFloatVal(float par)
Definition: item.cpp:422
aJsonObject * itemArg
Definition: item.h:106
short getFlag(short flag=FLAG_MASK)
Definition: item.cpp:296
bool digGroup(aJsonObject *itemArr, itemCmd *cmd=NULL, char *subItem=NULL)
Definition: item.cpp:653
bool resumeModbus()
Definition: item.cpp:1591
int SendStatusImmediate(itemCmd st, int sendFlags, char *subItem=NULL)
Definition: item.cpp:1363
int On()
Definition: item.h:144
int VacomSetHeat(itemCmd st)
move to float todo
Definition: item.cpp:1738
float getFloatArg(short n=0)
Definition: item.cpp:340
int VacomSetFan(itemCmd st)
Definition: item.cpp:1690
byte data[37]
Definition: out_ac.cpp:31
void setFlag(short flag)
Definition: item.cpp:306
abstractOut * driver
Definition: item.h:108
int Poll(int cause)
Definition: item.cpp:1262
void setVal(long int par)
Definition: item.cpp:414
long int getExt()
Definition: item.cpp:437
Item(char *name)
Definition: item.cpp:248
short getArgCount()
Definition: item.cpp:361
aJsonObject * itemArr
Definition: item.h:106