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
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
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
16710d4dae
[SX128x] Added missing override
2024-05-26 08:45:42 +02:00
jgromes
4a011e0915
[SX128x] Fix check output power argument name
2024-05-25 07:13:31 +02:00
jgromes
f9af9b4d3f
[SX128x] Fix forgotten sleep
2024-05-15 18:45:57 +02:00
jgromes
63ef9e0977
Fixup doxygen comments ( #1089 )
2024-05-15 18:43:19 +02: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
3d9815f93d
Use explicit constructors for base classes
2024-05-11 17:22:57 +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
948088c1e1
[SX128x] Moved setHeaderType to private methods
2024-01-12 19:49:17 +01:00
jgromes
b5d931ec79
[SX128x] Cleanup private/protected members
2024-01-12 19:45:41 +01:00
S5NC
14a2238ca6
Update SX128x.h
2023-11-30 12:18:13 +00:00
jgromes
827aac5938
[SX128x] Reworked macro configuration system
2023-11-27 21:15:07 +01:00
jgromes
d1e3691c32
Added notes about getPacketLength ( #214 )
2023-07-15 19:40:07 +02:00
jgromes
8fd0a67a78
Typo fixes
2023-07-15 19:13:16 +02:00
jgromes
1f6acc8347
[SX128x] Implemented generic IRQ actions
2023-06-21 22:23:43 +02:00
jgromes
1597e8d754
[SX128x] Fixed default parameters
2023-05-28 22:32:06 +02:00
jgromes
f936d53639
[SX128x] Added default startReceive method
2023-05-28 22:19:03 +02: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
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
jgromes
9d3a2bb72f
[SX128x] Added IQ inversion ( #724 )
2023-04-08 21:45:15 +02:00
jgromes
ee7c1e7604
[SX128x] Added PHY startReceive ( #700 )
2023-03-26 22:20:19 +02:00
GUVWAF
edc8877adb
[SX128x] Add irqFlags and irqMask to startReceive
2023-02-26 13:34:22 +01:00
jgromes
60bd3d6440
[SX128x] Use Module stream read/write
2023-02-19 17:07:00 +01:00
jgromes
7d286e32bc
[SX128x] Use Module SPI stream
2023-02-19 16:23:08 +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
Matthijs Kooijman
90b28d7722
Remove duplicated setRfSwitchPins documentation
...
All radios that support RfSwitch define this method that simply forwards
to the `Module::setRfSwitchPins()` method. Previously, all these methods
duplicated the documentation as well, but this uses the doxygen \copydoc
to remove this duplication.
2023-01-09 09:46:31 +01:00
Matthijs Kooijman
47163f4398
[SX126x] Make begin parameter docs consistent
...
This:
- Updates syncWord comments after changing it from uint16_t to uint8_t
in commit 55aff74a
([SX126x] Changed pin mapping, added reset,
changed LoRa sync word to 1B).
- Adds missing useRegulatorLDO comments forgoten in commit ea85a663
([SX126x] Pass useRegulatorLDO to SX1262/SX1261/SX1268).
- Makes useRegulatorLDO comments the same in all places (using the more
explicit version).
- Fixes a typo in the doxygen \parma -> \param command.
2022-12-20 23:33:02 +01:00
Thomas Göttgens
08de95e15e
Access getIrqStatus() without Godmode and change the flag setting like SX126x handles it.
2022-12-05 11:17:59 +01:00
jgromes
fc3a85abf9
[SX128x] Added post-transaction error checking
2022-10-01 22:54:36 +02:00
jgromes
e5fe82f334
[SX128x] Fixed setBitRate compatibility with PhysicalLayer
2022-10-01 15:16:01 +02:00
jgromes
0b5cd51828
[SX128x] Added finishTransmit
2022-09-18 16:15:07 +02:00
jgromes
da0993a6ed
Added RADIOLIB_EXCLUDE_DIRECT_RECEIVE exclusion macro ( #557 )
2022-08-15 19:19:59 +02:00
jgromes
64817ed4be
[SX128x] Minor formatting update
2022-02-28 18:47:55 +01:00
Robert
89f202ce6a
Changed method to return float instead of double. All calculations within the method also use float instead of double. Results of the method do not seem to be effected.
2022-02-26 18:44:05 -05:00
Robert
ff43d95afa
Cleaned up formatting in header. Changed assigned value to set only the bit indicated in the documentation.
2022-02-24 00:29:51 -05:00
Robert
da0cd455c9
Add method to support SX128x Manual Gain Mode.
2022-02-23 23:58:56 -05:00