Core Base Classes for the Light Endpoints

Dependencies:   BufferedSerial

Dependents:   mbed_mqtt_endpoint_ublox_ethernet mbed_mqtt_endpoint_ublox_cellular mbed_nsp_endpoint_ublox_cellular mbed_nsp_endpoint_ublox_ethernet ... more

Revision:
38:825f8e834e77
Child:
45:da431cd42313
diff -r 1588ba3af6d1 -r 825f8e834e77 CommonDefinitions.h
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/CommonDefinitions.h	Sat Mar 01 06:12:42 2014 +0000
@@ -0,0 +1,65 @@
+/* Copyright C2013 Doug Anson, MIT License
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ * and associated documentation files the "Software", to deal in the Software without restriction,
+ * including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all copies or
+ * substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+ 
+#ifndef _COMMON_DEFINITIONS_H_
+#define _COMMON_DEFINITIONS_H_
+
+// Error Handler Log Message Length
+#define MAX_LOG_MESSAGE             900            // maximum size of a logging message
+
+// Resource Configuration
+#define RESOURCE_NAME_LEN           20             // Resource name max length
+#define RESOURCE_VALUE_LEN          20             // Resource value max length
+
+// Number of Resources our Endpoint has
+#define NUM_RESOURCES               16
+
+// MapEntry Name length
+#define MAX_NAME_LENGTH             20
+
+// IOC <--> Resource Mapping
+#define NUM_MAPPINGS                NUM_RESOURCES  // matches the number of resources
+
+// Common Light Definition
+#define NUM_LIGHTS          1                      // number of lights in this endpoint
+#define LIGHT_NAME_LEN      64                     // buffer size for the light name
+#define LIGHT_ON_STATE      "0"                    // initial state of each light in this endpoint
+#define LIGHT_DIM_STATE     "25"                   // initial dimming state of each light in this endpoint
+
+// Main Loop
+#define MAIN_LOOP_SLEEP     100                    // sleep time (ms) between main loop iterations
+
+// LED Blink Time
+#define BLINK_TIME          100                    // LED blink times
+
+// Philips Light Support
+#define PL_ENABLE                   false                           // true - enable for endpoint light, false - disable
+#define PL_LIGHT_ID_DOUG            1                               // Dougs Light
+#define PL_LIGHT_ID_BILL            2                               // Bills Light
+#define PL_LIGHT_ID_KERRY           3                               // Kerrys Light
+#define PL_LIGHT_ID                 PL_LIGHT_ID_DOUG                // Default light
+#define PL_GW_ADDRESS               "192.168.1.178"                 // Philips Gateway in IOT lab (Austin)
+#define PL_DEFAULT_STATE            1                               // on
+#define PL_DEFAULT_DIM              11                              // dim value
+#define PL_URL_BUFFER_LEN           128
+#define PL_PAYLOAD_BUFFER_LEN       128
+#define PL_RESPONSE_BUFFER_LEN      128
+#define PL_URL_TEMPLATE             "http://%s/api/newdeveloper/lights/%d/state"  
+#define PL_ON_COMMAND_TEMPLATE      "{\"on\":%s,\"sat\":211,\"bri\":%d,\"hue\":13122}"
+
+#endif // _COMMON_DEFINITIONS_H_
\ No newline at end of file