ESPNode
common.h
Go to the documentation of this file.
1 /****************************************************************
2  * common.h enthält allgemeine Elemente und kann in jedes
3  * Modul eingebunden werden.
4  *
5  ****************************************************************/
6 #ifndef _COMMON_H_
7 #define _COMMON_H_
8 #include "config.h"
9 #include <Arduino.h>
10 #include <stdlib.h>
11 #include <string.h>
12 #include <stdint.h>
13 #include <ESPAsyncWebServer.h>
14 #include <LittleFS.h>
15 #include <PubSubClient.h>
16 #include <WiFiUdp.h>
17 #include <time.h>
18 #include <Uptime.h>
19 #include <ElegantOTA.h>
20 
21 #ifdef ESP32
22 #include <Preferences.h>
23 #include <WiFi.h>
24 #include "AsyncTCP.h"
25 #include <rom/rtc.h>
26 #include <WiFiMulti.h>
27 typedef unsigned char uint8_t;
28 #endif
29 
30 #ifdef ESP8266
31 #include <Preferences8266.h>
32 #include <ESP8266WiFi.h>
33 #include "ESPAsyncTCP.h"
34 #endif
35 
36 
37 
38 // externe Referenzen
39 
40 // Alle Module
41 extern void write2log(uint8_t kat, int count, ...);
42 extern bool do_log_module;
43 extern bool do_log_system;
44 extern bool do_log_critical;
45 extern bool do_log_web;
46 extern time_t now;
47 
48 extern void sendWsMessage(String& _myMsg);
49 extern void sendWsMessage(String& _myMsg, uint8_t kat);
50 
51 
52 // Modul: webserver
53 extern AsyncWebSocket ws;
54 extern uint64_t sd_cardsize;
55 extern uint64_t sd_usedbytes;
56 extern uint8_t sd_cardType;
57 extern int rssi;
58 extern int rssi_quality;
59 extern char *getResetReason(char *tmp);
60 extern Uptime uptime;
61 extern void getVcc(String& json);
62 
63 // Modul: mqtt
64 extern PubSubClient mqttClient;
65 extern String mqtt_server;
66 extern String mqtt_client;
67 extern String mqtt_topicP2;
68 extern String mqtt_topic;
69 extern bool do_mqtt;
70 extern bool do_log_mqtt;
71 extern String mqtt_json;
72 extern unsigned int mqtt_json_length_old;
73 void mqtt_loop(time_t now);
74 void mqtt_setup();
75 
76 // Modul: rf24gw
77 extern bool do_rf24gw;
78 extern bool do_log_rf24;
79 extern String rf24gw_hub_server;
80 extern uint16_t rf24gw_hub_port;
81 extern uint16_t rf24gw_gw_port;
82 extern uint8_t rf24gw_gw_no;
83 
84 void rf24gw_setup();
85 void rf24gw_loop();
86 
87 // Modul: main
88 //extern AsyncWebServer httpServer;
89 extern bool rebootflag;
90 extern String wifi_ssid;
91 extern String wifi_pass;
92 #ifdef ESP32
93 extern String wifi_ssid1;
94 extern String wifi_pass1;
95 extern String wifi_ssid2;
96 extern String wifi_pass2;
97 #endif
98 extern int cmd_no;
99 extern Preferences preferences;
100 extern unsigned long loop_time_alarm;
101 extern tm timeinfo;
102 extern String mqtt_topicP2;
103 
104 #if defined(MODULE1)
105 extern MODULE1_DEFINITION
106 #endif
107 
108 #if defined(MODULE2)
109 extern MODULE2_DEFINITION
110 #endif
111 
112 #if defined(MODULE3)
113 extern MODULE3_DEFINITION
114 #endif
115 
116 #if defined(MODULE4)
117 extern MODULE4_DEFINITION
118 #endif
119 
120 #if defined(MODULE5)
121 extern MODULE5_DEFINITION
122 #endif
123 
124 #if defined(MODULE6)
125 extern MODULE6_DEFINITION
126 #endif
127 
131 void prozess_cmd(const String cmd, const String value);
132 
133 const char* mk_topic(const char* part1, const char* part3);
134 
135 
136 #endif
int rssi_quality
TimeZone Info.
Definition: main.h:48
uint16_t rf24gw_gw_port
Definition: rf24gw.h:20
bool do_log_web
Definition: main.h:78
void getVcc(String &json)
Definition: main.cpp:46
bool rebootflag
Eine Variable zur Aufnahme der Preferences Struktur.
Definition: main.h:60
String mqtt_topic
In diesem String wird der Topic der aktuellen MQTT Message gespeichert.
Definition: mqtt.cpp:9
bool do_log_rf24
Definition: rf24gw.h:22
String mqtt_client
Definition: mqtt.cpp:22
tm timeinfo
Eine Variable zur Aufnahme der Zeitzoneninfo.
Definition: main.h:113
time_t now
Eine Variable für Zeitinformationen.
Definition: main.h:115
bool do_log_mqtt
Definition: mqtt.cpp:24
bool do_mqtt
Definition: mqtt.cpp:20
uint64_t sd_usedbytes
Uptime uptime
Ein Objekt zur Verwaltung der uptime.
Definition: main.h:111
bool do_rf24gw
Definition: rf24gw.h:17
char * getResetReason(char *tmp)
void rf24gw_loop()
Definition: rf24gw.cpp:47
Preferences preferences
Ein Objekt für die Preferences.
Definition: main.h:54
void write2log(uint8_t kat, int count,...)
Definition: main.cpp:60
void prozess_cmd(const String cmd, const String value)
Der Komandoprozessor. Hier werden alle Befehle in der Form "Kommando = Wert" abgearbeitet.
Definition: commands.cpp:19
void mqtt_loop(time_t now)
Definition: mqtt.cpp:348
String rf24gw_hub_server
Definition: rf24gw.h:18
PubSubClient mqttClient
bool do_log_system
Definition: main.h:76
String mqtt_server
Definition: mqtt.cpp:21
void rf24gw_setup()
Definition: rf24gw.cpp:21
String mqtt_topicP2
Definition: common.h:102
void mqtt_setup()
Definition: mqtt.cpp:336
const char * mk_topic(const char *part1, const char *part3)
Definition: mqtt.cpp:27
int rssi
Definition: main.h:49
void sendWsMessage(String &_myMsg)
Definition: webserver.cpp:15
String wifi_pass
Definition: main.h:64
bool do_log_module
Definition: main.h:75
uint16_t rf24gw_hub_port
Definition: rf24gw.h:19
uint8_t sd_cardType
String wifi_ssid
Definition: main.h:63
uint8_t rf24gw_gw_no
Definition: rf24gw.h:21
AsyncWebSocket ws
String mqtt_json
unsigned long loop_time_alarm
Definition: main.h:106
bool do_log_critical
Definition: main.h:77
unsigned int mqtt_json_length_old
int cmd_no
Definition: webserver.cpp:8
uint64_t sd_cardsize