//TODO move to own file int ICACHE_FLASH_ATTR http_dht_api_read(http_connection *c) { NODE_DBG("http_dht_api_read"); //wait for whole body if(c->state <HTTPD_STATE_BODY_END) return HTTPD_CGI_MORE; //write headers http_SET_HEADER(c,HTTP_CONTENT_TYPE,JSON_CONTENT_TYPE); http_response_OK(c); dht_data data = dht22_read(); write_json_object_start(c); write_json_pair_float(c,"temp",data.temp); write_json_list_separator(c); write_json_pair_float(c,"hum",data.hum); write_json_object_end(c); return HTTPD_CGI_DONE; }
static void ICACHE_FLASH_ATTR sensor_read_task(os_event_t *e){ if(e->sig != SENSOR_TASK_SIG) return; //not our signal dht22_read(&global_sensor_data.dht22); bmp180_read(&global_sensor_data.bmp180); }