C++ Wrapper around the IBM LMiC LoRaWAN implementation
Diff: Node.cpp
- Revision:
- 10:9bf05e9b4cde
- Parent:
- 9:cfe697b53d71
--- a/Node.cpp Sun Oct 16 09:57:58 2016 +0200 +++ b/Node.cpp Tue Nov 22 20:43:03 2016 +0100 @@ -37,8 +37,14 @@ namespace SimpleLoRaWAN { -Node::Node() +Node::Node():rfm95wReset(p15) { +#ifdef RFM95_RESET_CONNECTED + rfm95wReset = 0; + wait_ms(10); + rfm95wReset = 1; + wait_ms(10); +#endif init(); } @@ -53,12 +59,17 @@ // reset MAC state LMIC_reset(); - LMIC_setDrTxpow(DR_SF7, 14); + setSpreadFactor(DR_SF7); } void Node::send(char* data, int size) { + send((uint8_t*) data, size); +} + +void Node::send(uint8_t* data, int size) +{ memcpy (LMIC.frame, data, size); LMIC_setTxData2(15, LMIC.frame, size, 0); } @@ -100,5 +111,10 @@ LMIC_setLinkCheckMode(state); } +void Node::setSpreadFactor(int spreadfactor) +{ + LMIC_setDrTxpow(spreadfactor, 14); +} + } /* namespace SimpleLoRaWAN */