i have your first version where it was working I understand.
take a look, forget about var definition. see if you agree (others welcome too)
lcd.setCursor(x, 1); // draw first (top) row Left
if (peaks[x] == 0) {
lcd.setCursor(x, 1);
lcd.print("_"); // empty
lcd.setCursor(x, 0);
lcd.print("_"); // empty
}
else {
if (peaks[x]>8) { //after value 8 you need to jump to next row, correct ?
lcd.setCursor(x, 1);
lcd.write(8);
lcd.setCursor(x, 0);
lcd.write(peaks[x]-8);
}
else { //if not bigger we only occupy 1 row, correct ?
lcd.setCursor(x, 1); //position inferior row
lcd.write(peaks[x]);
lcd.setCursor(x, 0); // position superior row
lcd.print("_"); //empty
}
}