Commit graph

523 commits

Author SHA1 Message Date
jgromes
5d9917eb06 [LoRaWAN] Change FSK switch to modulation variable 2024-06-02 09:29:55 +02:00
jgromes
cc2cb2c9a0 [LoRaWAN] Fix shadowed variable 2024-05-26 11:26:15 +01:00
jgromes
79d10c242a [LoRaWAN] Use memset for channel array init 2024-05-26 09:27:00 +02:00
jgromes
9a9e04d047 Add check for self-assignment 2024-05-26 09:25:13 +02:00
jgromes
99bb025173 [PHY] Added missing zero inits 2024-05-26 09:07:07 +02:00
jgromes
525fdfb1a0 [LoRaWAN] Cppcheck cleanup 2024-05-26 09:02:23 +02:00
StevenCellist
139fc7ee35 [LoRaWAN] Force default Rx2 for JoinAccept 2024-05-25 15:25:46 +02:00
StevenCellist
7186ae598b [LoRaWAN] Improve debug output 2024-05-25 15:12:36 +02:00
StevenCellist
237531c9a0 [LoRaWAN] Improve FPort checks, add TS009 option 2024-05-25 15:00:36 +02:00
StevenCellist
d4b25e75af [LoRaWAN] Hide Rx2 config into guarded setRx2Dr() 2024-05-25 14:38:04 +02:00
StevenCellist
88b4da94c1 [LoRaWAN] Fix cppcheck warnings 2024-05-25 13:13:35 +02:00
StevenCellist
fe221cf84f [LoRaWAN] Revert LW to LORAWAN 2024-05-25 13:00:02 +02:00
StevenCellist
298a612699
[LoRaWAN] Change session activation (#1093)
* [LoRaWAN] Improve session restoration/activation behaviour

* [LoRaWAN] Custom return codes for session begin

* [LoRaWAN] Separate begin() and activate()

* [LoRaWAN] Fix activateABP()

* [LoRaWAN] Additional error-code

* [LoRaWAN] Fix rejoining during active session

* [LoRaWAN] Expose clearSession, drop `force`

* Update keywords...
2024-05-21 12:03:49 +02:00
Thomas Schätzlein
f2e1b547d5 fix payload of DevStatusAns mac-command
Lorawan specs say (e.g. 1.0.4 or 1.1), that the first byte is the
battery-level and the second byte is the margin.
2024-05-20 10:51:41 +02:00
jgromes
60d1738c91 [AX25] Fix possible string truncation 2024-05-19 18:32:44 +02:00
jgromes
9e8da76740 [ITA2] Added assignment operator overload and copy constructor 2024-05-12 19:49:56 +01:00
jgromes
71ccce4a3d [EXT] Added assignment operator overload and copy constructor 2024-05-12 19:49:46 +01:00
jgromes
e3f851ef6d [AX.25] Added assignment operator overload 2024-05-12 19:49:28 +01:00
jgromes
a93e7b93de [SSTV] Fixed issues found by cppcheck 2024-05-12 12:03:53 +01:00
jgromes
d4e7af836c [Hell] Fixed issues found by cppcheck 2024-05-12 12:03:43 +01:00
jgromes
f72f7bd46d [RTTTY] Fixed issues found by cppcheck 2024-05-11 20:33:45 +01:00
jgromes
909969aa15 [Print] Fixed issues found by cppcheck 2024-05-11 20:33:39 +01:00
jgromes
89e406775d [Pager] Fixed issues found by cppcheck 2024-05-11 20:33:07 +01:00
jgromes
48ed06aa4b [Morse] Fixed issues found by cppcheck 2024-05-11 20:32:57 +01:00
jgromes
d779a834a0 [Hell] Fixed issues found by cppcheck 2024-05-11 20:32:50 +01:00
jgromes
f53d5b9027 [FSK4] Fixed issues found by cppcheck 2024-05-11 20:32:41 +01:00
jgromes
0f0ab73832 [EXT] Fixed issues found by cppcheck 2024-05-11 20:32:32 +01:00
jgromes
914c616c2a [Bell] Fixed issues found by cppcheck 2024-05-11 20:32:20 +01:00
jgromes
98bae46c33 [AX25] Fixed issues found by cppcheck 2024-05-11 20:32:02 +01:00
jgromes
ac07269f97 [APRS] Fixed issues found by cppcheck 2024-05-11 20:31:57 +01:00
jgromes
d61589a2c5 [AFSK] Fixed issues found by cppcheck 2024-05-11 20:31:01 +01:00
jgromes
d12e9f11f5 [LoRaWAN] Added timeout to downlink wait loop 2024-05-08 15:29:39 +02:00
jgromes
90eca88859 [LoRaWAN] Use 32-bit IRQ flags 2024-05-08 14:51:43 +02:00
jgromes
2c9446ef1e [LoRaWAN] Added rx start assert 2024-05-08 14:50:34 +02:00
StevenCellist
bb7fffe95d [LoRaWAN] Improve readability to better match documentation 2024-05-04 23:26:59 +02:00
StevenCellist
bbeca9a53e [LoRaWAN] Consistent fOpts casing to match documents 2024-05-04 23:21:45 +02:00
StevenCellist
163a4020d2 [LoRaWAN] Consistent fCnt/fPort casing to match documents 2024-05-04 23:18:36 +02:00
StevenCellist
43adfee174 [LoRaWAN] Shorten LORAWAN to LW 2024-05-03 22:58:11 +02:00
jgromes
6fe581aea7 Fix minor format warnings 2024-05-03 20:54:18 +01:00
jgromes
05e35407f4 [FSK4] Use abs macro instead of abs function 2024-05-01 15:14:44 +02:00
Alistair Francis
2f85326fec
examples/NonArduino/Tock: Support RISC-V and bump libtock-c (#1082)
* examples/NonArduino/Tock: Support building for RISC-V

Signed-off-by: Alistair Francis <alistair@alistair23.me>

* examples/NonArduino/Tock: Update to newer libtock-c

Signed-off-by: Alistair Francis <alistair@alistair23.me>

---------

Signed-off-by: Alistair Francis <alistair@alistair23.me>
2024-05-01 15:12:05 +02: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
jgromes
841b283c0f [LoRaWAN] Use dynamic array instead of VLA 2024-04-26 07:04:16 +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
3c502b9cdf [AX25] Fix direct mode start 2024-04-20 18:05:57 +02:00
StevenCellist
aa46a0c8b3 [LoRaWAN] Hide broken CSMA 2024-04-02 22:25:50 +02:00
StevenCellist
a4ad32e6ff [LoRaWAN] Fix downlink crashes (#1049), remove redundant parameter 2024-04-02 22:24:06 +02:00
jgromes
e7ee407b0d [Doc] Additional doxygen fixes 2024-04-01 12:11:13 +02:00
Jan Gromeš
e57c9b08ea
[Doxygen] Warnings fixes (#1046)
* [APRS] Fix Doxygen warnings

* [Print] Fix Doxygen warnings

* [CC1101] Fixed doxygen warnings

* [nRF24] Fixed doxygen warnings

* [RF69] Fixed doxygen warnings

* [SX126x] Fixed doxygen warnings

* [SX127x] Fixed doxygen warnings

* [AFSK] Fixed doxygen warnings

* [APRS] Fixed doxygen warnings

* [Bell] Fixed doxygen warnings

* [Ext] Fixed doxygen warnings

* [LoRaWAN] Fixed doxygen warnings

* [PHY] Fixed doxygen warnings

* [Print] Fixed doxygen warnings

* [Mod] Fixed doxygen warnings
2024-04-01 11:11:24 +02:00
jgromes
78211e7566 [LoRaWAN] Added specific error code for no downlink received 2024-03-27 18:48:16 +01:00