Skip to content

Releases: Lora-net/SWL2001

v4.9.0

15 Oct 09:52

Choose a tag to compare

[v4.9.0] 2025-10-15

This version is based on branch v4.8.0 of the LoRa Basics Modem.

Detailed Modem API changelog can be found here

Detailed Modem HAL changelog can be found here

Added

  • Support for the LR20xx radio
  • Cmake compilation support
  • LR11xx/Geolocation: new example wifi_region_detection in lbm_applications/3_geolocation_on_lora_edge.

Changed

  • Relay Rx now optionally supports CSMA and LBT for packet forwarding and normal traffic. When doing so, it may take more than the specified 50ms to access the medium. Clock Synchronization (DeviceTimeRequest) might be impacted if the medium is busy at this time. The official Relay specification does not handle this case.
  • Test mode Continues Wave, call to ral_init() was removed before CW started
  • Radio drivers updates:

Fixed

  • The CSMA specification defines default MAX_CHANGE to 6 but the value was set to 4
  • CSMA false detection on US915/AU915 with SX126x radio
  • LoRa CSMA energy consumption is now correctly calculated via smtc_modem_get_charge(), ensuring accurate power usage tracking
  • LBT energy consumption is now correctly calculated via smtc_modem_get_charge() for accurate power usage tracking
  • The datarate for the Relay Second channel on Fixed Channel Plan is now configurable
  • Relay Rx: may start on a wrong channel when Second Channel is enabled
  • Relay Tx: force compute WOR MIC after enablement or join accept, the MIC was wrong if the end-device had joined without a relay
  • Relay Rx/Tx: MAC parser must check valid Rx datarate for second channel and not Tx datarate, specially for FCC region.
  • WiFi scan service: fixed reset of previous results in case of abort
  • Bad RSSI and SNR when receiving a GFSK packet
  • Join Datarate distribution is not used after a Join Accept
  • The first uplink of a store and forward stored before a join may have been lost when the device is relayed.
  • FUOTA v2 FragSessionStatusAns, if FragIndex is invalid, MICError and MemoryError bits are 0.
  • Workaround to reach the radio sensitivity in case of LR11xx + bandwidth BW500
  • Power in LinkAdrReq was clipped to 0 dBm (US915, AU915), limit has been removed
  • Class B/C: The tx_ack_bit was set before validation of the downlink frame, now the tx_ack_bit is set only on valid frame
  • The remaining regulatory duty-cycle for EU868 and RU864 is returned based on the currently enabled channels and the active LoRaWAN datarate.
  • Issue #101 MissingFrag bit set after successful FUOTA
  • Issue #104 Compile error with IAR
  • Issue #108 Class B ping-slot, downlink were silently dropped
  • Issue #109 Wrong CONTEXT_LORAWAN_STACK size specified in docs
  • Issue #110 Get functions are broken if enums are larger than a single byte
  • Issue #123 Multicast package needs 2.4GHz support for Frequency
  • Issue #124 Frequency 869.3MHz isn't constraint in LBM
  • Issue #126 Store and forward delay overflow if offline

Deprecated

  • LoRa cloud services are no longer tested but still present in this version

v4.8.0

20 Dec 07:33

Choose a tag to compare

This version is based on feature branch v4.5.0 of the LoRa Basics Modem.

Detailed Modem API changelog can be found here
Detailed Modem HAL changelog can be found here

Added

  • Support both Relay Rx and Relay Tx that follows LoRaWAN® Specification TS011-1.0.1 with compilation flag in app_options.mk
  • Duty-cycle event to know when the Time On Air is reached or available
  • Test-mode event

Changed

  • Enable CSMA by default for lbm_examples
  • Update RAL with instantaneous power consumption obtained through BSP
  • Implement the RAL BSP instantaneous power consumption getters for supported radio in examples
  • [lr11xx-driver] Update lr11xx radio driver to v2.5.2 version (CHANGELOG.md)
  • [sx126x-driver] Update sx126x radio driver to v2.3.2 version (CHANGELOG.md)

Fixed

  • FSK modulation, SNR and RSSI returned by the stack were not correct in class A/B/C
  • LinkADRReq with ADR disabled do not answer the request correctly
  • Remote Multicast Setup, time request in loop if no network coverage
  • Backoff datarate must revert default channels and keeps as is others
  • Fixed channel plan do not handle correctly bad CFlist type
  • The modem keep the JoinDatarate distribution after joined if CSMA or LBT detect a possible collision during the first joinReq, or when the user leave before the end of a join and called the join
  • TxParamSetupReq EIRP is not applied if a LinkADRReq is not received
  • Speed up the certification in class B/C by applying on the fly the new requested periodicity
  • LR-FHSS the values returned by smtc_modem_get_charge() is based on the center frequency
  • LR-FHSS the values returned by smtc_modem_get_duty_cycle_status() is based on the center frequency
  • Fix supervisor lorawan_manager for multi-stack support
  • Issue #83 2.4GHz is not working for LR1121 with STM32L476RG MCU
  • Issue #69 Firmware Management Protocol, no DevUpgradeImageAns when the FW upgrade image is not valid
  • Issue #68 aes_encrypt duplicate definition linking error
  • Issue #66 Frequent store and forward uplinks if offline
  • Issue #62 v4.5.0 relay_tx_check_decode_ack() does not calculate MIC according to TS011-1.0.0
  • Issue #61 Modem charge mAh with different configuration

v4.5.0

06 May 15:53

Choose a tag to compare

This version is based on feature branch v4.3.1 of the LoRa Basics Modem.

Changed:

  • Printing of certification mode enabling status is changed so that the print is more visible when enabled. The enabling status is always reported.

Added

  • Add in stack lost connection in second since last downlink
  • CSMA and LBT could be both enabled
  • Compute CSMA and LBT power consumption statistics for radio planner
  • Get the Radio Planner power consumption statistics for all hooks in array
  • Add API to Get/Set the status to bypass the join_duty-cycle backoff
  • Add API smtc_modem_get_suspend_radio_communications()
  • Add Relay TX feature as defined in TS011 LoRaWAN® Relay Specification. The relay TX is the relayed end-device.

Fixed

  • Retrofit Bug fix of answer to FragSessionStatusReq command in fragmentation package v1.0.0
  • Join BackOff duty-cycle: add a check before join to be sure that the backoff duty-cycle is not exceeded according to current datarate (ie 36s on 1h, 36 s on 10hours and 8.7s on 24h)
  • Issue #26 Variable user_alarm_in_seconds will never be negative in modem_supervisor_engine
  • Issue #44 Flash porting test always failing due to array out of bounds access
  • Issue #48 FMP Unresponsiveness after Receiving multiple FMP_DEV_REBOOT_TIME_REQ msg's
  • Issue #49 Relay tx and rx not setting antenna switch manually
  • Issue #51 Makefile ignores MCU_FLAGS

v4.3.1

18 Mar 09:59

Choose a tag to compare

Release v4.3.1

This version fix the 4.3.0 version.

  • LR-FHSS datarate decay certification test failing
  • LR-FHSS hop_sequence_id must in range [0:nb_max_hop_sequence-1] to avoid buffer overflow
  • FUOTA MPA (Multiple Package Access) multicast session not started when RMS commands are received through MPA package
  • FUOTA MPA (Multiple Package Access) package answering to MultiPackBufferReq plus other packages commands in same downlink when it should not
  • FUOTA MPA (Multiple Package Access) Coverity Overrun fix
  • LBM Application with nRF52840 target, the RTC wrapping reset the device
  • LBM Application with nFR52840 target, fix SPI HAL for radio sx126x and sx128x
  • Class B resets when counter "smtc_modem_hal_get_time_in_100us" wraps (occurs after 4.9 days), this time base is no more used
  • cloud DM DM_INFO_RXTIME payload do not report the correct duration since last received downlink

Full Changelog: v4.3.0...v4.3.1

v4.3.0

15 Dec 11:15

Choose a tag to compare

Release v4.3.0

v3.3.0

07 Jul 13:15

Choose a tag to compare

Release v3.3.0

v3.2.4

09 Sep 19:18

Choose a tag to compare

Release v3.2.4

v3.1.7

22 Apr 12:47

Choose a tag to compare

Release v3.1.7

v2.1.0

03 Nov 08:20

Choose a tag to compare

Release v2.1.0