jgromes
3952fe9139
Use pointer assert
2024-10-26 16:59:13 +01:00
Jan Gromeš
e44e9b4bce
[PHY] Get/Set modem ( #1294 )
...
* [PHY] Added set modem method
* Added new keyword
* [SX126x] Added setModem implementation
* [LoRaWAN] Use setModem
* [PHY] Added getModem
* [LoRaWAN] Use getModem instead of caching modulation
* [SX126x] Implement getModem
* Added new keywords
* [LR11x0] Added get/set modem
* [LLCC68] Added get/set modem
* [SX126x] Added missing default branch
* [SX127x] Added get/set modem
* [SX128x] Added get/set modem
* [CI] Drop Hellschreiber from AVR builds
* [CI] Drop Arduino Uno from CI
2024-10-26 17:49:35 +02:00
jacobeva
6e66570241
[SX128x] Add setDataRate method for LoRa modem ( #1251 )
2024-10-02 20:05:21 +02:00
jacobeva
46a086cfa8
[SX128x] Save context before sleep to allow TX to work on wake ( #1249 ) ( #1250 )
2024-10-02 17:59:25 +02:00
jgromes
fdb3ac46ca
[SX128x] Fix preamble length calculation ( #1243 )
2024-09-30 18:10:18 +02:00
jgromes
0f6e7653c7
[SX128x] Fix shadowed variable
2024-09-22 18:17:58 +01:00
Egor Shitikov
8068bcc356
[SX128x] getRssi(false) without packet ( #1222 )
...
* Update SX128x.h
* Update SX128x.cpp
2024-09-19 22:02:07 +02:00
jgromes
c4a129ed74
[PHY] Pass scan config by reference
2024-09-10 19:18:56 +02:00
GUVWAF
eda4ec22ae
[SX126x][SX128x][LR11x0] Don't report CRC mismatch if valid header received ( #1203 )
...
* Enable `HEADER_VALID` IRQ flags by default for receiving
* [SX126x] Don't report CRC mismatch if valid header received
* [SX128x] Don't report CRC mismatch if valid header received
* [LR11x0] Don't report CRC mismatch if valid header received
2024-09-01 20:48:17 +02:00
Jan Gromeš
bc801c7004
[PHY] Channel scan configuration ( #1190 )
...
* [PHY] Added channel scan configuration
* [LR11x0] Added channel scan configuration
* [SX126x] Added channel scan configuration
* [SX128x] Added channel scan configuration
* Use microsecond timeout
* [PHY] Added generalized IRQ handling via PHY
* [LR11x0] Added generalized IRQ handling via PHY
* [SX126x] Added generalized IRQ handling via PHY
* [SX127x] Added generalized IRQ handling via PHY
* [SX128x] Added generalized IRQ handling via PHY
* Added missing typedef
* [PHY] Fix IRQ method argument type
* [SX128x] Fix non-trivial initializer usage
* [LR11x0] Added missing override specifiers
* [SX126x] Added missing override specifiers
* [SX127x] Added missing override specifiers
* [SX128x] Added missing override specifiers
* [PHY] Added missing IRQ map initializer
* [CI] Drop APRS builds on AVR
* [CI] Drop Morse builds for AVR
* [PHY] Rework generic IRQ to allow multiple flags
* [LR11x0] Rework generic IRQ to allow multiple flags
* [SX126x] Rework generic IRQ to allow multiple flags
* [SX127x] Rework generic IRQ to allow multiple flags
* [SX128x] Rework generic IRQ to allow multiple flags
* [LoRaWAN] Use generic IRQ
* Add missing typedef
* [SX127x] Make Rx mode implicit based on timeout
* [SX127x] Fixed shadowed variable
* [LR11x0] Fix missing initializers
* [SX127x] Added default startReceive arguments
* [LR11x0] Pass scan config by const reference
* [SX126x] Pass scan config by const reference
* [SX128x] Pass scan config by const reference
* [PHY] Pass scan config by const reference
* [SX127x] Add missing IRQ conversion
* [SX126x] Fixed default CAD scan config IRQ
* [LR11x0] Fixed default CAD scan config IRQ
* [LR11x0] Fix comments referencing DIO1
2024-09-01 18:19:07 +02:00
Pavlo Manovi
6847fcda5c
Reconcile implicit double / float promotion with math functions and passed function value types. Also suppress incorrect unused variable warnings when variables are used in logging macros.
2024-08-29 09:30:31 -04:00
StevenCellist
0bc0e3d9c8
[PHY, modules, LoRaWAN] Integrate feedback
2024-08-17 22:03:48 +02:00
StevenCellist
b401d11127
[SX128x] Implement generalized IRQ checks
2024-08-16 00:05:06 +02:00
GUVWAF
ddaf1ffd52
[SX128x] Remove unnecessary (void)update;
2024-08-10 18:40:19 +02:00
GUVWAF
5f6f6f9a3c
[SX128x] Start reading from Rx buffer offset
2024-08-10 12:56:12 +02:00
jgromes
fffb1fae9f
[PHY] Make transmit data const ( #1156 )
2024-07-13 16:42:46 +01:00
jgromes
4a011e0915
[SX128x] Fix check output power argument name
2024-05-25 07:13:31 +02:00
lewisxhe
84402968c2
Fixed SX128X checkOutputPower
2024-05-25 10:50:58 +08:00
Dominic Moffat
b336dd59f9
Fixes overload warning when building with ESP IDF ( #1089 )
...
* fixes overload
* fixes overload
* fixes overload warnings in ESP-IDF
2024-05-15 18:40:08 +02:00
jgromes
1dcd61b71d
[SX128x] Use const pointers where appropriate
2024-05-12 12:03:19 +01:00
jgromes
dec7265f72
[SX128x] Fixed issues found by cppcheck
2024-05-11 16:49:29 +01:00
jgromes
8a4514703b
[SX128x] Use 32-bit IRQ flags
2024-05-08 14:54:33 +02:00
jgromes
bcd8a05cd4
[SX128x] Added interface for interrupt-driven CAD ( #1085 )
2024-05-05 12:42:03 +01:00
StevenCellist
1b2b8bd67b
[LoRaWAN] Improve PHY behaviour, update beginABP, bugfixes ( #1080 )
...
* [LoRaWAN] Add getter for ToA, prevent MAC queue overflow
* [LoRaWAN] Permute arguments to beginABP
* Implement & split off checkOutputPower
* [LoRaWAN] Configure physical layer on each up/downlink
* [LoRaWAN] Remove unnecessary dynamic array
* [LoRaWAN] Improve downlink handling
* Resolve return-warnings in checkOutputPower()
* [LoRaWAN] Improve buffer definition
* [LoRaWAN] Prevent requesting repeated MAC commands
* Update keywords.txt
* [CC1101] Resolve unused variable warning
* [CC1101] Update checkOutputPower
* [SX1278] Fix variable assignment
* Update keywords.txt
* [CC1101] Added checkOutputPower override for PHY compatibility
* [LR11x0] Added checkOutputPower override for PHY compatibility
* [SX127x] Added checkOutputPower override for PHY compatibility
---------
Co-authored-by: jgromes <jan.gromes@gmail.com>
2024-05-01 13:35:22 +02:00
Elizabeth Myers
205031550b
Use RadioLibTime_t (aka unsigned long) when dealing with millis() and micros() ( #1075 )
...
* Use unsigned long when dealing with millis() and micros().
Although sizeof(uint32_t) == sizeof(unsigned long) on Arduino, this is
not the case on 64-bit Linux, where sizeof(unsigned long) ==
sizeof(uint64_t).
Most timestamp arithmetic and comparisons have been left alone, to
reduce code churn. This is fine, as uint32_t is perfectly wide to store
most timestamp deltas this library will deal with, and C will promote
the integer rather than do a narrowing conversion. The real problem
arises with narrowing conversions being done by assuming timestamps are
32-bit.
No functional changes intended for platforms where sizeof(uint32_t) ==
sizeof(unsigned long) (so most 8/16/32-bit platforms).
Signed-off-by: Elizabeth Myers <elizabeth.jennifer.myers@gmail.com>
* Change most timestamps to use RadioLibTime_t.
This makes it obvious what is and isn't a timestamp.
Not everything has been converted; anything dealing with protocol and
chip-level timestamps has been left alone on purpose, to make it clear
that these functions do require 32-bit timestamps.
No functional changes intended on platforms where sizeof(uint32_t) ==
sizeof(unsigned long).
Signed-off-by: Elizabeth Myers <elizabeth.jennifer.myers@gmail.com>
* Use uint32_t internally in getTimeOnAir.
We need to not overflow the integers with the shifts and
multiplications, so this is correct behaviour.
Signed-off-by: Elizabeth Myers <elizabeth.jennifer.myers@gmail.com>
---------
Signed-off-by: Elizabeth Myers <elizabeth.jennifer.myers@gmail.com>
2024-04-25 21:50:58 +02:00
jgromes
c9d8c601df
[Mod] Use enum for bit widths
2024-04-07 17:34:31 +01:00
Jan Gromeš
4fa0656ddd
[MOD] SPI configuration interface rework ( #1057 )
...
* [MOD] Rework SPI config interface
* [CC1101] Rework SPI config interface
* [nRF24] Rework SPI config interface
* [SX126x] Rework SPI config interface
* [SX128x] Rework SPI config interface
* Fix missing moved debug info
* [MOD] Fix signed warnings
2024-04-07 17:05:07 +02:00
jgromes
8098bea254
[SX128x] Use millis for timeouts
2024-03-29 08:35:29 +01:00
jgromes
4ee17cc168
Debugging rework
2024-03-10 11:07:23 +01:00
jgromes
b5d931ec79
[SX128x] Cleanup private/protected members
2024-01-12 19:45:41 +01:00
jgromes
827aac5938
[SX128x] Reworked macro configuration system
2023-11-27 21:15:07 +01:00
chemary
ddcce424c8
Incorrectly checking sx1280 command status ( #843 )
2023-10-11 07:20:11 +02:00
jgromes
3359907fa5
[SX128x] Fixed getStatus ( #779 )
2023-06-27 17:35:50 +02:00
jgromes
36530b00fc
[SX128x] Fixed blocking receive
2023-06-24 19:23:26 +02:00
jgromes
1f6acc8347
[SX128x] Implemented generic IRQ actions
2023-06-21 22:23:43 +02:00
jgromes
f936d53639
[SX128x] Added default startReceive method
2023-05-28 22:19:03 +02:00
jgromes
c93d6eff65
[SX128x] Fixed long prints
2023-05-21 18:26:16 +02:00
jgromes
efbec6b9d1
Added custom min/max/abs macros
2023-05-16 17:13:43 +01:00
jgromes
c451765602
[SX128x] Added force wakeup to standby
2023-05-02 21:04:49 +02:00
jgromes
84ebdddcaf
[SX128x] Wakeup device on standby() call
2023-05-02 18:58:59 +02:00
jgromes
7f4ff61504
[SX128x] Fixed unused variable
2023-04-29 22:51:44 +02:00
jgromes
76c654c0c1
[SX128x] General reformatting
2023-04-23 22:05:18 +02:00
Jan Gromeš
b76b819b12
Merge pull request #730 from Mesteery/new-hal
...
Improve hardware abstraction layer
2023-04-22 16:26:31 +02:00
jgromes
21f2ef6836
[SX128x] Fixed IQ inversion
2023-04-17 19:12:42 +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
Mestery
220b4dad7f
use printf in both build
2023-04-10 09:13:58 +00:00
jgromes
9d3a2bb72f
[SX128x] Added IQ inversion ( #724 )
2023-04-08 21:45:15 +02:00
jgromes
45c5859338
[SX128x] Fixed packet length in implicit mode ( #716 )
2023-03-31 22:02:58 +02:00
jgromes
ee7c1e7604
[SX128x] Added PHY startReceive ( #700 )
2023-03-26 22:20:19 +02:00