An electronic device, comprising: one or more antennas; a clock circuit that is configured to provide a clock; and an interface circuit communicatively coupled to the one or more antennas and the clock circuit, wherein the interface circuit is configured to: receive, from the one or more antennas, packets associated with a second electronic device, wherein a given packet includes a transmit time, based on a second clock in the second electronic device, when the second electronic device transmitted the given packet; store receive times when the packets were received, wherein the receive times are added to the packets by a physical layer associated with the interface circuit, wherein the receive times are based on the clock; calculate, based on differences between the transmit times and the receive times, relative drift as a function of time between the clock and the second clock, wherein a given difference is between a given transmit time and a given receive time for a given packet; adjust, based on the relative drift, the clock circuit that provides the clock to eliminate the relative drift; determine a remaining time offset between the clock and the second clock; receive, from the one or more antennas, information associated with the second electronic device specifying a future time when the electronic device is to perform a playback operation; and modify the future time based on the remaining time offset to determine a corrected future time, wherein the electronic device is configured to perform the playback operation at the corrected future time, wherein the given transmit time and the given receive time are stored on opposite ends of a payload of the given packet, and wherein the electronic device is configured to determine a duration of the payload and the interface circuit is configured to add the duration to the remaining offset time. one or more antennas; a clock circuit that is configured to provide a clock; and an interface circuit communicatively coupled to the one or more antennas and the clock circuit, wherein the interface circuit is configured to: receive, from the one or more antennas, packets associated with a second electronic device, wherein a given packet includes a transmit time, based on a second clock in the second electronic device, when the second electronic device transmitted the given packet; store receive times when the packets were received, wherein the receive times are added to the packets by a physical layer associated with the interface circuit, wherein the receive times are based on the clock; calculate, based on differences between the transmit times and the receive times, relative drift as a function of time between the clock and the second clock, wherein a given difference is between a given transmit time and a given receive time for a given packet; adjust, based on the relative drift, the clock circuit that provides the clock to eliminate the relative drift; determine a remaining time offset between the clock and the second clock; receive, from the one or more antennas, information associated with the second electronic device specifying a future time when the electronic device is to perform a playback operation; and modify the future time based on the remaining time offset to determine a corrected future time, receive, from the one or more antennas, packets associated with a second electronic device, wherein a given packet includes a transmit time, based on a second clock in the second electronic device, when the second electronic device transmitted the given packet; store receive times when the packets were received, wherein the receive times are added to the packets by a physical layer associated with the interface circuit, wherein the receive times are based on the clock; calculate, based on differences between the transmit times and the receive times, relative drift as a function of time between the clock and the second clock, wherein a given difference is between a given transmit time and a given receive time for a given packet; adjust, based on the relative drift, the clock circuit that provides the clock to eliminate the relative drift; determine a remaining time offset between the clock and the second clock; receive, from the one or more antennas, information associated with the second electronic device specifying a future time when the electronic device is to perform a playback operation; and modify the future time based on the remaining time offset to determine a corrected future time, wherein the electronic device is configured to perform the playback operation at the corrected future time, wherein the given transmit time and the given receive time are stored on opposite ends of a payload of the given packet, and wherein the electronic device is configured to determine a duration of the payload and the interface circuit is configured to add the duration to the remaining offset time.