Repository navigation
Releases
Releases · SMotlaq/LoRa
V2.0
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
- SNR measurement (
-
Documentation
- Full Doxygen comments for all public functions and the main structure
- Professional README with clear examples
- Dedicated Migration Guide
-
Compatibility
- New
LoRa_compat.hlayer so older projects (v1.x) can still compile with minimal changes - Clear migration instructions for the three renamed structure members
- New
-
Examples
- Five ready-to-use examples covering:
- Basic TX
- Polling RX
- Interrupt RX
- Ping-Pong
- Long-range configuration
- Five ready-to-use examples covering:
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
- Replace
LoRa.handLoRa.cwith the new files. - Add
#include "LoRa_compat.h". - Rename the first three structure fields mentioned above.
- Test your application.
Full Changelog: See commit history and MIGRATION.md
V1.0
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 successLoRa_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