Files
IoTManager/include/Global.h

271 lines
6.1 KiB
C
Raw Normal View History

2020-06-18 23:43:06 +02:00
#pragma once
/*
* Libraries
*/
2020-06-18 23:43:06 +02:00
#include <Arduino.h>
2020-06-19 01:50:19 +03:00
#include <ArduinoJson.h>
2020-06-20 14:27:58 +03:00
2020-06-21 03:43:15 +03:00
#include "ESP32.h"
#include "ESP8266.h"
//
2020-06-20 14:27:58 +03:00
#include "Consts.h"
2020-06-22 03:11:02 +03:00
#include "CommonTypes.h"
2020-06-25 17:57:17 +03:00
#include "Bus/BusScanner.h"
2020-06-20 17:12:59 +03:00
#include "Errors.h"
2020-06-20 14:27:58 +03:00
#include "GyverFilters.h"
#include "UptimeInterval.h"
2020-06-25 17:57:17 +03:00
#include "Upgrade.h"
2020-06-22 03:11:02 +03:00
#include "Clock.h"
2020-06-24 01:16:00 +03:00
#include "MqttClient.h"
2020-06-20 17:12:59 +03:00
#include "Utils\FileUtils.h"
2020-06-20 14:27:58 +03:00
#include "Utils\JsonUtils.h"
#include "Utils\StringUtils.h"
2020-06-21 15:20:40 +03:00
#include "Utils\SysUtils.h"
2020-06-22 03:11:02 +03:00
#include "Utils\PrintMessage.h"
#include "Utils\WiFiUtils.h"
2020-06-20 14:27:58 +03:00
//=========ПОДКЛЮЧЕНИЕ ОБЩИХ БИБЛИОТЕК===============
2020-06-22 17:40:29 +03:00
#include <SoftwareSerial.h>
2020-06-19 23:34:30 +03:00
#include <Adafruit_BME280.h>
#include <Adafruit_BMP280.h>
2020-06-20 14:27:58 +03:00
#include <Bounce2.h>
2020-06-19 23:34:30 +03:00
#include <DHTesp.h>
#include <DallasTemperature.h>
#include <OneWire.h>
2020-06-19 01:50:19 +03:00
#include <PubSubClient.h>
#include <StringCommand.h>
#include <TickerScheduler.h>
2020-06-19 23:34:30 +03:00
#include <Wire.h>
2020-06-19 01:50:19 +03:00
#include <time.h>
#include <ArduinoOTA.h>
2020-06-21 03:43:15 +03:00
#ifdef WEBSOCKET_ENABLED
extern AsyncWebSocket ws;
//extern AsyncEventSource events;
2020-06-20 22:51:14 +03:00
#endif
2020-06-25 09:21:42 +03:00
extern Clock* rtc;
extern TickerScheduler ts;
2020-06-20 21:28:56 +02:00
extern WiFiClient espClient;
2020-06-22 14:01:12 +03:00
extern PubSubClient mqtt;
extern StringCommand sCmd;
extern AsyncWebServer server;
extern DallasTemperature sensors;
extern boolean but[NUM_BUTTONS];
2020-06-24 01:16:00 +03:00
2020-06-22 17:40:29 +03:00
extern Bounce* buttons;
/*
* Global vars
*/
2020-06-19 01:50:19 +03:00
extern boolean just_load;
2020-06-19 23:34:30 +03:00
extern String configSetupJson; //все настройки
extern String configLiveJson; //все данные с датчиков (связан с mqtt)
extern String configOptionJson; //для трансфера
2020-06-19 01:50:19 +03:00
2020-06-20 22:51:14 +03:00
extern String chipId;
2020-06-19 01:50:19 +03:00
extern String prex;
extern String all_widgets;
extern String scenario;
extern String order_loop;
extern String analog_value_names_list;
extern int enter_to_analog_counter;
2020-06-19 14:50:34 +02:00
extern String levelPr_value_name;
extern String ultrasonicCm_value_name;
2020-06-19 01:50:19 +03:00
extern String dhtT_value_name;
extern String dhtH_value_name;
extern String bmp280T_value_name;
extern String bmp280P_value_name;
extern String bme280T_value_name;
extern String bme280P_value_name;
extern String bme280H_value_name;
extern String bme280A_value_name;
extern String logging_value_names_list;
extern int enter_to_logging_counter;
extern int scenario_line_status[40];
2020-06-25 17:57:17 +03:00
extern String lastVersion;
2020-06-19 01:50:19 +03:00
extern boolean upgrade_url;
extern boolean upgrade;
2020-06-22 14:01:12 +03:00
extern boolean mqttParamsChanged;
2020-06-19 01:50:19 +03:00
extern boolean udp_data_parse;
extern boolean mqtt_send_settings_to_udp;
2020-06-25 17:57:17 +03:00
/*
* Запрос на скарнирование шины
*/
extern boolean busScanFlag;
/*
* Запрос на сканирование шины, указание какую
*/
extern BusScanner_t busToScan;
extern boolean fsCheckFlag;
2020-06-19 01:50:19 +03:00
extern int sensors_reading_map[15];
2020-06-20 14:27:58 +03:00
/*
* Global functions
*/
2020-06-19 07:48:31 +03:00
2020-06-18 23:43:06 +02:00
// Cmd
extern void CMD_init();
extern void button();
extern void buttonSet();
extern void buttonChange();
extern void pinSet();
extern void pinChange();
extern void handle_time_init();
extern void pwm();
extern void switch_();
extern void pwmSet();
extern void stepper();
extern void stepperSet();
extern void servo_();
extern void servoSet();
extern void serialBegin();
extern void serialWrite();
extern void logging();
extern void inputDigit();
extern void digitSet();
extern void inputTime();
extern void button();
extern void timeSet();
extern void text();
extern void textSet();
extern void mqttOrderSend();
extern void httpOrderSend();
2020-06-19 14:50:34 +02:00
extern void firmwareVersion();
extern void firmwareUpdate();
2020-06-25 05:09:11 +03:00
extern void loadScenario();
2020-06-18 23:43:06 +02:00
2020-06-25 05:09:11 +03:00
extern void fileExecute(const String& filename);
extern void stringExecute(String& cmdStr);
2020-06-18 23:43:06 +02:00
// Init
2020-06-21 15:20:40 +03:00
extern void loadConfig();
2020-06-18 23:43:06 +02:00
extern void All_init();
extern void statistics_init();
2020-06-25 05:09:11 +03:00
extern void loadScenario();
2020-06-18 23:43:06 +02:00
extern void Device_init();
extern void prsets_init();
extern void up_time();
// Logging
extern void logging();
2020-06-21 15:20:40 +03:00
extern void deleteOldDate(String filename, size_t max_lines, String date_to_add);
2020-06-18 23:43:06 +02:00
extern void clean_log_date();
extern void choose_log_date_and_send();
// Main
2020-06-20 22:51:14 +03:00
extern void setChipId();
2020-06-18 23:43:06 +02:00
extern void saveConfig();
2020-06-22 14:01:12 +03:00
extern String getURL(const String& urls);
2020-06-18 23:43:06 +02:00
extern void servo_();
2020-06-20 17:12:59 +03:00
2020-06-22 03:11:02 +03:00
extern void setLedStatus(LedStatus_t);
2020-06-18 23:43:06 +02:00
//Scenario
extern void eventGen(String event_name, String number);
extern String add_set(String param_name);
//Sensors
extern void sensors_init();
2020-06-19 14:50:34 +02:00
extern void levelPr();
extern void ultrasonicCm();
2020-06-19 15:22:22 +02:00
extern void ultrasonic_reading();
2020-06-19 02:31:56 +02:00
extern void analog();
extern void analog_reading1();
extern void analog_reading2();
extern void dallas_reading();
extern void dhtT_reading();
extern void dallas();
extern void bmp280T();
extern void bmp280P();
extern void bmp280T_reading();
extern void bmp280P_reading();
extern void bme280T();
extern void bme280P();
extern void bme280H();
extern void bme280A();
extern void bme280T_reading();
extern void bme280P_reading();
extern void bme280H_reading();
extern void bme280A_reading();
extern void dhtT();
extern void dhtH();
extern void dhtP();
extern void dhtC();
extern void dhtD();
extern void dhtH_reading();
extern void dhtP_reading();
extern void dhtC_reading();
extern void dhtD_reading();
2020-06-18 23:43:06 +02:00
//Timers
extern void Timer_countdown_init();
extern void timerStart_();
extern void addTimer(String number, String time);
extern void timerStop_();
extern void delTimer(String number);
extern int readTimer(int number);
2020-06-25 17:57:17 +03:00
extern void initUpdater();
2020-06-18 23:43:06 +02:00
2020-06-20 14:27:58 +03:00
// widget
2020-06-25 09:21:42 +03:00
extern void createWidgetByType(String widget_name, String page_name, String page_number, String file, String topic);
2020-06-18 23:43:06 +02:00
extern void createWidgetParam(String widget_name, String page_name, String page_number, String file, String topic, String name1, String param1, String name2, String param2, String name3, String param3);
2020-06-25 09:21:42 +03:00
extern void createWidget(String widget_name, String page_name, String page_number, String type, String topik);
2020-06-18 23:43:06 +02:00
extern void createChart(String widget_name, String page_name, String page_number, String file, String topic, String maxCount);
2020-06-20 14:27:58 +03:00
// PushingBox
extern void pushControl();
2020-06-18 23:43:06 +02:00
// UDP
extern void UDP_init();
extern void do_udp_data_parse();
extern void do_mqtt_send_settings_to_udp();
2020-06-20 14:27:58 +03:00
// iot_firmware
2020-06-25 00:15:10 +03:00
extern void addCommandLoop(const String& cmdStr);
2020-06-24 02:11:08 +03:00
extern void loopSerial();
2020-06-22 17:40:29 +03:00
extern void loopCmd();
extern void loopButton();
extern void loopScenario();
extern void loopUdp();
2020-06-25 17:57:17 +03:00
extern void flashUpgrade();
2020-06-19 22:14:50 +02:00
2020-06-20 14:27:58 +03:00
// Init
2020-06-19 22:14:50 +02:00
extern void uptime_init();
2020-06-20 14:27:58 +03:00
// Web
2020-06-22 03:11:02 +03:00
extern void web_init();
extern void telemetry_init();