A method for performing role switch between a first device operating as a master and a second device operating as a slave, the method comprising: receiving, by the first device, packets from a host device; forwarding the received packets from the first device to the second device; performing a first stage role switch at the first and second devices (110, 120), the first stage role switch comprising: establishing a communication link between the second device and the host device; and notifying the host device that the second device is operating as a new master; receiving, by the second device, packets from the host device; and forwarding the received packets from the second device to the first device according to a preset schedule (116, 126); characterized in that when audio buffers (114, 124) for the received packets of the first device and the second device reach a predetermined level, performing a second stage role switch at the first and second devices (110, 120), the second stage role switch comprising passing, from the first device to the second device, control of timing for sending packets from the second device as the new master to the first device as the new slave; the method further comprising: increasing, prior to the first stage role switch, a central processing unit, CPU, clock rate in each of the first device and the second device; and decreasing, after the second stage role switch, the CPU clock rates in the first and second devices (110, 120). receiving, by the first device, packets from a host device; forwarding the received packets from the first device to the second device; performing a first stage role switch at the first and second devices (110, 120), the first stage role switch comprising: establishing a communication link between the second device and the host device; and notifying the host device that the second device is operating as a new master; establishing a communication link between the second device and the host device; and notifying the host device that the second device is operating as a new master; receiving, by the second device, packets from the host device; and forwarding the received packets from the second device to the first device according to a preset schedule (116, 126); characterized in that when audio buffers (114, 124) for the received packets of the first device and the second device reach a predetermined level, performing a second stage role switch at the first and second devices (110, 120), the second stage role switch comprising passing, from the first device to the second device, control of timing for sending packets from the second device as the new master to the first device as the new slave; the method further comprising: increasing, prior to the first stage role switch, a central processing unit, CPU, clock rate in each of the first device and the second device; and decreasing, after the second stage role switch, the CPU clock rates in the first and second devices (110, 120). increasing, prior to the first stage role switch, a central processing unit, CPU, clock rate in each of the first device and the second device; and decreasing, after the second stage role switch, the CPU clock rates in the first and second devices (110, 120).