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: FXAS21002 FXOS8700 MbedJSONValue mbed mtsas
Fork of VVV_MultiTech_Dragonfly_ATT_Dallas by
Revision 4:730b61258422, committed 2015-09-25
- Comitter:
- mfiore
- Date:
- Fri Sep 25 21:16:02 2015 +0000
- Parent:
- 3:f6bceb9e5e1a
- Child:
- 5:a946ef74a8c4
- Commit message:
- start cloud post
Changed in this revision
| main.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/main.cpp Thu Sep 24 19:35:46 2015 +0000
+++ b/main.cpp Fri Sep 25 21:16:02 2015 +0000
@@ -19,9 +19,8 @@
* - prints all sensor data to debug port on a periodic basis
* - optionally send a SMS containing sensor data when the Grove Button
* is pushed (phone number must be configured)
- * - optionally send sensor data to AT&T M2X cloud platform (user must
- * create own M2X account and configure a device) if sensor data
- * crosses established thresholds
+ * - optionally sends sensor data to AT&T M2X cloud platform (user must
+ * create own M2X account and configure a device)
*
* Setup:
* - Correctly insert SIM card into Dragonfly
@@ -58,11 +57,18 @@
Cellular* radio;
// APN associated with SIM card
-static const std::string apn = "";
+// this APN should work for the AT&T SIM that came with your Dragonfly
+//static const std::string apn = "";
+static const std::string apn = "broadband";
// Phone number to send SMS messages to
static const std::string phone_number = "1xxxxxxxxxx";
+// M2X variables
+static const std::string m2x_device_id = "";
+static const std::string m2x_key = "";
+bool do_cloud_post = false;
+
// handle to MEMs board object
static X_NUCLEO_IKS01A1* mems = X_NUCLEO_IKS01A1::Instance();
@@ -83,6 +89,10 @@
int32_t acc_mg[3];
int32_t gyro_mdps[3];
+// http variables
+HTTPClient* http;
+HTTPJson* http_json;
+
// misc variables
static char wall_of_dash[] = "--------------------------------------------------";
bool radio_ok = false;
@@ -119,10 +129,12 @@
Timer thpm_timer;
Timer motion_timer;
Timer print_timer;
+ Timer post_timer;
thpm_timer.start();
motion_timer.start();
print_timer.start();
+ post_timer.start();
while (true) {
if (motion_timer.read_ms() > motion_interval_ms) {
@@ -186,6 +198,17 @@
}
}
+ if (post_timer.read_ms() > post_interval_ms && do_cloud_post) {
+ if (radio->connect()) {
+ logDebug("posting sensor data");
+ radio->disconnect();
+ } else {
+ logError("establishing PPP link failed");
+ }
+
+ post_timer.reset();
+ }
+
wait_ms(10);
}
}
