File tree 3 files changed +29
-3
lines changed 3 files changed +29
-3
lines changed Original file line number Diff line number Diff line change 1
- // #define DEVICE_MODE_TX
2
- #define DEVICE_MODE_RX
1
+ #define DEVICE_MODE_TX
2
+ // #define DEVICE_MODE_RX
3
3
4
- // #define FEATURE_TX_OLED
4
+ #define FEATURE_TX_OLED
5
5
// #define FORCE_TX_WITHOUT_INPUT
6
6
7
7
// #define DEBUG_SERIAL
Original file line number Diff line number Diff line change @@ -153,6 +153,29 @@ int LoRaClass::endPacket()
153
153
return 1 ;
154
154
}
155
155
156
+ // https://github.com/sandeepmistry/arduino-LoRa/pull/62/files
157
+ void LoRaClass::endPacketAsync ()
158
+ {
159
+ // put in TX mode
160
+ writeRegister (REG_OP_MODE, MODE_LONG_RANGE_MODE | MODE_TX);
161
+
162
+ // apparently this grace time is required for the radio
163
+ delayMicroseconds (150 );
164
+ }
165
+
166
+ // https://github.com/sandeepmistry/arduino-LoRa/pull/62/files
167
+ bool LoRaClass::isTransmitting ()
168
+ {
169
+ if ((readRegister (REG_OP_MODE) & MODE_TX) == MODE_TX)
170
+ return true ;
171
+
172
+ if (!(readRegister (REG_IRQ_FLAGS) & IRQ_TX_DONE_MASK) == 0 )
173
+ // clear IRQ's
174
+ writeRegister (REG_IRQ_FLAGS, IRQ_TX_DONE_MASK);
175
+
176
+ return false ;
177
+ }
178
+
156
179
int LoRaClass::parsePacket (int size)
157
180
{
158
181
int packetLength = 0 ;
Original file line number Diff line number Diff line change @@ -26,6 +26,9 @@ class LoRaClass {
26
26
int beginPacket (int implicitHeader = false );
27
27
int endPacket ();
28
28
29
+ void endPacketAsync ();
30
+ bool isTransmitting ()
31
+
29
32
int parsePacket(int size = 0 );
30
33
int packetRssi ();
31
34
float packetSnr ();
You can’t perform that action at this time.
0 commit comments