Remote monitoring IoTHub device sample Added real SHTx sensor to get temperature and humidity Added new command to set temperature scale change Removed "mock" commands to set temperature and humidity values It's configured to work on FRDM-K64F board

Dependencies:   EthernetInterface NTPClient SHTx iothub_amqp_transport iothub_client mbed-rtos mbed proton-c-mbed serializer wolfSSL

Fork of remote_monitoring by Azure IoT

Committer:
AzureIoTClient
Date:
Wed Sep 16 22:43:16 2015 -0700
Revision:
2:90e50410da9b
Parent:
0:422f22f60a44
Child:
5:0ac6b44084ed
New release

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AzureIoTClient 0:422f22f60a44 1 // Copyright (c) Microsoft. All rights reserved.
AzureIoTClient 0:422f22f60a44 2 // Licensed under the MIT license. See LICENSE file in the project root for full license information.
AzureIoTClient 0:422f22f60a44 3
AzureIoTClient 0:422f22f60a44 4 #include <stdio.h>
AzureIoTClient 0:422f22f60a44 5 #include "EthernetInterface.h"
AzureIoTClient 0:422f22f60a44 6 #include "mbed/logging.h"
AzureIoTClient 0:422f22f60a44 7 #include "mbed/mbedtime.h"
AzureIoTClient 0:422f22f60a44 8 #include "asset_monitoring.h"
AzureIoTClient 2:90e50410da9b 9 #include "NTPClient.h"
AzureIoTClient 2:90e50410da9b 10
AzureIoTClient 2:90e50410da9b 11 void setupRealTime(void)
AzureIoTClient 2:90e50410da9b 12 {
AzureIoTClient 2:90e50410da9b 13 (void)printf("setupRealTime begin\r\n");
AzureIoTClient 2:90e50410da9b 14 if (EthernetInterface::connect())
AzureIoTClient 2:90e50410da9b 15 {
AzureIoTClient 2:90e50410da9b 16 (void)printf("Error initializing EthernetInterface.\r\n");
AzureIoTClient 2:90e50410da9b 17 }
AzureIoTClient 2:90e50410da9b 18 else
AzureIoTClient 2:90e50410da9b 19 {
AzureIoTClient 2:90e50410da9b 20 (void)printf("setupRealTime NTP begin\r\n");
AzureIoTClient 2:90e50410da9b 21 NTPClient ntp;
AzureIoTClient 2:90e50410da9b 22 if (ntp.setTime("0.pool.ntp.org") != 0)
AzureIoTClient 2:90e50410da9b 23 {
AzureIoTClient 2:90e50410da9b 24 (void)printf("Failed setting time.\r\n");
AzureIoTClient 2:90e50410da9b 25 }
AzureIoTClient 2:90e50410da9b 26 else
AzureIoTClient 2:90e50410da9b 27 {
AzureIoTClient 2:90e50410da9b 28 (void)printf("set time correctly!\r\n");
AzureIoTClient 2:90e50410da9b 29 }
AzureIoTClient 2:90e50410da9b 30 (void)printf("setupRealTime NTP end\r\n");
AzureIoTClient 2:90e50410da9b 31 EthernetInterface::disconnect();
AzureIoTClient 2:90e50410da9b 32 }
AzureIoTClient 2:90e50410da9b 33 (void)printf("setupRealTime end\r\n");
AzureIoTClient 2:90e50410da9b 34 }
AzureIoTClient 0:422f22f60a44 35
AzureIoTClient 0:422f22f60a44 36 int main(void)
AzureIoTClient 0:422f22f60a44 37 {
AzureIoTClient 0:422f22f60a44 38 (void)printf("Initializing mbed specific things...\r\n");
AzureIoTClient 0:422f22f60a44 39
AzureIoTClient 2:90e50410da9b 40 if (EthernetInterface::init())
AzureIoTClient 2:90e50410da9b 41 {
AzureIoTClient 2:90e50410da9b 42 (void)printf("Error initializing EthernetInterface.\r\n");
AzureIoTClient 2:90e50410da9b 43 return -1;
AzureIoTClient 2:90e50410da9b 44 }
AzureIoTClient 0:422f22f60a44 45
AzureIoTClient 2:90e50410da9b 46 if (setupRealTime() != 0)
AzureIoTClient 2:90e50410da9b 47 {
AzureIoTClient 2:90e50410da9b 48 (void)printf("Failed setting up real time clock\r\n");
AzureIoTClient 2:90e50410da9b 49 return -1;
AzureIoTClient 2:90e50410da9b 50 }
AzureIoTClient 2:90e50410da9b 51
AzureIoTClient 2:90e50410da9b 52 if (EthernetInterface::connect())
AzureIoTClient 2:90e50410da9b 53 {
AzureIoTClient 2:90e50410da9b 54 (void)printf("Error connecting EthernetInterface.\r\n");
AzureIoTClient 2:90e50410da9b 55 return -1;
AzureIoTClient 2:90e50410da9b 56 }
AzureIoTClient 0:422f22f60a44 57
AzureIoTClient 0:422f22f60a44 58 asset_monitoring_run();
AzureIoTClient 0:422f22f60a44 59
AzureIoTClient 2:90e50410da9b 60 (void)EthernetInterface::disconnect();
AzureIoTClient 2:90e50410da9b 61
AzureIoTClient 0:422f22f60a44 62 return 0;
AzureIoTClient 0:422f22f60a44 63 }