Hello all,
I came across a strange problem while testing our new antenna.
In our previous design, we use same software and achieved to transmit and receive using cc1120.
By using same firmware with new antenna, we can transmit data to previous design (to previous antenna). However, same software does not work on receiver side with new antenna. How is it possible? Is it because of antenna/bandwidth?
Register configurations are as attached.
{ {CC112X_IOCFG3, 0xB0}, {CC112X_IOCFG2, 0x06}, {CC112X_IOCFG1, 0xB0}, {CC112X_IOCFG0, 0xB0}, {CC112X_SYNC3, 0xAA}, {CC112X_SYNC2, 0xAA}, {CC112X_SYNC1, 0xA6}, {CC112X_SYNC0, 0xFE}, {CC112X_SYNC_CFG0, 0x07}, {CC112X_SYNC_CFG1, 0x0B}, {CC112X_DCFILT_CFG, 0x1C}, {CC112X_IQIC, 0xC6}, {CC112X_CHAN_BW, 0x01}, {CC112X_MDMCFG0, 0x05}, {CC112X_AGC_REF, 0x31}, {CC112X_AGC_CS_THR, 0x10}, {CC112X_AGC_CFG1, 0xA9}, {CC112X_AGC_CFG0, 0xCF}, {CC112X_FIFO_CFG, 0x00}, {CC112X_SETTLING_CFG, 0x03}, {CC112X_FS_CFG, 0x12}, {CC112X_PKT_CFG1, 0x05}, // address check 0x00 broadcast, status byte appended {CC112X_PKT_CFG0, 0x20}, // pkt len 20 idi {CC112X_PA_CFG2, 0x4F}, {CC112X_PA_CFG1, 0x56}, {CC112X_PA_CFG0, 0x1C}, {CC112X_PKT_LEN, 0xFF}, // {CC112X_IF_MIX_CFG, 0x00}, {CC112X_FREQOFF_CFG, 0x23}, //0x23 slow loop {CC112X_FREQ2, 0x6C}, {CC112X_FREQ1, 0x80}, {CC112X_FREQ0, 0x00}, {CC112X_FS_DIG1, 0x00}, {CC112X_FS_DIG0, 0x5F}, {CC112X_FS_CAL0, 0x0E}, {CC112X_FS_DIVTWO, 0x03}, {CC112X_FS_DSM0, 0x33}, {CC112X_FS_DVC0, 0x17}, {CC112X_FS_PFD, 0x50}, {CC112X_FS_PRE, 0x6E}, {CC112X_FS_REG_DIV_CML, 0x14}, {CC112X_FS_SPARE, 0xAC}, {CC112X_XOSC5, 0x0E}, {CC112X_XOSC3, 0xC7}, {CC112X_XOSC1, 0x07}, };
writeByte = 0x01; cc112xSpiWriteReg(CC112X_CHAN_BW, &writeByte, 1); writeByte = 0x11; cc112xSpiWriteReg(CC112X_AGC_CFG3, &writeByte, 1); writeByte = 0x20; cc112xSpiWriteReg(CC112X_AGC_CFG2, &writeByte, 1); writeByte = 0x31; cc112xSpiWriteReg(CC112X_AGC_REF, &writeByte, 1); writeByte = 0x7F; cc112xSpiWriteReg(CC112X_PA_CFG2, &writeByte, 1); writeByte = 0x56; cc112xSpiWriteReg(CC112X_PA_CFG1, &writeByte, 1); writeByte = 0x7C; cc112xSpiWriteReg(CC112X_PA_CFG0, &writeByte, 1); writeByte = 0x10; cc112xSpiWriteReg(CC112X_PKT_CFG2, &writeByte, 1); writeByte = 10; cc112xSpiWriteReg(CC112X_AGC_CS_THR, &writeByte, 1); writeByte = 0x38; cc112xSpiWriteReg(CC112X_RFEND_CFG0, &writeByte, 1); writeByte = 0x2E; cc112xSpiWriteReg(CC112X_RFEND_CFG1, &writeByte, 1);
writeByte = 0x01; cc112xSpiWriteReg(CC112X_CHAN_BW, &writeByte, 1); writeByte = 0x11; cc112xSpiWriteReg(CC112X_AGC_CFG3, &writeByte, 1); writeByte = 0x20; cc112xSpiWriteReg(CC112X_AGC_CFG2, &writeByte, 1); writeByte = 0x31; cc112xSpiWriteReg(CC112X_AGC_REF, &writeByte, 1); writeByte = 0x7F; cc112xSpiWriteReg(CC112X_PA_CFG2, &writeByte, 1); writeByte = 0x56; cc112xSpiWriteReg(CC112X_PA_CFG1, &writeByte, 1); writeByte = 0x7C; cc112xSpiWriteReg(CC112X_PA_CFG0, &writeByte, 1); writeByte = 0x38; cc112xSpiWriteReg(CC112X_RFEND_CFG0, &writeByte, 1); writeByte = 0x3F; cc112xSpiWriteReg(CC112X_RFEND_CFG1, &writeByte, 1); writeByte = 0x02; cc112xSpiWriteReg(CC112X_PKT_LEN, &writeByte, 1); //auto ack. paketi --> Length + Address of transmitter + Address of receiver