Commit graph

147 commits

Author SHA1 Message Date
jgromes
fb7d698007 [SX127x] Use millis for timeouts 2024-03-29 08:36:05 +01:00
jgromes
4ee17cc168 Debugging rework 2024-03-10 11:07:23 +01:00
jgromes
a907026c7b [SX127x] Fixed software timeout duration (#962) 2024-02-13 07:04:04 +01:00
jgromes
842c54849d [SX127x] Added setLowBatteryThreshold (#925) 2024-01-13 13:39:51 +01:00
jgromes
bbe407b50f [SX127x] Cleanup private/protected members 2024-01-12 18:51:55 +01:00
Peter Buchegger
abfc91a9bc
Update SX127x.cpp 2024-01-11 17:52:50 +01:00
jgromes
34c861cfbe [SX127x] Reworked macro configuration system 2023-11-27 21:14:33 +01:00
jgromes
81c59f61ff [SX127x] Fixed copy-pasted code snippet 2023-11-21 20:48:06 +01:00
StevenCellist
82258105b7
[LoRaWAN] Rework bands, official Rx windows, support ADR, confirm frames, improve EEPROM handling, support clock drift (#867)
* [LoRaWAN] rework bands, add ADR, partial MAC support

Known problem: terribly bad at receiving downlinks
Mask-list bands (e.g. US915) untested, likely a few bugs

* [LoRaWAN] Change Rx windows from CAD to RxSingle

* [LoRaWAN] improve persistence, better Rx windows, wear leveling, confirmed frames

* [LoRaWAN] Module-independent (OTAA) Rx windows, fix confirming downlinks

* [LoRaWAN] Implement SX127x support, fix MAC uplinking, support clock drift

* [ArduinoHal] fix clock drift calculation

* [LoRaWAN] Improve band & ADR logic, allow setting ADR, DR, subband, update examples

* [LoRaWAN] Fix EU868 coding rate, improve example

* [LoRaWAN] fix unused channel index

* [LoRaWAN] fix merge issue (deleted line)

* [LoRaWAN] fix CSMA calling now incorrect function

* [LoRaWAN] fix include logic

* [LoRaWAN] fix warnings, remove duplicate function

* [LoRaWAN] improve examples, add unified sendReceive, bugfixes, add FSK

* [LoRaWAN] improve examples

* [LoRaWAN] add new keywords, add debug guard

* [SX127x] Updated startReceive interface to be more in line with SX126x

* [SX127x] Added public method to convert from bytes to symbols

* [LoRaWAN] Update start receive for SX127x

* Added note about LoRaWAN beta

* [SX127x] Fixed potential float overflow

---------

Co-authored-by: jgromes <jan.gromes@gmail.com>
2023-11-12 14:02:39 +01:00
BayCom GmbH
d329c60906
[SX127x] disable syncword generation & detection, add method to set preamble polarity (#834)
* allow syncword to be disabled if length is 0

* add method to change preamble polarity in FSK mode

* add new method 'setPreamblePolarity'

* move RADIOLIB_SX127X_PREAMBLE_POLARITY_55 from ::config to ::begin & ::beginFSK

* [SX127x] Remove FSK preamble config from LoRa init method

* [SX127x] Rename preamble inversion method

---------

Co-authored-by: BayCom GmbH <software@baycom.de>
Co-authored-by: jgromes <jan.gromes@gmail.com>
2023-09-29 14:27:31 +02:00
jgromes
10d225fadb [SX127x] Allow alternate chip versions 2023-09-24 18:19:19 +02:00
jgromes
d34902ee46 [SX127x] Added missing parentheses 2023-08-12 19:44:13 +02:00
jgromes
ea4018d310 [SX127x] Added common CAD methods 2023-08-12 18:43:26 +02:00
jgromes
b48567722b [SX127x] Added method to get CAD result 2023-08-12 18:40:38 +02:00
jgromes
bb468ad59f [SX127x] Explicitly set non-inverted IQ on startup 2023-08-12 18:38:46 +02:00
jgromes
68c5edd7c2 [SX127x] Add delay before IRQ clearing (#808) 2023-08-06 09:31:39 +02:00
jgromes
d5ce384bda [SX127x] Implemented new common PHY methods 2023-07-06 11:17:29 +02:00
jgromes
8acaca4884 [SX127x] Swap Tx IQ inversion (#778) 2023-06-25 09:33:17 +02:00
jgromes
43b9b13903 [SX127x] Fixed direction from HAL 2023-06-21 22:13:54 +02:00
jgromes
a6ba423c73 [SX127x] Implemented generic actions 2023-06-21 22:03:07 +02:00
jgromes
a16322097a [SX127x] Added default startReceive method 2023-05-28 22:20:25 +02:00
jgromes
efbec6b9d1 Added custom min/max/abs macros 2023-05-16 17:13:43 +01:00
jgromes
cc8c8f2eed [SX127x] General reformatting 2023-04-23 22:42:13 +02:00
Mestery
f20cc978a7 update interrupt action mode type 2023-04-16 21:45:39 +02:00
Mestery
9a68a3c901 use uint32 instead of uint8 for pin type 2023-04-16 21:39:00 +02:00
Mestery
ec3d4eaf20 Improve hardware abstraction layer 2023-04-12 23:16:18 +02:00
Jan Gromeš
9c019a58e7
Merge pull request #726 from Mesteery/fix-generic-build
Fix generic build
2023-04-10 17:25:40 +02:00
jgromes
0f5b31aa3a [SX127x] Removed standby before data read 2023-04-10 13:57:00 +02:00
Mestery
220b4dad7f
use printf in both build 2023-04-10 09:13:58 +00:00
Mestery
2a45f71384
fix undef digitalread 2023-04-10 09:13:57 +00:00
jgromes
8587f73bd9 [SX127x] Implemented fractional bit rate (#505) 2023-04-09 17:08:45 +02:00
Jan Gromeš
c2b40f088f
Merge pull request #711 from G4lile0/master
[SX1278] New getInstRSSI to get current RSSI
2023-03-27 23:28:18 +02:00
jgromes
f62f912c87 [SX127x] Unified getRSSI interface 2023-03-27 23:22:03 +02:00
jgromes
5d365d4da7 [SX127x] Added PHY startReceive (#700) 2023-03-26 22:20:08 +02:00
jgromes
8ace6350cf [SX127x] Added missing standby for PhysicalLayer (#695) 2023-03-12 14:50:14 +01:00
jgromes
18ff62890a [SX127x] Fixed packet length not proagating correctly (#666) 2023-01-18 22:00:26 +01:00
jgromes
91d42ebf0e [SX127x] Set minimum bit rate to 0.5 kbps (#665) 2023-01-18 18:58:52 +01:00
Matthijs Kooijman
52ec165643 Update radios to use new setRfSwitchState
This removes the compatibility wrapper and applies the following
replacements:

    sed -i 's/setRfSwitchState(LOW, LOW)/setRfSwitchState(Module::MODE_IDLE)/' src/modules/*/*.cpp
    sed -i 's/setRfSwitchState(HIGH, LOW)/setRfSwitchState(Module::MODE_RX)/' src/modules/*/*.cpp
    sed -i 's/setRfSwitchState(LOW, HIGH)/setRfSwitchState(Module::MODE_TX)/' src/modules/*/*.cpp
2023-01-09 10:26:28 +01:00
Matthijs Kooijman
3779faf600 Add setRfSwitchTable() wrapper methods
This gives all radios that use an rfswitch (i.e. have
a setRfSwitchPins() wrapper already) a wrapper method for
setRfSwitchTable() too. This wrapper just calls the same method on
Module, to make it easier for sketches to use it.
2023-01-09 10:26:27 +01:00
jgromes
18fefc0ca9 [SX127x] Removed unnecessary volatile 2022-12-22 18:17:41 +01:00
Mitrokhin Anton
e073da15da Fix FSK Stream mode TX and RX 2022-12-22 12:21:01 +07:00
jgromes
feb9aaa227 [SX127x] Added option to keep received data despite CRC error (#610) 2022-11-16 19:21:55 +01:00
jgromes
1316a805f3 [SX127x] Added option to specify interrupt direction for DIO 2022-10-23 20:39:15 +02:00
jgromes
d80f87410e [SX127x] Removed redundant IRQ clear 2022-10-23 20:38:36 +02:00
jgromes
9497cd3af1 [SX127x] Minor formatting fixes 2022-10-23 20:38:11 +02:00
jgromes
baf2a78981 [SX127x] Added missing GPIO input configuration in FSK mode 2022-10-22 23:48:17 +02:00
jgromes
0d72dd2ac3 [SX127x] Added finishTransmit (#571) 2022-09-18 16:13:39 +02:00
jgromes
e1d4c2094b [SX127x] Fixed software timeout logic 2022-09-18 15:42:06 +02:00
jgromes
cb5fd16710 [SX127x] Added software timeout when using blocking receive without DIO1 (#566) 2022-09-18 15:07:57 +02:00
obones
40599baef1 Use the RADIOLIB_CHECK_RANGE macro along with proper lower value (it has to be negative) 2022-08-25 10:39:21 +02:00