LightHub
options.h
Go to the documentation of this file.
1 // Configuration of drivers enabled
2 #define SYSLOG_LOCAL_SOCKET 514
3 
4 #ifndef FASTLED
5 #define ADAFRUIT_LED
6 #endif
7 // ADAFRUIT library allow to dynamically configure SPI LED Strip Parameters
8 
9 // If not defined ADAFRUIT_LED - FastLED library will be used instead
10 // And strip type, pin, order must defined on compilation time
11 #ifndef CONTROLLER
12 #define CONTROLLER TM1809
13 #endif
14 
15 #ifndef DATA_PIN
16 #define DATA_PIN 4
17 #endif
18 
19 #ifndef ORDER
20 #define ORDER BRG
21 #endif
22 
23 #ifndef MODBUS_TX_PIN
24 #define TXEnablePin 13
25 #else
26 #define TXEnablePin MODBUS_TX_PIN
27 #endif
28 
29 #define ESP_EEPROM_SIZE 2048
30 
31 #ifndef AVR_DMXOUT_PIN
32 #define AVR_DMXOUT_PIN 18
33 #endif
34 
35 #define T_ATTEMPTS 200
36 #define IET_TEMP 0
37 #define IET_ATTEMPTS 1
38 
39 #define THERMO_GIST_CELSIUS 1.
40 #define THERMO_OVERHEAT_CELSIUS 38.
41 #define FM_OVERHEAT_CELSIUS 40.
42 
43 #define MIN_VOLUME 25
44 #define INIT_VOLUME 40
45 
46 #define MAXFLASHSTR 32
47 #define PWDFLASHSTR 16
48 #define EEPROM_SIGNATURE "LHCF"
49 #define EEPROM_SIGNATURE_LENGTH 4
50 
51 #define OFFSET_MAC 0
52 #define OFFSET_IP OFFSET_MAC+6
53 #define OFFSET_DNS OFFSET_IP+4
54 #define OFFSET_GW OFFSET_DNS+4
55 #define OFFSET_MASK OFFSET_GW+4
56 #define OFFSET_CONFIGSERVER OFFSET_MASK+4
57 #define OFFSET_MQTT_PWD OFFSET_CONFIGSERVER+MAXFLASHSTR
58 #define OFFSET_SIGNATURE OFFSET_MQTT_PWD+PWDFLASHSTR
59 #define EEPROM_offset_NotAlligned OFFSET_SIGNATURE+EEPROM_SIGNATURE_LENGTH
60 #define EEPROM_offsetJSON EEPROM_offset_NotAlligned + (4 -(EEPROM_offset_NotAlligned & 3))
61 #define EEPROM_FIX_PART_LEN EEPROM_offsetJSON-OFFSET_MAC
62 
63 
64 #ifndef INTERVAL_CHECK_INPUT
65 #define INTERVAL_CHECK_INPUT 15
66 #endif
67 
68 #ifndef INTERVAL_CHECK_SENSOR
69 #define INTERVAL_CHECK_SENSOR 5000
70 #endif
71 
72 #define INTERVAL_CHECK_MODBUS 2000
73 #define INTERVAL_POLLING 100
74 #define THERMOSTAT_CHECK_PERIOD 30000
75 
76 #ifndef OW_UPDATE_INTERVAL
77 #define OW_UPDATE_INTERVAL 5000
78 #endif
79 
80 #ifndef MODBUS_SERIAL_BAUD
81 #define MODBUS_SERIAL_BAUD 9600
82 #endif
83 
84 #ifndef MODBUS_DIMMER_PARAM
85 #define MODBUS_DIMMER_PARAM SERIAL_8N1
86 #endif
87 
88 #define dimPar MODBUS_DIMMER_PARAM
89 #define fmPar SERIAL_8N1
90 
91 #ifndef SERIAL_BAUD
92 #define SERIAL_BAUD 115200
93 #endif
94 
95 #ifndef CUSTOM_FIRMWARE_MAC
96 #define DEFAULT_FIRMWARE_MAC {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xFF}
97 #endif
98 
99 #ifndef MY_CONFIG_SERVER
100 #define CONFIG_SERVER "lazyhome.ru"
101 #else
102 #define CONFIG_SERVER QUOTE(MY_CONFIG_SERVER)
103 #endif
104 
105 #ifndef HOMETOPIC
106 #define HOMETOPIC "myhome"
107 #endif
108 
109 //Default output topic
110 #ifndef OUTTOPIC
111 #define OUTTOPIC "s_out"
112 #endif
113 
114 //Topic to receive CLI commands
115 #ifndef CMDTOPIC
116 #define CMDTOPIC "$command"
117 #endif
118 
119 //Default broadcast topic
120 #ifndef INTOPIC
121 #define INTOPIC "in"
122 #endif
123 
124 #define MQTT_SUBJECT_LENGTH 20
125 #define MQTT_TOPIC_LENGTH 64
126 
127 #ifndef DMX_DISABLE
128 #define _dmxin
129 #define _dmxout
130 #endif
131 
132 #ifndef OWIRE_DISABLE
133 #define _owire
134 #endif
135 
136 #if !(defined (MODBUS_DISABLE) && defined (MBUS_DISABLE))
137 #define _modbus
138 #endif
139 
140 #ifdef ARTNET_ENABLE
141 #define _artnet
142 #endif
143 
144 #ifndef LAN_INIT_DELAY
145 #define LAN_INIT_DELAY 500
146 #endif
147 
148 #define DEFAULT_INC_STEP 5
149 
150 #if defined(ARDUINO_ARCH_AVR)
151 //All options available
152 #ifdef CONTROLLINO
153 #define modbusSerial Serial3
154 #define AC_Serial Serial2
155 #else
156 #define modbusSerial Serial2
157 #define AC_Serial Serial3
158 #endif
159 #define dmxin DMXSerial
160 #define dmxout DmxSimple
161 #endif
162 
163 #if defined(__SAM3X8E__)
164 #define modbusSerial Serial2
165 #define AC_Serial Serial3
166 #define dmxout DmxDue1
167 #define dmxin DmxDue1
168 #endif
169 
170 #if defined(NRF5)
171 //#define modbusSerial Serial1
172 #undef _dmxin
173 #undef _dmxout
174 #undef _modbus
175 #endif
176 
177 #if defined(ARDUINO_ARCH_ESP8266)
178 #undef _dmxin
179 //#undef _modbus
180 
181 #ifndef DMX_DISABLE
182 #define _espdmx
183 #endif
184 
185 #define modbusSerial Serial1
186 #define AC_Serial Serial1
187 #endif
188 
189 #if defined(ARDUINO_ARCH_ESP32)
190 #undef _dmxin
191 //#undef _modbus
192 
193 #ifndef DMX_DISABLE
194 #define _espdmx
195 #endif
196 //#undef _dmxout
197 //#undef modbusSerial
198 #define modbusSerial Serial2
199 #define AC_Serial Serial2
200 #endif
201 
202 #ifndef _dmxout
203 #undef _artnet
204 #endif
205 
206 #ifdef WIFI_MANAGER_DISABLE
207 #ifndef ESP_WIFI_AP
208 #define ESP_WIFI_AP mywifiap
209 #endif
210 
211 #ifndef ESP_WIFI_PWD
212 #define ESP_WIFI_PWD mywifipass
213 #endif
214 #endif
215 
216 #define DHT_POLL_DELAY_DEFAULT 15000
217 #define UPTIME_POLL_DELAY_DEFAULT 30000
218 
219 #ifdef ARDUINO_ARCH_STM32F1
220 #define strncpy_P strncpy
221 #endif
222 
223 #ifndef DMX_SMOOTH_DELAY
224 #define DMX_SMOOTH_DELAY 10
225 #endif
226 
227 //#ifdef M5STACK
228 //#define debugSerial M5.Lcd
229 //#endif
230 
231 #ifndef debugSerialPort
232 #define debugSerialPort Serial
233 #endif
234 
235 
236 #ifndef Wiz5500
237 #define W5100_ETHERNET_SHIELD
238 #else
239 #define W5500_ETHERNET_SHIELD
240 #endif
241 
242 
243 #if defined(ARDUINO_ARCH_AVR)
244 #define PINS_COUNT NUM_DIGITAL_PINS
245 #define isAnalogPin(p) ((p >= 54) && (p<=69))
246 #endif
247 
248 #if defined(__SAM3X8E__)
249 #define isAnalogPin(p) (g_APinDescription[p].ulPinAttribute & PIN_ATTR_ANALOG) == PIN_ATTR_ANALOG
250 #endif
251 
252 #if defined(ARDUINO_ARCH_STM32)
253 #define PINS_COUNT NUM_DIGITAL_PINS
254 #define isAnalogPin(p) ((p >= 44) && (p<=57))
255 #endif
256 
257 #if defined(ESP8266)
258 #define PINS_COUNT NUM_DIGITAL_PINS
259 #define isAnalogPin(p) ( p ==17 )
260 #endif
261 
262 #if defined(ARDUINO_ARCH_ESP32)
263 #define PINS_COUNT NUM_DIGITAL_PINS
264 #define isAnalogPin(p) ((p ==4) || (p>=12)&& (p<=15) || (p>=25)&& (p<=27)||(p>=32)&& (p<=33) || (p>=37)&& (p<=38))
265 #endif
266 
267 #if defined(NRF5)
268 #define PINS_COUNT NUM_DIGITAL_PINS
269 #define isAnalogPin(p) ((p >= 14) && (p<=21))
270 #endif