Commit 995d3cf6dfc00f4329fc73e4224298450b0495bd

Authored by Maria Jorba Brosa
1 parent a4db05fe

--no commit message

Project/applications/smartcities/.dep/main.o.d
1 build/obj/main.o: main.c ../..//econais/libwismart.h \ 1 build/obj/main.o: main.c ../..//econais/libwismart.h \
2 ../..//os/kernel/include/ch.h ../..//econais/inc/STM32F1/chconf.h \ 2 ../..//os/kernel/include/ch.h ../..//econais/inc/STM32F1/chconf.h \
3 ../..//os/ports/GCC/ARMCMx/chtypes.h \ 3 ../..//os/ports/GCC/ARMCMx/chtypes.h \
4 - c:\yagarto\bin\../lib/gcc/arm-none-eabi/4.7.2/include/stddef.h \  
5 - c:\yagarto\bin\../lib/gcc/arm-none-eabi/4.7.2/include/stdint.h \  
6 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/stdint.h \ 4 + c:\yagarto-20121222\bin\../lib/gcc/arm-none-eabi/4.7.2/include/stddef.h \
  5 + c:\yagarto-20121222\bin\../lib/gcc/arm-none-eabi/4.7.2/include/stdint.h \
  6 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/stdint.h \
7 ../..//os/kernel/include/chlists.h ../..//os/ports/GCC/ARMCMx/chcore.h \ 7 ../..//os/kernel/include/chlists.h ../..//os/ports/GCC/ARMCMx/chcore.h \
8 ../..//os/ports/GCC/ARMCMx/STM32F1xx/cmparams.h \ 8 ../..//os/ports/GCC/ARMCMx/STM32F1xx/cmparams.h \
9 ../..//os/ports/GCC/ARMCMx/chcore_v7m.h \ 9 ../..//os/ports/GCC/ARMCMx/chcore_v7m.h \
@@ -20,28 +20,28 @@ build/obj/main.o: main.c ../..//econais/libwismart.h \ @@ -20,28 +20,28 @@ build/obj/main.o: main.c ../..//econais/libwismart.h \
20 ../..//os/kernel/include/chinline.h ../..//os/kernel/include/chqueues.h \ 20 ../..//os/kernel/include/chinline.h ../..//os/kernel/include/chqueues.h \
21 ../..//os/kernel/include/chstreams.h ../..//os/kernel/include/chioch.h \ 21 ../..//os/kernel/include/chstreams.h ../..//os/kernel/include/chioch.h \
22 ../..//os/kernel/include/chfiles.h ../..//os/kernel/include/chdebug.h \ 22 ../..//os/kernel/include/chfiles.h ../..//os/kernel/include/chdebug.h \
23 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/stdio.h \  
24 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/_ansi.h \  
25 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/newlib.h \  
26 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/config.h \  
27 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/machine/ieeefp.h \  
28 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/features.h \  
29 - c:\yagarto\bin\../lib/gcc/arm-none-eabi/4.7.2/include/stdarg.h \  
30 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/reent.h \  
31 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/_ansi.h \  
32 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/_types.h \  
33 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/machine/_types.h \  
34 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/machine/_default_types.h \  
35 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/lock.h \  
36 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/types.h \  
37 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/machine/types.h \  
38 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/stdio.h \  
39 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/string.h \  
40 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/cdefs.h \  
41 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/string.h \  
42 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/stdlib.h \  
43 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/machine/stdlib.h \  
44 - c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/alloca.h \ 23 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/stdio.h \
  24 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/_ansi.h \
  25 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/newlib.h \
  26 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/config.h \
  27 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/machine/ieeefp.h \
  28 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/features.h \
  29 + c:\yagarto-20121222\bin\../lib/gcc/arm-none-eabi/4.7.2/include/stdarg.h \
  30 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/reent.h \
  31 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/_ansi.h \
  32 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/_types.h \
  33 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/machine/_types.h \
  34 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/machine/_default_types.h \
  35 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/lock.h \
  36 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/types.h \
  37 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/machine/types.h \
  38 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/stdio.h \
  39 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/string.h \
  40 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/cdefs.h \
  41 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/string.h \
  42 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/stdlib.h \
  43 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/machine/stdlib.h \
  44 + c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/alloca.h \
45 ../..//econais/libwismart_mcu.h \ 45 ../..//econais/libwismart_mcu.h \
46 ../..//econais/inc/STM32F1/libwismart_irqs.h \ 46 ../..//econais/inc/STM32F1/libwismart_irqs.h \
47 ../..//econais/STM32_Libs/F1/CMSIS/CM3/DeviceSupport/ST/STM32F10x/stm32f10x.h \ 47 ../..//econais/STM32_Libs/F1/CMSIS/CM3/DeviceSupport/ST/STM32F10x/stm32f10x.h \
@@ -83,7 +83,9 @@ build/obj/main.o: main.c ../..//econais/libwismart.h \ @@ -83,7 +83,9 @@ build/obj/main.o: main.c ../..//econais/libwismart.h \
83 ../..//externalModules/lwip_v141/src/include/lwip/sys.h \ 83 ../..//externalModules/lwip_v141/src/include/lwip/sys.h \
84 ../..//externalModules/lwip_v141/port/arch/sys_arch.h \ 84 ../..//externalModules/lwip_v141/port/arch/sys_arch.h \
85 ../..//externalModules/lwip_v141/src/include/lwip/api.h \ 85 ../..//externalModules/lwip_v141/src/include/lwip/api.h \
86 - ../..//externalModules/lwip_v141/src/include/lwip/netbuf.h 86 + ../..//externalModules/lwip_v141/src/include/lwip/netbuf.h \
  87 + include/callbacks.h include/buffer.h include/json.h include/globals.h \
  88 + include/sensors.h include/module.h
87 89
88 ../..//econais/libwismart.h: 90 ../..//econais/libwismart.h:
89 91
@@ -93,11 +95,11 @@ build/obj/main.o: main.c ../..//econais/libwismart.h \ @@ -93,11 +95,11 @@ build/obj/main.o: main.c ../..//econais/libwismart.h \
93 95
94 ../..//os/ports/GCC/ARMCMx/chtypes.h: 96 ../..//os/ports/GCC/ARMCMx/chtypes.h:
95 97
96 -c:\yagarto\bin\../lib/gcc/arm-none-eabi/4.7.2/include/stddef.h: 98 +c:\yagarto-20121222\bin\../lib/gcc/arm-none-eabi/4.7.2/include/stddef.h:
97 99
98 -c:\yagarto\bin\../lib/gcc/arm-none-eabi/4.7.2/include/stdint.h: 100 +c:\yagarto-20121222\bin\../lib/gcc/arm-none-eabi/4.7.2/include/stdint.h:
99 101
100 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/stdint.h: 102 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/stdint.h:
101 103
102 ../..//os/kernel/include/chlists.h: 104 ../..//os/kernel/include/chlists.h:
103 105
@@ -153,49 +155,49 @@ c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/stdint.h: @@ -153,49 +155,49 @@ c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/stdint.h:
153 155
154 ../..//os/kernel/include/chdebug.h: 156 ../..//os/kernel/include/chdebug.h:
155 157
156 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/stdio.h: 158 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/stdio.h:
157 159
158 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/_ansi.h: 160 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/_ansi.h:
159 161
160 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/newlib.h: 162 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/newlib.h:
161 163
162 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/config.h: 164 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/config.h:
163 165
164 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/machine/ieeefp.h: 166 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/machine/ieeefp.h:
165 167
166 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/features.h: 168 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/features.h:
167 169
168 -c:\yagarto\bin\../lib/gcc/arm-none-eabi/4.7.2/include/stdarg.h: 170 +c:\yagarto-20121222\bin\../lib/gcc/arm-none-eabi/4.7.2/include/stdarg.h:
169 171
170 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/reent.h: 172 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/reent.h:
171 173
172 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/_ansi.h: 174 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/_ansi.h:
173 175
174 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/_types.h: 176 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/_types.h:
175 177
176 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/machine/_types.h: 178 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/machine/_types.h:
177 179
178 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/machine/_default_types.h: 180 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/machine/_default_types.h:
179 181
180 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/lock.h: 182 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/lock.h:
181 183
182 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/types.h: 184 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/types.h:
183 185
184 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/machine/types.h: 186 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/machine/types.h:
185 187
186 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/stdio.h: 188 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/stdio.h:
187 189
188 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/string.h: 190 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/string.h:
189 191
190 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/cdefs.h: 192 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/cdefs.h:
191 193
192 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/sys/string.h: 194 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/sys/string.h:
193 195
194 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/stdlib.h: 196 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/stdlib.h:
195 197
196 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/machine/stdlib.h: 198 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/machine/stdlib.h:
197 199
198 -c:/yagarto/lib/gcc/../../arm-none-eabi/sys-include/alloca.h: 200 +c:/yagarto-20121222/lib/gcc/../../arm-none-eabi/sys-include/alloca.h:
199 201
200 ../..//econais/libwismart_mcu.h: 202 ../..//econais/libwismart_mcu.h:
201 203
@@ -282,3 +284,15 @@ include/httpClient.h: @@ -282,3 +284,15 @@ include/httpClient.h:
282 ../..//externalModules/lwip_v141/src/include/lwip/api.h: 284 ../..//externalModules/lwip_v141/src/include/lwip/api.h:
283 285
284 ../..//externalModules/lwip_v141/src/include/lwip/netbuf.h: 286 ../..//externalModules/lwip_v141/src/include/lwip/netbuf.h:
  287 +
  288 +include/callbacks.h:
  289 +
  290 +include/buffer.h:
  291 +
  292 +include/json.h:
  293 +
  294 +include/globals.h:
  295 +
  296 +include/sensors.h:
  297 +
  298 +include/module.h:
Project/applications/smartcities/buffer.c
@@ -3,30 +3,31 @@ @@ -3,30 +3,31 @@
3 #include "buffer.h" 3 #include "buffer.h"
4 #include "globals.h" 4 #include "globals.h"
5 5
6 -void put_message(char* info, char** buf,uint32_t* index){ 6 +char** put_message(char* info, char** buf,uint32_t* index, uint32_t* buf_len){
7 7
8 uint32_t i; 8 uint32_t i;
9 i= *index; 9 i= *index;
10 -  
11 -if((BUFFER_LENGTH-1)==i) 10 +if(buf_len==i)
12 { 11 {
13 - i=0;  
14 - p[i] = chHeapAlloc(NULL,strlen(info)+1);  
15 - buf[i]=info;  
16 - i++; 12 + char** buffer=join_buf(buf, buf_len);
  13 + buffer[i]=chHeapAlloc(NULL,strlen(info)+1);
  14 + buffer[i]=info;
  15 + *index = i++;
  16 + return buffer;
17 } 17 }
18 else{ 18 else{
19 - p[i] = chHeapAlloc(NULL,strlen(info)+1);  
20 - buf[i]=info;  
21 - i++; 19 + buf[i] = chHeapAlloc(NULL,strlen(info)+1);
  20 + buf[i]=info;
  21 + *index = i++;
  22 + return buf;
22 } 23 }
23 -*index = i++; 24 +
24 } 25 }
25 26
26 int check_memory(){ 27 int check_memory(){
27 28
28 int mem_free=libwismart_GetMemFree_Ram().free; 29 int mem_free=libwismart_GetMemFree_Ram().free;
29 - int mem=20480-mem_free; 30 + int mem=25600-mem_free;
30 31
31 if(mem>=HARD_LIMIT) 32 if(mem>=HARD_LIMIT)
32 { 33 {
@@ -40,23 +41,44 @@ int check_memory(){ @@ -40,23 +41,44 @@ int check_memory(){
40 41
41 int send(char** buf, uint32_t index, char *provider_ID, char *sensor_ID){ 42 int send(char** buf, uint32_t index, char *provider_ID, char *sensor_ID){
42 43
43 - char* statement=prepare_json_observation_statement(buf, *index+1); 44 + char* statement=prepare_json_observation_statement(buf, index+1);
44 uint32_t size = strlen(statement); 45 uint32_t size = strlen(statement);
45 - uint8_t res=send_json(statement, size, char* provider_ID, char* sensor_ID);  
46 - for(int i;i<*index+1;i++){ 46 + uint8_t res=send_json(statement, size, provider_ID, sensor_ID);
  47 + int i;
  48 + for(i=0;i<index+1;i++){
47 chHeapFree(buf[i]); 49 chHeapFree(buf[i]);
48 } 50 }
49 return res; 51 return res;
50 } 52 }
51 53
52 -void destroy(char** buf){ 54 +void destroy(char** master_buf[]){
53 55
  56 +//[j] buffer index [i] string index
54 int i=0; 57 int i=0;
55 -  
56 -while(check_memory()==HARD_LIMIT)  
57 -{  
58 - chHeapFree(buf[i]); 58 +int j;
  59 +while(check_memory()!=MEMORY_OK)
  60 +{
  61 +for(j=0;j<4;j++){
  62 + if(master_buf[j]!=NULL)
  63 + chHeapFree(master_buf[j][i]);
  64 +}
59 i++; 65 i++;
60 } 66 }
61 67
62 } 68 }
  69 +
  70 +char** join_buf(char** buf, int* buf_len){
  71 + char** n_buf;
  72 + int len= *buf_len;
  73 + n_buf=chHeapalloc (NULL,sizeof (char *) * (len+1));
  74 + int i;
  75 + for(i=0; i<len;i++){
  76 + char* aux=buf[i];
  77 + n_buf[i]=chHeapAlloc(NULL,strlen(aux)+1);
  78 + n_buf[i]=aux;
  79 + chHeapFree(buf[i]);
  80 + }
  81 + chHeapFree(buf);
  82 + *buf_len=len++;
  83 + return n_buf;
  84 +}
Project/applications/smartcities/include/buffer.h
@@ -10,9 +10,10 @@ @@ -10,9 +10,10 @@
10 #define SOFT_REACHED 1 10 #define SOFT_REACHED 1
11 #define HARD_REACHED 2 11 #define HARD_REACHED 2
12 12
13 -void put_message(char* info, char** buf,uint32_t* index); 13 +char** put_message(char* info, char** buf,uint32_t* index, uint32_t* buf_len);
14 int check_memory(void); 14 int check_memory(void);
15 int send(char** buf, uint32_t index, char *provider_ID, char *sensor_ID); 15 int send(char** buf, uint32_t index, char *provider_ID, char *sensor_ID);
16 void destroy(char** buf); 16 void destroy(char** buf);
  17 +char** join_buf(char** buf, int* buf_len);
17 18
18 #endif 19 #endif
19 \ No newline at end of file 20 \ No newline at end of file
Project/applications/smartcities/main.c
@@ -5,6 +5,7 @@ @@ -5,6 +5,7 @@
5 #include "httpClient.h" 5 #include "httpClient.h"
6 #include "callbacks.h" 6 #include "callbacks.h"
7 #include "buffer.h" 7 #include "buffer.h"
  8 +#include "i2c.h"
8 9
9 #define WIFI_MODE WIFI_MODE_CLIENT 10 #define WIFI_MODE WIFI_MODE_CLIENT
10 #define NETWORK_SSID "linksys" 11 #define NETWORK_SSID "linksys"
@@ -20,60 +21,75 @@ void initLibwismart(void) @@ -20,60 +21,75 @@ void initLibwismart(void)
20 21
21 int main(void) 22 int main(void)
22 { 23 {
23 - uint32_t ind=0;  
24 - char **buffer;  
25 - buffer = malloc (sizeof (char *) * BUFFER_LENGTH);  
26 - struct wpa_param wpa;  
27 - wpa.eap_method = WISMART_EAP_METHOD_TTLS;  
28 - wpa.u.ttls.identity=WPA_USER;  
29 - wpa.u.ttls.password=WPA_PASS;  
30 - wpa.u.ttls.ca_cert=NULL; 24 + //if(libwismart_RegistryIsValueEmpty(wismart_registryKey_t* key)){
31 25
32 - struct httpHeaders head200 = { get, "/", 1, "http://www.w3.org/", 19 };  
33 - struct httpHeaders head301 = { get, "/", 1, "w3.org", 6 };  
34 - struct httpHeaders head404 = { get, "/errorerrorerror", 15, "www.w3.org" };  
35 -  
36 - initLibwismart();  
37 - libwismart_PowerSave_Enable();  
38 - libwismart_PowerSave_HigherProfile(TRUE); 26 + //}
  27 + //else {
  28 + uint32_t ind[4]={0};
  29 + char** buffers[4];
  30 + int sizes[4]={0};
  31 + int i;
  32 + for(i=0;i<4;i++){
39 33
40 - libwismart_RegisterDhcpCB(dhcp_connect_result_cb); 34 + buffers[i]=NULL;
  35 + }
  36 + struct wpa_param wpa;
  37 + wpa.eap_method = WISMART_EAP_METHOD_TTLS;
  38 + wpa.u.ttls.identity=WPA_USER;
  39 + wpa.u.ttls.password=WPA_PASS;
  40 + wpa.u.ttls.ca_cert=NULL;
  41 +
  42 + struct httpHeaders head200 = { get, "/", 1, "http://www.w3.org/", 19 };
  43 + struct httpHeaders head301 = { get, "/", 1, "w3.org", 6 };
  44 + struct httpHeaders head404 = { get, "/errorerrorerror", 15, "www.w3.org" };
  45 +
  46 + initLibwismart();
  47 + libwismart_PowerSave_Enable();
  48 + libwismart_PowerSave_HigherProfile(TRUE);
  49 +
  50 + libwismart_RegisterDhcpCB(dhcp_connect_result_cb);
41 51
42 - libwismart_WiFiInit();  
43 - //falta definir les variables de la xarxa  
44 - libwismart_WiFiConnectEnterprise(NETWORK_SSID, &wpa, wifi_connect_result_cb); 52 + libwismart_WiFiInit();
  53 + //falta definir les variables de la xarxa
  54 + libwismart_WiFiConnectEnterprise(NETWORK_SSID, &wpa, wifi_connect_result_cb);
45 55
46 - //int httpRequest(struct httpHeaders head, char* content, int content_size)  
47 - //chThdSleepMilliseconds(5000);  
48 -  
49 - //httpRequest(head200, NULL, 0);  
50 - /*httpRequest(head301, NULL, 0);  
51 - httpRequest(head404, NULL, 0);*/ 56 + //int httpRequest(struct httpHeaders head, char* content, int content_size)
  57 + //chThdSleepMilliseconds(5000);
52 58
53 - for(;;)  
54 - {  
55 - // i2c get info= data  
56 - char* data=NULL;  
57 - put_message(data, buffer ,&ind);  
58 - int res=check_memory();  
59 - if(res==SOFT_REACHED){ 59 + //httpRequest(head200, NULL, 0);
  60 + /*httpRequest(head301, NULL, 0);
  61 + httpRequest(head404, NULL, 0);*/
  62 + // i2c scans the sensors active and returns how many thay are
60 63
61 - int ok=send(buffer, ind, "", "");  
62 - if(ok==JSON_COMM_ERROR)  
63 - {  
64 - printf("wismart is not connected\r\n"); 64 + for(;;)
  65 + {
  66 +
  67 + for(i=0;i<4;i++){
  68 + // i2c gets the data and combines it with the time stamp
  69 + char* data=NULL;
  70 + put_message(data, buffers[i] ,&ind[i],sizes[i]);
  71 + int res=check_memory();
  72 + if(res==SOFT_REACHED){
  73 +
  74 + int ok=send(buffers[i], ind[i], "", "");
  75 + if(ok==JSON_COMM_ERROR)
  76 + {
  77 + printf("wismart is not connected\r\n");
  78 + }
  79 + else if( ok==JSON_OTHER_ERROR){
  80 + printf("some error ocurred\r\n");
  81 + }
  82 + else if(ok ==JSON_POST_OK){
  83 + printf(" send OK \r\n");
  84 + }
65 } 85 }
66 - else if( ok==JSON_OTHER_ERROR){  
67 - printf("some error ocurred\r\n"); 86 + else if(res==HARD_REACHED){
  87 + destroy(buffer[i]);
68 } 88 }
69 - else if(ok ==JSON_POST_OK){  
70 - printf(" send OK \r\n");  
71 } 89 }
  90 +
  91 +
  92 + chThdSleepMilliseconds(500);
72 } 93 }
73 - else if(res==HARD_REACHED){  
74 - destroy(buffer);  
75 - }  
76 - chThdSleepMilliseconds(500);  
77 - } 94 + //}
78 } 95 }
79 -