Releases: mcci-catena/arduino-lmic
v4.1.1: Patch release
v4.1: Minor release: add battery status API, and fix bugs
See docs in README.md
for release details.
Test Results
LoRaWAN 1.0.3 test results (prepared by RedwoodComm RWC5020B with software v1.321). (These will be updated as we have a chance to run the tests.)
- US915:
EDT_US915_V103_ClassA_CERTIFICATION_USCA_TEST_RESULT.pdf
. Passes all tests. - AS923 (with settings for Japan, LBT and lower default dBi):
EDT_AS923_V103_ClassA_LORAWAN_CERTIFICATION_AS_TEST_RESULT_NO_OptDR.pdf
. Passes the required tests. The FSK downlink and SF7BW250 downlink tests do not pass, but these downlink speeds have not been not commonly used to date.
What's Changed
- Fix #763: use TimeLib.h in ttn-otaa-network-time example; this is v4.0.1-pre1 by @terrillmoore in #764
- Some more warning removed by @d-a-v in #791
- Update README.md by @PeeJay in #780
- Warning message for Adafruit Feather M0 pin mapping by @d-a-v in #755
- Support for TTGO-LoRa32-v2.1.6 by @ChrSchultz in #692
- MAX EIRP is 13dBm (= 19.95mW < 20mW) in as923jp by @ryos36 in #662
- Add control over battery level response for DevStatusAns MAC message by @terrillmoore in #799
- Fix #800: tweaks to compliance sketch by @terrillmoore in #801
- Fix #802: Prepare v4.1.0 release by @terrillmoore in #803
New Contributors
- @PeeJay made their first contribution in #780
- @ChrSchultz made their first contribution in #692
- @ryos36 made their first contribution in #662
Full Changelog: v4.0.0...v4.1.0
v4.0.0 release: assign channels without replacement (& other fixes)
This is a major release, and (since it changes some of the contents of the LMIC structure, which are public) potentially breaking.
Potentially breaking changes include:
- Remove XCHANNEL support from US region #404
- Assign channels randomly without replacement #515, #619, #730.
- Don't allow LMIC_setupChannel() to change default channels #714
- Adopt semantic versions completely #726.
Enhancements include:
- Add LMIC_queryNumDefaultChannels() #700.
- Don't compile board config objects when we know for sure they'll not be used; compilers can't always tell #736.
Important bug-fixes include:
- Don't accept out-of-range DRs from MAC downlink messages #723
- Implement JoinAccept CFList processing for US/AU #739.
- Correct JoinAccept CFList processing for AS923 #740.
Fixes include:
Pre-release of V4: bug fixes
This pre-release adds bug fixes for #739 and #740. This means you can set your device for 64 channels (in the US or AU) and still work properly after joining with a network with an 8-channel gateway. It also fixes channel assignment for AS923 when channels are supplied in a CFList at the JoinAccept.
Pre-release of V4 with proper channel hopping, bug fixes
Documentation is lagging, but I've been using this and it seems to work. Key features:
- Added proper channel hopping using channel selection without replacement (rather than with replacement). This means that the sequence within a set of enabled channels should visit all the enabled channels (randomly) before re-visiting any in the set.
- Bug fixes for compliance testing.
- Various other features and contributions.
I've been testing this successfully with TTN V3. Not a lot of testing with non-US regions, although I've run some of the compliance tests.
v3.3.0: 2020q4 release: bug fixes, doc improvements
Incorporate bug fixes into release, and update documentation. Since some pinmaps were added, the version is now v3.3.0. See release history in README.md for details.
Support for non-modified BSPs
The main point of this release is to remove the interrupt disables that were formerly used in the radio driver, by dividing required interrupt processing into two parts:
- capturing the time of the event (which must happen right away), and
- fetching results from hardware (which is not time critical, and which must be coordinated with background activity).
Formerly, the "interrupt enable" routine in the HAL would do the first of these operations (when polling) and the second of these operations (whether interrupt driven or polled). As of this release, the "interrupt enable" routine in the HAL only polls for time-critical events. Fetching results is moved to an separate routine, which os_runloop_once()
explicitly calls. With these changes, use of enable/disable interrupts was removed from radio.c, and now is isolated to oslmic.c and the HAL itself.
Other changes include bug fixes and example enhancements.
The version was changed to v3.2.0 because of the enhancements in the example scripts; otherwise this is primarily a bug-fix release. See release notes for more details.
Highly compliant Class A operation
This release incorporates numerous changes that make the LMIC function well as a LoRaWAN 1.0.3 Class A device.
Code that accesses the content of the LMIC structure may need to be modified, as some of the fields have been renamed, or rearranged.
See the README.md
for more details.
Maintenance release
Maintenance release
This release has the fix for #199, which prevents https://github.com/mcci-catena/arduino-lorawan from building with v2.3.0 (when 2.3.0 is installed over the internet from the IDE).