LightHub  v4.0.0
Smarthome controller firmware
item.h File Reference
#include "options.h"
#include "abstractout.h"
#include "itemCmd.h"
#include "aJSON.h"

Go to the source code of this file.

Classes

class  Item
 
union  thermostatStore
 

Macros

#define S_NOTFOUND   0
 
#define S_CMD   1
 
#define S_SET   2
 
#define S_HSV   5
 
#define S_RGB   6
 
#define S_FAN   7
 
#define S_MODE   8
 
#define S_HUE   9
 
#define S_SAT   10
 
#define S_TEMP   11
 
#define S_VAL   12
 
#define S_DELAYED   13
 
#define S_RAW   14
 
#define S_ADDITIONAL   14
 
#define CH_DIMMER   0
 
#define CH_RGBW   1
 
#define CH_RGB   2
 
#define CH_PWM   3
 
#define CH_MODBUS   4
 
#define CH_THERMO   5
 
#define CH_RELAY   6
 
#define CH_GROUP   7
 
#define CH_VCTEMP   8
 
#define CH_VC   9
 
#define CH_AC   10
 
#define CH_SPILED   11
 
#define CH_MOTOR   12
 
#define CH_PID   13
 
#define CH_MBUS   14
 
#define CH_UARTBRIDGE   15
 
#define CH_RELAYX   16
 
#define CH_RGBWW   17
 
#define CH_MULTIVENT   18
 
#define CH_ELEVATOR   19
 
#define CH_WHITE   127
 
#define POLLING_SLOW   1
 
#define POLLING_FAST   2
 
#define POLLING_INT   3
 
#define I_TYPE   0
 
#define I_ARG   1
 
#define I_VAL   2
 
#define I_CMD   3
 
#define I_EXT   4
 
#define I_TIMESTAMP   5
 
#define MODBUS_CMD_ARG_ADDR   0
 
#define MODBUS_CMD_ARG_REG   1
 
#define MODBUS_CMD_ARG_MASK   2
 
#define MODBUS_CMD_ARG_MAX_SCALE   3
 
#define MODBUS_CMD_ARG_REG_TYPE   4
 
#define MODBUS_COIL_REG_TYPE   0
 
#define MODBUS_DISCRETE_REG_TYPE   1
 
#define MODBUS_HOLDING_REG_TYPE   2
 
#define MODBUS_INPUT_REG_TYPE   3
 

Functions

short thermoSetCurTemp (char *name, float t)
 
int txt2cmd (char *payload)
 
bool digGroup (aJsonObject *itemArr, itemCmd *cmd=NULL, char *subItem=NULL)
 

Variables

aJsonObject * items
 

Macro Definition Documentation

◆ CH_AC

#define CH_AC   10

◆ CH_DIMMER

#define CH_DIMMER   0

◆ CH_ELEVATOR

#define CH_ELEVATOR   19

◆ CH_GROUP

#define CH_GROUP   7

◆ CH_MBUS

#define CH_MBUS   14

◆ CH_MODBUS

#define CH_MODBUS   4

◆ CH_MOTOR

#define CH_MOTOR   12

◆ CH_MULTIVENT

#define CH_MULTIVENT   18

◆ CH_PID

#define CH_PID   13

◆ CH_PWM

#define CH_PWM   3

◆ CH_RELAY

#define CH_RELAY   6

◆ CH_RELAYX

#define CH_RELAYX   16

◆ CH_RGB

#define CH_RGB   2

◆ CH_RGBW

#define CH_RGBW   1

◆ CH_RGBWW

#define CH_RGBWW   17

◆ CH_SPILED

#define CH_SPILED   11

◆ CH_THERMO

#define CH_THERMO   5

◆ CH_UARTBRIDGE

#define CH_UARTBRIDGE   15

◆ CH_VC

#define CH_VC   9

◆ CH_VCTEMP

#define CH_VCTEMP   8

◆ CH_WHITE

#define CH_WHITE   127

◆ I_ARG

#define I_ARG   1

◆ I_CMD

#define I_CMD   3

◆ I_EXT

#define I_EXT   4

◆ I_TIMESTAMP

#define I_TIMESTAMP   5

◆ I_TYPE

#define I_TYPE   0

◆ I_VAL

#define I_VAL   2

◆ MODBUS_CMD_ARG_ADDR

#define MODBUS_CMD_ARG_ADDR   0

◆ MODBUS_CMD_ARG_MASK

#define MODBUS_CMD_ARG_MASK   2

◆ MODBUS_CMD_ARG_MAX_SCALE

#define MODBUS_CMD_ARG_MAX_SCALE   3

◆ MODBUS_CMD_ARG_REG

#define MODBUS_CMD_ARG_REG   1

◆ MODBUS_CMD_ARG_REG_TYPE

#define MODBUS_CMD_ARG_REG_TYPE   4

◆ MODBUS_COIL_REG_TYPE

#define MODBUS_COIL_REG_TYPE   0

◆ MODBUS_DISCRETE_REG_TYPE

#define MODBUS_DISCRETE_REG_TYPE   1

◆ MODBUS_HOLDING_REG_TYPE

#define MODBUS_HOLDING_REG_TYPE   2

◆ MODBUS_INPUT_REG_TYPE

#define MODBUS_INPUT_REG_TYPE   3

◆ POLLING_FAST

#define POLLING_FAST   2

◆ POLLING_INT

#define POLLING_INT   3

◆ POLLING_SLOW

#define POLLING_SLOW   1

◆ S_ADDITIONAL

#define S_ADDITIONAL   14

◆ S_CMD

#define S_CMD   1

◆ S_DELAYED

#define S_DELAYED   13

◆ S_FAN

#define S_FAN   7

◆ S_HSV

#define S_HSV   5

◆ S_HUE

#define S_HUE   9

◆ S_MODE

#define S_MODE   8

◆ S_NOTFOUND

#define S_NOTFOUND   0

◆ S_RAW

#define S_RAW   14

◆ S_RGB

#define S_RGB   6

◆ S_SAT

#define S_SAT   10

◆ S_SET

#define S_SET   2

◆ S_TEMP

#define S_TEMP   11

◆ S_VAL

#define S_VAL   12

Function Documentation

◆ digGroup()

bool digGroup ( aJsonObject *  itemArr,
itemCmd cmd = NULL,
char *  subItem = NULL 
)

◆ thermoSetCurTemp()

short thermoSetCurTemp ( char *  name,
float  t 
)

◆ txt2cmd()

int txt2cmd ( char *  payload)

Variable Documentation

◆ items

aJsonObject* items
extern