Version del programa usado para la Expo IOT 2018 - Strada Hotel

Dependencies:   DHT HX711 libmDot-mbed5 ISL29011

Fork of Dot-Examples by Rajnish Narayan

Files at this revision

API Documentation at this revision

Comitter:
Santi1990
Date:
Tue Apr 17 18:10:04 2018 +0000
Parent:
26:8bc4079c4c8d
Commit message:
Esta version usamos para la primera Expo de Xavia (Expo IOT 2018 - Strada Hotel).

Changed in this revision

DHT.lib Show annotated file Show diff for this revision Revisions of this file
HX711.lib Show annotated file Show diff for this revision Revisions of this file
examples/example_config.h Show annotated file Show diff for this revision Revisions of this file
examples/src/ota_example.cpp Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/DHT.lib	Tue Apr 17 18:10:04 2018 +0000
@@ -0,0 +1,1 @@
+http://os.mbed.com/users/Wimpie/code/DHT/#9b5b3200688f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/HX711.lib	Tue Apr 17 18:10:04 2018 +0000
@@ -0,0 +1,1 @@
+http://os.mbed.com/users/mcm/code/HX711/#d7a5cd03ed09
--- a/examples/example_config.h	Wed Jan 03 07:14:33 2018 +0000
+++ b/examples/example_config.h	Tue Apr 17 18:10:04 2018 +0000
@@ -9,7 +9,7 @@
 
 // the active example is the one that will be compiled
 #if !defined(ACTIVE_EXAMPLE)
-#define ACTIVE_EXAMPLE  CLASS_C_EXAMPLE
+#define ACTIVE_EXAMPLE  OTA_EXAMPLE
 #endif
 
 // the active channel plan is the one that will be compiled
@@ -21,7 +21,7 @@
 //      CP_AS923
 //      CP_AS923_JAPAN
 //      CP_IN865
-#define CHANNEL_PLAN CP_IN865
+#define CHANNEL_PLAN CP_US915
 #if !defined(CHANNEL_PLAN)
 #define CP_IN865
 #endif
--- a/examples/src/ota_example.cpp	Wed Jan 03 07:14:33 2018 +0000
+++ b/examples/src/ota_example.cpp	Tue Apr 17 18:10:04 2018 +0000
@@ -1,5 +1,10 @@
 #include "dot_util.h"
 #include "RadioEvent.h"
+#include "HX711.h"
+#include "DHT.h"
+#include <iostream>
+#include <string>
+#include <sstream>
  
 #if ACTIVE_EXAMPLE == OTA_EXAMPLE
 
@@ -22,12 +27,12 @@
 // * either the network name and passphrase can be used or //
 //     the network ID (8 bytes) and KEY (16 bytes)         //
 /////////////////////////////////////////////////////////////
-static std::string network_name = "MultiTech";
-static std::string network_passphrase = "MultiTech";
+static std::string network_name = "xaviaiot";
+static std::string network_passphrase = "xaviaiot";
 static uint8_t network_id[] = { 0x6C, 0x4E, 0xEF, 0x66, 0xF4, 0x79, 0x86, 0xA6 };
 static uint8_t network_key[] = { 0x1F, 0x33, 0xA1, 0x70, 0xA5, 0xF1, 0xFD, 0xA0, 0xAB, 0x69, 0x7A, 0xAE, 0x2B, 0x95, 0x91, 0x6B };
-static uint8_t frequency_sub_band = 0;
-static bool public_network = false;
+static uint8_t frequency_sub_band = 1;
+static bool public_network = true;
 static uint8_t ack = 0;
 static bool adr = true;
 
@@ -42,13 +47,6 @@
 
 Serial pc(USBTX, USBRX);
 
-#if defined(TARGET_XDOT_L151CC)
-I2C i2c(I2C_SDA, I2C_SCL);
-ISL29011 lux(i2c);
-#else
-AnalogIn lux(XBEE_AD0);
-#endif
-
 int main() {
     // Custom event handler for automatically displaying RX data
     RadioEvent events;
@@ -129,43 +127,56 @@
         logInfo("restoring network session from NVM");
         dot->restoreNetworkSession();
     }
+        uint16_t temp;
+        uint16_t hum;
+        uint16_t weight;
+        std::string datos;
+        
+        
+    while (true) { 
 
-    while (true) {
-        uint16_t light;
-        std::vector<uint8_t> tx_data;
+    uint8_t array[8];
+        //std::vector<uint8_t> tx_data;
 
         // join network if not joined
         if (!dot->getNetworkJoinStatus()) {
             join_network();
         }
+        
 
-#if defined(TARGET_XDOT_L151CC)
-        // configure the ISL29011 sensor on the xDot-DK for continuous ambient light sampling, 16 bit conversion, and maximum range
-        lux.setMode(ISL29011::ALS_CONT);
-        lux.setResolution(ISL29011::ADC_16BIT);
-        lux.setRange(ISL29011::RNG_64000);
+        temp = 20;//dht.ReadTemperature(CELCIUS);
+        hum = 30; //dht.ReadHumidity();
+        weight = 10;
+     
+        pc.printf("Temperatura: %d/t Humedad: %d/t Peso: %d\n",temp,hum,weight);
+        
+        //for (std::string::iterator it = datos.begin(); it != datos.end(); it++)
+        //tx_data.push_back((temp >> 8) & 0xFF);
+        //tx_data.push_back(temp & 0xFF);
 
-        // get the latest light sample and send it to the gateway
-        light = lux.getData();
-        tx_data.push_back((light >> 8) & 0xFF);
-        tx_data.push_back(light & 0xFF);
-        logInfo("light: %lu [0x%04X]", light, light);
-        send_data(tx_data);
+int i;
+for (i = 0; i < 8; i++)
+{
+    array[i] = (temp >> (8 * i)) & 0xff;
+}
 
-        // put the LSL29011 ambient light sensor into a low power state
-        lux.setMode(ISL29011::PWR_DOWN);
-#else 
-        // get some dummy data and send it to the gateway
-        light = lux.read_u16();
-        tx_data.push_back((light >> 8) & 0xFF);
-        tx_data.push_back(light & 0xFF);
-        logInfo("light: %lu [0x%04X]", light, light);
-        send_data(tx_data);
-#endif
+        send(array);
+        
+        //length = sprintf(pepe, "%d;%d;%d", weight, temp, hum);
+        //std::vector<uint8_t> vec(pepe, pepe+ length / chat);
+      
+        //datos.clear();
+
+
+
+ 
+        
+
 
         // if going into deepsleep mode, save the session so we don't need to join again after waking up
         // not necessary if going into sleep mode since RAM is retained
-        if (deep_sleep) {
+       
+       if (deep_sleep) {
             logInfo("saving network session to NVM");
             dot->saveNetworkSession();
         }
@@ -179,4 +190,5 @@
     return 0;
 }
 
+
 #endif