1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

28 Commits

Author SHA1 Message Date
Marian Buschsieweke
b9484852f1
drivers/sx126x: fix argument validation in spreading factor
The lowest possible value is `LORA_SF5` and not `LORA_SF6`. This fixes
the argument validation to allow setting `LORA_SF5` as spreading factor.

Fixes https://github.com/RIOT-OS/RIOT/issues/17861
2023-05-22 15:06:07 +02:00
4ccbe0dbac
drivers/sx126x: add missing lora module dependency 2023-04-13 10:55:23 +02:00
MrKevinWeiss
56947834f9
boards/sx126x: make MODULE_SX126X_RF_SWITCH hidden in kconfig
It turns out this is really a board specific setting and should always and only be used when the onboard module is being used...
2023-01-25 08:47:26 +01:00
MrKevinWeiss
bb0efa89d1
drivers/sx126x: Fix kconfig modeling 2023-01-24 11:12:33 +01:00
Benjamin Valentin
838a5e4bd3 netdev_drivers: make sure to signal LINK_UP at least once 2022-09-16 22:57:28 +02:00
Marian Buschsieweke
276ad5716a
sys/net/gnrc/netif: allow checking if a netdev is legacy or new API
A if `netdev_driver_t::confirm_send()` is provided, it provides the
new netdev API. However, detecting the API at runtime and handling
both API styles comes at a cost. This can be optimized in case only
new or only old style netdevs are in use.

To do so, this adds the pseudo modules `netdev_legacy_api` and
`netdev_new_api`. As right now no netdev actually implements the new
API, all netdevs pull in `netdev_legacy_api`. If `netdev_legacy_api` is
in used but `netdev_new_api` is not, we can safely assume at compile
time that only legacy netdevs are in use. Similar, if only
`netdev_new_api` is used, only support for the new API is needed. Only
when both are in use, run time checks are needed.

This provides two helper function to check for a netif if the
corresponding netdev implements the old or the new API. (With one
being the inverse of the other.) They are suitable for constant folding
when only new or only legacy devices are in use. Consequently, dead
branches should be eliminated by the optimizer.
2022-08-17 12:56:07 +02:00
75f5048b68
Merge pull request #17497 from jia200x/pr/lora/fix_rssi_val
[treewide] lora: use int16_t for RSSI value
2022-01-17 18:57:37 +01:00
Jose Alamos
9955a35c63
[treewide] lora: use int16_t for RSSI value
The RSSI values reported by LoRa transceiver can be less than -127.
Therefore, `int8_t` is not enough. This commit defines the RSSI of
`netdev_lora_rx_info` as `int16_t` and adapt the drivers accordingly
(sx126x, sx127x).
2022-01-17 17:54:18 +01:00
e809952ca4
drivers/sx12{6,7}x: use inverse CONFIG_LORA_PAYLOAD_CRC_OFF_DEFAULT 2022-01-14 10:31:55 +01:00
Leandro Lanzieri
f979ec5812
drivers/sx126x/Kconfig: rework model selection 2021-11-29 10:45:10 +01:00
Francisco Molina
e17e3254e1 drivers/sx126x: add tx_pa_mode
BOARDs with RF switch might only support one of the TX modes, and
on init the BOARD needs to be configured accordingly and the correct
mode selected on TX.
2021-11-08 18:42:05 +01:00
a120c2b296
drivers/sx126x: declare pseudomodules at driver level 2021-10-05 11:48:51 +02:00
Jose Alamos
b299299ad3
drivers/sx126x: fix NETOPT_RX_SYMBOL_TIMEOUT 2021-07-14 14:11:15 +02:00
José Alamos
934c875aba
Merge pull request #16579 from akshaim/pr/wl55jc_lorawan_final
drivers/sx126x: Add support for Nucleo -WL55JC
2021-07-09 14:48:11 +02:00
Akshai M
29c392d52d drivers/sx126x : Uncrustify 2021-07-09 11:16:41 +02:00
Akshai M
17ad0fc5a7 driver/sx126x : Add set_rf_mode interface 2021-07-09 11:16:41 +02:00
Akshai M
8870a885cb drivers/sx126x : Add stm32wl variant 2021-07-09 11:16:41 +02:00
Akshai M
896c12a009 drivers/sx126x: Enable SX126X_IRQ_SYNC_WORD_VALID irq 2021-07-09 10:47:42 +02:00
Akshai M
23c70e321d drivers/sx126x.c : Add debug messages 2021-07-09 10:47:42 +02:00
Jose Alamos
c9ee5fb76a
sx126x: avoid explicit cast to netdev 2021-07-09 10:38:36 +02:00
Akshai M
4d890b1c45 drivers/sx126x : Configure Rx timeout timer 2021-07-08 12:19:36 +02:00
Akshai M
8d43dbf67f drivers/sx126x : Update NETOPT_RX_xx
r/NETOPT_RX_TIMEOUT/NETOPT_RX_SYMBOL_TIMEOUT
Use sx126x_symbol_to_msec() to calculate the RX timeout in ms.
2021-07-08 12:19:36 +02:00
Francisco
ccfd3ee980
Merge pull request #16597 from jia200x/pr/sx126x_kconfig
sx126x: add support for multiple simultaneous variants
2021-07-06 13:19:15 +02:00
Jose Alamos
2e5b7f9e31
sx126x: add support for multiple simultaneous variants 2021-07-05 16:02:15 +02:00
Jose Alamos
033c1d97f7
sx126x: move pa_cfg to ROM 2021-07-02 11:12:53 +02:00
Jose Alamos
951822c41b
drivers/sx126x: fix wrong return value in recv function 2021-06-22 16:14:21 +02:00
Jose Alamos
d4941604d9
drivers/sx126x: fix netdev send function
This commit fixes the send function of sx126x. The loop that reads the
iolist was not considering the offset. Therefore each iolist snippet was
being written into the first position.

The loop was also setting the payload length to the size of the iolist
snippet. Then the payload was also wrong.

With this commit an iolist is copied sequentially into the framebuffer
and the payload length is set to `iolist_size`
2021-06-18 12:19:16 +02:00
0b5b9bd80f
drivers: add implementation for sx126x lora radio 2021-03-30 16:12:39 +02:00