LightHub

AUTHOR
Version 
Sat Nov 21 2020 

Table of Contents

Table of contents

Hierarchical Index
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
abstractCh	pagenum
abstractIn	pagenum
in_ccs811	pagenum
in_hdc1080	pagenum

abstractOut	pagenum
colorChannel	pagenum
out_dmx	pagenum
out_pwm	pagenum
out_SPILed	pagenum

out_AC	pagenum
out_Modbus	pagenum
out_Motor	pagenum

chPersistent	pagenum
mbPersistent	pagenum

Input	pagenum
inStore	pagenum
Item	pagenum
itemArgStore	pagenum
itemCmd	pagenum
itemCmdStore	pagenum
Print
Streamlog	pagenum

readCache	pagenum
reg_t	pagenum
serial_t	pagenum
statusLED	pagenum
UID	pagenum

Class Index
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
abstractCh  	pagenum
abstractIn  	pagenum
abstractOut  	pagenum
chPersistent  	pagenum
colorChannel  	pagenum
in_ccs811  	pagenum
in_hdc1080  	pagenum
Input  	pagenum
inStore  	pagenum
Item  	pagenum
itemArgStore  	pagenum
itemCmd  	pagenum
itemCmdStore  	pagenum
mbPersistent  	pagenum
out_AC  	pagenum
out_dmx  	pagenum
out_Modbus  	pagenum
out_Motor  	pagenum
out_pwm  	pagenum
out_SPILed  	pagenum
readCache  	pagenum
reg_t  	pagenum
serial_t  	pagenum
statusLED  	pagenum
Streamlog  	pagenum
UID  	pagenum

File Index
File List
Here is a list of all files with brief descriptions:
abstractch.cpp  	pagenum
abstractch.h  	pagenum
abstractin.cpp  	pagenum
abstractin.h  	pagenum
abstractout.h  	pagenum
bright.cpp  	pagenum
bright.h  	pagenum
colorchannel.cpp  	pagenum
colorchannel.h  	pagenum
dmx.cpp  	pagenum
dmx.h  	pagenum
in_ccs811_hdc1080.cpp  	pagenum
in_ccs811_hdc1080.h  	pagenum
inputs.cpp  	pagenum
inputs.h  	pagenum
item.cpp  	pagenum
item.h  	pagenum
itemCmd.cpp  	pagenum
itemCmd.h  	pagenum
main.cpp  	pagenum
main.h  	pagenum
options.h  	pagenum
out_ac.cpp  	pagenum
out_ac.h  	pagenum
out_dmx.cpp  	pagenum
out_dmx.h  	pagenum
out_modbus.cpp  	pagenum
out_modbus.h  	pagenum
out_motor.cpp  	pagenum
out_motor.h  	pagenum
out_pwm.cpp  	pagenum
out_pwm.h  	pagenum
out_spiled.cpp  	pagenum
out_spiled.h  	pagenum
owTerm.cpp  	pagenum
owTerm.h  	pagenum
statusled.cpp  	pagenum
statusled.h  	pagenum
streamlog.cpp  	pagenum
streamlog.h  	pagenum
textconst.h  	pagenum
utils.cpp  	pagenum
utils.h  	pagenum

Class Documentation
abstractCh Class Reference

#include <abstractch.h>
Inheritance diagram for abstractCh:
IMAGE

Public Member Functions
abstractCh ()
virtual ~abstractCh ()
virtual int Poll (short cause)=0
virtual int Setup ()=0
virtual int Anounce ()
virtual int Stop ()
virtual int Status ()
Protected Member Functions
virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)

Constructor & Destructor Documentation
abstractCh::abstractCh ()[inline]
virtual abstractCh::~abstractCh ()[inline], [virtual]

Member Function Documentation
virtual int abstractCh::Anounce ()[inline], [virtual]
virtual int abstractCh::Poll (short  cause)[pure virtual]

Implemented in out_SPILed (p.pagenum), out_pwm (p.pagenum), out_Motor (p.pagenum), out_Modbus (p.pagenum), out_dmx (p.pagenum), out_AC (p.pagenum), in_hdc1080 (p.pagenum), and in_ccs811 (p.pagenum).
int abstractCh::publishTopic (const char *  topic, const char *  value, const char *  subtopic = NULL)[protected], [virtual]
int abstractCh::publishTopic (const char *  topic, float  value, const char *  subtopic = NULL)[protected], [virtual]
int abstractCh::publishTopic (const char *  topic, long  value, const char *  subtopic = NULL)[protected], [virtual]
virtual int abstractCh::Setup ()[pure virtual]

Implemented in out_SPILed (p.pagenum), out_pwm (p.pagenum), out_Motor (p.pagenum), out_Modbus (p.pagenum), out_dmx (p.pagenum), out_AC (p.pagenum), in_hdc1080 (p.pagenum), and in_ccs811 (p.pagenum).
virtual int abstractCh::Status ()[inline], [virtual]

Reimplemented in out_SPILed (p.pagenum), out_pwm (p.pagenum), out_Motor (p.pagenum), out_Modbus (p.pagenum), out_dmx (p.pagenum), and out_AC (p.pagenum).
virtual int abstractCh::Stop ()[inline], [virtual]

Reimplemented in out_SPILed (p.pagenum), out_pwm (p.pagenum), out_Motor (p.pagenum), out_Modbus (p.pagenum), out_dmx (p.pagenum), and out_AC (p.pagenum).

The documentation for this class was generated from the following files:
abstractch.h
abstractch.cpp

abstractIn Class Reference

#include <abstractin.h>
Inheritance diagram for abstractIn:
IMAGE

Collaboration diagram for abstractIn:
IMAGE

Public Member Functions
abstractIn (Input *_in)
Protected Member Functions
int publish (long value, const char *subtopic=NULL)
int publish (float value, const char *subtopic=NULL)
int publish (char *value, const char *subtopic=NULL)
Protected Attributes
Input * in
friend Input

Constructor & Destructor Documentation
abstractIn::abstractIn (Input *  _in)[inline]

Member Function Documentation
int abstractIn::publish (char *  value, const char *  subtopic = NULL)[protected]
int abstractIn::publish (float  value, const char *  subtopic = NULL)[protected]
int abstractIn::publish (long  value, const char *  subtopic = NULL)[protected]

Member Data Documentation
Input* abstractIn::in[protected]
friend abstractIn::Input[protected]

The documentation for this class was generated from the following files:
abstractin.h
abstractin.cpp

abstractOut Class Reference

#include <abstractout.h>
Inheritance diagram for abstractOut:
IMAGE

Collaboration diagram for abstractOut:
IMAGE

Public Member Functions
abstractOut (Item *_item)
virtual int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true)=0
virtual int isActive ()
virtual int getDefaultOnVal ()
virtual int getChanType ()
Protected Attributes
Item * item
Additional Inherited Members

Constructor & Destructor Documentation
abstractOut::abstractOut (Item *  _item)[inline]

Member Function Documentation
virtual int abstractOut::Ctrl (itemCmd  cmd, char *  subItem = NULL, bool  toExecute = true)[pure virtual]

Implemented in out_Motor (p.pagenum), out_Modbus (p.pagenum), out_AC (p.pagenum), and colorChannel (p.pagenum).
virtual int abstractOut::getChanType ()[inline], [virtual]

Reimplemented in out_SPILed (p.pagenum), out_pwm (p.pagenum), out_Motor (p.pagenum), out_Modbus (p.pagenum), and out_dmx (p.pagenum).
virtual int abstractOut::getDefaultOnVal ()[inline], [virtual]
virtual int abstractOut::isActive ()[inline], [virtual]

Reimplemented in out_SPILed (p.pagenum), out_pwm (p.pagenum), out_Motor (p.pagenum), out_Modbus (p.pagenum), out_dmx (p.pagenum), and out_AC (p.pagenum).

Member Data Documentation
Item* abstractOut::item[protected]

The documentation for this class was generated from the following file:
abstractout.h

chPersistent Class Reference

#include <abstractout.h>
Inheritance diagram for chPersistent:
IMAGE

The documentation for this class was generated from the following file:
abstractout.h

colorChannel Class Reference

#include <colorchannel.h>
Inheritance diagram for colorChannel:
IMAGE

Collaboration diagram for colorChannel:
IMAGE

Public Member Functions
colorChannel (Item *_item)
int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
virtual int PixelCtrl (itemCmd cmd, char *subItem=NULL, bool show=true)=0
short getChannelAddr (short n=0)
Protected Attributes
short iaddr
short numArgs
Additional Inherited Members

Constructor & Destructor Documentation
colorChannel::colorChannel (Item *  _item)[inline]

Member Function Documentation
int colorChannel::Ctrl (itemCmd  cmd, char *  subItem = NULL, bool  toExecute = true)[override], [virtual]

Implements abstractOut (p.pagenum).
short colorChannel::getChannelAddr (short  n = 0)
virtual int colorChannel::PixelCtrl (itemCmd  cmd, char *  subItem = NULL, bool  show = true)[pure virtual]

Implemented in out_SPILed (p.pagenum), out_pwm (p.pagenum), and out_dmx (p.pagenum).

Member Data Documentation
short colorChannel::iaddr[protected]
short colorChannel::numArgs[protected]

The documentation for this class was generated from the following files:
colorchannel.h
colorchannel.cpp

in_ccs811 Class Reference

#include <in_ccs811_hdc1080.h>
Inheritance diagram for in_ccs811:
IMAGE

Collaboration diagram for in_ccs811:
IMAGE

Public Member Functions
in_ccs811 (Input *_in)
int Setup () override
int Poll (short cause) override
Protected Member Functions
void printDriverError (CCS811Core::status errorCode)
void printSensorError ()
Additional Inherited Members

Constructor & Destructor Documentation
in_ccs811::in_ccs811 (Input *  _in)[inline]

Member Function Documentation
int in_ccs811::Poll (short  cause)[override], [virtual]

Implements abstractCh (p.pagenum).
void in_ccs811::printDriverError (CCS811Core::status  errorCode)[protected]
void in_ccs811::printSensorError ()[protected]
int in_ccs811::Setup ()[override], [virtual]

Implements abstractCh (p.pagenum).

The documentation for this class was generated from the following files:
in_ccs811_hdc1080.h
in_ccs811_hdc1080.cpp

in_hdc1080 Class Reference

#include <in_ccs811_hdc1080.h>
Inheritance diagram for in_hdc1080:
IMAGE

Collaboration diagram for in_hdc1080:
IMAGE

Public Member Functions
in_hdc1080 (Input *_in)
int Setup () override
int Poll (short cause) override
Protected Member Functions
void printSerialNumber ()
Additional Inherited Members

Constructor & Destructor Documentation
in_hdc1080::in_hdc1080 (Input *  _in)[inline]

Member Function Documentation
int in_hdc1080::Poll (short  cause)[override], [virtual]

Implements abstractCh (p.pagenum).
void in_hdc1080::printSerialNumber ()[protected]
int in_hdc1080::Setup ()[override], [virtual]

Implements abstractCh (p.pagenum).

The documentation for this class was generated from the following files:
in_ccs811_hdc1080.h
in_ccs811_hdc1080.cpp

Input Class Reference

#include <inputs.h>
Collaboration diagram for Input:
IMAGE

Public Member Functions
Input (aJsonObject *obj, aJsonObject *configObj=NULL)
Input (char *name)
boolean isValid ()
void onContactChanged (int newValue)
void onAnalogChanged (float newValue)
int Poll (short cause)
void setup ()
Static Public Member Functions
static void onCounterChanged (int i)
static void onCounterChanged0 ()
static void onCounterChanged1 ()
static void onCounterChanged2 ()
static void onCounterChanged3 ()
static void onCounterChanged4 ()
static void onCounterChanged5 ()
Public Attributes
aJsonObject * inputObj
uint8_t inType
uint8_t pin
inStore * store
Protected Member Functions
void Parse (aJsonObject *configObj=NULL)
void contactPoll (short cause)
void analogPoll (short cause)
void dht22Poll ()
void counterPoll ()
void attachInterruptPinIrq (int realPin, int irq)
unsigned long nextPollTime () const
void setNextPollTime (unsigned long pollTime)
void uptimePoll ()
bool publishDataToDomoticz (int, aJsonObject *, const char *format,...)
char * getIdxField ()
bool changeState (uint8_t newState, short cause)

Constructor & Destructor Documentation
Input::Input (aJsonObject *  obj, aJsonObject *  configObj = NULL)
Input::Input (char *  name)

Member Function Documentation
void Input::analogPoll (short  cause)[protected]
void Input::attachInterruptPinIrq (int  realPin, int  irq)[protected]
bool Input::changeState (uint8_t  newState, short  cause)[protected]
void Input::contactPoll (short  cause)[protected]
void Input::counterPoll ()[protected]
void Input::dht22Poll ()[protected]
char * Input::getIdxField ()[protected]
boolean Input::isValid ()
unsigned long Input::nextPollTime () const[protected]
void Input::onAnalogChanged (float  newValue)
void Input::onContactChanged (int  newValue)
void Input::onCounterChanged (int  i)[inline], [static]
void Input::onCounterChanged0 ()[static]
void Input::onCounterChanged1 ()[static]
void Input::onCounterChanged2 ()[static]
void Input::onCounterChanged3 ()[static]
void Input::onCounterChanged4 ()[static]
void Input::onCounterChanged5 ()[static]
void Input::Parse (aJsonObject *  configObj = NULL)[protected]
int Input::Poll (short  cause)
bool Input::publishDataToDomoticz (int  pollTimeIncrement, aJsonObject *  emit, const char *  format,   ...)[protected]
void Input::setNextPollTime (unsigned long  pollTime)[protected]
void Input::setup ()
void Input::uptimePoll ()[protected]

Member Data Documentation
aJsonObject* Input::inputObj
uint8_t Input::inType
uint8_t Input::pin
inStore* Input::store

The documentation for this class was generated from the following files:
inputs.h
inputs.cpp

inStore Union Reference

#include <inputs.h>
Public Attributes
long int aslong
uint32_t timestamp
struct {
  uint8_t reserved
  uint8_t logicState
  int16_t currentValue
}; 
struct {
  uint8_t toggle1:1
  uint8_t toggle2:1
  uint8_t toggle3:1
  uint8_t lastValue:1
  uint8_t delayedState:1
  uint8_t bounce:3
  uint8_t state:4
  uint8_t reqState:4
  uint16_t timestamp16
}; 

Member Data Documentation
struct { ... } 
struct { ... } 
long int inStore::aslong
uint8_t inStore::bounce
int16_t inStore::currentValue
uint8_t inStore::delayedState
uint8_t inStore::lastValue
uint8_t inStore::logicState
uint8_t inStore::reqState
uint8_t inStore::reserved
uint8_t inStore::state
uint32_t inStore::timestamp
uint16_t inStore::timestamp16
uint8_t inStore::toggle1
uint8_t inStore::toggle2
uint8_t inStore::toggle3

The documentation for this union was generated from the following file:
inputs.h

Item Class Reference

#include <item.h>
Collaboration diagram for Item:
IMAGE

Public Member Functions
Item (char *name)
Item (aJsonObject *obj)
~Item ()
boolean isValid ()
boolean Setup ()
void Stop ()
int Ctrl (itemCmd cmd, char *subItem=NULL)
int Ctrl (char *payload, char *subItem=NULL)
int getArg (short n=0)
short getArgCount ()
long int getVal ()
uint8_t getSubtype ()
uint8_t getCmd ()
long int getExt ()
void setExt (long int par)
chPersistent * getPersistent ()
chPersistent * setPersistent (chPersistent *par)
void setCmd (uint8_t cmdValue)
short getFlag (short flag=FLAG_MASK)
void setFlag (short flag)
void clearFlag (short flag)
void setVal (long int par)
void setSubtype (uint8_t par)
int Poll (int cause)
int SendStatus (int sendFlags)
int isActive ()
int getChanType ()
int On ()
int Off ()
int Toggle ()
Public Attributes
aJsonObject * itemArr
aJsonObject * itemArg
aJsonObject * itemVal
aJsonObject * itemExt
uint8_t itemType
abstractOut * driver
Protected Member Functions
int VacomSetFan (itemCmd st)
int VacomSetHeat (itemCmd st)
move to float todo 

int modbusDimmerSet (itemCmd st)
int modbusDimmerSet (int addr, uint16_t _reg, int _regType, int _mask, uint16_t value)
void mb_fail ()
void Parse ()
int checkModbusDimmer ()
int checkModbusDimmer (int data)
boolean checkModbusRetry ()
boolean checkVCRetry ()
boolean checkHeatRetry ()
void sendDelayedStatus ()
int checkFM ()
Protected Attributes
char defaultSubItem [10]
int defaultSuffixCode

Constructor & Destructor Documentation
Item::Item (char *  name)
Item::Item (aJsonObject *  obj)
Item::~Item ()

Member Function Documentation
int Item::checkFM ()[protected]
boolean Item::checkHeatRetry ()[protected]
int Item::checkModbusDimmer ()[protected]
int Item::checkModbusDimmer (int  data)[protected]
boolean Item::checkModbusRetry ()[protected]
boolean Item::checkVCRetry ()[protected]
void Item::clearFlag (short  flag)
int Item::Ctrl (char *  payload, char *  subItem = NULL)

possible problem here with truncated default
int Item::Ctrl (itemCmd  cmd, char *  subItem = NULL)

possible problem here with truncated default
thermoSet(name,cmd,Par1); all activities done - update temp & cmd
int Item::getArg (short  n = 0)
short Item::getArgCount ()
int Item::getChanType ()
uint8_t Item::getCmd ()
long int Item::getExt ()
short Item::getFlag (short  flag = FLAG_MASK)
chPersistent * Item::getPersistent ()
uint8_t Item::getSubtype ()
long int Item::getVal ()
int Item::isActive ()
boolean Item::isValid ()
void Item::mb_fail ()[protected]
int Item::modbusDimmerSet (int  addr, uint16_t  _reg, int  _regType, int  _mask, uint16_t  value)[protected]
int Item::modbusDimmerSet (itemCmd  st)[protected]
int Item::Off ()[inline]
int Item::On ()[inline]
void Item::Parse ()[protected]
int Item::Poll (int  cause)
void Item::sendDelayedStatus ()[protected]
int Item::SendStatus (int  sendFlags)
void Item::setCmd (uint8_t  cmdValue)
void Item::setExt (long int  par)
void Item::setFlag (short  flag)
chPersistent * Item::setPersistent (chPersistent *  par)
void Item::setSubtype (uint8_t  par)
boolean Item::Setup ()
void Item::setVal (long int  par)
void Item::Stop ()
int Item::Toggle ()[inline]
int Item::VacomSetFan (itemCmd  st)[protected]
int Item::VacomSetHeat (itemCmd  st)[protected]

move to float todo 

Member Data Documentation
char Item::defaultSubItem[10][protected]
int Item::defaultSuffixCode[protected]
abstractOut* Item::driver
aJsonObject * Item::itemArg
aJsonObject* Item::itemArr
aJsonObject * Item::itemExt
uint8_t Item::itemType
aJsonObject * Item::itemVal

The documentation for this class was generated from the following files:
item.h
item.cpp

itemArgStore Union Reference

#include <itemCmd.h>
Public Attributes
long int aslong
int32_t asInt32
uint32_t asUint32
char * asString
float asfloat
struct {
  uint8_t v
  uint8_t s
  uint16_t h:9
  uint16_t colorTemp:7
}; 
struct {
  int8_t signed_v
  int8_t signed_s
  int16_t signed_h:9
  int16_t signed_colorTemp:7
}; 
struct {
  uint8_t b
  uint8_t g
  uint8_t r
  uint8_t w
}; 

Member Data Documentation
struct { ... } 
struct { ... } 
struct { ... } 
float itemArgStore::asfloat
int32_t itemArgStore::asInt32
long int itemArgStore::aslong
char* itemArgStore::asString
uint32_t itemArgStore::asUint32
uint8_t itemArgStore::b
uint16_t itemArgStore::colorTemp
uint8_t itemArgStore::g
uint16_t itemArgStore::h
uint8_t itemArgStore::r
uint8_t itemArgStore::s
int16_t itemArgStore::signed_colorTemp
int16_t itemArgStore::signed_h
int8_t itemArgStore::signed_s
int8_t itemArgStore::signed_v
uint8_t itemArgStore::v
uint8_t itemArgStore::w

The documentation for this union was generated from the following file:
itemCmd.h

itemCmd Class Reference

#include <itemCmd.h>
Collaboration diagram for itemCmd:
IMAGE

Public Member Functions
itemCmd (uint8_t _type=ST_VOID, uint8_t _code=CMD_VOID)
Constructor with definition of type and command. 

itemCmd (float val)
Constructor with definition of FLOAT value in storage. 

itemCmd assignFrom (itemCmd from)
bool loadItem (Item *item, bool includeCommand=false)
bool saveItem (Item *item, bool includeCommand=false)
itemCmd Int (int32_t i)
itemCmd Int (uint32_t i)
itemCmd Cmd (uint8_t i)
itemCmd HSV (uint16_t h, uint8_t s, uint8_t v)
itemCmd HSV255 (uint16_t h, uint8_t s, uint8_t v)
itemCmd HS (uint16_t h, uint8_t s)
itemCmd RGB (uint8_t r, uint8_t g, uint8_t b)
itemCmd RGBW (uint8_t r, uint8_t g, uint8_t b, uint8_t w)
bool setH (uint16_t)
bool setS (uint8_t)
bool setColorTemp (uint8_t)
int8_t getColorTemp ()
uint16_t getH ()
uint16_t getS ()
itemCmd setArgType (uint8_t)
itemCmd Percents (int i)
itemCmd Percents255 (int i)
uint8_t getSuffix ()
itemCmd setSuffix (uint8_t suffix)
bool incrementPercents (int16_t)
bool incrementH (int16_t)
bool incrementS (int16_t)
long int getInt ()
short getPercents (bool inverse=false)
short getPercents255 (bool inverse=false)
uint8_t getCmd ()
uint8_t getArgType ()
uint8_t getCmdParam ()
char * toString (char *Buffer, int bufLen, int sendFlags=SEND_COMMAND|SEND_PARAMETERS)
bool isCommand ()
bool isValue ()
bool isColor ()
itemCmd setDefault ()
itemCmd setChanType (short chanType)
void debugOut ()
Public Attributes
itemCmdStore cmd
itemArgStore param

Constructor & Destructor Documentation
itemCmd::itemCmd (uint8_t  _type = ST_VOID, uint8_t  _code = CMD_VOID)

Constructor with definition of type and command. 

Parameters
type 	- type of value (ST_???, ST_VOID by default) 	
code 	- code of command (CMD_VOID by default) 	
itemCmd::itemCmd (float  val)

Constructor with definition of FLOAT value in storage. 

Parameters
float 		
type 	- type of value (ST_FLOAT or ST_FLOAT_CELSIUS or ST_FLOAT_FARENHEIT) - optional 	

Member Function Documentation
itemCmd itemCmd::assignFrom (itemCmd  from)
itemCmd itemCmd::Cmd (uint8_t  i)
void itemCmd::debugOut ()
uint8_t itemCmd::getArgType ()
uint8_t itemCmd::getCmd ()
uint8_t itemCmd::getCmdParam ()
int8_t itemCmd::getColorTemp ()
Setup color tempetature parameter from HSV or HSV255 types. return 0..100 value in success. -1 - if no value stored 
uint16_t itemCmd::getH ()
long int itemCmd::getInt ()
short itemCmd::getPercents (bool  inverse = false)
short itemCmd::getPercents255 (bool  inverse = false)
uint16_t itemCmd::getS ()
uint8_t itemCmd::getSuffix ()
itemCmd itemCmd::HS (uint16_t  h, uint8_t  s)
itemCmd itemCmd::HSV (uint16_t  h, uint8_t  s, uint8_t  v)
itemCmd itemCmd::HSV255 (uint16_t  h, uint8_t  s, uint8_t  v)
bool itemCmd::incrementH (int16_t  dif)
bool itemCmd::incrementPercents (int16_t  dif)
bool itemCmd::incrementS (int16_t  dif)
itemCmd itemCmd::Int (int32_t  i)
itemCmd itemCmd::Int (uint32_t  i)
bool itemCmd::isColor ()
bool itemCmd::isCommand ()
bool itemCmd::isValue ()
bool itemCmd::loadItem (Item *  item, bool  includeCommand = false)
itemCmd itemCmd::Percents (int  i)
itemCmd itemCmd::Percents255 (int  i)
itemCmd itemCmd::RGB (uint8_t  r, uint8_t  g, uint8_t  b)
itemCmd itemCmd::RGBW (uint8_t  r, uint8_t  g, uint8_t  b, uint8_t  w)
bool itemCmd::saveItem (Item *  item, bool  includeCommand = false)
itemCmd itemCmd::setArgType (uint8_t  type)
itemCmd itemCmd::setChanType (short  chanType)
bool itemCmd::setColorTemp (uint8_t  t)
Setup color tempetature parameter for HSV or HSV255 types. It must be 0..100 value. 0 - cold, 100 - warm light 
itemCmd itemCmd::setDefault ()
bool itemCmd::setH (uint16_t  h)
bool itemCmd::setS (uint8_t  s)
itemCmd itemCmd::setSuffix (uint8_t  suffix)
char * itemCmd::toString (char *  Buffer, int  bufLen, int  sendFlags = SEND_COMMAND  |  SEND_PARAMETERS)

Member Data Documentation
itemCmdStore itemCmd::cmd
itemArgStore itemCmd::param

The documentation for this class was generated from the following files:
itemCmd.h
itemCmd.cpp

itemCmdStore Union Reference

#include <itemCmd.h>
Public Attributes
long int aslong
int32_t asInt32
uint32_t asUint32
struct {
  uint8_t cmdCode
  union {
    uint8_t cmdFlag
  } 
  struct {
    uint8_t suffixCode:4
    uint8_t itemArgType:4
  } 
  uint8_t cmdParam
}; 

Member Data Documentation
struct { ... } 
int32_t itemCmdStore::asInt32
long int itemCmdStore::aslong
uint32_t itemCmdStore::asUint32
uint8_t itemCmdStore::cmdCode
uint8_t itemCmdStore::cmdFlag
uint8_t itemCmdStore::cmdParam
uint8_t itemCmdStore::itemArgType
uint8_t itemCmdStore::suffixCode

The documentation for this union was generated from the following file:
itemCmd.h

mbPersistent Class Reference

#include <out_modbus.h>
Inheritance diagram for mbPersistent:
IMAGE

Collaboration diagram for mbPersistent:
IMAGE

Public Attributes
int8_t driverStatus
int baud
uint16_t serialParam
uint16_t pollingInterval
uint32_t timestamp
aJsonObject * pollingRegisters
aJsonObject * parameters

Member Data Documentation
int mbPersistent::baud
int8_t mbPersistent::driverStatus
aJsonObject* mbPersistent::parameters
uint16_t mbPersistent::pollingInterval
aJsonObject* mbPersistent::pollingRegisters
uint16_t mbPersistent::serialParam
uint32_t mbPersistent::timestamp

The documentation for this class was generated from the following file:
out_modbus.h

out_AC Class Reference

#include <out_ac.h>
Inheritance diagram for out_AC:
IMAGE

Collaboration diagram for out_AC:
IMAGE

Public Member Functions
out_AC (Item *_item)
int Setup () override
int Poll (short cause) override
int Stop () override
int Status () override
int isActive () override
int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
Protected Member Functions
void InsertData (byte data[], size_t size)
Additional Inherited Members

Constructor & Destructor Documentation
out_AC::out_AC (Item *  _item)[inline]

Member Function Documentation
int out_AC::Ctrl (itemCmd  cmd, char *  subItem = NULL, bool  toExecute = true)[override], [virtual]

Implements abstractOut (p.pagenum).
void out_AC::InsertData (byte  data[], size_t  size)[protected]
int out_AC::isActive ()[override], [virtual]

Reimplemented from abstractOut (p.pagenum).
int out_AC::Poll (short  cause)[override], [virtual]

Implements abstractCh (p.pagenum).
int out_AC::Setup ()[override], [virtual]

Implements abstractCh (p.pagenum).
int out_AC::Status ()[override], [virtual]

Reimplemented from abstractCh (p.pagenum).
int out_AC::Stop ()[override], [virtual]

Reimplemented from abstractCh (p.pagenum).

The documentation for this class was generated from the following files:
out_ac.h
out_ac.cpp

out_dmx Class Reference

#include <out_dmx.h>
Inheritance diagram for out_dmx:
IMAGE

Collaboration diagram for out_dmx:
IMAGE

Public Member Functions
out_dmx (Item *_item)
int Setup () override
int Poll (short cause) override
int Stop () override
int Status () override
int isActive () override
int getChanType () override
virtual int PixelCtrl (itemCmd cmd, char *subItem=NULL, bool show=true) override
Additional Inherited Members

Constructor & Destructor Documentation
out_dmx::out_dmx (Item *  _item)[inline]

Member Function Documentation
int out_dmx::getChanType ()[override], [virtual]

Reimplemented from abstractOut (p.pagenum).
int out_dmx::isActive ()[override], [virtual]

Reimplemented from abstractOut (p.pagenum).
int out_dmx::PixelCtrl (itemCmd  cmd, char *  subItem = NULL, bool  show = true)[override], [virtual]

Implements colorChannel (p.pagenum).
int out_dmx::Poll (short  cause)[override], [virtual]

Implements abstractCh (p.pagenum).
int out_dmx::Setup ()[override], [virtual]

Implements abstractCh (p.pagenum).
int out_dmx::Status ()[override], [virtual]

Reimplemented from abstractCh (p.pagenum).
int out_dmx::Stop ()[override], [virtual]

Reimplemented from abstractCh (p.pagenum).

The documentation for this class was generated from the following files:
out_dmx.h
out_dmx.cpp

out_Modbus Class Reference

#include <out_modbus.h>
Inheritance diagram for out_Modbus:
IMAGE

Collaboration diagram for out_Modbus:
IMAGE

Public Member Functions
out_Modbus (Item *_item)
int Setup () override
int Poll (short cause) override
int Stop () override
int Status () override
int isActive () override
int getChanType () override
int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
Protected Member Functions
bool getConfig ()
int findRegister (int registerNum, int posInBuffer)
Protected Attributes
mbPersistent * store

Constructor & Destructor Documentation
out_Modbus::out_Modbus (Item *  _item)[inline]

Member Function Documentation
int out_Modbus::Ctrl (itemCmd  cmd, char *  subItem = NULL, bool  toExecute = true)[override], [virtual]

Implements abstractOut (p.pagenum).
int out_Modbus::findRegister (int  registerNum, int  posInBuffer)[protected]
int out_Modbus::getChanType ()[override], [virtual]

Reimplemented from abstractOut (p.pagenum).
bool out_Modbus::getConfig ()[protected]
int out_Modbus::isActive ()[override], [virtual]

Reimplemented from abstractOut (p.pagenum).
int out_Modbus::Poll (short  cause)[override], [virtual]

Implements abstractCh (p.pagenum).
int out_Modbus::Setup ()[override], [virtual]

Implements abstractCh (p.pagenum).
int out_Modbus::Status ()[override], [virtual]

Reimplemented from abstractCh (p.pagenum).
int out_Modbus::Stop ()[override], [virtual]

Reimplemented from abstractCh (p.pagenum).

Member Data Documentation
mbPersistent* out_Modbus::store[protected]

The documentation for this class was generated from the following files:
out_modbus.h
out_modbus.cpp

out_Motor Class Reference

#include <out_motor.h>
Inheritance diagram for out_Motor:
IMAGE

Collaboration diagram for out_Motor:
IMAGE

Public Member Functions
out_Motor (Item *_item)
int Setup () override
int Poll (short cause) override
int Stop () override
int Status () override
int isActive () override
int getChanType () override
int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
Public Attributes
int8_t pinUp
int8_t pinDown
int8_t pinFeedback
int16_t maxOnTime
uint16_t feedbackOpen
uint16_t feedbackClosed
Protected Member Functions
void getConfig ()
Additional Inherited Members

Constructor & Destructor Documentation
out_Motor::out_Motor (Item *  _item)[inline]

Member Function Documentation
int out_Motor::Ctrl (itemCmd  cmd, char *  subItem = NULL, bool  toExecute = true)[override], [virtual]

Implements abstractOut (p.pagenum).
int out_Motor::getChanType ()[override], [virtual]

Reimplemented from abstractOut (p.pagenum).
void out_Motor::getConfig ()[protected]
int out_Motor::isActive ()[override], [virtual]

Reimplemented from abstractOut (p.pagenum).
int out_Motor::Poll (short  cause)[override], [virtual]

Implements abstractCh (p.pagenum).
int out_Motor::Setup ()[override], [virtual]

Implements abstractCh (p.pagenum).
int out_Motor::Status ()[override], [virtual]

Reimplemented from abstractCh (p.pagenum).
int out_Motor::Stop ()[override], [virtual]

Reimplemented from abstractCh (p.pagenum).

Member Data Documentation
uint16_t out_Motor::feedbackClosed
uint16_t out_Motor::feedbackOpen
int16_t out_Motor::maxOnTime
int8_t out_Motor::pinDown
int8_t out_Motor::pinFeedback
int8_t out_Motor::pinUp

The documentation for this class was generated from the following files:
out_motor.h
out_motor.cpp

out_pwm Class Reference

#include <out_pwm.h>
Inheritance diagram for out_pwm:
IMAGE

Collaboration diagram for out_pwm:
IMAGE

Public Member Functions
out_pwm (Item *_item)
int Setup () override
int Poll (short cause) override
int Stop () override
int Status () override
int isActive () override
int getChanType () override
int PixelCtrl (itemCmd cmd, char *subItem=NULL, bool show=true) override
Protected Attributes
short numChannels
Additional Inherited Members

Constructor & Destructor Documentation
out_pwm::out_pwm (Item *  _item)[inline]

Member Function Documentation
int out_pwm::getChanType ()[override], [virtual]

Reimplemented from abstractOut (p.pagenum).
int out_pwm::isActive ()[override], [virtual]

Reimplemented from abstractOut (p.pagenum).
int out_pwm::PixelCtrl (itemCmd  cmd, char *  subItem = NULL, bool  show = true)[override], [virtual]

Implements colorChannel (p.pagenum).
int out_pwm::Poll (short  cause)[override], [virtual]

Implements abstractCh (p.pagenum).
int out_pwm::Setup ()[override], [virtual]

Implements abstractCh (p.pagenum).
int out_pwm::Status ()[override], [virtual]

Reimplemented from abstractCh (p.pagenum).
int out_pwm::Stop ()[override], [virtual]

Reimplemented from abstractCh (p.pagenum).

Member Data Documentation
short out_pwm::numChannels[protected]

The documentation for this class was generated from the following files:
out_pwm.h
out_pwm.cpp

out_SPILed Class Reference

#include <out_spiled.h>
Inheritance diagram for out_SPILed:
IMAGE

Collaboration diagram for out_SPILed:
IMAGE

Public Member Functions
out_SPILed (Item *_item)
int Setup () override
int Poll (short cause) override
int Stop () override
int Status () override
int isActive () override
int getChanType () override
int PixelCtrl (itemCmd cmd, char *subItem=NULL, bool show=true) override
Public Attributes
int numLeds
int8_t pin
int ledsType
Protected Member Functions
void getConfig ()
Additional Inherited Members

Constructor & Destructor Documentation
out_SPILed::out_SPILed (Item *  _item)[inline]

Member Function Documentation
int out_SPILed::getChanType ()[override], [virtual]

Reimplemented from abstractOut (p.pagenum).
void out_SPILed::getConfig ()[protected]
int out_SPILed::isActive ()[override], [virtual]

Reimplemented from abstractOut (p.pagenum).
int out_SPILed::PixelCtrl (itemCmd  cmd, char *  subItem = NULL, bool  show = true)[override], [virtual]

Implements colorChannel (p.pagenum).
int out_SPILed::Poll (short  cause)[override], [virtual]

Implements abstractCh (p.pagenum).
int out_SPILed::Setup ()[override], [virtual]

Implements abstractCh (p.pagenum).
int out_SPILed::Status ()[override], [virtual]

Reimplemented from abstractCh (p.pagenum).
int out_SPILed::Stop ()[override], [virtual]

Reimplemented from abstractCh (p.pagenum).

Member Data Documentation
int out_SPILed::ledsType
int out_SPILed::numLeds
int8_t out_SPILed::pin

The documentation for this class was generated from the following files:
out_spiled.h
out_spiled.cpp

readCache Class Reference

#include <inputs.h>
Public Member Functions
readCache ()
uint16_t analogReadCached (uint8_t pin)
uint8_t digitalReadCached (uint8_t pin)
void invalidateInputCache ()
Protected Attributes
uint8_t addr
uint8_t type
uint16_t cached_data

Constructor & Destructor Documentation
readCache::readCache ()

Member Function Documentation
uint16_t readCache::analogReadCached (uint8_t  pin)
uint8_t readCache::digitalReadCached (uint8_t  pin)

TBD
void readCache::invalidateInputCache ()

Member Data Documentation
uint8_t readCache::addr[protected]
uint16_t readCache::cached_data[protected]
uint8_t readCache::type[protected]

The documentation for this class was generated from the following files:
inputs.h
inputs.cpp

reg_t Struct Reference
Public Attributes
const char verb [4]
const uint8_t id

Member Data Documentation
const uint8_t reg_t::id
const char reg_t::verb[4]

The documentation for this struct was generated from the following file:
out_modbus.cpp

serial_t Struct Reference
Public Attributes
const char verb [4]
const uint16_t mode

Member Data Documentation
const uint16_t serial_t::mode
const char serial_t::verb[4]

The documentation for this struct was generated from the following file:
out_modbus.cpp

statusLED Class Reference

#include <statusled.h>
Public Member Functions
statusLED (uint8_t pattern=0)
void set (uint8_t pattern)
void show (uint8_t pattern)
void poll ()
void flash (uint8_t pattern)

Constructor & Destructor Documentation
statusLED::statusLED (uint8_t  pattern = 0)

Member Function Documentation
void statusLED::flash (uint8_t  pattern)
void statusLED::poll ()
void statusLED::set (uint8_t  pattern)
void statusLED::show (uint8_t  pattern)

The documentation for this class was generated from the following files:
statusled.h
statusled.cpp

Streamlog Class Reference

#include <streamlog.h>
Inheritance diagram for Streamlog:
IMAGE

Collaboration diagram for Streamlog:
IMAGE

Public Member Functions
Streamlog (HardwareSerial *_serialPort, int _severity=LOG_DEBUG, uint8_t _ledPattern=0)
void begin (unsigned long speed)
void end ()
int available (void)
int peek (void)
int read (void)
void flush (void)
size_t write (uint8_t ch)
operator bool ()

Constructor & Destructor Documentation
Streamlog::Streamlog (HardwareSerial *  _serialPort, int  _severity = LOG_DEBUG, uint8_t  _ledPattern = 0)

Member Function Documentation
int Streamlog::available (void )
void Streamlog::begin (unsigned long  speed)
void Streamlog::end ()
void Streamlog::flush (void )
Streamlog::operator bool ()[inline]
int Streamlog::peek (void )
int Streamlog::read (void )
size_t Streamlog::write (uint8_t  ch)

The documentation for this class was generated from the following files:
streamlog.h
streamlog.cpp

UID Union Reference

#include <main.h>
Public Attributes
uint32_t UID_Long [5]
uint8_t UID_Byte [20]

Member Data Documentation
uint8_t UID::UID_Byte[20]
uint32_t UID::UID_Long[5]

The documentation for this union was generated from the following file:
main.h

File Documentation
abstractch.cpp File Reference
#include "abstractch.h"
#include <PubSubClient.h>
#include "utils.h"
#include <aJSON.h>
#include "main.h"
Include dependency graph for abstractch.cpp:
IMAGE

Variables
lan_status lanStatus
PubSubClient mqttClient
int8_t ethernetIdleCount

Variable Documentation
int8_t ethernetIdleCount[extern]
lan_status lanStatus[extern]
PubSubClient mqttClient[extern]

abstractch.h File Reference
#include "Arduino.h"
Include dependency graph for abstractch.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class abstractCh
Macros
#define CST_UNKNOWN  0
#define CST_INITIALIZED  1
#define CST_FAILED  2

Macro Definition Documentation
#define CST_FAILED  2
#define CST_INITIALIZED  1
#define CST_UNKNOWN  0

abstractin.cpp File Reference
#include "abstractin.h"
#include "abstractch.h"
#include <PubSubClient.h>
#include "utils.h"
#include <aJSON.h>
#include "inputs.h"
#include "main.h"
Include dependency graph for abstractin.cpp:
IMAGE

Variables
lan_status lanStatus
PubSubClient mqttClient

Variable Documentation
lan_status lanStatus[extern]
PubSubClient mqttClient[extern]

abstractin.h File Reference
#include "Arduino.h"
#include "abstractch.h"
Include dependency graph for abstractin.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class abstractIn

abstractout.h File Reference
#include "Arduino.h"
#include "abstractch.h"
#include "itemCmd.h"
Include dependency graph for abstractout.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class chPersistent
class abstractOut

bright.cpp File Reference
#include "bright.h"
Include dependency graph for bright.cpp:
IMAGE

Functions
uint8_t getBright (uint8_t percent)
uint8_t getBright255 (uint8_t percent)

Function Documentation
uint8_t getBright (uint8_t  percent)
uint8_t getBright255 (uint8_t  percent)

bright.h File Reference
#include <Arduino.h>
Include dependency graph for bright.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Macros
#define BRIGHT_LINEAR
Functions
uint8_t getBright (uint8_t percent)
uint8_t getBright255 (uint8_t percent)

Macro Definition Documentation
#define BRIGHT_LINEAR

Function Documentation
uint8_t getBright (uint8_t  percent)
uint8_t getBright255 (uint8_t  percent)

colorchannel.cpp File Reference
#include "colorchannel.h"
#include "Arduino.h"
#include "options.h"
#include "Streaming.h"
#include "item.h"
#include "main.h"
Include dependency graph for colorchannel.cpp:
IMAGE

colorchannel.h File Reference
#include "options.h"
#include <abstractout.h>
#include <item.h>
Include dependency graph for colorchannel.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class colorChannel

dmx.cpp File Reference
#include "dmx.h"
#include "options.h"
#include "item.h"
Include dependency graph for dmx.cpp:
IMAGE

Functions
int itemCtrl2 (char *name, int r, int g, int b, int w)
void DMXImmediateUpdate (short tch, short r, short g, short b, short w)
void DMXSemiImmediateUpdate (short tch, short trh, int val)
void DMXput (void)
void DMXUpdate (void)
void DMXCheck (void)
void onDmxFrame (uint16_t universe, uint16_t length, uint8_t sequence, uint8_t *data, IPAddress remoteIP)
void DMXinSetup (int channels)
void DMXoutSetup (int channels)
void DMXOUT_propagate ()
void ArtnetSetup ()
void DmxWriteBuf (uint16_t chan, uint8_t val)
Variables
uint8_t * DMXin = NULL
int D_State =0
unsigned long D_checkT =0
aJsonObject * items
aJsonObject * dmxArr

Function Documentation
void ArtnetSetup ()
void DMXCheck (void )
void DMXImmediateUpdate (short  tch, short  r, short  g, short  b, short  w)
void DMXinSetup (int  channels)

ToDo: re-init
void DMXOUT_propagate ()
void DMXoutSetup (int  channels)
void DMXput (void )
void DMXSemiImmediateUpdate (short  tch, short  trh, int  val)
void DMXUpdate (void )
void DmxWriteBuf (uint16_t  chan, uint8_t  val)
int itemCtrl2 (char *  name, int  r, int  g, int  b, int  w)
void onDmxFrame (uint16_t  universe, uint16_t  length, uint8_t  sequence, uint8_t *  data, IPAddress  remoteIP)

Variable Documentation
unsigned long D_checkT =0
int D_State =0
aJsonObject* dmxArr[extern]
uint8_t* DMXin = NULL
aJsonObject* items[extern]

dmx.h File Reference
#include "options.h"
#include "aJSON.h"
Include dependency graph for dmx.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Macros
#define D_UPDATED1  1
#define D_UPDATED2  2
#define D_UPDATED3  4
#define D_UPDATED4  8
#define D_CHECKT  300
#define MAX_CHANNELS  60
Functions
void DMXput (void)
void DMXinSetup (int channels)
void DMXoutSetup (int channels)
void ArtnetSetup ()
void DMXCheck (void)
int itemCtrl2 (char *name, int r, int g, int b, int w)
void DmxWriteBuf (uint16_t chan, uint8_t val)
void DMXOUT_propagate ()
Variables
aJsonObject * dmxArr

Macro Definition Documentation
#define D_CHECKT  300
#define D_UPDATED1  1
#define D_UPDATED2  2
#define D_UPDATED3  4
#define D_UPDATED4  8
#define MAX_CHANNELS  60

Function Documentation
void ArtnetSetup ()
void DMXCheck (void )
void DMXinSetup (int  channels)

ToDo: re-init
void DMXOUT_propagate ()
void DMXoutSetup (int  channels)
void DMXput (void )
void DmxWriteBuf (uint16_t  chan, uint8_t  val)
int itemCtrl2 (char *  name, int  r, int  g, int  b, int  w)

Variable Documentation
aJsonObject* dmxArr[extern]

in_ccs811_hdc1080.cpp File Reference
#include "modules/in_ccs811_hdc1080.h"
#include "Arduino.h"
#include "options.h"
#include "Streaming.h"
#include "item.h"
#include "main.h"
Include dependency graph for in_ccs811_hdc1080.cpp:
IMAGE

Functions
void i2cReset ()
Variables
long ccs811Baseline

Function Documentation
void i2cReset ()

Variable Documentation
long ccs811Baseline

in_ccs811_hdc1080.h File Reference
#include <inputs.h>
#include <abstractin.h>
#include <Wire.h>
#include "ClosedCube_HDC1080.h"
#include "SparkFunCCS811.h"
Include dependency graph for in_ccs811_hdc1080.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class in_ccs811
class in_hdc1080
Macros
#define CCS811_ADDR  0x5A

Macro Definition Documentation
#define CCS811_ADDR  0x5A

inputs.cpp File Reference
#include "inputs.h"
#include "item.h"
#include "utils.h"
#include <PubSubClient.h>
#include "main.h"
#include "itemCmd.h"
#include "DHT.h"
Include dependency graph for inputs.cpp:
IMAGE

Functions
void cleanStore (aJsonObject *input)
Variables
PubSubClient mqttClient
aJsonObject * root
int8_t ethernetIdleCount
int8_t configLocked
readCache inCache

Function Documentation
void cleanStore (aJsonObject *  input)

Variable Documentation
int8_t configLocked[extern]
int8_t ethernetIdleCount[extern]
readCache inCache
PubSubClient mqttClient[extern]
aJsonObject* root[extern]

inputs.h File Reference
#include <aJSON.h>
#include "modules/in_ccs811_hdc1080.h"
Include dependency graph for inputs.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
union inStore
class Input
class readCache
Macros
#define IN_ACTIVE_HIGH  2
#define IN_ANALOG  64
#define IN_RE  32
#define IN_I2C  128
#define IN_PUSH_ON  0
#define IN_PUSH_TOGGLE  1
#define IN_DHT22  4
#define IN_CCS811  5
#define IN_HDC1080  6
#define IN_COUNTER  8
#define IN_UPTIME  16
#define IS_IDLE  0
#define IS_PRESSED  1
#define IS_RELEASED  2
#define IS_LONG  3
#define IS_REPEAT  4
#define IS_WAITPRESS  5
#define IS_PRESSED2  6
#define IS_RELEASED2  7
#define IS_LONG2  8u
#define IS_REPEAT2  9u
#define IS_PRESSED3  10u
#define IS_LONG3  11u
#define IS_REPEAT3  12u
#define IS_WAITRELEASE  13u
#define IS_REQSTATE  0xFF
#define SAME_STATE_ATTEMPTS  3
#define ANALOG_STATE_ATTEMPTS  6
#define ANALOG_NOIZE  1
#define CHECK_SENSOR  1
#define CHECK_INPUT  2
#define CHECK_INTERRUPT  3
#define T_LONG  1000
#define T_IDLE  600
#define T_RPT  300
#define T_RPT_PULSE  150
Variables
aJsonObject * inputs
readCache inCache

Macro Definition Documentation
#define ANALOG_NOIZE  1
#define ANALOG_STATE_ATTEMPTS  6
#define CHECK_INPUT  2
#define CHECK_INTERRUPT  3
#define CHECK_SENSOR  1
#define IN_ACTIVE_HIGH  2
#define IN_ANALOG  64
#define IN_CCS811  5
#define IN_COUNTER  8
#define IN_DHT22  4
#define IN_HDC1080  6
#define IN_I2C  128
#define IN_PUSH_ON  0
#define IN_PUSH_TOGGLE  1
#define IN_RE  32
#define IN_UPTIME  16
#define IS_IDLE  0
#define IS_LONG  3
#define IS_LONG2  8u
#define IS_LONG3  11u
#define IS_PRESSED  1
#define IS_PRESSED2  6
#define IS_PRESSED3  10u
#define IS_RELEASED  2
#define IS_RELEASED2  7
#define IS_REPEAT  4
#define IS_REPEAT2  9u
#define IS_REPEAT3  12u
#define IS_REQSTATE  0xFF
#define IS_WAITPRESS  5
#define IS_WAITRELEASE  13u
#define SAME_STATE_ATTEMPTS  3
#define T_IDLE  600
#define T_LONG  1000
#define T_RPT  300
#define T_RPT_PULSE  150

Variable Documentation
readCache inCache[extern]
aJsonObject* inputs[extern]

item.cpp File Reference
#include "options.h"
#include "item.h"
#include "aJSON.h"
#include "utils.h"
#include "textconst.h"
#include "main.h"
#include "bright.h"
#include "itemCmd.h"
#include "dmx.h"
#include <Adafruit_NeoPixel.h>
#include <ModbusMaster.h>
#include <PubSubClient.h>
#include "modules/out_spiled.h"
#include "modules/out_ac.h"
#include "modules/out_motor.h"
#include "modules/out_modbus.h"
#include "modules/out_dmx.h"
#include "modules/out_pwm.h"
Include dependency graph for item.cpp:
IMAGE

Macros
#define a  0.1842f
#define b  -36.68f
Functions
int retrieveCode (char **psubItem)
int subitem2cmd (char *payload)
int txt2subItem (char *payload)
Variables
short modbusBusy = 0
aJsonObject * pollingItem
PubSubClient mqttClient
int8_t ethernetIdleCount
int8_t configLocked
lan_status lanStatus
const short defval [4] = {0, 0, 0, 0}
ModbusMaster node

Macro Definition Documentation
#define a  0.1842f
#define b  -36.68f

Function Documentation
int retrieveCode (char **  psubItem)
int subitem2cmd (char *  payload)
int txt2subItem (char *  payload)

Variable Documentation
int8_t configLocked[extern]
const short defval[4] = {0, 0, 0, 0}
int8_t ethernetIdleCount[extern]
lan_status lanStatus[extern]
short modbusBusy = 0
PubSubClient mqttClient[extern]
ModbusMaster node[extern]
aJsonObject* pollingItem[extern]

item.h File Reference
#include "options.h"
#include "abstractout.h"
#include "itemCmd.h"
#include "aJSON.h"
Include dependency graph for item.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class Item
Macros
#define S_NOTFOUND  0
#define S_CMD  1
#define S_SET  2
#define S_ESET  4
#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_ADDITIONAL  11
#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_MBUS  14
#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 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)
Variables
aJsonObject * items

Macro Definition Documentation
#define CH_AC  10
#define CH_DIMMER  0
#define CH_GROUP  7
#define CH_MBUS  14
#define CH_MODBUS  4
#define CH_MOTOR  12
#define CH_PWM  3
#define CH_RELAY  6
#define CH_RGB  2
#define CH_RGBW  1
#define CH_SPILED  11
#define CH_THERMO  5
#define CH_VC  9
#define CH_VCTEMP  8
#define CH_WHITE  127
#define I_ARG  1
#define I_CMD  3
#define I_EXT  4
#define I_TYPE  0
#define I_VAL  2
#define MODBUS_CMD_ARG_ADDR  0
#define MODBUS_CMD_ARG_MASK  2
#define MODBUS_CMD_ARG_MAX_SCALE  3
#define MODBUS_CMD_ARG_REG  1
#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
#define POLLING_FAST  2
#define POLLING_INT  3
#define POLLING_SLOW  1
#define S_ADDITIONAL  11
#define S_CMD  1
#define S_ESET  4
#define S_FAN  7
#define S_HSV  5
#define S_HUE  9
#define S_MODE  8
#define S_NOTFOUND  0
#define S_RGB  6
#define S_SAT  10
#define S_SET  2
#define S_TEMP  11

Function Documentation
short thermoSetCurTemp (char *  name, float  t)
int txt2cmd (char *  payload)

Variable Documentation
aJsonObject* items[extern]

itemCmd.cpp File Reference
#include <Arduino.h>
#include "itemCmd.h"
#include "main.h"
#include "Streaming.h"
#include "item.h"
#include <Adafruit_NeoPixel.h>
Include dependency graph for itemCmd.cpp:
IMAGE

Functions
int txt2cmd (char *payload)

Function Documentation
int txt2cmd (char *  payload)

itemCmd.h File Reference
#include "Arduino.h"
Include dependency graph for itemCmd.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
union itemCmdStore
union itemArgStore
class itemCmd
Macros
#define commandsNum  sizeof(commands_P)/sizeof(cmdstr)
#define CMD_ON  1
Definition of Commands. 

#define CMD_OFF  2
#define CMD_RESTORE  3
#define CMD_TOGGLE  4
#define CMD_HALT  5
#define CMD_XON  6
#define CMD_XOFF  7
#define CMD_UP  8
#define CMD_DN  9
#define CMD_HEAT  0xa
#define CMD_COOL  0xb
#define CMD_AUTO  0xc
#define CMD_FAN  0xd
#define CMD_DRY  0xe
#define CMD_STOP  0xf
#define CMD_HIGH  0x10
#define CMD_MED  0x11
#define CMD_LOW  0x12
#define CMD_ENABLED  0x13
#define CMD_DISABLED  0x14
#define CMD_TRUE  0x15
#define CMD_FALSE  0x16
#define CMD_RGB  0x17
#define CMD_HSV  0x18
#define CMD_MASK  0xff
#define FLAG_MASK  0xff00
#define CMD_VOID  0
#define CMD_UNKNOWN  -1
#define CMD_JSON  -2
#define SEND_COMMAND  0x100
#define SEND_PARAMETERS  0x200
#define SEND_RETRY  0x400
#define SEND_DEFFERED  0x800
#define ACTION_NEEDED  0x1000
#define ACTION_IN_PROCESS  0x2000
#define ST_VOID  0
Definition of all possible types of argument, contained in class. 

#define ST_PERCENTS  1
#define ST_TENS  2
#define ST_HSV  3
#define ST_HS  4
#define ST_FLOAT_CELSIUS  5
#define ST_FLOAT_FARENHEIT  6
#define ST_RGB  7
#define ST_RGBW  8
#define ST_PERCENTS255  9
#define ST_HSV255  10
#define ST_INT32  11
#define ST_UINT32  12
#define ST_STRING  13
#define ST_FLOAT  14
Typedefs
typedef char cmdstr[9]
Functions
int txt2cmd (char *payload)
Variables
const cmdstr commands_P[] PROGMEM

Macro Definition Documentation
#define ACTION_IN_PROCESS  0x2000
#define ACTION_NEEDED  0x1000
#define CMD_AUTO  0xc
#define CMD_COOL  0xb
#define CMD_DISABLED  0x14
#define CMD_DN  9
#define CMD_DRY  0xe
#define CMD_ENABLED  0x13
#define CMD_FALSE  0x16
#define CMD_FAN  0xd
#define CMD_HALT  5
#define CMD_HEAT  0xa
#define CMD_HIGH  0x10
#define CMD_HSV  0x18
#define CMD_JSON  -2
#define CMD_LOW  0x12
#define CMD_MASK  0xff
#define CMD_MED  0x11
#define CMD_OFF  2
#define CMD_ON  1

Definition of Commands. 
#define CMD_RESTORE  3
#define CMD_RGB  0x17
#define CMD_STOP  0xf
#define CMD_TOGGLE  4
#define CMD_TRUE  0x15
#define CMD_UNKNOWN  -1
#define CMD_UP  8
#define CMD_VOID  0
#define CMD_XOFF  7
#define CMD_XON  6
#define commandsNum  sizeof(commands_P)/sizeof(cmdstr)
#define FLAG_MASK  0xff00
#define SEND_COMMAND  0x100
#define SEND_DEFFERED  0x800
#define SEND_PARAMETERS  0x200
#define SEND_RETRY  0x400
#define ST_FLOAT  14
#define ST_FLOAT_CELSIUS  5
#define ST_FLOAT_FARENHEIT  6
#define ST_HS  4
#define ST_HSV  3
#define ST_HSV255  10
#define ST_INT32  11
#define ST_PERCENTS  1
#define ST_PERCENTS255  9
#define ST_RGB  7
#define ST_RGBW  8
#define ST_STRING  13
#define ST_TENS  2
#define ST_UINT32  12
#define ST_VOID  0

Definition of all possible types of argument, contained in class. 

Typedef Documentation
typedef char cmdstr[9]

Function Documentation
int txt2cmd (char *  payload)

Variable Documentation
const cmdstr commands_P [] PROGMEM
Initial value:=
{
"","ON","OFF","REST","TOGGLE","HALT","XON","XOFF","INCREASE","DECREASE",
"HEAT","COOL","AUTO","FAN_ONLY","DRY","STOP","HIGH","MEDIUM","LOW",
"TRUE","FALSE","ENABLED","DISABLED","RGB","HSV"
}

main.cpp File Reference
#include "main.h"
#include "statusled.h"
#include <Dhcp.h>
Include dependency graph for main.cpp:
IMAGE

Functions
PubSubClient mqttClient (ethClient)
void cleanConf ()
bool isNotRetainingStatus ()
void mqttCallback (char *topic, byte *payload, unsigned int length)
void printMACAddress ()
char * getStringFromConfig (aJsonObject *a, int i)
char * getStringFromConfig (aJsonObject *a, char *name)
void setupOTA (void)
void setupSyslog ()
lan_status lanLoop ()
void onMQTTConnect ()
void ip_ready_config_loaded_connecting_to_broker ()
void onInitialStateInitLAN ()
void resetHard ()
void Changed (int i, DeviceAddress addr, float currentTemp)
void cmdFunctionHelp (int arg_cnt, char **args)
void printCurentLanConfig ()
void cmdFunctionKill (int arg_cnt, char **args)
void cmdFunctionReboot (int arg_cnt, char **args)
void applyConfig ()
void printConfigSummary ()
void cmdFunctionLoad (int arg_cnt, char **args)
int loadConfigFromEEPROM ()
void cmdFunctionReq (int arg_cnt, char **args)
int mqttConfigRequest (int arg_cnt, char **args)
int mqttConfigResp (char *as)
void cmdFunctionSave (int arg_cnt, char **args)
void cmdFunctionIp (int arg_cnt, char **args)
void cmdFunctionClearEEPROM (int arg_cnt, char **args)
void cmdFunctionPwd (int arg_cnt, char **args)
void cmdFunctionSetMac (int arg_cnt, char **args)
void cmdFunctionGet (int arg_cnt, char **args)
void printBool (bool arg)
void saveFlash (short n, char *str)
int loadFlash (short n, char *str, short l)
void saveFlash (short n, IPAddress &ip)
int ipLoadFromFlash (short n, IPAddress &ip)
lan_status loadConfigFromHttp (int arg_cnt, char **args)
void preTransmission ()
void postTransmission ()
void setup_main ()
void printFirmwareVersionAndBuildOptions ()
void publishStat ()
void setupMacAddress ()
void setupCmdArduino ()
void loop_main ()
void owIdle (void)
void ethernetIdle (void)
void modbusIdle (void)
void inputLoop (void)
void inputSetup (void)
void pollingLoop (void)
bool isThermostatWithMinArraySize (aJsonObject *item, int minimalArraySize)
bool thermoDisabledOrDisconnected (aJsonObject *thermoExtensionArray, int thermoStateCommand)
void thermoLoop (void)
short thermoSetCurTemp (char *name, float t)
Variables
EthernetClient ethClient
Streamlog debugSerial & debugSerialPort
statusLED LED (ledRED)
lan_status lanStatus = INITIAL_STATE
const char configserver[] PROGMEM = CONFIG_SERVER
char * deviceName = NULL
aJsonObject * topics = NULL
aJsonObject * root = NULL
aJsonObject * items = NULL
aJsonObject * inputs = NULL
aJsonObject * mqttArr = NULL
aJsonObject * modbusObj = NULL
aJsonObject * owArr = NULL
aJsonObject * dmxArr = NULL
uint32_t nextPollingCheck = 0
uint32_t nextInputCheck = 0
uint32_t nextLanCheckTime = 0
uint32_t nextThermostatCheck = 0
uint32_t nextSensorCheck =0
uint32_t WiFiAwaitingTime =0
aJsonObject * pollingItem = NULL
bool owReady = false
bool configOk = false
bool configLoaded = false
bool initializedListeners = false
int8_t ethernetIdleCount =0
int8_t configLocked = 0
ModbusMaster node
byte mac [6]
bool wifiInitialized
int mqttErrorRate

Function Documentation
void applyConfig ()
void Changed (int  i, DeviceAddress  addr, float  currentTemp)

TODO: Refactore using Items interface
void cleanConf ()
void cmdFunctionClearEEPROM (int  arg_cnt, char **  args)
void cmdFunctionGet (int  arg_cnt, char **  args)
void cmdFunctionHelp (int  arg_cnt, char **  args)
void cmdFunctionIp (int  arg_cnt, char **  args)
void cmdFunctionKill (int  arg_cnt, char **  args)
void cmdFunctionLoad (int  arg_cnt, char **  args)
void cmdFunctionPwd (int  arg_cnt, char **  args)
void cmdFunctionReboot (int  arg_cnt, char **  args)
void cmdFunctionReq (int  arg_cnt, char **  args)
void cmdFunctionSave (int  arg_cnt, char **  args)
void cmdFunctionSetMac (int  arg_cnt, char **  args)
void ethernetIdle (void )
char* getStringFromConfig (aJsonObject *  a, char *  name)
char* getStringFromConfig (aJsonObject *  a, int  i)
void inputLoop (void )
void inputSetup (void )
void ip_ready_config_loaded_connecting_to_broker ()
int ipLoadFromFlash (short  n, IPAddress &  ip)
bool isNotRetainingStatus ()
bool isThermostatWithMinArraySize (aJsonObject *  item, int  minimalArraySize)
lan_status lanLoop ()
int loadConfigFromEEPROM ()
lan_status loadConfigFromHttp (int  arg_cnt, char **  args)
int loadFlash (short  n, char *  str, short  l)
void loop_main ()
void modbusIdle (void )
void mqttCallback (char *  topic, byte *  payload, unsigned int  length)
PubSubClient mqttClient (ethClient )
int mqttConfigRequest (int  arg_cnt, char **  args)
int mqttConfigResp (char *  as)
void onInitialStateInitLAN ()
void onMQTTConnect ()

strncat(buf,item->name,sizeof(buf)); strncat(buf,",",sizeof(buf));
mqttClient.publish(topic,buf,true);
void owIdle (void )
void pollingLoop (void )
void postTransmission ()
void preTransmission ()
void printBool (bool  arg)
void printConfigSummary ()
void printCurentLanConfig ()
void printFirmwareVersionAndBuildOptions ()
void printMACAddress ()
void publishStat ()
void resetHard ()
void saveFlash (short  n, char *  str)
void saveFlash (short  n, IPAddress &  ip)
void setup_main ()
void setupCmdArduino ()
void setupMacAddress ()
void setupOTA (void )
void setupSyslog ()
bool thermoDisabledOrDisconnected (aJsonObject *  thermoExtensionArray, int  thermoStateCommand)
void thermoLoop (void )
short thermoSetCurTemp (char *  name, float  t)

Variable Documentation
bool configLoaded = false
int8_t configLocked = 0
bool configOk = false
Streamlog infoSerial& debugSerialPort
char* deviceName = NULL
aJsonObject* dmxArr = NULL
EthernetClient ethClient
int8_t ethernetIdleCount =0
bool initializedListeners = false
aJsonObject* inputs = NULL
aJsonObject* items = NULL
lan_status lanStatus = INITIAL_STATE
statusLED LED(ledRED)
byte mac[6]
aJsonObject* modbusObj = NULL
aJsonObject* mqttArr = NULL
int mqttErrorRate
uint32_t nextInputCheck = 0
uint32_t nextLanCheckTime = 0
uint32_t nextPollingCheck = 0
uint32_t nextSensorCheck =0
uint32_t nextThermostatCheck = 0
ModbusMaster node
aJsonObject* owArr = NULL
bool owReady = false
aJsonObject* pollingItem = NULL
const char verval_P [] PROGMEM = CONFIG_SERVER
aJsonObject* root = NULL
aJsonObject* topics = NULL
uint32_t WiFiAwaitingTime =0
bool wifiInitialized

main.h File Reference
#include "options.h"
#include "streamlog.h"
#include "DallasTemperature.h"
#include <ModbusMaster.h>
#include "owTerm.h"
#include "dmx.h"
#include <Ethernet.h>
#include "Arduino.h"
#include "utils.h"
#include "textconst.h"
#include <PubSubClient.h>
#include <SPI.h>
#include <string.h>
#include "aJSON.h"
#include <Cmd.h>
#include "stdarg.h"
#include "item.h"
#include "inputs.h"
Include dependency graph for main.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
union UID
Macros
#define DHCP_RETRY_INTERVAL  60000
Enumerations
enum lan_status { INITIAL_STATE = 0, AWAITING_ADDRESS = 1, HAVE_IP_ADDRESS = 2, LIBS_INITIALIZED = 3, IP_READY_CONFIG_LOADED_CONNECTING_TO_BROKER = 4, RETAINING_COLLECTING = 5, OPERATION = 6, DO_REINIT = -10, REINIT = - 11, DO_RECONNECT = 12, RECONNECT = 13, READ_RE_CONFIG = 14, DO_NOTHING = -15 }
Functions
bool isNotRetainingStatus ()
void mqttCallback (char *topic, byte *payload, unsigned int length)
void printMACAddress ()
lan_status lanLoop ()
void Changed (int i, DeviceAddress addr, float currentTemp)
void modbusIdle (void)
void cmdFunctionHelp (int arg_cnt, char **args)
void cmdFunctionKill (int arg_cnt, char **args)
void applyConfig ()
void cmdFunctionLoad (int arg_cnt, char **args)
int loadConfigFromEEPROM ()
void cmdFunctionReq (int arg_cnt, char **args)
int mqttConfigRequest (int arg_cnt, char **args)
int mqttConfigResp (char *as)
void cmdFunctionSave (int arg_cnt, char **args)
void cmdFunctionSetMac (int arg_cnt, char **args)
void cmdFunctionGet (int arg_cnt, char **args)
void printBool (bool arg)
void saveFlash (short n, char *str)
int loadFlash (short n, char *str, short l=MAXFLASHSTR)
void saveFlash (short n, IPAddress &ip)
int ipLoadFromFlash (short n, IPAddress &ip)
lan_status loadConfigFromHttp (int arg_cnt=0, char **args=NULL)
void preTransmission ()
void postTransmission ()
void setup_main ()
void loop_main ()
void owIdle (void)
void inputLoop (void)
void inputSetup (void)
void pollingLoop (void)
void thermoLoop (void)
short thermoSetCurTemp (char *name, float t)
void printConfigSummary ()
void setupCmdArduino ()
void setupMacAddress ()
void printFirmwareVersionAndBuildOptions ()
bool IsThermostat (const aJsonObject *item)
bool disabledDisconnected (const aJsonObject *thermoExtensionArray, int thermoLatestCommand)
void resetHard ()
void onInitialStateInitLAN ()
void ip_ready_config_loaded_connecting_to_broker ()
void printCurentLanConfig ()
Variables
Streamlog debugSerial
Streamlog infoSerial
Streamlog errorSerial

Macro Definition Documentation
#define DHCP_RETRY_INTERVAL  60000

Enumeration Type Documentation
enum lan_status

Enumerator:
INITIAL_STATE		
AWAITING_ADDRESS		
HAVE_IP_ADDRESS		
LIBS_INITIALIZED		
IP_READY_CONFIG_LOADED_CONNECTING_TO_BROKER		
RETAINING_COLLECTING		
OPERATION		
DO_REINIT		
REINIT		
DO_RECONNECT		
RECONNECT		
READ_RE_CONFIG		
DO_NOTHING		

Function Documentation
void applyConfig ()
void Changed (int  i, DeviceAddress  addr, float  currentTemp)

TODO: Refactore using Items interface
void cmdFunctionGet (int  arg_cnt, char **  args)
void cmdFunctionHelp (int  arg_cnt, char **  args)
void cmdFunctionKill (int  arg_cnt, char **  args)
void cmdFunctionLoad (int  arg_cnt, char **  args)
void cmdFunctionReq (int  arg_cnt, char **  args)
void cmdFunctionSave (int  arg_cnt, char **  args)
void cmdFunctionSetMac (int  arg_cnt, char **  args)
bool disabledDisconnected (const aJsonObject *  thermoExtensionArray, int  thermoLatestCommand)
void inputLoop (void )
void inputSetup (void )
void ip_ready_config_loaded_connecting_to_broker ()
int ipLoadFromFlash (short  n, IPAddress &  ip)
bool isNotRetainingStatus ()
bool IsThermostat (const aJsonObject *  item)
lan_status lanLoop ()
int loadConfigFromEEPROM ()
lan_status loadConfigFromHttp (int  arg_cnt = 0, char **  args = NULL)
int loadFlash (short  n, char *  str, short  l = MAXFLASHSTR)
void loop_main ()
void modbusIdle (void )
void mqttCallback (char *  topic, byte *  payload, unsigned int  length)
int mqttConfigRequest (int  arg_cnt, char **  args)
int mqttConfigResp (char *  as)
void onInitialStateInitLAN ()
void owIdle (void )
void pollingLoop (void )
void postTransmission ()
void preTransmission ()
void printBool (bool  arg)
void printConfigSummary ()
void printCurentLanConfig ()
void printFirmwareVersionAndBuildOptions ()
void printMACAddress ()
void resetHard ()
void saveFlash (short  n, char *  str)
void saveFlash (short  n, IPAddress &  ip)
void setup_main ()
void setupCmdArduino ()
void setupMacAddress ()
void thermoLoop (void )
short thermoSetCurTemp (char *  name, float  t)

Variable Documentation
Streamlog debugSerial[extern]
Streamlog errorSerial[extern]
Streamlog infoSerial[extern]

options.h File Reference
This graph shows which files directly or indirectly include this file:
IMAGE

Macros
#define SYSLOG_LOCAL_SOCKET  514
#define ADAFRUIT_LED
#define CONTROLLER  TM1809
#define DATA_PIN  4
#define ORDER  BRG
#define TXEnablePin  13
#define ESP_EEPROM_SIZE  2048
#define AVR_DMXOUT_PIN  18
#define T_ATTEMPTS  200
#define IET_TEMP  0
#define IET_ATTEMPTS  1
#define THERMO_GIST_CELSIUS  1.
#define THERMO_OVERHEAT_CELSIUS  38.
#define FM_OVERHEAT_CELSIUS  40.
#define MIN_VOLUME  25
#define INIT_VOLUME  40
#define MAXFLASHSTR  32
#define PWDFLASHSTR  16
#define EEPROM_SIGNATURE  "LHCF"
#define EEPROM_SIGNATURE_LENGTH  4
#define OFFSET_MAC  0
#define OFFSET_IP  OFFSET_MAC+6
#define OFFSET_DNS  OFFSET_IP+4
#define OFFSET_GW  OFFSET_DNS+4
#define OFFSET_MASK  OFFSET_GW+4
#define OFFSET_CONFIGSERVER  OFFSET_MASK+4
#define OFFSET_MQTT_PWD  OFFSET_CONFIGSERVER+MAXFLASHSTR
#define OFFSET_SIGNATURE  OFFSET_MQTT_PWD+PWDFLASHSTR
#define EEPROM_offset_NotAlligned  OFFSET_SIGNATURE+EEPROM_SIGNATURE_LENGTH
#define EEPROM_offsetJSON  EEPROM_offset_NotAlligned + (4 -(EEPROM_offset_NotAlligned & 3))
#define EEPROM_FIX_PART_LEN  EEPROM_offsetJSON-OFFSET_MAC
#define INTERVAL_CHECK_INPUT  15
#define INTERVAL_CHECK_SENSOR  5000
#define INTERVAL_CHECK_MODBUS  2000
#define INTERVAL_POLLING  100
#define THERMOSTAT_CHECK_PERIOD  30000
#define OW_UPDATE_INTERVAL  5000
#define MODBUS_SERIAL_BAUD  9600
#define MODBUS_DIMMER_PARAM  SERIAL_8N1
#define dimPar  MODBUS_DIMMER_PARAM
#define fmPar  SERIAL_8N1
#define SERIAL_BAUD  115200
#define DEFAULT_FIRMWARE_MAC  {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xFF}
#define CONFIG_SERVER  "lazyhome.ru"
#define HOMETOPIC  "myhome"
#define OUTTOPIC  "s_out"
#define CMDTOPIC  "$command"
#define INTOPIC  "in"
#define MQTT_SUBJECT_LENGTH  20
#define MQTT_TOPIC_LENGTH  64
#define _dmxin
#define _dmxout
#define _owire
#define _modbus
#define LAN_INIT_DELAY  500
#define DEFAULT_INC_STEP  5
#define DHT_POLL_DELAY_DEFAULT  15000
#define UPTIME_POLL_DELAY_DEFAULT  30000
#define DMX_SMOOTH_DELAY  10
#define debugSerialPort  Serial
#define W5100_ETHERNET_SHIELD

Macro Definition Documentation
#define _dmxin
#define _dmxout
#define _modbus
#define _owire
#define ADAFRUIT_LED
#define AVR_DMXOUT_PIN  18
#define CMDTOPIC  "$command"
#define CONFIG_SERVER  "lazyhome.ru"
#define CONTROLLER  TM1809
#define DATA_PIN  4
Streamlog infoSerial & debugSerialPort  Serial
#define DEFAULT_FIRMWARE_MAC  {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xFF}
#define DEFAULT_INC_STEP  5
#define DHT_POLL_DELAY_DEFAULT  15000
#define dimPar  MODBUS_DIMMER_PARAM
#define DMX_SMOOTH_DELAY  10
#define EEPROM_FIX_PART_LEN  EEPROM_offsetJSON-OFFSET_MAC
#define EEPROM_offset_NotAlligned  OFFSET_SIGNATURE+EEPROM_SIGNATURE_LENGTH
#define EEPROM_offsetJSON  EEPROM_offset_NotAlligned + (4 -(EEPROM_offset_NotAlligned & 3))
#define EEPROM_SIGNATURE  "LHCF"
#define EEPROM_SIGNATURE_LENGTH  4
#define ESP_EEPROM_SIZE  2048
#define FM_OVERHEAT_CELSIUS  40.
#define fmPar  SERIAL_8N1
#define HOMETOPIC  "myhome"
#define IET_ATTEMPTS  1
#define IET_TEMP  0
#define INIT_VOLUME  40
#define INTERVAL_CHECK_INPUT  15
#define INTERVAL_CHECK_MODBUS  2000
#define INTERVAL_CHECK_SENSOR  5000
#define INTERVAL_POLLING  100
#define INTOPIC  "in"
#define LAN_INIT_DELAY  500
#define MAXFLASHSTR  32
#define MIN_VOLUME  25
#define MODBUS_DIMMER_PARAM  SERIAL_8N1
#define MODBUS_SERIAL_BAUD  9600
#define MQTT_SUBJECT_LENGTH  20
#define MQTT_TOPIC_LENGTH  64
#define OFFSET_CONFIGSERVER  OFFSET_MASK+4
#define OFFSET_DNS  OFFSET_IP+4
#define OFFSET_GW  OFFSET_DNS+4
#define OFFSET_IP  OFFSET_MAC+6
#define OFFSET_MAC  0
#define OFFSET_MASK  OFFSET_GW+4
#define OFFSET_MQTT_PWD  OFFSET_CONFIGSERVER+MAXFLASHSTR
#define OFFSET_SIGNATURE  OFFSET_MQTT_PWD+PWDFLASHSTR
#define ORDER  BRG
#define OUTTOPIC  "s_out"
#define OW_UPDATE_INTERVAL  5000
#define PWDFLASHSTR  16
#define SERIAL_BAUD  115200
#define SYSLOG_LOCAL_SOCKET  514
#define T_ATTEMPTS  200
#define THERMO_GIST_CELSIUS  1.
#define THERMO_OVERHEAT_CELSIUS  38.
#define THERMOSTAT_CHECK_PERIOD  30000
#define TXEnablePin  13
#define UPTIME_POLL_DELAY_DEFAULT  30000
#define W5100_ETHERNET_SHIELD

out_ac.cpp File Reference
#include "modules/out_ac.h"
#include "Arduino.h"
#include "options.h"
#include "Streaming.h"
#include "item.h"
#include "textconst.h"
#include "main.h"
Include dependency graph for out_ac.cpp:
IMAGE

Macros
#define AC_Serial  Serial3
#define INTERVAL_AC_POLLING  5000L
Functions
byte getCRC (byte req[], size_t size)
void SendData (byte req[], size_t size)
unsigned char toHex (char ch)
Variables
long prevPolling = 0
byte inCheck = 0
byte qstn [] = {255,255,10,0,0,0,0,0,1,1,77,1,90}
byte data [37] = {}
byte on [] = {255,255,10,0,0,0,0,0,1,1,77,2,91}
byte off [] = {255,255,10,0,0,0,0,0,1,1,77,3,92}
byte lock [] = {255,255,10,0,0,0,0,0,1,3,0,0,14}
const char LOCK_P[] PROGMEM = "lock"

Macro Definition Documentation
#define AC_Serial  Serial3
#define INTERVAL_AC_POLLING  5000L

Function Documentation
byte getCRC (byte  req[], size_t  size)
void SendData (byte  req[], size_t  size)
unsigned char toHex (char  ch)[inline]

Variable Documentation
byte data[37] = {}
byte inCheck = 0
byte lock[] = {255,255,10,0,0,0,0,0,1,3,0,0,14}
byte off[] = {255,255,10,0,0,0,0,0,1,1,77,3,92}
byte on[] = {255,255,10,0,0,0,0,0,1,1,77,2,91}
long prevPolling = 0
const char RAW_P [] PROGMEM = "lock"
byte qstn[] = {255,255,10,0,0,0,0,0,1,1,77,1,90}

out_ac.h File Reference
#include <abstractout.h>
Include dependency graph for out_ac.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class out_AC
Macros
#define LEN_B  37
#define B_CUR_TMP  13
#define B_CMD  17
#define B_MODE  23
#define B_FAN_SPD  25
#define B_SWING  27
#define B_LOCK_REM  28
#define B_POWER  29
#define B_FRESH  31
#define B_SET_TMP  35
#define S_LOCK  S_ADDITIONAL+1
#define S_QUIET  S_ADDITIONAL+2
#define S_SWING  S_ADDITIONAL+3
#define S_RAW  S_ADDITIONAL+4
Functions
void modbusIdle (void)

Macro Definition Documentation
#define B_CMD  17
#define B_CUR_TMP  13
#define B_FAN_SPD  25
#define B_FRESH  31
#define B_LOCK_REM  28
#define B_MODE  23
#define B_POWER  29
#define B_SET_TMP  35
#define B_SWING  27
#define LEN_B  37
#define S_LOCK  S_ADDITIONAL+1
#define S_QUIET  S_ADDITIONAL+2
#define S_RAW  S_ADDITIONAL+4
#define S_SWING  S_ADDITIONAL+3

Function Documentation
void modbusIdle (void )

out_dmx.cpp File Reference
#include "modules/out_dmx.h"
#include "Arduino.h"
#include "options.h"
#include "Streaming.h"
#include "item.h"
#include "main.h"
#include "dmx.h"
Include dependency graph for out_dmx.cpp:
IMAGE

out_dmx.h File Reference
#include "options.h"
#include <abstractout.h>
#include <item.h>
#include "colorchannel.h"
Include dependency graph for out_dmx.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class out_dmx

out_modbus.cpp File Reference
#include "modules/out_modbus.h"
#include "Arduino.h"
#include "options.h"
#include "utils.h"
#include "Streaming.h"
#include "item.h"
#include <ModbusMaster.h>
#include "main.h"
#include <HardwareSerial.h>
Include dependency graph for out_modbus.cpp:
IMAGE

Classes
struct reg_t
struct serial_t
Macros
#define PAR_I16  1
#define PAR_I32  2
#define PAR_U16  3
#define PAR_U32  4
#define PAR_I8H  5
#define PAR_I8L  6
#define PAR_U8H  7
#define PAR_U8L  8
#define regSizeNum  sizeof(regSize_P)/sizeof(reg_t)
#define serialModesNum  sizeof(serialModes_P)/sizeof(serial_t)
Functions
void modbusIdle (void)
uint16_t str2SerialParam (char *str)
int str2regSize (char *str)
bool readModbus (uint16_t reg, int regType, int count)
Variables
aJsonObject * modbusObj
ModbusMaster node
short modbusBusy
const reg_t regSize_P[] PROGMEM

Macro Definition Documentation
#define PAR_I16  1
#define PAR_I32  2
#define PAR_I8H  5
#define PAR_I8L  6
#define PAR_U16  3
#define PAR_U32  4
#define PAR_U8H  7
#define PAR_U8L  8
#define regSizeNum  sizeof(regSize_P)/sizeof(reg_t)
#define serialModesNum  sizeof(serialModes_P)/sizeof(serial_t)

Function Documentation
void modbusIdle (void )
bool readModbus (uint16_t  reg, int  regType, int  count)
int str2regSize (char *  str)
uint16_t str2SerialParam (char *  str)

Variable Documentation
short modbusBusy[extern]
aJsonObject* modbusObj[extern]
ModbusMaster node[extern]
const serial_t serialModes_P [] PROGMEM
Initial value:=
{
  { "i16", (uint8_t) PAR_I16 },
  { "i32", (uint8_t) PAR_I32 },
  { "u16", (uint8_t) PAR_U16 },
  { "u32", (uint8_t) PAR_U32 },
  { "i8h", (uint8_t) PAR_I8H },
  { "i8l", (uint8_t) PAR_I8L },
  { "u8h", (uint8_t) PAR_U8H },
  { "u8l", (uint8_t) PAR_U8L }
}

out_modbus.h File Reference
#include "options.h"
#include <abstractout.h>
#include <item.h>
Include dependency graph for out_modbus.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class mbPersistent
class out_Modbus

out_motor.cpp File Reference
#include "modules/out_motor.h"
#include "Arduino.h"
#include "options.h"
#include "Streaming.h"
#include "item.h"
#include "main.h"
Include dependency graph for out_motor.cpp:
IMAGE

out_motor.h File Reference
#include "options.h"
#include <abstractout.h>
#include <item.h>
Include dependency graph for out_motor.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class out_Motor
Macros
#define POS_ERR  2
#define MOTOR_QUOTE  2

Macro Definition Documentation
#define MOTOR_QUOTE  2
#define POS_ERR  2

out_pwm.cpp File Reference
#include "modules/out_pwm.h"
#include "Arduino.h"
#include "options.h"
#include "Streaming.h"
#include "item.h"
#include "main.h"
#include "dmx.h"
Include dependency graph for out_pwm.cpp:
IMAGE

out_pwm.h File Reference
#include "options.h"
#include <abstractout.h>
#include <item.h>
#include "colorchannel.h"
Include dependency graph for out_pwm.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class out_pwm

out_spiled.cpp File Reference
#include "modules/out_spiled.h"
#include "Arduino.h"
#include "options.h"
#include "Streaming.h"
#include "item.h"
#include "main.h"
#include "FastLED.h"
Include dependency graph for out_spiled.cpp:
IMAGE

Macros
#define NUM_LEDS  43

Macro Definition Documentation
#define NUM_LEDS  43

out_spiled.h File Reference
#include "options.h"
#include "colorchannel.h"
#include <abstractout.h>
#include <item.h>
#include "FastLED.h"
Include dependency graph for out_spiled.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class out_SPILed

owTerm.cpp File Reference
#include "owTerm.h"
#include <Arduino.h>
#include "utils.h"
#include "options.h"
#include "main.h"
Include dependency graph for owTerm.cpp:
IMAGE

Functions
int owUpdate ()
int owSetup (owChangedType owCh)
int sensors_loop (void)
void owLoop ()
int owFind (DeviceAddress addr)
void owAdd (DeviceAddress addr)
void setupOwIdle (void(*ptr)())
Variables
OneWire * oneWire = NULL
DeviceAddress * term = NULL
uint16_t * wstat = NULL
DallasTemperature * sensors = NULL
short si = 0
int t_count = 0
unsigned long owTimer = 0
owChangedType owChanged

Function Documentation
void owAdd (DeviceAddress  addr)
int owFind (DeviceAddress  addr)
void owLoop ()
int owSetup (owChangedType  owCh)
int owUpdate ()
int sensors_loop (void )
void setupOwIdle (void(*)()  ptr)

Variable Documentation
OneWire* oneWire = NULL
owChangedType owChanged
unsigned long owTimer = 0
DallasTemperature* sensors = NULL
short si = 0
int t_count = 0
DeviceAddress* term = NULL
uint16_t* wstat = NULL

owTerm.h File Reference
#include <DallasTemperature.h>
#include "aJSON.h"
#include <Wire.h>
#include <DS2482_OneWire.h>
Include dependency graph for owTerm.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Macros
#define SW_AUX0  0x40
#define SW_AUX1  0x80
#define SW_STAT0  0x4
#define SW_STAT1  0x8
#define SW_OUT0  0x20
#define SW_OUT1  0x10
#define SW_MASK  0xF
#define SW_INMASK  0xFC
#define recheck_interval  5
#define check_circle  2000/t_count
#define SW_FIND  1
#define SW_DOUBLECHECK  2
#define SW_PULSE0  4
#define SW_PULSE1  8
#define SW_PULSE_P0  0x10
#define SW_PULSE_P1  0x20
#define SW_CHANGED_P0  0x40
#define SW_CHANGED_P1  0x80
#define SW_PULSE0_R  0x100
#define SW_PULSE1_R  0x200
#define recheck_interval  5
#define check_circle  2000/t_count
#define t_max  20
#define TEMPERATURE_PRECISION  12
#define DS2482_100_I2C_TO_1W_BRIDGE
Typedefs
typedef void(* owChangedType) (int, DeviceAddress, float)
Functions
int owUpdate ()
int owSetup (owChangedType owCh)
void owLoop ()
void setupOwIdle (void(*)())
int owFind (DeviceAddress addr)
void owAdd (DeviceAddress addr)
Variables
aJsonObject * owArr
OneWire * oneWire
DallasTemperature * sensors
DeviceAddress * term
int * regs
uint16_t * wstat
int t_count
short si
owChangedType owChanged

Macro Definition Documentation
#define check_circle  2000/t_count
#define check_circle  2000/t_count
#define DS2482_100_I2C_TO_1W_BRIDGE
#define recheck_interval  5
#define recheck_interval  5
#define SW_AUX0  0x40
#define SW_AUX1  0x80
#define SW_CHANGED_P0  0x40
#define SW_CHANGED_P1  0x80
#define SW_DOUBLECHECK  2
#define SW_FIND  1
#define SW_INMASK  0xFC
#define SW_MASK  0xF
#define SW_OUT0  0x20
#define SW_OUT1  0x10
#define SW_PULSE0  4
#define SW_PULSE0_R  0x100
#define SW_PULSE1  8
#define SW_PULSE1_R  0x200
#define SW_PULSE_P0  0x10
#define SW_PULSE_P1  0x20
#define SW_STAT0  0x4
#define SW_STAT1  0x8
#define t_max  20
#define TEMPERATURE_PRECISION  12

Typedef Documentation
typedef void(* owChangedType) (int, DeviceAddress, float)

Function Documentation
void owAdd (DeviceAddress  addr)
int owFind (DeviceAddress  addr)
void owLoop ()
int owSetup (owChangedType  owCh)
int owUpdate ()
void setupOwIdle (void(*)() )

Variable Documentation
OneWire* oneWire[extern]
aJsonObject* owArr[extern]
owChangedType owChanged[extern]
int* regs[extern]
DallasTemperature* sensors[extern]
short si[extern]
int t_count[extern]
DeviceAddress* term[extern]
uint16_t* wstat[extern]

statusled.cpp File Reference
#include "statusled.h"
Include dependency graph for statusled.cpp:
IMAGE

statusled.h File Reference
#include <Arduino.h>
Include dependency graph for statusled.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class statusLED
Macros
#define ledRED  1
#define ledGREEN  2
#define ledBLUE  4
#define ledBLINK  8
#define ledFASTBLINK  16
#define ledParams  (ledRED | ledGREEN | ledBLUE | ledBLINK | ledFASTBLINK)
#define ledFlash  32
#define ledHidden  64
#define pinRED  50
#define pinGREEN  51
#define pinBLUE  52
#define ledDelayms  1000UL
#define ledFastDelayms  300UL

Macro Definition Documentation
#define ledBLINK  8
#define ledBLUE  4
#define ledDelayms  1000UL
#define ledFASTBLINK  16
#define ledFastDelayms  300UL
#define ledFlash  32
#define ledGREEN  2
#define ledHidden  64
#define ledParams  (ledRED | ledGREEN | ledBLUE | ledBLINK | ledFASTBLINK)
#define ledRED  1
#define pinBLUE  52
#define pinGREEN  51
#define pinRED  50

streamlog.cpp File Reference
#include "streamlog.h"
#include <Arduino.h>
#include "statusled.h"
Include dependency graph for streamlog.cpp:
IMAGE

streamlog.h File Reference
#include <Print.h>
#include <HardwareSerial.h>
#include <inttypes.h>
Include dependency graph for streamlog.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Classes
class Streamlog
Macros
#define LOGBUFFER_SIZE  80
#define LOG_DEBUG  7
#define LOG_INFO  6
#define LOG_ERROR  3

Macro Definition Documentation
#define LOG_DEBUG  7
#define LOG_ERROR  3
#define LOG_INFO  6
#define LOGBUFFER_SIZE  80

textconst.h File Reference
This graph shows which files directly or indirectly include this file:
IMAGE

Variables
const char state_P[] PROGMEM = "$state"
const char EEPROM_signature [] = EEPROM_SIGNATURE

Variable Documentation
const char EEPROM_signature[] = EEPROM_SIGNATURE
const char RGB_P [] PROGMEM = "$state"

utils.cpp File Reference
#include "utils.h"
#include "options.h"
#include "stdarg.h"
#include <Wire.h>
#include "main.h"
#include "item.h"
#include <PubSubClient.h>
Include dependency graph for utils.cpp:
IMAGE

Macros
#define ARDBUFFER  16
Functions
void PrintBytes (uint8_t *addr, uint8_t count, bool newline)
void SetBytes (uint8_t *addr, uint8_t count, char *out)
byte HEX2DEC (char i)
void SetAddr (char *out, uint8_t *addr)
int getInt (char **chan)
void parseBytes (const char *str, char separator, byte *bytes, int maxBytes, int base)
void printFloatValueToStr (float value, char *valstr)
int log (const char *str,...)
__attribute__ ((section(".ramfunc"))) void ReadUniqueID(uint32_t *pdwUniqueID)
int inet_aton (const char *aIPAddrString, IPAddress &aResult)
char * inet_ntoa_r (IPAddress addr, char *buf, int buflen)
void printIPAddress (IPAddress ipAddress)
char * setTopic (char *buf, int8_t buflen, topicType tt, const char *suffix)
void printUlongValueToStr (char *valstr, unsigned long value)
void scan_i2c_bus ()
bool isTimeOver (uint32_t timestamp, uint32_t currTime, uint32_t time, uint32_t modulo)
bool executeCommand (aJsonObject *cmd, int8_t toggle)
bool executeCommand (aJsonObject *cmd, int8_t toggle, itemCmd _itemCmd)
itemCmd mapInt (int32_t arg, aJsonObject *map)
Variables
int8_t configLocked
int8_t ethernetIdleCount
PubSubClient mqttClient
const char outTopic[] PROGMEM = OUTTOPIC
char * deviceName
aJsonObject * topics
const char HEXSTR [] = "0123456789ABCDEF"

Macro Definition Documentation
#define ARDBUFFER  16

Function Documentation
__attribute__ ((section(".ramfunc")) )
bool executeCommand (aJsonObject *  cmd, int8_t  toggle)
bool executeCommand (aJsonObject *  cmd, int8_t  toggle, itemCmd  _itemCmd)
int getInt (char **  chan)
byte HEX2DEC (char  i)
int inet_aton (const char *  aIPAddrString, IPAddress &  aResult)
char* inet_ntoa_r (IPAddress  addr, char *  buf, int  buflen)
Same as ipaddr_ntoa, but reentrant since a user-supplied buffer is used.
Parameters
addr 	ip address in network order to convert 	
buf 	target buffer where the string is stored 	
buflen 	length of buf 	
Returns
either pointer to buf which now holds the ASCII representation of addr or NULL if buf was too small 
bool isTimeOver (uint32_t  timestamp, uint32_t  currTime, uint32_t  time, uint32_t  modulo)
int log (const char *  str,   ...)
itemCmd mapInt (int32_t  arg, aJsonObject *  map)
void parseBytes (const char *  str, char  separator, byte *  bytes, int  maxBytes, int  base)
void PrintBytes (uint8_t *  addr, uint8_t  count, bool  newline)
void printFloatValueToStr (float  value, char *  valstr)
void printIPAddress (IPAddress  ipAddress)
void printUlongValueToStr (char *  valstr, unsigned long  value)
void scan_i2c_bus ()
void SetAddr (char *  out, uint8_t *  addr)
void SetBytes (uint8_t *  addr, uint8_t  count, char *  out)
char* setTopic (char *  buf, int8_t  buflen, topicType  tt, const char *  suffix)

Variable Documentation
int8_t configLocked[extern]
char* deviceName[extern]
int8_t ethernetIdleCount[extern]
const char HEXSTR[] = "0123456789ABCDEF"
PubSubClient mqttClient[extern]
const char homeTopic [] PROGMEM = OUTTOPIC
aJsonObject* topics[extern]

utils.h File Reference
#include <Arduino.h>
#include <IPAddress.h>
#include "aJSON.h"
#include "options.h"
#include "item.h"
#include "Streaming.h"
Include dependency graph for utils.h:
IMAGE

This graph shows which files directly or indirectly include this file:
IMAGE

Macros
#define Q(x)  #x
#define QUOTE(x)  Q(x)
#define VALUE_TO_STRING(x)  #x
#define VALUE(x)  VALUE_TO_STRING(x)
#define VAR_NAME_VALUE(var)  #var "="  VALUE(var)
Enumerations
enum topicType { T_DEV = 1, T_BCST = 2, T_OUT = 3 }
Functions
void PrintBytes (uint8_t *addr, uint8_t count, bool newline)
void SetBytes (uint8_t *addr, uint8_t count, char *out)
void SetAddr (char *out, uint8_t *addr)
uint8_t HEX2DEC (char i)
int getInt (char **chan)
unsigned long freeRam ()
void parseBytes (const char *str, char separator, byte *bytes, int maxBytes, int base)
int log (const char *str,...)
void printFloatValueToStr (float value, char *valstr)
void ReadUniqueID (uint32_t *pdwUniqueID)
int inet_aton (const char *aIPAddrString, IPAddress &aResult)
char * inet_ntoa_r (IPAddress addr, char *buf, int buflen)
void printIPAddress (IPAddress ipAddress)
char * setTopic (char *buf, int8_t buflen, topicType tt, const char *suffix=NULL)
void printUlongValueToStr (char *valstr, unsigned long value)
void scan_i2c_bus ()
void softRebootFunc ()
bool isTimeOver (uint32_t timestamp, uint32_t currTime, uint32_t time, uint32_t modulo=0xFFFFFFFF)
bool executeCommand (aJsonObject *cmd, int8_t toggle=-1)
bool executeCommand (aJsonObject *cmd, int8_t toggle, itemCmd _itemCmd)
itemCmd mapInt (int32_t arg, aJsonObject *map)

Macro Definition Documentation
#define Q( x)  #x
#define QUOTE( x)  Q(x)
#define VALUE( x)  VALUE_TO_STRING(x)
#define VALUE_TO_STRING( x)  #x
#define VAR_NAME_VALUE( var)  #var "="  VALUE(var)

Enumeration Type Documentation
enum topicType

Enumerator:
T_DEV		
T_BCST		
T_OUT		

Function Documentation
bool executeCommand (aJsonObject *  cmd, int8_t  toggle, itemCmd  _itemCmd)
bool executeCommand (aJsonObject *  cmd, int8_t  toggle = -1)
unsigned long freeRam ()
int getInt (char **  chan)
uint8_t HEX2DEC (char  i)
int inet_aton (const char *  aIPAddrString, IPAddress &  aResult)
char* inet_ntoa_r (IPAddress  addr, char *  buf, int  buflen)
Same as ipaddr_ntoa, but reentrant since a user-supplied buffer is used.
Parameters
addr 	ip address in network order to convert 	
buf 	target buffer where the string is stored 	
buflen 	length of buf 	
Returns
either pointer to buf which now holds the ASCII representation of addr or NULL if buf was too small 
bool isTimeOver (uint32_t  timestamp, uint32_t  currTime, uint32_t  time, uint32_t  modulo = 0xFFFFFFFF)
int log (const char *  str,   ...)
itemCmd mapInt (int32_t  arg, aJsonObject *  map)
void parseBytes (const char *  str, char  separator, byte *  bytes, int  maxBytes, int  base)
void PrintBytes (uint8_t *  addr, uint8_t  count, bool  newline)
void printFloatValueToStr (float  value, char *  valstr)
void printIPAddress (IPAddress  ipAddress)
void printUlongValueToStr (char *  valstr, unsigned long  value)
void ReadUniqueID (uint32_t *  pdwUniqueID)
void scan_i2c_bus ()
void SetAddr (char *  out, uint8_t *  addr)
void SetBytes (uint8_t *  addr, uint8_t  count, char *  out)
char* setTopic (char *  buf, int8_t  buflen, topicType  tt, const char *  suffix = NULL)
void softRebootFunc ()

Index
INDEX