Etherios Cloud Connector very first porting for mbed. Tested in an LPC1768

Etherios Cloud Connector for Embedded v2.1.0.3 library for mbed. Early porting.

This port is centered mainly in the platform code. So it should work properly with the provided examples of send_data, device_request, data_points, RCI and firmware_update (stub implementation, not a real one... yet ;-)). Filesystem is not implemented yet, and some examples might need changes.

To run, it needs the following libraries: - mbed - mbed-rtos - EthernetInterface

Find more information (and the source code!) about Etherios Cloud Connector for Embedded here: http://www.etherios.com/products/devicecloud/support/connector and in: http://www.etherios.com

Committer:
spastor
Date:
Tue Dec 03 14:10:48 2013 +0000
Revision:
1:908afea5a49d
Parent:
0:1c358ea10753
Use internal Thread.h instead of Threads.h

Who changed what in which revision?

UserRevisionLine numberNew contents of line
spastor 0:1c358ea10753 1 /*
spastor 0:1c358ea10753 2 * Copyright (c) 2013 Digi International Inc.,
spastor 0:1c358ea10753 3 * All rights not expressly granted are reserved.
spastor 0:1c358ea10753 4 *
spastor 0:1c358ea10753 5 * This Source Code Form is subject to the terms of the Mozilla Public
spastor 0:1c358ea10753 6 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
spastor 0:1c358ea10753 7 * You can obtain one at http://mozilla.org/MPL/2.0/.
spastor 0:1c358ea10753 8 *
spastor 0:1c358ea10753 9 * Digi International Inc. 11001 Bren Road East, Minnetonka, MN 55343
spastor 0:1c358ea10753 10 * =======================================================================
spastor 0:1c358ea10753 11 */
spastor 0:1c358ea10753 12
spastor 0:1c358ea10753 13 #ifndef _CONNECTOR_API_REMOTE_H
spastor 0:1c358ea10753 14 #define _CONNECTOR_API_REMOTE_H
spastor 0:1c358ea10753 15
spastor 0:1c358ea10753 16 #if (defined CONNECTOR_RCI_SERVICE)
spastor 0:1c358ea10753 17 #include "connector_types.h"
spastor 0:1c358ea10753 18 /**
spastor 0:1c358ea10753 19 * @defgroup connector_request_id_remote_config_t Remote Configuration Request IDs
spastor 0:1c358ea10753 20 * @{
spastor 0:1c358ea10753 21 */
spastor 0:1c358ea10753 22 /**
spastor 0:1c358ea10753 23 * Remote Configuration Request ID passed to the application's callback to query or set remote configuration data.
spastor 0:1c358ea10753 24 * The class id for this connector_request_id_remote_config_t is connector_class_id_remote_config.
spastor 0:1c358ea10753 25 */
spastor 0:1c358ea10753 26
spastor 0:1c358ea10753 27 typedef enum {
spastor 0:1c358ea10753 28 connector_request_id_remote_config_session_start, /**< inform callback to start remote configuration request */
spastor 0:1c358ea10753 29 connector_request_id_remote_config_action_start, /**< requesting callback to start query or set remote configuration data */
spastor 0:1c358ea10753 30 connector_request_id_remote_config_group_start, /**< requesting callback to start query or set an individual configuration group */
spastor 0:1c358ea10753 31 connector_request_id_remote_config_group_process, /**< requesting callback to query or set an element or field of a configuration group */
spastor 0:1c358ea10753 32 connector_request_id_remote_config_group_end, /**< requesting callback to end query or set an individual configuration group */
spastor 0:1c358ea10753 33 connector_request_id_remote_config_action_end, /**< requesting callback to end query or set remote configuration data */
spastor 0:1c358ea10753 34 connector_request_id_remote_config_session_end, /**< inform callback to end remote configuration request
spastor 0:1c358ea10753 35 Callback may start writing data into NVRAM for set remote configuration request.
spastor 0:1c358ea10753 36 Callback should end and release any resources used when it's done. */
spastor 0:1c358ea10753 37 connector_request_id_remote_config_session_cancel /**< Requesting callback to abort and cancel any query or set remote configuration request.
spastor 0:1c358ea10753 38 Callback should stop and release any resources used */
spastor 0:1c358ea10753 39 } connector_request_id_remote_config_t;
spastor 0:1c358ea10753 40 /**
spastor 0:1c358ea10753 41 * @}
spastor 0:1c358ea10753 42 */
spastor 0:1c358ea10753 43
spastor 0:1c358ea10753 44
spastor 0:1c358ea10753 45 /**
spastor 0:1c358ea10753 46 * @defgroup connector_remote_action_t Cloud Connector remote configuration action types
spastor 0:1c358ea10753 47 * @{
spastor 0:1c358ea10753 48 */
spastor 0:1c358ea10753 49 /**
spastor 0:1c358ea10753 50 * Remote request action types
spastor 0:1c358ea10753 51 */
spastor 0:1c358ea10753 52 typedef enum {
spastor 0:1c358ea10753 53 connector_remote_action_set, /**< Set remote configuration */
spastor 0:1c358ea10753 54 connector_remote_action_query /**< Query remote configuration */
spastor 0:1c358ea10753 55 } connector_remote_action_t;
spastor 0:1c358ea10753 56 /**
spastor 0:1c358ea10753 57 * @}
spastor 0:1c358ea10753 58 */
spastor 0:1c358ea10753 59
spastor 0:1c358ea10753 60 /**
spastor 0:1c358ea10753 61 * @defgroup connector_remote_group_type_t Cloud Connector remote configuration types
spastor 0:1c358ea10753 62 * @{
spastor 0:1c358ea10753 63 */
spastor 0:1c358ea10753 64 /**
spastor 0:1c358ea10753 65 * Remote request group types.
spastor 0:1c358ea10753 66 */
spastor 0:1c358ea10753 67 typedef enum {
spastor 0:1c358ea10753 68 connector_remote_group_setting, /**< Setting configuration */
spastor 0:1c358ea10753 69 connector_remote_group_state /**< State configuration */
spastor 0:1c358ea10753 70 } connector_remote_group_type_t;
spastor 0:1c358ea10753 71
spastor 0:1c358ea10753 72 /**
spastor 0:1c358ea10753 73 * @}
spastor 0:1c358ea10753 74 */
spastor 0:1c358ea10753 75
spastor 0:1c358ea10753 76
spastor 0:1c358ea10753 77 /**
spastor 0:1c358ea10753 78 * @defgroup connector_element_access_t Cloud Connector remote configuration access types
spastor 0:1c358ea10753 79 * @{
spastor 0:1c358ea10753 80 */
spastor 0:1c358ea10753 81 /**
spastor 0:1c358ea10753 82 * Remote Configuration Element Access types
spastor 0:1c358ea10753 83 */
spastor 0:1c358ea10753 84 typedef enum {
spastor 0:1c358ea10753 85 connector_element_access_read_only, /**< Read only */
spastor 0:1c358ea10753 86 connector_element_access_write_only, /**< Write only */
spastor 0:1c358ea10753 87 connector_element_access_read_write /**< Read and write */
spastor 0:1c358ea10753 88 } connector_element_access_t;
spastor 0:1c358ea10753 89 /**
spastor 0:1c358ea10753 90 * @}
spastor 0:1c358ea10753 91 */
spastor 0:1c358ea10753 92
spastor 0:1c358ea10753 93 #endif
spastor 0:1c358ea10753 94
spastor 0:1c358ea10753 95 #if !defined _CONNECTOR_API_H
spastor 0:1c358ea10753 96 #error "Illegal inclusion of connector_api_remote.h. You should only include connector_api.h in user code."
spastor 0:1c358ea10753 97 #endif
spastor 0:1c358ea10753 98
spastor 0:1c358ea10753 99 #else
spastor 0:1c358ea10753 100 #error "Illegal inclusion of connector_api_remote.h. You should only include connector_api.h in user code."
spastor 0:1c358ea10753 101 #endif
spastor 0:1c358ea10753 102