The present disclosure involves a method of communicating with an implantable medical device. A programmer is provided. The programmer has a plurality of diversity antennas. The diversity antennas are configured to send wireless signals to the implantable medical device. A subset of the diversity antennas is selected. A communications link is established between the programmer and the implantable medical device through the selected subset of the diversity antennas. A link quality of the communications link is measured. A different subset of the diversity antennas is selected to communicate with the implantable medical device if the link quality falls below a predetermined threshold.