Senet-ized LMIC for MOTE_L152RC
Fork of lmic_MOTE_L152RC by
Revision 2:edb5d1f3deeb, committed 2015-06-04
- Comitter:
- dudmuck
- Date:
- Thu Jun 04 20:00:55 2015 +0000
- Parent:
- 1:04fd63382b03
- Child:
- 3:d87012f45bf6
- Commit message:
- add full TX power for NA-mote
Changed in this revision
| TARGET_MOTE_L152RC/hal.cpp | Show annotated file Show diff for this revision Revisions of this file |
| radio.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/TARGET_MOTE_L152RC/hal.cpp Wed Jun 03 23:17:59 2015 +0000
+++ b/TARGET_MOTE_L152RC/hal.cpp Thu Jun 04 20:00:55 2015 +0000
@@ -300,7 +300,6 @@
void hal_opmode(u1_t mode, u1_t pa_boost)
{
if (mode == OPMODE_TX) { // start of transmission
- // assuming always using PA_BOOST
if (pa_boost) {
rfsw2 = 0;
rfsw1 = 1;
--- a/radio.cpp Wed Jun 03 23:17:59 2015 +0000
+++ b/radio.cpp Thu Jun 04 20:00:55 2015 +0000
@@ -10,6 +10,7 @@
*******************************************************************************/
#include "lmic.h"
+#include "debug.h" // wbr
// ----------------------------------------
// Registers Mapping
@@ -414,15 +415,25 @@
#elif defined(CFG_sx1272_radio)
// set PA config (2-17 dBm using PA_BOOST)
s1_t pw = (s1_t)LMIC.txpow;
- if(pw > 17) {
+ /*if(pw > 17) {
pw = 17;
} else if(pw < 2) {
pw = 2;
+ }*/
+ /* NA-mote TX power config: */
+ if (pw > 23) {
+ // use RFO with external amplifier
+ PaSelect = 0x00; // use RFO
+ writeReg(RegPaConfig, (u1_t)(PaSelect|(pw-25)));
+ } else {
+ // use PA_BOOST directo to antenna
+ PaSelect = 0x80; // use PA_BOOST
+ if (pw > 17)
+ pw = 17;
+ writeReg(RegPaConfig, (u1_t)(PaSelect|(pw-2)));
}
- PaSelect = 0x80; // use PA_BOOST
- //PaSelect = 0x00; // use RFO for external amplifier
- writeReg(RegPaConfig, (u1_t)(PaSelect|(pw-2)));
+
#else
#error Missing CFG_sx1272_radio/CFG_sx1276_radio
#endif /* CFG_sx1272_radio */
@@ -465,7 +476,7 @@
writeBuf(RegFifo, LMIC.frame, LMIC.dataLen);
// enable antenna switch for TX
- //hal_pin_rxtx(1);
+ //hal_pin_rxtx(1); usint hal_opmode
// now we actually start the transmission
opmode(OPMODE_TX);
@@ -505,7 +516,7 @@
writeBuf(RegFifo, LMIC.frame, LMIC.dataLen);
// enable antenna switch for TX
- //hal_pin_rxtx(1);
+ //hal_pin_rxtx(1); using hal_opmode
// now we actually start the transmission
opmode(OPMODE_TX);
@@ -567,7 +578,7 @@
writeReg(LORARegIrqFlagsMask, ~rxlorairqmask[rxmode]);
// enable antenna switch for RX
- //hal_pin_rxtx(0);
+ //hal_pin_rxtx(0); using hal_opmode
// now instruct the radio to receive
if (rxmode == RXMODE_SINGLE) { // single rx
@@ -622,7 +633,7 @@
writeReg(RegDioMapping1, MAP_DIO0_FSK_READY|MAP_DIO1_FSK_NOP|MAP_DIO2_FSK_TIMEOUT);
// enable antenna switch for RX
- //hal_pin_rxtx(0);
+ //hal_pin_rxtx(0); using hal_opmode
// now instruct the radio to receive
hal_waitUntil(LMIC.rxtime); // busy wait until exact rx time


