Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void configureE2230() {
- node.writeSingleRegister(0xFF, 0);
- node.writeSingleRegister(0xA2, 65496);
- node.writeSingleRegister(0xA8, 10);
- node.writeSingleRegister(0x11,42330);
- }
- void send_config_page_setup_logger (boolean timeconfigure,int yearconfigure,int monthconfigure,int dayconfigure,int hourconfigure,int minuteconfigure,int secondconfigure){
- uint16_t setupvalue;
- if (logstatewrite){
- bitWrite(setupvalue,2,1);
- }else{
- bitWrite(setupvalue,2,0);
- }
- node.writeSingleRegister(0xFF, 0);
- node.writeSingleRegister(0xFF,setupvalue);
- if (timeconfigure){
- //Year
- node.writeSingleRegister(0x104, yearconfigure);
- //Month
- node.writeSingleRegister(0x105, monthconfigure);
- //Day
- node.writeSingleRegister(0x106, dayconfigure);
- //Hours
- node.writeSingleRegister(0x107, hourconfigure);
- //Minutes
- node.writeSingleRegister(0x108, minuteconfigure);
- //Seconds
- node.writeSingleRegister(0x109, secondconfigure);
- }
- node.writeSingleRegister(0x10,logginginterval);
- node.writeSingleRegister(0x11,42330);
- delay(Mdelay);
- }
- void send_configure_logger_html()
- {
- if (server.args() > 0 ) // Save Settings
- {
- log_user_time = false;
- for ( uint8_t i = 0; i < server.args(); i++ ) {
- if (server.argName(i) == "x_configuretime") log_user_time = true;
- if (server.argName(i) == "x_year") log_year = (server.arg(i).toInt());
- if (server.argName(i) == "x_month") log_month = server.arg(i).toInt();
- if (server.argName(i) == "x_day") log_day = server.arg(i).toInt();
- if (server.argName(i) == "x_hour") log_hour = server.arg(i).toInt();
- if (server.argName(i) == "x_minute") log_minute = server.arg(i).toInt();
- if (server.argName(i) == "x_second") log_second = server.arg(i).toInt();
- }
- }
- server.send ( 200, "text/html", PAGE_Root_configloginternal );
- if (config.serial == true){
- Serial.println(__FUNCTION__);
- }
- }
- void send_configure_html()
- {
- if (server.args() > 0 ) // Save Settings
- {
- logstatewrite = false;
- boolean configuretime = false;
- int yearconfig;
- int monthconfig;
- int dayconfig;
- int hourconfig;
- int minuteconfig;
- int secondconfig;
- for ( uint8_t i = 0; i < server.args(); i++ ) {
- if (server.argName(i) == "x_logginginterval") logginginterval = server.arg(i).toInt();
- if (server.argName(i) == "x_loggingstate") logstatewrite = true;
- if (server.argName(i) == "x_configuretime") configuretime = true;
- if (server.argName(i) == "x_year") yearconfig = (server.arg(i).toInt()-2000);
- if (server.argName(i) == "x_month") monthconfig = server.arg(i).toInt();
- if (server.argName(i) == "x_day") dayconfig = server.arg(i).toInt();
- if (server.argName(i) == "x_hour") hourconfig = server.arg(i).toInt();
- if (server.argName(i) == "x_minute") minuteconfig = server.arg(i).toInt();
- if (server.argName(i) == "x_second") secondconfig = server.arg(i).toInt();
- }
- server.send ( 200, "text/html", PAGE_WaitAndReload_loggerconf);
- send_config_page_setup_logger(configuretime,yearconfig,monthconfig,dayconfig,hourconfig,minuteconfig,secondconfig);
- }
- server.send ( 200, "text/html", PAGE_Root_configlog );
- if (config.serial == true){
- Serial.println(__FUNCTION__);
- }
- }
- void send_root_page_clearmem (){
- // Enable admin mode
- node.writeSingleRegister(0xFF, 0);
- delay(Mdelay);
- node.writeSingleRegister(0x118, 42330);
- delay(Mdelay);
- }
- void send_root_page_setup (){
- // Enable admin mode
- node.writeSingleRegister(0xFF, 0);
- delay(Mdelay);
- // start from beginning
- node.writeSingleRegister(0x119, 0);
- delay(Mdelay);
- if (recordvalue >= 1){
- node.writeSingleRegister(0x11A, (recordvalue-1)*16);
- }else{
- node.writeSingleRegister(0x11A, 0);
- }
- delay(Mdelay);
- }
- void send_root_page_reboot (){
- recordvalue = 0;
- node.writeSingleRegister(0x11,42330);
- delay(Mdelay);
- }
- void send_root_page_download ()
- {
- byte i;
- byte y;
- int j;
- int mask;
- int seconds[5];
- int minutes[5];
- int hours[4];
- int days[4];
- int months[3];
- int years[5];
- unsigned long unixtimestamp;
- unsigned int unixfirst;
- unsigned int unixsecond;
- unsigned long timestamp;
- unsigned int timefirst;
- unsigned int timesecond;
- float temperature;
- float humidity;
- unsigned int CO2;
- uint8_t seconds_final = 0;
- uint8_t minutes_final = 0;
- uint8_t hours_final = 0;
- uint8_t days_final = 0;
- uint8_t months_final = 0;
- uint8_t years_final = 0;
- uint8_t result;
- float humidityvalid;
- float temperaturevalid;
- node.clearTransmitBuffer();
- result = node.readHoldingRegisters(0x11B, 8);
- delay(300);
- if (result == node.ku8MBSuccess){
- timefirst = node.getResponseBuffer(0);
- timesecond = node.getResponseBuffer(1);
- timestamp = timefirst << 16 | timesecond;
- //Create seconds
- for ( i = 0, y = 0; i <= 5; i++) {
- seconds[y] = bitRead(timestamp, i);
- y++;
- }
- unixfirst = node.getResponseBuffer(5);
- unixsecond = node.getResponseBuffer(6);
- unixtimestamp = unixfirst << 16 | unixsecond;
- mask = 0x1;
- for(j = 0; j <= 5; j++){
- if( seconds[j] == 1) seconds_final |= mask;
- mask = mask << 1;
- }
- //Create minutes
- for ( i = 6, y = 0; i <= 11; i++) {
- minutes[y] = bitRead(timestamp, i);
- y++;
- }
- mask = 0x1;
- for(j = 0; j <= 5; j++){
- if( minutes[j] == 1) minutes_final |= mask;
- mask = mask << 1;
- }
- //Create hours
- for ( i = 12, y = 0; i <= 16; i++) {
- hours[y] = bitRead(timestamp, i);
- y++;
- }
- mask = 0x1;
- for(j = 0; j <= 4; j++){
- if( hours[j] == 1) hours_final |= mask;
- mask = mask << 1;
- }
- //Create days
- for ( i = 17, y = 0; i <= 21; i++) {
- days[y] = bitRead(timestamp, i);
- y++;
- }
- mask = 0x1;
- for(j = 0; j <= 4; j++){
- if( days[j] == 1) days_final |= mask;
- mask = mask << 1;
- }
- //Create months
- for ( i = 22,y = 0; i <= 25; i++ ) {
- months[y] = bitRead(timestamp, i);
- y++;
- }
- mask = 0x1;
- for(j = 0; j <= 3; j++){
- if( months[j] == 1) months_final |= mask;
- mask = mask << 1;
- }
- //Create years
- for ( i = 26, y = 0; i <= 31; i++ ) {
- years[y] = bitRead(timestamp, i);
- y++;
- }
- mask = 0x1;
- for(j = 0; j <= 5; j++){
- if( years[j] == 1) years_final |= mask;
- mask = mask << 1;
- }
- temperature = node.getResponseBuffer(2);
- humidity = node.getResponseBuffer(3);
- CO2 = node.getResponseBuffer(4);
- if (config.serial) {
- Serial.print("Time 0 byte: ");
- Serial.println(timefirst,HEX);
- Serial.print("Time 1 byte: ");
- Serial.println(timesecond,HEX);
- Serial.print("Time 4 byte: ");
- Serial.println(timestamp);
- Serial.print("UNIX 0 byte: ");
- Serial.println(unixfirst);
- Serial.print("UNIX 1 byte: ");
- Serial.println(unixsecond);
- Serial.print("UNIX 4 byte: ");
- Serial.println(unixtimestamp);
- Serial.print(" Time : ");
- Serial.print(years_final+2000);
- Serial.print("/");
- Serial.print(months_final);
- Serial.print("/");
- Serial.print(days_final);
- Serial.print(" ");
- Serial.print(hours_final);
- Serial.print(":");
- Serial.print(minutes_final);
- Serial.print(":");
- Serial.println(seconds_final);
- Serial.print("Temperature raw: ");
- Serial.println(temperature);
- Serial.print("Humidity raw: ");
- Serial.println(humidity);
- Serial.print("CO2 raw: ");
- Serial.println(CO2);
- Serial.print("CRC: ");
- Serial.println(node.getResponseBuffer(7));
- }
- humidityvalid = humidity / 100;
- temperaturevalid = temperature / 100;
- if (result == node.ku8MBSuccess){
- String values ="";
- values += "x_temperature|" + String(temperaturevalid,1) + "|div\n";
- values += "x_humidity|" + String(humidityvalid,1) + "|div\n";
- values += "x_CO2|" + (String) CO2 + "|div\n";
- values += "x_timestamp|" + (String) unixtimestamp + "|div\n";
- server.send ( 200, "text/plain", values);
- }
- node.clearResponseBuffer();
- //Restart
- //node.writeSingleRegister(0x11, 42330);
- }
- }
- void sync (){
- NTPRefresh();
- Second_Tick();
- node.clearTransmitBuffer();
- // Enable admin mode
- node.writeSingleRegister(0xFF, 0);
- //Year
- node.writeSingleRegister(0x104, (DateTime.year-2000));
- //Month
- node.writeSingleRegister(0x105, DateTime.month);
- //Day
- node.writeSingleRegister(0x106, DateTime.day);
- //Hours
- node.writeSingleRegister(0x107, DateTime.hour);
- //Minutes
- node.writeSingleRegister(0x108, DateTime.minute);
- //Seconds
- node.writeSingleRegister(0x109, DateTime.second);
- //Restart
- node.writeSingleRegister(0x11, 42330);
- }
- void send_first_data_modbus()
- {
- uint8_t result;
- unsigned int firstpart;
- unsigned int secondpart;
- float percentage;
- float responsemem[3];
- result = node.readHoldingRegisters(0x19C, 11);
- if (result == node.ku8MBSuccess){
- firstpart = node.getResponseBuffer(0);
- secondpart = node.getResponseBuffer(1);
- node.clearResponseBuffer();
- // How much data?
- responsemem[0] = firstpart >> 16 | secondpart;
- percentage = responsemem[0] / 32768 * 100;
- String values ="";
- values += "x_savedrecords|" + String(responsemem[0],0) + "|div\n";
- values += "x_saveddata|" + String(percentage,3) + "|div\n";
- values += "x_recordvalue|" + (String) recordvalue + "|input\n";
- server.send ( 200, "text/plain", values);
- }
- }
- void send_logger_config_page (){
- String values = "";
- File csvlogfile = SPIFFS.open("/data.csv", "r");
- if (csvlogfile){
- String fsize = String (csvlogfile.size());
- float convertedfsize = fsize.toFloat()/1000;
- float percentage = convertedfsize / 200 * 100;
- csvlogfile.close();
- values += "x_fsize|" + (String) convertedfsize + "|div\n";
- values += "x_fpercentage|" + (String) percentage + "|div\n";
- }
- values += "x_configuretime|" + (String) (log_user_time ? "checked" : "") + "|chk\n";
- values += "x_ntptime|" + (String) DateTime.hour + ":" + (String) + DateTime.minute + ":" + (String) DateTime.second + "|div\n";;
- values += "x_ntpdate|" + (String) DateTime.year + "-" + (String) DateTime.month + "-" + (String) DateTime.day + "|div\n";
- values += "x_timestamp_hh_mm_ss|" ;
- values += (String) log_hour + (String) ":" ;
- values += (String) log_minute + (String) ":" ;
- values += (String) log_second + "|div\n";
- values += "x_timestamp_yyyy_mm_dd|";
- values += (String) log_year + (String) "-" ;
- values += (String) log_month + (String) "-" ;
- values += (String) log_day + "|div\n";
- server.send ( 200, "text/plain", values);
- }
- void send_config_page_modbus ()
- {
- float response[7];
- float responsemem[3];
- float datemem[5];
- float datalogginginterval;
- float loggertemp;
- float loggerhum;
- int firstregs;
- unsigned int firstpart;
- unsigned int secondpart;
- uint8_t result;
- uint8_t results;
- result = node.readHoldingRegisters(0xFF, 11);
- if (result == node.ku8MBSuccess){
- if(config.serial){
- Serial.print("[0] ");
- Serial.print(node.getResponseBuffer(0));
- }
- response[0] = node.getResponseBuffer(0);
- if(config.serial){
- Serial.print(" ");
- }
- if(config.serial){
- Serial.print(" [1] ");
- Serial.print(node.getResponseBuffer(1));
- }
- response[1] = (node.getResponseBuffer(1)) ;
- if(config.serial){
- Serial.print(" ");
- }
- if(config.serial){
- Serial.print(" [2] ");
- Serial.print(node.getResponseBuffer(2));
- }
- response[2] = (node.getResponseBuffer(2));
- if(config.serial){
- Serial.print(" ");
- }
- if(config.serial){
- Serial.print(" [3] ");
- Serial.println(node.getResponseBuffer(3));
- }
- response[3] = node.getResponseBuffer(3);
- if(config.serial){
- Serial.print(" ");
- }
- if(config.serial){
- Serial.print(" [4] ");
- Serial.println(node.getResponseBuffer(4));
- }
- datalogginginterval = node.getResponseBuffer(4);
- if(config.serial){
- Serial.print(" ");
- }
- //Years
- response[4] = node.getResponseBuffer(5) + 2000;
- //Months
- response[5] = node.getResponseBuffer(6);
- //Days
- response[6] = node.getResponseBuffer(7);
- //Hours
- response[7] = node.getResponseBuffer(8);
- //Minutes
- response[8] = node.getResponseBuffer(9);
- //Seconds
- response[9] = node.getResponseBuffer(10);
- }
- node.clearResponseBuffer();
- delay(1200);
- results = node.readHoldingRegisters(0x19C, 11) ;
- if (results == node.ku8MBSuccess){
- firstpart = node.getResponseBuffer(0);
- secondpart = node.getResponseBuffer(1);
- // How much data?
- responsemem[0] = firstpart >> 16 | secondpart;
- // Temperature
- responsemem[1] = node.getResponseBuffer(2);
- // Humidity
- responsemem[2] = node.getResponseBuffer(3);
- // CO2
- responsemem[4] = node.getResponseBuffer(4);
- // Year
- datemem[0] = node.getResponseBuffer(5);
- //Month
- datemem[1] = node.getResponseBuffer(6);
- //Day
- datemem[2] = node.getResponseBuffer(7);
- //Hours
- datemem[3] = node.getResponseBuffer(8);
- //Minutes
- datemem[4] = node.getResponseBuffer(9);
- //Seconds
- datemem[5] = node.getResponseBuffer(10);
- }
- node.clearResponseBuffer();
- delay(Mdelay);
- loggertemp = response[1]/100;
- loggerhum = response[2]/100;
- String values ="";
- bool datalogging;
- bool overwriting;
- unsigned int statusbar;
- String yearstring;
- String monthstring;
- String daystring;
- String secondstring;
- String minutestring;
- String hourstring;
- float percentage;
- float tempfrommemory;
- float humfrommemory;
- tempfrommemory = responsemem[1] / 100;
- humfrommemory = responsemem[2] / 100;
- percentage = responsemem[0] / 32768 * 100;
- if (results == node.ku8MBSuccess && result == node.ku8MBSuccess){
- values += "x_logginginterval|" + String(datalogginginterval,0) + "|input\n";
- values += "x_savedrecords|" + String(responsemem[0],0) + "|div\n";
- values += "x_saveddata|" + String(percentage,3) + "|div\n";
- if (responsemem[1] != 0){
- values += "x_latestmemC|" + String(tempfrommemory,2) + "|div\n";
- }else{
- values += "x_latestmemC|" + (String) "-" + "|div\n";
- }
- if (responsemem[2] != 0){
- values += "x_latestmemRH|" + String(humfrommemory,2) + "|div\n";
- }else{
- values += "x_latestmemRH|" + (String) "-" + "|div\n";
- }
- if (responsemem[4] != 0){
- values += "x_latestmemPPM|" + String(responsemem[4],0) + "|div\n";
- }else{
- values += "x_latestmemPPM|" + (String) "-" + "|div\n";
- }
- if (datemem[0] >= 0){
- values += "x_latestmemdate|" + String((datemem[0]+2000),0) + " - ";
- }else{
- values += "x_latestmemdate|" + (String) "0" + (String) " - ";
- }
- if (datemem[1] < 10){
- values += "0" + String(datemem[1],0) + (String) " - " ;
- }else{
- values += String(datemem[1],0) + (String) " - " ;
- }
- if (datemem[2] < 10){
- values += "0" + String(datemem[2],0) + "|div\n";
- }else{
- values += String(datemem[2],0) + "|div\n";
- }
- if (datemem[3] < 10){
- values += "x_latestmemtime|" + (String) "0" + String(datemem[3],0) + " : ";
- }else{
- values += "x_latestmemtime|" + String(datemem[3],0) + " : ";
- }
- if (datemem[4] < 10){
- values += "0" + String(datemem[4],0) + (String) " : " ;
- }else{
- values += String(datemem[1],0) + (String) " : " ;
- }
- if (datemem[5] < 10){
- values += "0" + String(datemem[5],0) + "|div\n";
- }else{
- values += String(datemem[2],0) + "|div\n";
- }
- if (response[0] != 0){
- values += "x_temperature|" + String(loggertemp,2) + "|div\n";
- }else{
- values += "x_temperature|" + (String) "-" + "|div\n";
- }
- if (response[0] != 0){
- values += "x_humidity|" + String(loggerhum,2) + "|div\n";
- }else{
- values += "x_humidity|" + (String) "-" + "|div\n";
- }
- if (response[0] != 0){
- values += "x_dewpoint|" + String(response[3],0) + "|div\n";
- }else{
- values += "x_dewpoint|" + (String) "-" + "|div\n";
- }
- if (response[0] == 290){
- datalogging = true;
- overwriting = true;
- }
- statusbar = response[0];
- if (bitRead(statusbar,8) == 1){
- values += "x_loggerstate|" + (String) "Logging" + "|div\n";
- }else{
- values += "x_loggerstate|" + (String) "Configuration" + "|div\n";
- }
- boolean logstate;
- if (bitRead(statusbar,2) == 1){
- logstate = true;
- }else{
- logstate = true;
- }
- values += "x_loggingstate|" + (String) (logstate ? "checked" : "") + "|chk\n";
- if (bitRead(statusbar,5) == 1){
- values += "x_memoryfull|" + (String) "True" + "|div\n";
- }else{
- values += "x_memoryfull|" + (String) "False" + "|div\n";
- }
- if (response[4] > 0){
- yearstring = String((response[4]),0);
- }else{
- yearstring = String(response[4],0);
- }
- if (response[5] < 10){
- monthstring = (String) "0" +String(response[5],0);
- }else{
- monthstring = String(response[5],0);
- }
- monthstring.trim();
- if (response[6] < 10){
- daystring = (String) "0"+String(response[6],0);
- }else{
- daystring = String(response[6],0);
- }
- daystring.trim();
- if (response[9] < 10){
- secondstring = (String) "0"+String(response[9],0);
- }else{
- secondstring = String(response[9],0);
- }
- secondstring.trim();
- if (response[8] < 10){
- minutestring = (String) "0"+String(response[8],0);
- }else{
- minutestring = String(response[8],0);
- }
- minutestring.trim();
- if (response[7] < 10){
- hourstring = (String) "0"+String(response[7],0);
- }else{
- hourstring = String(response[7],0);
- }
- hourstring.trim();
- values += "x_timestamp_hh_mm_ss|" ;
- values += hourstring + (String) ":" ;
- values += minutestring + (String) ":" ;
- values += secondstring + "|div\n";
- values += "x_timestamp_yyyy_mm_dd|";
- values += yearstring + (String) "-" ;
- values += monthstring + (String) "-" ;
- values += daystring + "|div\n";
- }
- values += "x_ntptime|" ;
- if (DateTime.hour < 10){
- values += (String) "0" + (String) DateTime.hour + ":" ;
- }else{
- values += (String) DateTime.hour + ":" ;
- }
- if (DateTime.minute < 10){
- values += (String) "0" + (String) DateTime.minute + ":" ;
- }else{
- values += (String) DateTime.minute + ":" ;
- }
- if (DateTime.second < 10){
- values += (String) "0" + (String) DateTime.second + " " + "|div\n";
- }else{
- values += (String) DateTime.second + " " + "|div\n";
- }
- values += "x_ntpdate|" + (String) DateTime.year + "-" ;
- if (DateTime.month < 10){
- values += (String) "0" + (String) DateTime.month + "-" ;
- }
- else{
- values += (String) DateTime.month + "-" ;
- }
- if (DateTime.day < 10){
- values += (String) "0" + (String) DateTime.day + "|div\n";
- }
- else{
- values += (String) DateTime.day + "|div\n";
- }
- server.send ( 200, "text/plain", values);
- }
- void send_root_page_modbus ()
- {
- float response[7];
- float responsemem[3];
- float datemem[5];
- float loggertemp;
- float loggerhum;
- int firstregs;
- unsigned int firstpart;
- unsigned int secondpart;
- uint8_t result;
- uint8_t results;
- result = node.readHoldingRegisters(0xFF, 11);
- if (result == node.ku8MBSuccess){
- if(config.serial){
- Serial.print("[0] ");
- Serial.print(node.getResponseBuffer(0));
- }
- response[0] = node.getResponseBuffer(0);
- if(config.serial){
- Serial.print(" ");
- }
- if(config.serial){
- Serial.print(" [1] ");
- Serial.print(node.getResponseBuffer(1));
- }
- response[1] = (node.getResponseBuffer(1)) ;
- if(config.serial){
- Serial.print(" ");
- }
- if(config.serial){
- Serial.print(" [2] ");
- Serial.print(node.getResponseBuffer(2));
- }
- response[2] = (node.getResponseBuffer(2));
- if(config.serial){
- Serial.print(" ");
- }
- if(config.serial){
- Serial.print(" [3] ");
- Serial.println(node.getResponseBuffer(3));
- }
- response[3] = node.getResponseBuffer(3);
- if(config.serial){
- Serial.print(" ");
- }
- //Years
- response[4] = node.getResponseBuffer(5) + 2000;
- //Months
- response[5] = node.getResponseBuffer(6);
- //Days
- response[6] = node.getResponseBuffer(7);
- //Hours
- response[7] = node.getResponseBuffer(8);
- //Minutes
- response[8] = node.getResponseBuffer(9);
- //Seconds
- response[9] = node.getResponseBuffer(10);
- }
- node.clearResponseBuffer();
- delay(1200);
- results = node.readHoldingRegisters(0x19C, 11) ;
- if (results == node.ku8MBSuccess){
- firstpart = node.getResponseBuffer(0);
- secondpart = node.getResponseBuffer(1);
- // How much data?
- responsemem[0] = firstpart >> 16 | secondpart;
- // Temperature
- responsemem[1] = node.getResponseBuffer(2);
- // Humidity
- responsemem[2] = node.getResponseBuffer(3);
- // CO2
- responsemem[4] = node.getResponseBuffer(4);
- // Year
- datemem[0] = node.getResponseBuffer(5);
- //Month
- datemem[1] = node.getResponseBuffer(6);
- //Day
- datemem[2] = node.getResponseBuffer(7);
- //Hours
- datemem[3] = node.getResponseBuffer(8);
- //Minutes
- datemem[4] = node.getResponseBuffer(9);
- //Seconds
- datemem[5] = node.getResponseBuffer(10);
- }
- node.clearResponseBuffer();
- delay(Mdelay);
- loggertemp = response[1]/100;
- loggerhum = response[2]/100;
- String values ="";
- bool datalogging;
- bool overwriting;
- unsigned int statusbar;
- String yearstring;
- String monthstring;
- String daystring;
- String secondstring;
- String minutestring;
- String hourstring;
- float percentage;
- float tempfrommemory;
- float humfrommemory;
- tempfrommemory = responsemem[1] / 100;
- humfrommemory = responsemem[2] / 100;
- percentage = responsemem[0] / 32768 * 100;
- if (result == node.ku8MBSuccess && results == node.ku8MBSuccess){
- values += "x_savedrecords|" + String(responsemem[0],0) + "|div\n";
- values += "x_saveddata|" + String(percentage,3) + "|div\n";
- if (responsemem[1] != 0){
- values += "x_latestmemC|" + String(tempfrommemory,2) + "|div\n";
- }else{
- values += "x_latestmemC|" + (String) "-" + "|div\n";
- }
- if (responsemem[2] != 0){
- values += "x_latestmemRH|" + String(humfrommemory,2) + "|div\n";
- }else{
- values += "x_latestmemRH|" + (String) "-" + "|div\n";
- }
- if (responsemem[4] != 0){
- values += "x_latestmemPPM|" + String(responsemem[4],0) + "|div\n";
- }else{
- values += "x_latestmemPPM|" + (String) "-" + "|div\n";
- }
- if (datemem[0] >= 0){
- values += "x_latestmemdate|" + String((datemem[0]+2000),0) + " - ";
- }else{
- values += "x_latestmemdate|" + (String) "0" + (String) " - ";
- }
- if (datemem[1] < 10){
- values += "0" + String(datemem[1],0) + (String) " - " ;
- }else{
- values += String(datemem[1],0) + (String) " - " ;
- }
- if (datemem[2] < 10){
- values += "0" + String(datemem[2],0) + "|div\n";
- }else{
- values += String(datemem[2],0) + "|div\n";
- }
- if (datemem[3] < 10){
- values += "x_latestmemtime|" + (String) "0" + String(datemem[3],0) + " : ";
- }else{
- values += "x_latestmemtime|" + String(datemem[3],0) + " : ";
- }
- if (datemem[4] < 10){
- values += "0" + String(datemem[4],0) + (String) " : " ;
- }else{
- values += String(datemem[1],0) + (String) " : " ;
- }
- if (datemem[5] < 10){
- values += "0" + String(datemem[5],0) + "|div\n";
- }else{
- values += String(datemem[2],0) + "|div\n";
- }
- if (response[0] != 0){
- values += "x_temperature|" + String(loggertemp,2) + "|div\n";
- }else{
- values += "x_temperature|" + (String) "-" + "|div\n";
- }
- if (response[0] != 0){
- values += "x_humidity|" + String(loggerhum,2) + "|div\n";
- }else{
- values += "x_humidity|" + (String) "-" + "|div\n";
- }
- if (response[0] != 0){
- values += "x_dewpoint|" + String(response[3],0) + "|div\n";
- }else{
- values += "x_dewpoint|" + (String) "-" + "|div\n";
- }
- if (response[0] == 290){
- datalogging = true;
- overwriting = true;
- }
- statusbar = response[0];
- if (bitRead(statusbar,8) == 1){
- values += "x_loggerstate|" + (String) "Logging" + "|div\n";
- }else{
- values += "x_loggerstate|" + (String) "Configuration" + "|div\n";
- }
- if (bitRead(statusbar,2) == 1){
- values += "x_loggingstate|" + (String) "Enabled" + "|div\n";
- }else{
- values += "x_loggingstate|" + (String) "Disabled" + "|div\n";
- }
- if (bitRead(statusbar,5) == 1){
- values += "x_memoryfull|" + (String) "True" + "|div\n";
- }else{
- values += "x_memoryfull|" + (String) "False" + "|div\n";
- }
- if (response[4] > 0){
- yearstring = String((response[4]),0);
- }else{
- yearstring = String(response[4],0);
- }
- if (response[5] < 10){
- monthstring = (String) "0" +String(response[5],0);
- }else{
- monthstring = String(response[5],0);
- }
- monthstring.trim();
- if (response[6] < 10){
- daystring = (String) "0"+String(response[6],0);
- }else{
- daystring = String(response[6],0);
- }
- daystring.trim();
- if (response[9] < 10){
- secondstring = (String) "0"+String(response[9],0);
- }else{
- secondstring = String(response[9],0);
- }
- secondstring.trim();
- if (response[8] < 10){
- minutestring = (String) "0"+String(response[8],0);
- }else{
- minutestring = String(response[8],0);
- }
- minutestring.trim();
- if (response[7] < 10){
- hourstring = (String) "0"+String(response[7],0);
- }else{
- hourstring = String(response[7],0);
- }
- hourstring.trim();
- values += "x_timestamp_hh_mm_ss|" ;
- values += hourstring + (String) ":" ;
- values += minutestring + (String) ":" ;
- values += secondstring + "|div\n";
- values += "x_timestamp_yyyy_mm_dd|";
- values += yearstring + (String) "-" ;
- values += monthstring + (String) "-" ;
- values += daystring + "|div\n";
- }
- values += "x_ntptime|" ;
- if (DateTime.hour < 10){
- values += (String) "0" + (String) DateTime.hour + ":" ;
- }else{
- values += (String) DateTime.hour + ":" ;
- }
- if (DateTime.minute < 10){
- values += (String) "0" + (String) DateTime.minute + ":" ;
- }else{
- values += (String) DateTime.minute + ":" ;
- }
- if (DateTime.second < 10){
- values += (String) "0" + (String) DateTime.second + " " + "|div\n";
- }else{
- values += (String) DateTime.second + " " + "|div\n";
- }
- values += "x_ntpdate|" + (String) DateTime.year + "-" ;
- if (DateTime.month < 10){
- values += (String) "0" + (String) DateTime.month + "-" ;
- }
- else{
- values += (String) DateTime.month + "-" ;
- }
- if (DateTime.day < 10){
- values += (String) "0" + (String) DateTime.day + "|div\n";
- }
- else{
- values += (String) DateTime.day + "|div\n";
- }
- server.send ( 200, "text/plain", values);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement