A method for communicating with an unmanned aerial vehicle, UAV, comprising: transmitting uplink data from a remote controller to the UAV (1300, 1400), the uplink data including control data for controlling operations of the UAV (1300, 1400), and synchronization information useful for synchronizing operations of the remote controller and the UAV (1300, 1400); measuring, by a downlink receiver (112, 1102) of the remote controller, a quality of downlink data provided by the UAV and one or more channel quality characteristics of each of a plurality of frequency channels to provide measured channel quality characteristics; selecting, by the downlink receiver (112, 1102) of the remote controller, a working frequency channel from the plurality of frequency channels based on the measured channel quality characteristics; receiving, by the downlink receiver (112, 1102) of the remote controller using the selected working frequency channel, downlink data provided by the UAV (1300, 1400), wherein the uplink data is encoded using a first coding scheme and the downlink data is encoded using a second different coding scheme, or wherein the uplink data is modulated using a first modulation scheme and the downlink data is modulated using a second different modulation scheme; determining, by a downlink transmitter (116, 1202) onboard the UAV (1300, 1400) and based at least in part on the measured quality of the downlink data, whether or not to change the second coding scheme and/or the second modulation scheme; and in response to a determination that the second coding scheme and/or the second modulation scheme needs to be changed, changing, by the downlink transmitter (116, 1202), the second coding scheme and/or the second modulation scheme. transmitting uplink data from a remote controller to the UAV (1300, 1400), the uplink data including control data for controlling operations of the UAV (1300, 1400), and synchronization information useful for synchronizing operations of the remote controller and the UAV (1300, 1400); measuring, by a downlink receiver (112, 1102) of the remote controller, a quality of downlink data provided by the UAV and one or more channel quality characteristics of each of a plurality of frequency channels to provide measured channel quality characteristics; selecting, by the downlink receiver (112, 1102) of the remote controller, a working frequency channel from the plurality of frequency channels based on the measured channel quality characteristics; receiving, by the downlink receiver (112, 1102) of the remote controller using the selected working frequency channel, downlink data provided by the UAV (1300, 1400), wherein the uplink data is encoded using a first coding scheme and the downlink data is encoded using a second different coding scheme, or wherein the uplink data is modulated using a first modulation scheme and the downlink data is modulated using a second different modulation scheme; determining, by a downlink transmitter (116, 1202) onboard the UAV (1300, 1400) and based at least in part on the measured quality of the downlink data, whether or not to change the second coding scheme and/or the second modulation scheme; and in response to a determination that the second coding scheme and/or the second modulation scheme needs to be changed, changing, by the downlink transmitter (116, 1202), the second coding scheme and/or the second modulation scheme.