Port from Avnet's Internet Of Things full WiGo demo: SmartConfig - WebServer - Exosite - Android sensor Fusion App
Dependencies: NVIC_set_all_priorities mbed cc3000_hostdriver_mbedsocket TEMT6200 TSI Wi-Go_eCompass_Lib_V3 WiGo_BattCharger
run_exosite.h
00001 #ifndef RUN_EXOSITE_H 00002 #define RUN_EXOSITE_H 00003 00004 #include "TCPSocketConnection.h" 00005 #include "TCPSocketServer.h" 00006 00007 extern cc3000 wifi; 00008 extern tUserFS user_info; 00009 00010 #ifdef __cplusplus 00011 extern "C" { 00012 #endif 00013 00014 #include <stdint.h> 00015 00016 void run_exosite(TCPSocketConnection *socket); 00017 00018 // defines 00019 enum UUIDInterfaceTypes 00020 { 00021 IF_WIFI, 00022 IF_ENET, 00023 IF_FILE, 00024 IF_HDD, 00025 IF_I2C, 00026 IF_GPRS, 00027 IF_NONE 00028 }; 00029 00030 enum ExositeStatusCodes 00031 { 00032 EXO_STATUS_OK, 00033 EXO_STATUS_INIT, 00034 EXO_STATUS_BAD_UUID, 00035 EXO_STATUS_BAD_VENDOR, 00036 EXO_STATUS_BAD_MODEL, 00037 EXO_STATUS_BAD_INIT, 00038 EXO_STATUS_BAD_TCP, 00039 EXO_STATUS_BAD_SN, 00040 EXO_STATUS_CONFLICT, 00041 EXO_STATUS_BAD_CIK, 00042 EXO_STATUS_NOAUTH, 00043 EXO_STATUS_END 00044 }; 00045 00046 #define EXOSITE_VENDOR_MAXLENGTH 20 00047 #define EXOSITE_MODEL_MAXLENGTH 20 00048 #define EXOSITE_SN_MAXLENGTH EXOSITE_HAL_SN_MAXLENGTH 00049 #define EXOSITE_DEMO_UPDATE_INTERVAL 4000// ms 00050 #define CIK_LENGTH 40 00051 00052 // -------------- META -------------- 00053 // defines 00054 #define META_SIZE 256 00055 #define META_CIK_SIZE 40 00056 #define META_SERVER_SIZE 6 00057 #define META_PAD0_SIZE 2 00058 #define META_MARK_SIZE 8 00059 #define META_UUID_SIZE 17 00060 #define META_PAD1_SIZE 4 00061 #define META_RSVD_SIZE 56 00062 #define META_MFR_SIZE 128 00063 typedef struct { 00064 char cik[META_CIK_SIZE]; // our client interface key 00065 char server[META_SERVER_SIZE]; // ip address of m2.exosite.com (not using DNS at this stage) 00066 char pad0[META_PAD0_SIZE]; // pad 'server' to 8 bytes 00067 char mark[META_MARK_SIZE]; // watermark 00068 char uuid[META_UUID_SIZE]; // UUID in ascii 00069 char pad1[META_PAD1_SIZE]; // pad 'uuid' to 16 bytes 00070 char rsvd[META_RSVD_SIZE]; // reserved space - pad to ensure mfr is at end of RDK_META_SIZE 00071 char mfr[META_MFR_SIZE]; // manufacturer data structure 00072 } exosite_meta; 00073 00074 #define EXOMARK "exosite!" 00075 00076 typedef enum 00077 { 00078 META_CIK, 00079 META_SERVER, 00080 META_MARK, 00081 META_UUID, 00082 META_MFR, 00083 META_NONE 00084 } MetaElements; 00085 00086 00087 // -------------- HAL -------------- 00088 // defines 00089 /*typedef enum 00090 { 00091 IF_WIFI, 00092 IF_ENET, 00093 IF_FILE, 00094 IF_HDD, 00095 IF_I2C, 00096 IF_NONE 00097 } UUIDInterfaceTypes;*/ 00098 00099 typedef enum 00100 { 00101 EXO_ERROR_WRITE, 00102 EXO_ERROR_READ, 00103 EXO_ERROR_CONNECT, 00104 EXO_ERROR_UNKNOWN, 00105 EXO_ERROR_END 00106 } ExositeErrorCodes; 00107 00108 typedef enum 00109 { 00110 EXO_SERVER_CONNECTED, 00111 EXO_CLIENT_RW, 00112 EXO_UI_END 00113 } ExositeUICodes; 00114 00115 #ifdef __cplusplus 00116 } 00117 #endif // __cplusplus 00118 00119 #endif // RUN_EXOSITE_H 00120
Generated on Thu Jul 14 2022 00:58:11 by 1.7.2