Servo returning to 0 after every loop with no input to serial monitor

@dustin_s
I have yet to see a schematic. Perhaps a refresher is required, as you haven't posted in two years? In case,

Without a schematic, we're reduced to speculating about your exact wiring arrangement. Please, no fritzing diagrams, unless excessively simple, yet accurage.
So, do you have a solid ground between power supply, Arduino, and servos?
Let's look at this:

void loop() {
  recvChar();
  Serial.println(myservo.attached());
  myservo.writeMicroseconds(1000);
  delay(1000);
  myservo.writeMicroseconds(1500);
  delay(1000);
  myservo.writeMicroseconds(1200);
  delay(1000);
  if (newData == true){
    pos = receivedChar.toInt();
    //Serial.println(pos);
    myservo.writeMicroseconds(pos);
    newData = false;
  }
}

paraphrased as:

  • get something
  • print the "attached" status
  • move/wait 3x
  • if we received something, convert a value, write it to Servo, clear flag,
  • and immediately go to top, where we repeat the get,print,move3x with wait.
    First observation. There's no time for the last positioning to take effect, the servo may not even twitch before it's back into the first of the 3 move with wait actions; at least, you need a delay(1000) at the end of the conditional, to ensure you'll see that move to pos
    Second observation. Why do the moves between the get and the check if received? It's Illogical to do so.
    Now, about that get code:
void recvChar() {
  if (Serial.available()>=8) {
    receivedChar = "";
    receivedChar_1 = Serial.read();
    receivedChar.concat(receivedChar_1);
    receivedChar_2 = Serial.read();
    receivedChar.concat(receivedChar_2);
    receivedChar_3 = Serial.read();
    receivedChar.concat(receivedChar_3);
    receivedChar_4 = Serial.read();
    receivedChar.concat(receivedChar_4);
    //Serial.println(receivedChar);
    newData = true;
  }
  delay(200);
}

Firstly, you check to see if there are 8 characters, then extract 4. all else aside, you're always behind by 4 characters. Why?
Secondly what, exactly, are you sending from Serial Monitor - do you type 1234 and hit enter? Then it matters what the Serial Monitor is configured as - does it send CR, CR/LF, or nothing when you hit ?
Thirdly, lose the delay(200). I won't even ask for your reason, it does not belong.

That's a start.