We have tested and found the CC1101 suitable as a receiver for KEELOQ OOK PWM modulated signals. This work is also applicable for CC11xL. Due to the large tolerance on the basic pulse element, asynchronous serial mode needs to be used. Data decision and bit and byte sync needs to be done in SW by the interfacing MCU.
For our testing, actual keyfobs were used as transmitters, while the CC1101 DK was used with SmartRF Studio as receiver. The data rate was programmed to 3.8 kbps, RX filter bandwidth was set to 135 kHz (to handle potensial freq offset between transmitter and receiver) and frequency used for the tesing was 433.92 MHz. The most important register settings are listed below, note the AGCCTRLx and the FSCTRL1 registers. The sensitivity for this setting is approximately -111 dBm.
IOCFG2 0x0D
FIFOTHR 0x47
PKTCTRL0 0x32 (asynchronous mode)
FSCTRL1 0x06
FSCTRL0 0x00
FREQ2 0x10
FREQ1 0xB0
FREQ0 0x71
MDMCFG4 0xA7
MDMCFG3 0x32
MDMCFG2 0x30
MDMCFG1 0x22
MDMCFG0 0xF8
MCSM2 0x07
MCSM1 0x30
MCSM0 0x18
AGCCTRL2 0x04
AGCCTRL1 0x00
AGCCTRL0 0x92
FREND1 0xB6
FREND0 0x11
FSCAL3 0xE9
FSCAL2 0x2A
FSCAL1 0x00
FSCAL0 0x1F
TEST2 0x81
TEST1 0x35
TEST0 0x09