Python LT8900 via SPI

Check-in [5f96d4e6ca]
Login
Overview
Comment:More registers and check packet flag
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 5f96d4e6ca17caa021828e2068878af8c69477071ca53c7bc95c23e368252d0a
User & Date: rkeene on 2020-04-27 13:24:08
Other Links: manifest | tags
Context
2020-04-27
13:33
Expose a mechanism for filling the chip FIFO, which otherwise requires privarte methods check-in: 5b2064ba1c user: rkeene tags: trunk
13:24
More registers and check packet flag check-in: 5f96d4e6ca user: rkeene tags: trunk
13:09
Destructor and sanity check check-in: 76231bcd4f user: rkeene tags: trunk
Changes

Modified __init__.py from [ab32593f38] to [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):