Other Parts Discussed in Thread: WMBUS,
Hi all, first time here.
I have been using a Nooelec USB RTL-based SDR (NESDR SMArTee XTR) with a Raspberry Pi (Zero 2 W) to capture wMBus readings off my Sharky 775 heat meter. This works perfectly fine with RTL-SDR (piped through rtl-wmbus by wmbusmeters) using 868.625MHz and 1.6e6 sample rate. I'm configuring wmbusmeters in T1 and that works perfectly.
I'm now trying to use the CC1101 as a replacement for the Nooelec and I need some help. I got a board off Aliexpress which has an SPI interface and is (allegedly) tuned for 868 MHz with the CC1101.
Somewhat frustratingly, the whole opensource ecosystem around this seems exclusively coded for RTL and USB transceivers. I found a Python3 library which appears to work really well with the CC1101. I believe I'm wiring and configuring it right, yet I can't read the meter. This is how I'm using it:
#!/usr/bin/env python3
from pycc1101.pycc1101 import TICC1101
dev = TICC1101()
dev.reset()
dev.setDefaultValues()
dev.setCarrierFrequency(868)
dev.setSyncMode(0) # Disables syncword filtering
dev.configureAddressFiltering() # Disables address filtering
dev.setPacketMode("PKT_LEN_FIXED")
#dev.setPacketMode("PKT_LEN_VARIABLE")
while True:
dev._setRXState()
dev.recvData() # I corrected some Python3 errors here; will file a pull request
With PKT_LEN_FIXED, I can't receive anything. With PKT_LEN_VARIABLE, I receive a flood of data none of which seems valid.
What am I missing?
Thanks!
F.