Rock Monitoring  V 1.0
Gateway.h
Go to the documentation of this file.
1 #ifndef GATEWAY_H
2 #define GATEWAY_H
3 #include "Connection3G.h"
4 #include "lora_class.h"
5 #include "Sensors.h"
6 #include "../Leds/Leds.h"
7 #include "../Constants/Constants.h"
8 
9 class Gateway
10 {
11  public:
12  Gateway();
13  uint8_t init(void);
14  void showStructContent(uint8_t node);
15  uint8_t sendToServer(Sensors::structSensors *dataToSend);
16  uint8_t sendSleep(uint8_t ID);
17  uint8_t requestData(uint8_t ID);
18  uint8_t receiveNodeData(void);
19  void deepSleep(void);
20  int8_t wakeUp(void);
21  uint8_t measureBattery(void);
22  void run(void);
23  private:
24  //Attributs
25  Sensors::structSensors mySensorStruct; //struct used to save the data which was measured
26  Sensors::structSensors mySensorStructArray[numberOfNodes]; //struct-array used to save the data which was send
27  uint32_t sleepTime=60; //how long the Sensornode will sleep until the next sending procedure
28  char timeString[12]; //Safes the result of the method convertTime
29  uint8_t sensorID[numberOfNodes]={3,4,5}; //used ID's for communication
30 
31  uint8_t notReceived=0;
32  uint8_t notReceivedCnt=0;
33  uint8_t notSleepCnt=0;
34  uint8_t nothingReceived=0;
35  uint8_t currentNode=0; //safes which node data has been requested from
36 
37  //objects
41 
42 };
43 
44 #endif // GATEWAY_H
uint8_t measureBattery(void)
Definition: Gateway.cpp:27
Sensors::structSensors mySensorStructArray[numberOfNodes]
Definition: Gateway.h:26
uint8_t sendToServer(Sensors::structSensors *dataToSend)
Definition: Gateway.cpp:84
uint8_t notReceived
Definition: Gateway.h:31
uint8_t notSleepCnt
Definition: Gateway.h:33
uint8_t init(void)
Definition: Gateway.cpp:11
Class that handles the Leds.
Definition: Leds.h:12
char timeString[12]
Definition: Gateway.h:28
uint8_t sensorID[numberOfNodes]
Definition: Gateway.h:29
int8_t wakeUp(void)
Definition: Gateway.cpp:108
uint8_t currentNode
Definition: Gateway.h:35
Class that is used to initialize and communicate between Gateway and Sensornode via LoRa...
Definition: lora_class.h:12
uint8_t receiveNodeData(void)
Definition: Gateway.cpp:77
void showStructContent(uint8_t node)
Definition: Gateway.cpp:40
Lora myLora
Definition: Gateway.h:38
Gateway()
Definition: Gateway.cpp:6
Class that handles the communication over 3G.
Definition: Connection3G.h:15
void run(void)
Definition: Gateway.cpp:116
Definition: Gateway.h:9
uint32_t sleepTime
Definition: Gateway.h:27
Connection3G my3G
Definition: Gateway.h:39
uint8_t sendSleep(uint8_t ID)
Definition: Gateway.cpp:91
Leds myLeds
Definition: Gateway.h:40
Sensors::structSensors mySensorStruct
Definition: Gateway.h:25
uint8_t notReceivedCnt
Definition: Gateway.h:32
#define numberOfNodes
Definition: Constants.h:10
void deepSleep(void)
Definition: Gateway.cpp:98
uint8_t nothingReceived
Definition: Gateway.h:34
uint8_t requestData(uint8_t ID)
Definition: Gateway.cpp:70