We are facing some interoperability issues on WMBUS between a Sappel / Diehl Izar RE 868 device and a CC1121.
We have setup the following test environment to determine where the issue can came from.
The test environment is composed with a Spectrum Analyser, configured as a RF detector, used to synchronized the oscilloscope.
A FSK demodulator tuned on 868.95 MHz base frequency, 50 KHz deviation, 200KHz. RX BW filter
Baseband signal and demodulated signal are send to 4 traces osciloscope.
Test 1: The use case
CC1121 configured in packet mode
cc1121 configuration dump :
0xb0 0xb0 0xb0 0x06 0x93 0x0b 0x54 0x3d
0x0b 0x0b 0x9a 0x06 0x1c 0x19 0x2a 0x40
0x46 0x01 0xc6 0x05 0xa9 0x99 0x9a 0x40
0xfd 0x00 0x03 0x20 0xa9 0xc0 0x00 0x00
0x0b 0x12 0x08 0x21 0x00 0x00 0x04 0x00
0x40 0x0f 0x00 0x7f 0x56 0x7a 0xff
0x00 0x20 0xcb 0x00 0x00 0x00 0x01 0x00
0x00 0x00 0x00 0x00 0x6c 0x9e 0x65 0x02
0xa6 0x04 0x00 0x5f 0x00 0x20 0x40 0x0e
0x28 0x03 0x00 0x33 0xff 0x17 0x00 0x50
0x6e 0x14 0xac 0x16 0x00 0x48 0xac 0xb4
0x00 0x02 0x00 0x00 0x10 0x00 0x00 0x01
0x01 0x01 0x0e 0xa0 0x03 0x04 0x03 0x00
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x40 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x00 0x18 0xec 0x10 0x50 0x00 0x00 0x00
0x00 0x02 0x47 0x6d 0x80 0xaf 0x10 0xfe
0x80 0x27 0xd1 0x00 0x3f 0x00 0x00 0x30
0x7f 0x00 0x01 0x07 0x02 0xe7 0x00 0x00
0xea 0x07 0x00 0x83 0x00 0x09 0x00 0x40
0x21 0x00 0x11 0x00 0x00 0x00 0x00 0x00
0x00 0x00 0x00 0x0b 0x40 0x00 0x00 0x00
The Sappel / Diehl devise is sending every 10 seconds a packet where 17 first bytes are all time identical, the CC1121 unfortunately receive only the 5th or 6th correctly
Dump of the received packet by CC1121:
3a 57 1c 39 c3 8b 65 86 ca e4 ab 32 72 c4 8b 16
71 65 39 9c 69 65 89 19 b8 b4 cc b6 58 9c b1 38
d3 a5 d3 46 4d 39 39 8d 18
Trace 1: Output of the FM demodulator
Trace 3: GPIO 2 of the CC1121 (Not use in this case)
Trace A: Magnify of the Trave 1
Trace B: Magnify of the Trace 3
The preamble set the data rate to 100KHz (2 bits of the preamble is 20µs as shown in above picture).
The Synchro bytes id Ok, the 1st byte is ok also
The begin of pkt id ok 3a / 57/ 1c / 39/ c3 / 8b
We got the first missing bit on the 7th byte, we received the value 0x65 in place of 0xb2 (01100101 / 10110010) … this pattern of missing bit reproduces every 8 bytes.
Test 2: The CC1121 is configured in transparent mode, to validate the FSK demodulator
CC1121 configured in transparent mode :
cc1121 configuration dump :
0x09 0x11 0xb0 0x06 0x93 0x0b 0x54 0x3d
0x46 0x01 0x86 0x45 0xa9 0x99 0x9a 0x40
0x0b 0x12 0x08 0x21 0x00 0x00 0x07 0x00
0x00 0x00 0x00 0x00 0x6c 0x9e 0x61 0x02
0x00 0x19 0x5d 0x10 0x77 0x00 0x00 0x00
0x00 0xfd 0x47 0x6d 0x00 0xaf 0x0e 0xff
0x19 0x27 0xd1 0x00 0x3f 0xf6 0x00 0x30
0x7f 0x00 0x01 0xb4 0x03 0x02 0x00 0x00
0x7d 0x00 0x00 0x1f 0x00 0x09 0x00 0x40
Trace 1: Output of the FSK demodulator
Trace 3: GPIO 2 of the CC1121 (RX Serial)
Trace A: Magnify of the Trace 1
This pictures above show that the CC1121 FSK demodulator work properly. The output from the GPIO 2 (Serial RX in transparent mode) matches perfectly the reference FSK demodulator.
Test 3: CC1121 configured in synchronous serial mode :
Goal: Validate the integrated modem.
0x09 0x08 0xb0 0x06 0x93 0x0b 0x54 0x3d
0x46 0x01 0x86 0x05 0xa9 0x99 0x9a 0x40
0x00 0x00 0x00 0x00 0x6c 0x9e 0x63 0x02
0x00 0x19 0x18 0x10 0x7f 0x00 0x00 0x00
0x00 0xfe 0x47 0x6d 0x00 0x9f 0x16 0xfe
0x33 0x27 0xd1 0x00 0x3f 0x00 0x00 0x30
0x7f 0x00 0x00 0x8b 0x00 0x31 0x00 0x00
0x80 0x07 0xfe 0xa6 0x00 0x09 0x00 0x40
Trace 1: Output of the FSK demodulatorTrace 3: GPIO 2 of the CC1121 (RX Serial)Trace A: Magnify of the Trace 1Trace B: Magnify of the Trace 3
This measure show us that the modem, lose some bit from the base band signal. This is exactly what we see inside the packet.
Does someone, can give me the magic bit or bits inside the reserved field that will correct this behavior ?
Thanks in advance.
Before I look into the details: Which WMBUS mode are you using?
--PS. Thank you for clicking Verify Answer if this answered your question!
- Please note that WMBUS T mode is not fully supported by CC1121. CC1121 supports up to 100kbps with 2(G)FSK but WMBUS mode requires the receiver to handle 12% datarate tolerance. That requires larger than 200kHz RX bandwidth and hence CC1125 must be used. Does the module you use have any datarate variation?
- When I look at the register settings it looks like that a IF frequency different than 0 is used. See Attached for T-mode settings.
- Does it work if you use a CC1121 as sender?
Thanks for the answer.
- The module does not have datarate variation above 2% (Bandbase decoding shows a bitrate variation of 2%).
- We have also test with IF frequency set to 0 no change
- It work if we use a CC1121 as sender
- it work also if we use some other WMBUS module in T mode
- it work also if we use this particular module on a CC1125 with the same configuration
I did a test in the lab to confirm:
In the test setup I programmed the signal generator to send 98kbps, 100kbps and 102kbps corresponding to 2% datarate tolerance using a CC1121 as a receiver. For 98kbps and 100kbps CC1121 gets the expected sensitivity but I don't receive any data for 102kbps confirming that CC1125 has to be used for system using 100kbps and datarate variation due to the bandwidth in the RX filter using 32MHz crystal. If you change the crystal to 33.6MHz you will increase the RX filter bandwidth with about 5% and hence be able to handle 2% datarate tolerance but if the system has to be WMBUS T mode compatible with 12% datarate tolerance CC1125 has to be used.
I would like to receive isar Prios protocol R3, R3.5 (868.95 MHz FSK) messages.
Could you please share some information about the data format used by this protocol?
Sorry, not familiar with that protocol. Is this a proprietary protocol or is it according to a given standard?
Unfortunately it is proprietary standard (or at least I cannot find any relevant info on the web). It is used for collecting water metering data as per document below:
If you have a CC112x EM you may try to find out. You know the frequency and I would assume that it uses the same modulation as one of the WMBUS modes. Set 0xAAAA as syncword, use carrier sense, and see if you get something in the FIFO that makes sense. The first bytes will then be the sync word but it requires that you have access to a few units that uses that protocol to determine the meaning of the different bit fields.
It uses FSK modulation. I will try to discover the pattern. There are thousends of these kind of meters installed in my city.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.