Frage zu GY-61

Kennt sich jemand hier mit dem GY-61 aus? ich versuche ein Programm dafür zu schreiben (bzw habe es eig fertig). habe eine Beispielcode aus dem internet vverwendet und erweitert. Ich lese die Stellung aus und lasse sie mir Seriell ausgeben. Geschreiben hab ich das Programm zuerst auf einen Arduino UNO und bin jetzt gewechselt auf einen DFRduino Nano.
Bei dem UNO hatte ich immer einen Ausgabewert von 0 oder 360 im Ruhezustand. Mit den Nano habe ich jetzt aber Ausgabewerte von ca 10.
Kann das was mit dem Nano zutun haben?
Wenn nicht wie kann ich wieder zu den 0 oder 360 kommen? Ich will nicht wieder den UNO verwenden sondern weiterhin den Nano.

Hier ist mein Code.

//Analoge Eingänge
const int xPin = 0;
const int yPin = 1;
const int zPin = 2;

//Value bereich
int minVal = 265;
int maxVal = 402;


//Variablen der Achsen
double x;
double y;
double z;

int tasterPin = 8;

//Constanten der Achsen im Ruhezustand
const double constx = 360.00;
const double consty = 360.00;
const double constz = 360.00;

//Timer für das zurücksetzten der Werte
int timer = 0;

//Reguläre Abweichungsgrade 
const double abweichung = 8.00;

//Alarmierungsabweiung
double abwalarm = 5.00;
double winkel = 5.00;
double zusatz = 0.00;
int anzahl = 1;

//Alarmierung ausgeben
boolean alarm = false;

//Dioden
int ledPinx = 12;
int ledPiny = 11;
int ledPinz = 10;

int tasterEin = 0;
int gedrueckt = 0;

void setup(){
  Serial.begin(9600);
  pinMode(ledPinx, OUTPUT);
  pinMode(ledPiny, OUTPUT);
  pinMode(ledPinz, OUTPUT);
  pinMode(tasterPin, INPUT);
}

void loop(){
  
  tasterEin = digitalRead(tasterPin);
  
  if(tasterEin == 1 && gedrueckt == 0){
  gedrueckt = 1;
  winkeln();
  }
  
  if(tasterEin == 0 && gedrueckt == 1)
  gedrueckt = 0;

  //Werte auslesen
  int xRead = analogRead(xPin);
  int yRead = analogRead(yPin);
  int zRead = analogRead(zPin);

  //Convertieren der Werte für die Map
  int xAng = map(xRead, minVal, maxVal, -90, 90);
  int yAng = map(yRead, minVal, maxVal, -90, 90);
  int zAng = map(zRead, minVal, maxVal, -90, 90);

  x = RAD_TO_DEG * (atan2(-yAng, -zAng) + PI);
  y = RAD_TO_DEG * (atan2(-xAng, -zAng) + PI);
  z = RAD_TO_DEG * (atan2(-yAng, -xAng) + PI);

  //digitalWrite(ledPiny , HIGH);
  
  steuereLEDs(x, y, z);

  //Ausgabe für den Serial Monitor
  Serial.print("x: ");
  Serial.print(x);
  Serial.print(" | y: ");
  Serial.print(y);
  Serial.print(" | z: ");
  Serial.println(z);

  delay(200);//Anzeige verlangsamen
}

void winkeln(){
  if(anzahl == 4)
  anzahl = 0;
  anzahl = anzahl +1;
  
  for(int i=0; i<anzahl; i++){
    digitalWrite(ledPinz, HIGH);
    delay(200);
    digitalWrite(ledPinz, LOW);
    delay(200);
    }
  }

void steuereLEDs(double getx, double gety, double getz){
  
  double gesamtalarm = abweichung + (abwalarm*anzahl) + zusatz;
  
  
  if(getx >= gesamtalarm && getx <= constx-gesamtalarm){
  digitalWrite(ledPinx, HIGH);
  alarm = true;
  }
  else
  digitalWrite(ledPinx, LOW);
  if(gety >= gesamtalarm && gety <= consty-gesamtalarm){
  digitalWrite(ledPiny, HIGH);
  alarm = true;
  }
  else
  digitalWrite(ledPiny, LOW);

  if(alarm == true){
    Serial.println("Alarm");
    zusatz = zusatz + 5.00;
    timer = 0;
    alarm = false;
  }
  if(alarm == false && gesamtalarm > (abweichung + (abwalarm*anzahl))){
    timer = timer + 200;
    Serial.println("timer erhoeht");
    if(timer == 5000){
      zusatz = 0.00;
      timer = 0;
      Serial.println("timer zurueck gesetzt");
    }
  }
}