mbed Connector Interface simplification API on top of mbed-client

Fork of mbedConnectorInterfaceV3 by Doug Anson

NOTE:

This repo has been replaced with https://github.com/ARMmbed/mbedConnectorInterface. No further updates will occur with this repo. Please use the github repo instead. Thanks!

Committer:
ansond
Date:
Mon Jun 05 21:28:42 2017 +0000
Revision:
121:dfe65a93f26b
Parent:
105:aeaaee8fbb1d
Child:
125:4bf229bf14a3
R1.2B updates for Updater support

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ansond 0:1f1f55e73248 1 /**
ansond 0:1f1f55e73248 2 * @file mbedConnectorInterface.h
ansond 0:1f1f55e73248 3 * @brief mbed Connector Inteface configuration header file
ansond 0:1f1f55e73248 4 * @author Doug Anson
ansond 0:1f1f55e73248 5 * @version 1.0
ansond 0:1f1f55e73248 6 * @see
ansond 0:1f1f55e73248 7 *
ansond 0:1f1f55e73248 8 * Copyright (c) 2014
ansond 0:1f1f55e73248 9 *
ansond 0:1f1f55e73248 10 * Licensed under the Apache License, Version 2.0 (the "License");
ansond 0:1f1f55e73248 11 * you may not use this file except in compliance with the License.
ansond 0:1f1f55e73248 12 * You may obtain a copy of the License at
ansond 0:1f1f55e73248 13 *
ansond 0:1f1f55e73248 14 * http://www.apache.org/licenses/LICENSE-2.0
ansond 0:1f1f55e73248 15 *
ansond 0:1f1f55e73248 16 * Unless required by applicable law or agreed to in writing, software
ansond 0:1f1f55e73248 17 * distributed under the License is distributed on an "AS IS" BASIS,
ansond 0:1f1f55e73248 18 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
ansond 0:1f1f55e73248 19 * See the License for the specific language governing permissions and
ansond 0:1f1f55e73248 20 * limitations under the License.
ansond 0:1f1f55e73248 21 */
ansond 0:1f1f55e73248 22
ansond 0:1f1f55e73248 23 #ifndef __MBED_CONNECTOR_INTERFACE_H__
ansond 0:1f1f55e73248 24 #define __MBED_CONNECTOR_INTERFACE_H__
ansond 0:1f1f55e73248 25
ansond 54:dfee8691c83a 26 // mbed
ansond 54:dfee8691c83a 27 #include "mbed.h"
ansond 54:dfee8691c83a 28 #include "rtos.h"
ansond 0:1f1f55e73248 29
ansond 71:5069a202e892 30 // Enable/Disable mbed Cloud support
ansond 71:5069a202e892 31 #include "security.h"
ansond 71:5069a202e892 32
ansond 0:1f1f55e73248 33 /************** DEFAULT CONFIGURATION PARAMETERS ************************/
ansond 0:1f1f55e73248 34
ansond 94:25ce0592620f 35 // Network Selection Definitions (must match easy-connect.h)
ansond 71:5069a202e892 36 #define ETHERNET 1
ansond 94:25ce0592620f 37 #define WIFI_ESP8266 2
ansond 71:5069a202e892 38 #define MESH_LOWPAN_ND 3
ansond 71:5069a202e892 39 #define MESH_THREAD 4
ansond 94:25ce0592620f 40 #define WIFI_ODIN 5
ansond 54:dfee8691c83a 41
ansond 71:5069a202e892 42 // we will use ThreadedResourceObserver
ansond 71:5069a202e892 43 #define CONNECTOR_USING_THREADS 1
ansond 71:5069a202e892 44 #define MCI_LWIP_INTERFACE true
ansond 71:5069a202e892 45 #define HAS_EXECUTE_PARAMS true
ansond 0:1f1f55e73248 46
ansond 71:5069a202e892 47 // Default node name
ansond 71:5069a202e892 48 #define NODE_NAME_LENGTH 128
ansond 71:5069a202e892 49 #define NODE_NAME "mbed-endpoint"
ansond 54:dfee8691c83a 50
ansond 105:aeaaee8fbb1d 51 // Connection URL to mbed Connector (not used for R1.2+ mbed Cloud)
ansond 71:5069a202e892 52 #if MBED_CONF_APP_NETWORK_INTERFACE == MESH_LOWPAN_ND || MBED_CONF_APP_NETWORK_INTERFACE == MESH_THREAD
ansond 71:5069a202e892 53 // IPv6 URL Configuration
ansond 59:dd395412bd19 54 #define CONNECTOR_URL "coaps://[2607:f0d0:2601:52::20]:5684"
ansond 59:dd395412bd19 55
ansond 59:dd395412bd19 56 // OVERRIDE (until patched in mbed-client)
ansond 59:dd395412bd19 57 #define IPV4_OVERRIDE true
ansond 71:5069a202e892 58 #else
ansond 54:dfee8691c83a 59 // IPv4 URL Configuration
ansond 54:dfee8691c83a 60 #define CONNECTOR_URL "coap://api.connector.mbed.com:5684"
ansond 71:5069a202e892 61 #endif
ansond 54:dfee8691c83a 62
ansond 71:5069a202e892 63 // Default Endpoint Type specification
ansond 71:5069a202e892 64 #define ENDPOINT_TYPE_LENGTH 128
ansond 71:5069a202e892 65 #define DEFAULT_ENDPOINT_TYPE "mbed-device"
ansond 54:dfee8691c83a 66
ansond 71:5069a202e892 67 // Default Domain used
ansond 71:5069a202e892 68 #define DOMAIN_LENGTH 128
ansond 71:5069a202e892 69 #define DEFAULT_DOMAIN "domain"
ansond 54:dfee8691c83a 70
ansond 71:5069a202e892 71 // Main loop iteration wait time (ms)
ansond 71:5069a202e892 72 #define MAIN_LOOP_WAIT_TIME_MS 1000
ansond 54:dfee8691c83a 73
ansond 71:5069a202e892 74 // mbed-client endpoint lifetime
ansond 54:dfee8691c83a 75 #define REG_LIFETIME_SEC 100 // Lifetime of the endpoint in seconds
ansond 54:dfee8691c83a 76
ansond 54:dfee8691c83a 77 // default observation period (ms)
ansond 54:dfee8691c83a 78 #define DEFAULT_OBS_PERIOD 0 // 0 - disabled (manual invocation), otherwise "n" in ms...
ansond 0:1f1f55e73248 79
ansond 33:1d0b855df5a5 80 // Maximum CoAP URL length
ansond 49:c603a22495bb 81 #define MAX_CONN_URL_LENGTH 128 // Maximum Connection URL length
ansond 0:1f1f55e73248 82
ansond 0:1f1f55e73248 83 // DynamicResource Configuration
ansond 91:179b5cb420de 84 #define MAX_VALUE_BUFFER_LENGTH 1024 // largest "value" a dynamic resource may assume as a string (max CoAP packet length)
ansond 0:1f1f55e73248 85
ansond 0:1f1f55e73248 86 // Logger buffer size
ansond 54:dfee8691c83a 87 #define LOGGER_BUFFER_LENGTH 128 // largest single print of a given debug line
ansond 0:1f1f55e73248 88
ansond 0:1f1f55e73248 89 // WiFi Configuration
ansond 49:c603a22495bb 90 #define WIFI_SSID_LENGTH 64
ansond 0:1f1f55e73248 91 #define WIFI_DEFAULT_SSID "changeme"
ansond 49:c603a22495bb 92 #define WIFI_AUTH_KEY_LENGTH 64
ansond 0:1f1f55e73248 93 #define WIFI_DEFAULT_AUTH_KEY "changeme"
ansond 60:0d9e607dd678 94
ansond 60:0d9e607dd678 95 // Default context address string for mbed-client
ansond 60:0d9e607dd678 96 #define CONTEXT_ADDRESS_STRING ""
ansond 121:dfe65a93f26b 97
ansond 121:dfe65a93f26b 98 // Uncomment (and implement) for Update authorization and progress handlers
ansond 121:dfe65a93f26b 99 //#define ENABLE_UPDATE_AUTHORIZE_HANDLER true // MUST go into ConnectorEndpoint.cpp and implement... otherwise, update request will not get serviced.
ansond 121:dfe65a93f26b 100 //#define ENALBE_UPDATE_PROGRESS_HANDLER true
ansond 54:dfee8691c83a 101
ansond 0:1f1f55e73248 102 /************** DEFAULT CONFIGURATION PARAMETERS ************************/
ansond 0:1f1f55e73248 103
ansond 0:1f1f55e73248 104 #endif // __MBED_CONNECTOR_INTERFACE___
ansond 0:1f1f55e73248 105