trx/radio_if.py: handle Timing Advance from CTRL
diff --git a/python/trx/ctrl_if_bb.py b/python/trx/ctrl_if_bb.py
index 26ae49a..5874e59 100644
--- a/python/trx/ctrl_if_bb.py
+++ b/python/trx/ctrl_if_bb.py
@@ -62,6 +62,7 @@
 			if self.tb.trx_started:
 				print("[i] Stopping transceiver...")
 				self.tb.trx_started = False
+				self.tb.set_ta(0)
 				self.tb.stop()
 				self.tb.wait()
 
@@ -144,6 +145,19 @@
 
 			return (0, [meas_dbm])
 
+		# Timing Advance control
+		elif self.verify_cmd(request, "SETTA", 1):
+			print("[i] Recv SETTA cmd")
+
+			# Check TA range
+			ta = int(request[1])
+			if ta < 0 or ta > 63:
+				print("[!] TA value must be in range: 0..63")
+				return -1
+
+			self.tb.set_ta(ta)
+			return 0
+
 		# Misc
 		elif self.verify_cmd(request, "ECHO", 0):
 			print("[i] Recv ECHO cmd")
diff --git a/python/trx/radio_if.py b/python/trx/radio_if.py
index e0678ab..82491a8 100644
--- a/python/trx/radio_if.py
+++ b/python/trx/radio_if.py
@@ -281,3 +281,8 @@
 	def set_tx_gain(self, gain):
 		self.phy_sink.set_gain(gain, 0)
 		self.tx_gain = gain
+
+	def set_ta(self, ta):
+		print("[i] Setting TA value %d" % ta)
+		advance_time_sec = ta * self.GSM_SYM_PERIOD_uS * 1e-6
+		self.tx_time_setter.set_timing_advance(advance_time_sec)