added readback and some tuning