diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..c86a0af --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,6 @@ +{ + "files.associations": { + "cstddef": "cpp", + "limits": "cpp" + } +} \ No newline at end of file diff --git a/include/Configuration.h b/include/Configuration.h new file mode 100644 index 0000000..10a2d17 --- /dev/null +++ b/include/Configuration.h @@ -0,0 +1,21 @@ +#ifndef ARDUINO_H + #define ARDUINO_H + #include +#endif + +struct Settings_t +{ + char* wifiSsid; + char* wifiPassword; + char* hostName; + char* tenantId; + char* userName; + char* password; + char* clientId; +}; + +class Configuration +{ +public: + Settings_t getSettings(); +}; diff --git a/lib/CumulocityClient b/lib/CumulocityClient new file mode 160000 index 0000000..2d3906b --- /dev/null +++ b/lib/CumulocityClient @@ -0,0 +1 @@ +Subproject commit 2d3906b7ae47c8a59b8a6e4da155d6c5d58a1f4e diff --git a/src/Configuration.cpp b/src/Configuration.cpp new file mode 100644 index 0000000..09ccfde --- /dev/null +++ b/src/Configuration.cpp @@ -0,0 +1,19 @@ +#ifndef CONFIGURATION_H +#define CONFIGURATION_H +#include "Configuration.h" +#endif + +#include "Credentials.h" + +Settings_t Configuration::getSettings() +{ + Settings_t settings; + settings.wifiSsid = (char*)WIFI_SSID; + settings.wifiPassword = (char*)WIFI_PWD; + settings.hostName = (char*)C8Y_HOST; + settings.tenantId = (char*)C8Y_TENANT; + settings.userName = (char*)C8Y_USERNAME; + settings.password = (char*)C8Y_PASSWORD; + settings.clientId = (char*)C8Y_CLIENTID; + return settings; +} \ No newline at end of file diff --git a/src/main.cpp b/src/main.cpp index 951c3c9..f483c0d 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -6,25 +6,22 @@ #endif #include "Credentials.h" -const char *ssid = WIFI_SSID; -const char *wifiPassword = WIFI_PWD; -char *host = C8Y_HOST; -char *username = C8Y_USERNAME; -char *c8yPassword = C8Y_PASSWORD; -char *tenant = C8Y_TENANT; -char *clientId = C8Y_CLIENTID; -const char* root_ca = ROOT_CA; - -WiFiClientSecure wifiClient; -CumulocityClient c8yClient(wifiClient, clientId); +#ifndef CONFIGURATION_H +#define CONFIGURATION_H +#include "Configuration.h" +#endif + +WiFiClientSecure _wifiClient = WiFiClientSecure(); +CumulocityClient _client = CumulocityClient(_wifiClient, "00000000"); void setup() { - Serial.begin(115200); - wifiClient.setCACert(root_ca); - WiFi.begin(ssid, wifiPassword); + Configuration _config; + Settings_t settings = _config.getSettings(); + + WiFi.begin(settings.wifiSsid, settings.wifiPassword); Serial.print("Connecting to WiFi"); while (WiFi.status() != WL_CONNECTED) @@ -34,19 +31,19 @@ void setup() } Serial.println("connected to wifi"); - c8yClient.connect(host, 8883, tenant, username, c8yPassword); - - c8yClient.registerDevice(clientId, "c8y_esp32"); + _client.setDeviceId(settings.clientId); + _client.connect(settings.hostName, 8883, settings.tenantId, settings.userName, settings.password); + _client.registerDevice(settings.clientId, "c8y_esp32"); } void loop() { delay(1000); - c8yClient.loop(); - c8yClient.createMeasurement("Temperature", "T", "20.5", "*C"); - + _client.loop(); + _client.createMeasurement("Temperature", "T", "20.5", "*C"); + int8_t rssi = WiFi.RSSI(); char rssiStr[10]; sprintf(rssiStr, "%d", rssi); - c8yClient.createMeasurement("SignalStrength", "T", rssiStr, "*m"); + _client.createMeasurement("SignalStrength", "T", rssiStr, "*m"); } \ No newline at end of file