MBED MQTT Lighting Endpoint for NXP Ublox (Ethernet enabled)

Dependencies:   C027 C12832 EthernetInterface StatusReporter LM75B MQTT-ansond endpoint_core endpoint_mqtt mbed-rtos mbed

Definitions.h

Committer:
ansond
Date:
2014-02-26
Revision:
9:ff877db53cfd
Parent:
8:45f9a920e82c
Child:
10:748fc7052e61

File content as of revision 9:ff877db53cfd:

/* 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 _DEFINITIONS_H_
#define _DEFINITIONS_H_

// platform
#include "mbed.h"

// Our Endpoint Version Annoucement
#define ENDPOINT_VERSION_ANNOUNCE "\r\nMBED IMPACT(MQTT) Endpoint v1.0"

// Error Handler
#define MAX_LOG_MESSAGE     256                             // maximum size of a logging message

// Light Configuration
#define NUM_LIGHTS          1                               // number of lights in this endpoint
#define LIGHT_NAME          "mbed-mqtt-light-%d"            // name of each light 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

// Endpoint GPS Coordinates
#define ENDPOINT_LOCATION   "Oulo Finland"                  // Where this light/endpoint lives
#define ENDPOINT_GPS_COORDS "65.017210,25.492411"           // Where this light/endpoint lives

// Resource Configuration
#define RESOURCE_NAME_LEN   64                              // Resource name max length
#define RESOURCE_VALUE_LEN  64                              // Resource value max length

// Transport Configuration
#define NUM_TRANSPORTS      2                               // MQTT, HTTP
#define MQTT_TRANSPORT      0                               // MQTT Transport index
#define HTTP_TRANSPORT      1                               // HTTP Transport index

// Index for Transport to use for Update/Load
#define LOAD_TRANSPORT      1                               // 0 - MQTT, 1 - HTTP

// MQTT connect information
#define MQTT_HOSTNAME       "iocana.bcu.ac.uk"              // IOC MQTT Broker Host - iocana.bcu.ac.uk
#define MQTT_HOSTPORT       1883                            // IOC MQTT Broker Port
#define MQTT_ENDPOINT_ID    "mbed%d"                        // IOC MQTT Endpoint ID template
#define MQTT_MAXID_VALUE    99                              // IOC MQTT Endpoint ID maximum integer value
#define MQTT_ENDPOINT_IDLEN 64                              // IOC MQTT Endpoint ID length (max)
#define MQTT_IOC_TOPIC      "ARM/sensinode/control/%s"      // IOC MQTT Topic 
#define MQTT_IOC_TOPIC_LEN  42                              // max length for the topic string
#define MQTT_USERNAME       ""                              // IOC MQTT Username
#define MQTT_PASSWORD       ""                              // IOC MQTT Password

// Main Loop
#define MAIN_LOOP_SLEEP     100                             // sleep time (ms) between main loop iterations

// LED Blink Time
#define BLINK_TIME     100                                  // LED blink times

#endif // _DEFINITIONS_H