Comando para leer el Monitor, no sirve?

En tu código el agregado de esto a.trim(); resuelve el problema. trim() le quita justamente esos caracteres de LF y CR.

asi que a tu código le sumas

void loop() {
  if(Serial.available()){
    String a = Serial.readString();
    a.trimm();
    if(a.equals("cambiar")){
      Serial.print("funciona");
    }
  }
}

y funciona!!
Resta resolver el tema del timeout que para mi gusto es horrible lo que tarda en reaccionar. Por eso me gusta la versión con Serial.readStringUntil('\r')