String message;
String address;
String messageLength;
String receivedMessage;
String ratio;
int h;
int variableIndex;
unsigned long time1;
String currentChar;
String currentString;

void setup () {

Serial.begin(9600);
Serial.println("BEGIN");
Serial.println();

pinMode(25, INPUT_PULLUP);
pinMode(26, INPUT_PULLUP);
pinMode(27, INPUT_PULLUP);

}

void loop () {

if (digitalRead(25) == LOW) {
    if (millis() > time1) {
      message = "+RCV=50,5,HELLO,-99";
      read();
      time1 = millis() + 500;
    }
  }

  if (digitalRead(26) == LOW) {
    if (millis() > time1) {
      message = "+RCV=544,58,HELL,-98";
      read();
      time1 = millis() + 500;
    }
  }

} // loop end


void read () {

  if (message.indexOf("RCV") != -1) {
    message = message + ",";
    variableIndex = 0;
    for (h = 0; h < message.length(); h++) {
      currentChar = message[h];
      if (currentChar == ",") {
        currentChar = "";
        if (variableIndex == 0) {
          address = currentString;
        }
        if (variableIndex == 1) {
          messageLength = currentString;
        }
        if (variableIndex == 2) {
          receivedMessage = currentString;
        }
        if (variableIndex == 3) {
          ratio = currentString;
        }
        variableIndex++;
        currentString = "";
      }
      currentString = currentString + currentChar;
    } // for end

    Serial.println(address);
    Serial.println(messageLength);
    Serial.println(receivedMessage);
    Serial.println(ratio);
    Serial.println("***************************");

  }








} // read end






esp:0
esp:2
esp:4
esp:5
esp:12
esp:13
esp:14
esp:15
esp:16
esp:17
esp:18
esp:19
esp:21
esp:22
esp:23
esp:25
esp:26
esp:27
esp:32
esp:33
esp:34
esp:35
esp:3V3
esp:EN
esp:VP
esp:VN
esp:GND.1
esp:D2
esp:D3
esp:CMD
esp:5V
esp:GND.2
esp:TX
esp:RX
esp:GND.3
esp:D1
esp:D0
esp:CLK
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r
btn2:1.l
btn2:2.l
btn2:1.r
btn2:2.r