forked from fredlcore/BSB-LAN
-
Notifications
You must be signed in to change notification settings - Fork 0
/
BSB_lan_config.h.default
188 lines (155 loc) · 9.15 KB
/
BSB_lan_config.h.default
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
/************************************************************************************/
/************************************************************************************/
/* Settings - BEGIN */
/************************************************************************************/
/************************************************************************************/
// Upon first installation, rename this file from BSB_lan_config.h.default to BSB_lan_config.h and adjust settings accordingly
/*
* Initialize the Ethernet server library
* with the IP address and port you want to use
* (port 80 is default for HTTP):
*/
#define Port 80
#define IPAddr 192,168,178,88 // please note the commas instead of dots!!! Remove this line when you want DHCP
//#define GatewayIP 192,168,178,1 // Optional: this is usually your router's IP address. Please note the commas instead of dots!!!
//#define GatewayIP 192,168,178,1 // this is usually your router's IP address. It is assumed that gateway and DNS are the same. Please note the commas instead of dots!!!
//#define SubnetIP 255,255,255,0 // Please use commas insteaf of dots!!!
//#define WIFI // activate if you are using an ESP8266 AT-firmware based WiFi module
char ssid[] = "Your_WiFi_name_goes_here"; // your network SSID (name)
char pass[] = "Your_WiFi_password_goes_here"; // your network password
/* SECURITY OPTIONS
* There are several options to control and protect access to your heating system. However, keep
* in mind, that even activating all three options are no guarantee that a versatile intruder with
* access to your (W)LAN won't be able to gain access. In any case, no encryption of data streams
* is provided from the Arduino itself. Use VPN or a SSL proxy if that is a must for you and connect
* the Arduino wired to the VPN server or SSL proxy. On the other hand, someone with this amount
* of criminal activity will probably have it easier just to access your heating system face-to-face ;)
*/
/*
* if PASSKEY is defined, the URL has to contain the defined passkey as first element
* e.g.
* http://192.168.178.88/1234/ - to view the main website (don't forget the trailing slash!)
* http://192.168.178.88/1234/K - to list all categories
* http://192.168.178.88/1234/8700/8740/8741 - to list parameters 8700, 8740 and 8741 in one request
*/
//#define PASSKEY "1234"
/* activate IP-address-based access. Only the last segment of the client's IP address is matched, as it is assumed that
* requests are made from the same subnet only. So if your trusted client's IP is 192.168.178.20, you have to set
* TRUSTED_IP to 20.
*/
//#define TRUSTED_IP 20
//#define TRUSTED_IP2 30
/* activate HTTP-Auth authentification to provide username/password based access. No encryption!
* Default sets username to "atari" and password to "800xl". Visit a website like
* https://www.base64encode.org/
* to encode your own username/password combination in the format username:password
* and replace the YXRhcmk6ODAweGw= string below accordingly.
*/
//#define USER_PASS_B64 "YXRhcmk6ODAweGw="
/* select your heating system (default may work for other systems)
* Set fixed_device_family and fixed_device_variant to your device family and variant (parameters 6225 and 6226) here
* if autodetect does not work or heating system is not running when Arduino is powered on
* You may use other device family numbers to test commands from other heating systems at your own risk
*/
const int fixed_device_family = 0;
const int fixed_device_variant = 0;
/* display web interface in German language; remove definement for English */
#define LANG_DE
// Hide unknown parameters from web display (parameters will still be queried!)
//#define HIDE_UNKNOWN
/*
* Define the pin for one wire temperature sensors
*/
//#define ONE_WIRE_BUS 3
// Define the pins for DHT temperature/humidity sensors
//#define DHT_BUS 2,3
// Create 24h averages from these parameters
int avg_parameters[20] = {
8700, // Außentemperatur
8326 // Brenner-Modulation
};
/* activate logging on SD-card. Requires a FAT32-formatted Micro-SD card inserted into the Ethernet-Shield's card slot */
#define LOGGER
int log_parameters[20] = {
// 30000, // Logging von "rohen" Bus-Datentelegrammen (macht nur als alleiniger Parameter Sinn)
8700, // Außentemperatur
8743, // Vorlauftemperatur
8314, // Rücklauftemperatur
// 20000, // Spezialparameter: Brenner-Laufzeit Stufe 1(/B)
// 20001, // Spezialparameter: Brenner-Takte Stufe 1 (/B)
// 20002, // Spezialparameter: Brenner-Laufzeit Stufe 2(/B)
// 20003, // Spezialparameter: Brenner-Takte Stufe 2 (/B)
// 20004, // Spezialparameter: TWW-Laufzeit (/B)
// 20005, // Spezialparameter: TWW-Takte (/B)
// 20006, // Spezialparameter: 24h-Durchschnittswerte (/A)
// 20101, // Spezialparameter 20100-20199: DHT22-Sensoren 1-100 (/H)
// 20200 // Spezialparameter 20200-20299: DS18B20-Sensoren 1-100 (/T)
};
unsigned long log_interval = 3600; // logging interval in seconds
boolean log_unknown_only = 1; // should we log only unknown commands when logging bus telegrams?
boolean log_bc_only = 0; // should we log only broadcast commands (dest = 0x7f) when logging bus telegrams?
// Activate sending log_parameters to MQTT broker every log_interval seconds
//#define MQTTBrokerIP 192,168,1,20 // Please use commas insteaf of dots!!!
//#define MQTTUsername "User" // Set username for MQTT broker here or comment out if no username/password is used.
//#define MQTTPassword "Pass" // Set password for MQTT broker here or comment out if no password is used.
//#define MQTTTopicPrefix "BSB-LAN" // Choose the "topic" for MQTT messages here
// Activate IPWE extension (http://xxx.xxx.xxx.xxx/ipwe.cgi)
#define IPWE
// Parameters to be displayed in IPWE extension
const int ipwe_parameters[] = {
8700, // Außentemperatur
8743, // Vorlauftemperatur
8314, // Rücklauftemperatur
8750, // Gebläsedrehzahl
8830, // Warmwassertemperatur
8740, // Raumtemperatur Ist
8741, // Raumtemperatur Soll
8326, // Brenner-Modulation
8337, // Startzähler Brenner
8703, // Aussentemperatur gedämpft
8704 // Aussentemperatur gemischt
};
//#define MAX_CUL 192,168,178,5 // IP of CUNO/CUNX/modified MAX!Cube
const char max_device_list[] PROGMEM = { // list of MAX! wall/heating thermostats that should be polled
"KEQ0502326" // use MAX! serial numbers here which have to have exactly 10 characters
"KEQ0505080"
};
// defines the number of retries for the query command
#define QUERY_RETRIES 3
/* enable /N URL command to reset Arduino - might not work on older boards */
//#define RESET
/*
* Enter a MAC address, found either on the EthernetShield or use the one below.
*/
byte mac[] = { 0x00, 0x80, 0x41, 0x19, 0x69, 0x90 };
// Setting bus pins and bus type
// Bus bus (RX pin, TX pin, parameter 3, parameter 4)
// Software Serial needs special pins for RX: 10-13, 50-53, 62(A8)-69(A15)
// W5100 ethernet shield uses the following pins: 10, 50-53
// BSB:
// - third parameter sets own address, defaults to RGT1 (0x06)
// - use BSB bus(68,69,7) to define device as RGT2
// LPB:
// - third and fourth parameter set own and destination address (high nibble = segment, low nibble = device minus 1)
// - defaults to 0x06 for own address and 0x00 for destination address, i.e. segment 0, device 7 for Arduino and segment 0, device 1 for heating system
// PPS:
// - third parameter set to "1" enables writing to heater - only use this if there is no other room controller (such as QAA50/QAA70) active. Fourth parameter does not have any effect.
BSB bus(68,69);
uint8_t bus_type = bus.setBusType(0); // set bus system at boot: 0 = BSB, 1 = LPB, 2 = PPS
//#define QAA_TYPE 0x53 // 0x53 = QAA70, 0x52 = QAA50
// Protect these pins from accidental GPIO access
const byte exclude_GPIO[] = {10, 11, 12, 13, 50, 51, 52, 53, 62, 63, 64, 65, 66, 67, 68, 69};
// If set to 1, all messages on the bus are printed to the PC
// hardware serial interface
byte verbose = 1;
byte monitor = 0;
// defines default flag for parameters (use "#define DEFAULT_FLAG 0" to make (almost) all parameters writeable)
#define DEFAULT_FLAG FL_RONLY
// include commands from BSB_lan_custom.h to be executed at the end of each main loop
//#define CUSTOM_COMMANDS
//#define DEBUG
/************************************************************************************/
/************************************************************************************/
/* Settings - END */
/************************************************************************************/
/************************************************************************************/