Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: Cayenne-MQTT-mbed mbed X_NUCLEO_IDW01M1v2 NetworkSocketAPI
Revision 16:80ddc2c6c23a, committed 2020-03-02
- Comitter:
- stiotchallenge
- Date:
- Mon Mar 02 13:24:14 2020 +0000
- Parent:
- 15:1d137afcf37c
- Commit message:
- BUTTON LED COMBO - ST IOT CHALLENGE 2020
Changed in this revision
| main.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/main.cpp Fri Feb 28 02:50:38 2020 +0000
+++ b/main.cpp Mon Mar 02 13:24:14 2020 +0000
@@ -15,7 +15,7 @@
// Cayenne authentication info. This should be obtained from the Cayenne Dashboard.
char* username = "4f3fbcb0-3796-11e9-ad96-c15442ccb423";
char* password = "9e099f3d9aaedd7b76ca94044c6bb488c3999e3c";
-char* clientID = "4288d2f0-a5a9-11e9-9636-f9904f7b864b";
+char* clientID = "ce34fd90-5c80-11ea-a38a-d57172a4b4d4";
SpwfSAInterface interface(D8, D2); // TX, RX
MQTTNetwork<SpwfSAInterface> network(interface);
@@ -50,7 +50,7 @@
MQTTTimer publishData(MQTTTimer timer, int data1, int data2){
// Publish some example data every few seconds. This should be changed to send your actual data to Cayenne.
-// if (timer.expired()) {
+ if (timer.expired()) {
int error = 0;
if ((error = mqttClient.publishData(DATA_TOPIC, 1, TYPE_VOLTAGE, UNIT_DIGITAL, data1)) != CAYENNE_SUCCESS) {
printf("Publish data failed, error: %d\n", error);
@@ -59,8 +59,8 @@
printf("Publish data failed, error: %d\n", error);
}
// Restart the countdown timer for publishing data every 5 seconds. Change the timeout parameter to publish at a different interval.
-// timer.countdown_ms(1500);
-// }
+ timer.countdown_ms(3000);
+ }
return timer;
}
@@ -173,8 +173,8 @@
}
// Send device info. Here we just send some example values for the system info. These should be changed to use actual system data, or removed if not needed.
-// mqttClient.publishData(SYS_VERSION_TOPIC, CAYENNE_NO_CHANNEL, NULL, NULL, CAYENNE_VERSION);
-// mqttClient.publishData(SYS_MODEL_TOPIC, CAYENNE_NO_CHANNEL, NULL, NULL, "mbedDevice");
+ mqttClient.publishData(SYS_VERSION_TOPIC, CAYENNE_NO_CHANNEL, NULL, NULL, CAYENNE_VERSION);
+ mqttClient.publishData(SYS_MODEL_TOPIC, CAYENNE_NO_CHANNEL, NULL, NULL, "mbedDevice");
//mqttClient.publishData(SYS_CPU_MODEL_TOPIC, CAYENNE_NO_CHANNEL, NULL, NULL, "CPU Model");
//mqttClient.publishData(SYS_CPU_SPEED_TOPIC, CAYENNE_NO_CHANNEL, NULL, NULL, "1000000000");
@@ -187,12 +187,12 @@
void loop(void)
{
// Start the countdown timer for publishing data every 5 seconds. Change the timeout parameter to publish at a different interval.
- MQTTTimer timer(200);
+ MQTTTimer timer(3000);
while (true) {
// Yield to allow MQTT message processing.
- mqttClient.yield(200);
+ mqttClient.yield(1000);
// Check that we are still connected, if not, reconnect.
if (!network.connected() || !mqttClient.connected()) {