Python LT8900 via SPI

Diff
Login

Diff

Differences From Artifact [ab32593f38]:

To Artifact [7b3709f395]:


114
115
116
117
118
119
120

121
122












123
124
125
126
127
128
129
114
115
116
117
118
119
120
121


122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140







+
-
-
+
+
+
+
+
+
+
+
+
+
+
+







			'syncword_len': [11, 12],
			'trailer_len': [8, 10],
			'packet_type': [6, 7],
			'fec_type': [4, 5],
			'br_clock_sel': [1, 3],
			'reserved_1': [0, 0]
		},
		{                    # 33
		{'name': "Unknown"}, # 33
		{'name': "Unknown"}, # 34
			'name': "vco_pa_delays",
			'vco_on_delay': [8, 15],
			'pa_off_delay': [6, 7],
			'pa_tx_delay': [0, 5]
		},
		{                    # 34
			'name': "tx_packet_delays",
			'packet_control_direct': [15, 15],
			'tx_cw_delay': [8, 14],
			'reserved_1': [6, 7],
			'tx_sw_on_delay': [0, 5]
		},
		{                    # 35
			'name': "chip_power",
			'power_down': [15, 15],
			'sleep_mode': [14, 14],
			'reserved_1': [13, 13],
			'br_clock_on_sleep': [12, 12],
			'rexmit_times': [8, 11],
475
476
477
478
479
480
481
482

483
484
485
486
487
488
489
486
487
488
489
490
491
492

493
494
495
496
497
498
499
500







-
+








		# Wait for buffer to empty
		# XXX: Untested
		while True:
			radio_status = self.get_register_bits('status')
			self.__debug("radio_status={}".format(radio_status))

			if radio_status['fifo_flag'] == 0:
			if radio_status['packet_flag'] == 1:
				break
			time.sleep(0.1)

		return True

	def multi_transmit(self, message, channels, retries = 3):
		for i in range(retries):