update data structs and controller