updates to controller logic to use packets