Skip to content

Releases

V2.0

Choose a tag to compare

@SMotlaq SMotlaq released this 23 Oct 09:44

Release Date: October 2026

Major refactoring and quality improvement release. This version focuses on code cleanliness, correctness, documentation and backward compatibility.

What's New

  • Complete code cleanup

    • Fixed all typos and inconsistent naming
    • Modern and consistent API naming with LORA_ prefix
    • Better structure and readability
  • New Features

    • SNR measurement (LoRa_getSNR())
    • Improved RSSI calculation (uses SNR when negative)
    • Fully implemented LoRa_receive_IT() for interrupt-driven reception
    • SF6 support
    • Proper null-pointer and parameter checks
    • Automatic high-power mode (RegPaDac) when using +20 dBm
    • Sync Word is now set during initialization
  • Documentation

    • Full Doxygen comments for all public functions and the main structure
    • Professional README with clear examples
    • Dedicated Migration Guide
  • Compatibility

    • New LoRa_compat.h layer so older projects (v1.x) can still compile with minimal changes
    • Clear migration instructions for the three renamed structure members
  • Examples

    • Five ready-to-use examples covering:
      • Basic TX
      • Polling RX
      • Interrupt RX
      • Ping-Pong
      • Long-range configuration

Breaking Changes

Old Name New Name
spredingFactor spreadingFactor
bandWidth bandwidth
crcRate codingRate
STNBY_MODE LORA_MODE_STANDBY
POWER_20db etc. LORA_POWER_20DBM etc.

Most old #defines still work if you include LoRa_compat.h.

Recommended Action for Existing Users

  1. Replace LoRa.h and LoRa.c with the new files.
  2. Add #include "LoRa_compat.h".
  3. Rename the first three structure fields mentioned above.
  4. Test your application.

Full Changelog: See commit history and MIGRATION.md

V1.0

Choose a tag to compare

@SMotlaq SMotlaq released this 23 Oct 09:43
a5b251e

Release Date: 2020

First public release of the Ra-02 / SX1278 LoRa library for STM32 (HAL).

Features

  • Basic initialization and configuration of SX1278-based modules (Ra-02)
  • Support for Frequency, Spreading Factor (SF7–SF12), Bandwidth, Coding Rate, Output Power and Preamble
  • Over Current Protection (OCP) setting
  • Blocking transmit with timeout
  • Continuous receive mode (polling)
  • RSSI reading
  • Sleep / Standby / TX / RX Continuous modes
  • Simple and easy-to-use API

Tested MCUs

  • STM32F103C8 / F103RE
  • STM32F030C8
  • STM32F411VE (Discovery)
  • STM32F429ZG
  • STM32L476RG (Nucleo)

Known Limitations

  • Typographical errors in several names (spredingFactor, bandWidth, crcRate, STNBY_MODE, etc.)
  • LoRa_isvalid() always returns success
  • LoRa_receive_IT() declared but not implemented
  • No SNR support
  • RSSI calculation does not take SNR into account
  • No SF6 support
  • Limited error checking
  • Documentation is basic