MBED NanoService Lighting Endpoint for NXP Ublox (cellular enabled)

Dependencies:   C027_Support C12832 StatusReporter LM75B c027_radios endpoint_core endpoint_nsp nsp_resources mbed mbed-rtos

Definitions.h

Committer:
ansond
Date:
2014-09-26
Revision:
261:20e281330cea
Parent:
252:cdd766bca478

File content as of revision 261:20e281330cea:

/* 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"

// Platform Switch
#define   _ENDPOINT_UBLOX_PLATFORM      true                      // uncomment for the U-Blox MBED platform
//#define   _ENDPOINT_FREESCALE_PLATFORM  true                    // uncomment for the Freescale Freedom MBED platform
//#define   _ENDPOINT_NXP_PLATFORM        true                    // uncomment for the NXP MBED platform

// Network Usage (default is Ethernet)
#define CELLULAR_NETWORK                true                      // true - use cellular network, false - use ethernet (cannot co-exist together)
//#define CELLULAR_DEBUG                  true                      // true - debug enabled, undef - no

// Multitech Temp Probe customization
//#define MULTITECH_TEMP_PROBE            true                // true - on, undef - off

// NSP, which runs threaded, requires special handling of the cellular network stack with RTOS
//#ifdef CELLULAR_NETWORK
//    #define NSP_CELLULAR_NETWORK        true
//#endif

// what kind of personality we are...
//#define LIGHT_PERSONALITY               true                      // the endpoint will be a (set of) lights
#define COPCAR_PERSONALITY              true                      // the endpoint will emulate a cop car

// special behavior for APM CopCar - steady state on/off for blinking
//#define APM_COPCAR_ENABLE               true                      // true - enabled, (undef) - disabled

// APM Demo Light Configuration
//#define APM_LIGHT_ENABLE            false                            // true - enable APM Demo light, undef - disable

// External LED Light Configuration
#define EXT_LED_ENABLE              true                            // true - enable external LED endpoint light, false - disable

// include common definitions
#include "CommonDefinitions.h"

// turn these ON for NSP via cellular
#undef EH_USE_MUTEXES  
#undef NETWORK_MUTEX 
#define ENABLE_THREADS              true

// NSP specific definitions
#include "NSPDefinitions.h"

// OVERRIDE: NSP Endpoint
#undef NSP_ADDRESS
#undef NSP_PORT
//#define NSP_ADDRESS                "192.168.1.220"               // Target NSP Service
//#define NSP_PORT                   5683                          // Target NSP Service Port Number (def: 5683)

#define NSP_ADDRESS                "72.182.18.233"                // Target NSP Service
#define NSP_PORT                   19648                          // Target NSP Service Port Number (def: 5683)

// Philips Light Config
#define PL_ENABLE                  false                         // true - enable for endpoint light, false - disable
#define PL_LIGHT_ID                PL_LIGHT_ID_BILL              // Default light for Philips Light

// Endpoint GPS Coordinates
//#define ENDPOINT_LOCATION          "Las Vegas Police Dept"       // Where this light/endpoint lives
//#define ENDPOINT_GPS_COORDS        "36.131735,-115.147683"       // Joe Brown Drive 
//#define ENDPOINT_LOCATION           "ISSUU Dept - Bilbao Spain"     // Copcar location
//#define ENDPOINT_GPS_COORDS         "43.262977,-2.924335"           // Bilbao Spain 
#define ENDPOINT_LOCATION            "Santa Clara PD"            // Where this light/endpoint lives
#define ENDPOINT_GPS_COORDS          "37.403841,-121.973001"     // Santa Clara, CA

// Reset our config values if needed
#ifdef _ENDPOINT_UBLOX_PLATFORM
    #define UBLOX_GPS_FREQ          100000                        // GPS freq in ns
    #define UBLOX_GPS_POLL_MS       5000                          // poll the GPS every 5 seconds
#endif

// DEBUG Hush Logging
//#define HUSH_LOG                      true          // false - logging output, true - no logging

// DEBUG Hush LED usage
//#define HUSH_LEDS                     true          // false - enable LEDs, true - disable LEDs

// DEBUG Memory Debug Enable/Disable
//#define ENABLE_MEMORY_DEBUG           true          // false - disable, true - enable (for all error_handler->log() operations)
//#define MEMORY_LOGGING                true          // false - disable, true - enable (for error_handler->log_memory() operations only)

// KEIL our MAC address
//#define MAC_ADDRESS                   0x00,0x1e,0xAB,0xE3,0x4F,0x55

#endif // _DEFINITIONS_H