update modes at each update