|
@@ -268,6 +268,7 @@ class CC1101:
|
|
|
|
|
|
self._set_modulation_format(self.ModulationFormat.ASK_OOK)
|
|
|
self._set_power_amplifier_setting_index(1)
|
|
|
+ self._disable_data_whitening()
|
|
|
|
|
|
|
|
|
|
|
@@ -365,6 +366,23 @@ class CC1101:
|
|
|
for i, v in enumerate(values)
|
|
|
}
|
|
|
|
|
|
+ def _disable_data_whitening(self):
|
|
|
+ """
|
|
|
+ PKTCTRL0.WHITE_DATA
|
|
|
+
|
|
|
+ see "15.1 Data Whitening"
|
|
|
+
|
|
|
+ > By setting PKTCTRL0.WHITE_DATA=1 [default],
|
|
|
+ > all data, except the preamble and the sync word
|
|
|
+ > will be XOR-ed with a 9-bit pseudo-random (PN9)
|
|
|
+ > sequence before being transmitted.
|
|
|
+ """
|
|
|
+ pktctrl0 = self._read_single_byte(ConfigurationRegisterAddress.PKTCTRL0)
|
|
|
+ pktctrl0 &= 0b10111111
|
|
|
+ self._write_burst(
|
|
|
+ start_register=ConfigurationRegisterAddress.PKTCTRL0, values=[pktctrl0]
|
|
|
+ )
|
|
|
+
|
|
|
def _get_transceive_mode(self) -> _TransceiveMode:
|
|
|
pktctrl0 = self._read_single_byte(ConfigurationRegisterAddress.PKTCTRL0)
|
|
|
return self._TransceiveMode((pktctrl0 >> 4) & 0b11)
|