@@ -93,7 +93,8 @@ int LoRaClass::begin(long frequency,bool PABOOST)
9393 // set auto AGC
9494 writeRegister (REG_MODEM_CONFIG_3, 0x04 );
9595 // set output power to 20 dBm
96- setTxPowerMax (14 ); // PA_BOOST
96+ setTxPower (14 , PA_OUTPUT_PA_BOOST_PIN);
97+ // setTxPowerMax(14); //PA_BOOST
9798 // set Spreading Factor to 7 (6~12)
9899 setSpreadingFactor (11 );
99100 // put in standby mode
@@ -278,9 +279,10 @@ void LoRaClass::sleep()
278279
279280void LoRaClass::setTxPower (int level, int outputPin)
280281{
281- if (PA_OUTPUT_RFO_PIN == outputPin) {
282+ if (PA_OUTPUT_RFO_PIN == outputPin)
283+ {
282284 // RFO
283- if (level < -1 ) {
285+ if (level < -1 ) {
284286 level = -1 ;
285287 }
286288 else if (level > 14 ){
@@ -290,18 +292,21 @@ void LoRaClass::setTxPower(int level, int outputPin)
290292 writeRegister (REG_PA_CONFIG, RFO | (level + 1 ));
291293 // spiWrite(RH_RF95_REG_09_PA_CONFIG, RH_RF95_MAX_POWER | (power + 1));
292294// writeRegister(REG_PA_CONFIG, RFO | level);
293- } else {
295+ }
296+
297+ else {
294298 // PA BOOST
295- if (level < 2 ) {
299+ if (level < 2 )
300+ {
296301 level = 2 ;
297- }
298- else if (level > 17 ) {
299- level = 17 ;
302+ }
303+ else if (level > 17 )
304+ {
305+ level = 17 ;
300306 }
301307 // writeRegister(REG_LR_OCP,0x3f);
302- writeRegister (REG_PaDac,0x84 );
303- writeRegister (REG_PA_CONFIG, PA_BOOST | (level - 2 ));// writeRegister(REG_PA_CONFIG, PA_BOOST | (level - 2));
304-
308+ writeRegister (REG_PaDac,0x87 );
309+ writeRegister (REG_PA_CONFIG, PA_BOOST | (level - 2 ));// writeRegister(REG_PA_CONFIG, PA_BOOST | (level - 2))
305310 }
306311}
307312
0 commit comments