EnigmaIOT  0.9.3
Secure sensor and gateway platform based on ESP8266 and ESP32
Macros | Functions | Variables
EnigmaIOTGatewayMQTT.ino File Reference

MQTT Gateway based on EnigmaIoT over ESP-NOW. More...

#include <Arduino.h>
#include <PubSubClient.h>
#include <WiFiClient.h>
#include <GwOutput_generic.h>
#include "GwOutput_mqtt.h"
#include <ArduinoOTA.h>
#include <CayenneLPP.h>
#include <FS.h>
#include <EnigmaIOTGateway.h>
#include <helperFunctions.h>
#include <debug.h>
#include <espnow_hal.h>
#include <Curve25519.h>
#include <ChaChaPoly.h>
#include <Poly1305.h>
#include <SHA256.h>
#include <ArduinoJson.h>
#include <DNSServer.h>
#include <ESPAsyncWebServer.h>
#include <ESPAsyncWiFiManager.h>

Go to the source code of this file.

Macros

#define MQTT_MAX_PACKET_SIZE   2048
 
#define LED_BUILTIN   5
 
#define BLUE_LED   LED_BUILTIN
 
#define RED_LED   LED_BUILTIN
 

Functions

void flashConnectionLed (void *led)
 
void startConnectionFlash (int period)
 
void stopConnectionFlash ()
 
void arduinoOTAConfigure ()
 
void wifiManagerExit (boolean status)
 
void wifiManagerStarted ()
 
void processRxControlData (char *macStr, uint8_t *data, uint8_t length)
 
void processRxData (uint8_t *mac, uint8_t *buffer, uint8_t length, uint16_t lostMessages, bool control, gatewayPayloadEncoding_t payload_type, char *nodeName=NULL)
 
void onDownlinkData (uint8_t *address, char *nodeName, control_message_type_t msgType, char *data, unsigned int len)
 
void newNodeConnected (uint8_t *mac, uint16_t node_id, char *nodeName=NULL)
 
void nodeDisconnected (uint8_t *mac, gwInvalidateReason_t reason)
 
void setup ()
 
void loop ()
 

Variables

const int connectionLed = LED_BUILTIN
 
boolean connectionLedFlashing = false
 

Detailed Description

MQTT Gateway based on EnigmaIoT over ESP-NOW.

Version
0.9.3
Date
14/07/2020
Author
German Martin EnigmaIOT Gateway to connect nodes to MQTT broker

Definition in file EnigmaIOTGatewayMQTT.ino.

Macro Definition Documentation

◆ BLUE_LED

#define BLUE_LED   LED_BUILTIN

Definition at line 81 of file EnigmaIOTGatewayMQTT.ino.

◆ LED_BUILTIN

#define LED_BUILTIN   5

Definition at line 78 of file EnigmaIOTGatewayMQTT.ino.

◆ MQTT_MAX_PACKET_SIZE

#define MQTT_MAX_PACKET_SIZE   2048

Definition at line 15 of file EnigmaIOTGatewayMQTT.ino.

◆ RED_LED

#define RED_LED   LED_BUILTIN

Definition at line 82 of file EnigmaIOTGatewayMQTT.ino.

Function Documentation

◆ arduinoOTAConfigure()

void arduinoOTAConfigure ( )

Definition at line 129 of file EnigmaIOTGatewayMQTT.ino.

◆ flashConnectionLed()

void flashConnectionLed ( void *  led)

Definition at line 92 of file EnigmaIOTGatewayMQTT.ino.

◆ loop()

void loop ( )

Definition at line 460 of file EnigmaIOTGatewayMQTT.ino.

◆ newNodeConnected()

void newNodeConnected ( uint8_t *  mac,
uint16_t  node_id,
char *  nodeName = NULL 
)

Definition at line 312 of file EnigmaIOTGatewayMQTT.ino.

◆ nodeDisconnected()

void nodeDisconnected ( uint8_t *  mac,
gwInvalidateReason_t  reason 
)

Definition at line 334 of file EnigmaIOTGatewayMQTT.ino.

◆ onDownlinkData()

void onDownlinkData ( uint8_t *  address,
char *  nodeName,
control_message_type_t  msgType,
char *  data,
unsigned int  len 
)

Definition at line 263 of file EnigmaIOTGatewayMQTT.ino.

◆ processRxControlData()

void processRxControlData ( char *  macStr,
uint8_t *  data,
uint8_t  length 
)

Definition at line 191 of file EnigmaIOTGatewayMQTT.ino.

◆ processRxData()

void processRxData ( uint8_t *  mac,
uint8_t *  buffer,
uint8_t  length,
uint16_t  lostMessages,
bool  control,
gatewayPayloadEncoding_t  payload_type,
char *  nodeName = NULL 
)

Definition at line 197 of file EnigmaIOTGatewayMQTT.ino.

◆ setup()

void setup ( )

Definition at line 364 of file EnigmaIOTGatewayMQTT.ino.

◆ startConnectionFlash()

void startConnectionFlash ( int  period)

Definition at line 97 of file EnigmaIOTGatewayMQTT.ino.

◆ stopConnectionFlash()

void stopConnectionFlash ( )

Definition at line 113 of file EnigmaIOTGatewayMQTT.ino.

◆ wifiManagerExit()

void wifiManagerExit ( boolean  status)

Definition at line 183 of file EnigmaIOTGatewayMQTT.ino.

◆ wifiManagerStarted()

void wifiManagerStarted ( )

Definition at line 187 of file EnigmaIOTGatewayMQTT.ino.

Variable Documentation

◆ connectionLed

const int connectionLed = LED_BUILTIN

Definition at line 89 of file EnigmaIOTGatewayMQTT.ino.

◆ connectionLedFlashing

boolean connectionLedFlashing = false

Definition at line 90 of file EnigmaIOTGatewayMQTT.ino.