diff options
| -rw-r--r-- | src/drivers/ao_cc115l.c | 25 | 
1 files changed, 18 insertions, 7 deletions
| diff --git a/src/drivers/ao_cc115l.c b/src/drivers/ao_cc115l.c index 1d8211f6..6da1a678 100644 --- a/src/drivers/ao_cc115l.c +++ b/src/drivers/ao_cc115l.c @@ -282,6 +282,10 @@ static const uint16_t packet_setup[] = {  	CC115L_MDMCFG4,		((0xf << 4) |  				 (PACKET_DRATE_E << CC115L_MDMCFG4_DRATE_E)),  	CC115L_MDMCFG3,		(PACKET_DRATE_M), +	CC115L_MDMCFG2,		(0x00 | +				 (CC115L_MDMCFG2_MOD_FORMAT_GFSK << CC115L_MDMCFG2_MOD_FORMAT) | +				 (0 << CC115L_MDMCFG2_MANCHESTER_EN) | +				 (CC115L_MDMCFG2_SYNC_MODE_16BITS << CC115L_MDMCFG2_SYNC_MODE)),  }; @@ -317,6 +321,10 @@ static const uint16_t rdf_setup[] = {  	CC115L_MDMCFG4,		((0xf << 4) |  				 (RDF_DRATE_E << CC115L_MDMCFG4_DRATE_E)),  	CC115L_MDMCFG3,		(RDF_DRATE_M), +	CC115L_MDMCFG2,		(0x00 | +				 (CC115L_MDMCFG2_MOD_FORMAT_GFSK << CC115L_MDMCFG2_MOD_FORMAT) | +				 (0 << CC115L_MDMCFG2_MANCHESTER_EN) | +				 (CC115L_MDMCFG2_SYNC_MODE_NONE << CC115L_MDMCFG2_SYNC_MODE)),  };  /* @@ -348,6 +356,10 @@ static const uint16_t aprs_setup[] = {  	CC115L_MDMCFG4,		((0xf << 4) |  				 (APRS_DRATE_E << CC115L_MDMCFG4_DRATE_E)),  	CC115L_MDMCFG3,		(APRS_DRATE_M), +	CC115L_MDMCFG2,		(0x00 | +				 (CC115L_MDMCFG2_MOD_FORMAT_GFSK << CC115L_MDMCFG2_MOD_FORMAT) | +				 (0 << CC115L_MDMCFG2_MANCHESTER_EN) | +				 (CC115L_MDMCFG2_SYNC_MODE_NONE << CC115L_MDMCFG2_SYNC_MODE)),  };  #define AO_PKTCTRL0_INFINITE	((CC115L_PKTCTRL0_PKT_FORMAT_NORMAL << CC115L_PKTCTRL0_PKT_FORMAT) | \ @@ -430,16 +442,16 @@ static const uint16_t radio_setup[] = {  	AO_CC115L_DONE_INT_GPIO_IOCFG,	    CC115L_IOCFG_GPIO_CFG_PA_PD | (1 << CC115L_IOCFG_GPIO_INV),          CC115L_FIFOTHR,                     0x47,       /* TX FIFO Thresholds */ -        CC115L_PKTCTRL0,                    0x05,       /* Packet Automation Control */          CC115L_FREQ2,                       0x10,       /* Frequency Control Word, High Byte */          CC115L_FREQ1,                       0xb6,       /* Frequency Control Word, Middle Byte */          CC115L_FREQ0,                       0xa5,       /* Frequency Control Word, Low Byte */ -        CC115L_MDMCFG4,                     0xfa,       /* Modem Configuration */ -        CC115L_MDMCFG3,                     0x83,       /* Modem Configuration */          CC115L_MDMCFG2,                     0x13,       /* Modem Configuration */ -        CC115L_MDMCFG1,                     0x21,       /* Modem Configuration */ +	CC115L_MDMCFG1,			    (0x00 | +					     (CC115L_MDMCFG1_NUM_PREAMBLE_4 << CC115L_MDMCFG1_NUM_PREAMBLE) | +					     (1 << CC115L_MDMCFG1_CHANSPC_E)), +	CC115L_MDMCFG0,			    248,	/* Channel spacing M value (100kHz channels) */          CC115L_DEVIATN,                     0x35,       /* Modem Deviation Setting */ -        CC115L_MCSM0,                       0x18,       /* Main Radio Control State Machine Configuration */ +        CC115L_MCSM0,                       0x38,       /* Main Radio Control State Machine Configuration */          CC115L_RESERVED_0X20,               0xfb,       /* Use setting from SmartRF Studio */          CC115L_FSCAL3,                      0xe9,       /* Frequency Synthesizer Calibration */          CC115L_FSCAL2,                      0x2a,       /* Frequency Synthesizer Calibration */ @@ -448,8 +460,7 @@ static const uint16_t radio_setup[] = {          CC115L_TEST2,                       0x81,       /* Various Test Settings */          CC115L_TEST1,                       0x35,       /* Various Test Settings */          CC115L_TEST0,                       0x09,       /* Various Test Settings */ - -	CC115L_PA,		     	    0x00,	 /* Power setting (0dBm) */ +	CC115L_PA,		     	    0x00,	/* Power setting (as low as possible) */  };  static uint8_t	ao_radio_configured = 0; | 
