Skip to content

Commit ba4f85d

Browse files
committed
Release 2.0.6
* deps: Updated sx1302_hal dependency to version 2.1.0 (no LBT yet) (Resolves #89, #103, #121, #130) * deps: Added sx1302_hal patch for handling of latched xticks rollover * deps: Updated mbedTLS dependency to version 2.28.0 (LTS) * deps: Fixed lgw patch causing IQ inversion in 500kHz channel (Resolves #81) * s2e: Added support for AU915 (Resolves #43) * s2e: Added support for LoRaWAN Regional Parameters Common Names (Resolves #18) * s2e: Fixed dnchnl2 issue (Resolves #79) * s2e: Fixed class C backoff logic (Resolves #87) * s2e: Fixed class B beacon format (Resolves #129, #131) * s2e: Fixed DR range check in upchannels list parser (Resolves #141) * ral: Changed handling of xticks for lgw1302 * ral: Fixed radio in use issue (Resolves #53, #62) * ral: Fixed types in txpow assignment (master/slave) (Resolves #118) * ral: Fixed class B beacon parameters (Resolves #132) * sx130xconf: Fixed parsing of rssi_tcomp values for sx1302 (Resolves #144) * tls: Fixed TLS cert parsing issue (Resolves #76) * sys_linux: Added support for usb/spi prefix in radio devname * sys_linux: Added mbedTLS version to startup log * sys_linux: Changed version to be printed to stdout (Resolves #51) * sys_linux: Changed default max dbuf size (Resolves #95) * sys_linux: Fixed relative home path handling (Resolves #140) * sys_linux: Fixed memory corruption during system command execution (Resolves #146) * tc/cups: Fixed sync on credset file IO (Resolves #94) * timesync: Fixed UTC to PPS alignment * log: Changed verbosity of XDEBUG log level * log: Changed logging experience for improved clarity * log: Added HAL log integration into logging module * make: Changed makefiles for more space-friendliness (Resolves #66) * net: Changed strictness on line-endings in key files (Resolves #68) * gps: Fixed parsing of ublox NAV-TIMEGPS message * Restored LICENSE file (Resolves #63, #67)
1 parent 6675c77 commit ba4f85d

File tree

163 files changed

+8165
-1180
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

163 files changed

+8165
-1180
lines changed

.github/workflows/regr-tests.yml

+32
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: regr-tests
2+
on: [push]
3+
jobs:
4+
run-regr-tests:
5+
runs-on: ubuntu-18.04
6+
steps:
7+
- name: Checkout repo
8+
uses: actions/checkout@v2
9+
- name: Setup environment
10+
run: |
11+
sudo apt-get install -y python3.7 python3-pip virtualenv psmisc git build-essential lcov curl netcat-openbsd
12+
virtualenv --python python3.7 pyenv
13+
. pyenv/bin/activate
14+
pip3 install setuptools aiohttp websockets
15+
- name: Execute Tests
16+
run: |
17+
# relax some regr test success conditions - related to timing
18+
. pyenv/bin/activate
19+
export PPSTHRES=100
20+
export TX_AIM_GAP='"40ms"'
21+
make -C regr-tests ci s2core.info
22+
- name: Archive logs
23+
uses: actions/upload-artifact@v2
24+
with:
25+
name: Test logs
26+
path: regr-tests/t.log/*.log
27+
- name: Archive Coverage report
28+
uses: actions/upload-artifact@v2
29+
with:
30+
name: Coverage report
31+
path: regr-tests/s2core-html/**
32+

.travis.yml

-18
This file was deleted.

CHANGELOG.md

+44-10
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,60 @@
11
# Changelog
22

3+
## 2.0.6 - 2022-01-17
4+
5+
* deps: Updated sx1302_hal dependency to version 2.1.0 (no LBT yet) (#89, #103, #121, #130)
6+
* deps: Added sx1302_hal patch for handling of latched xticks rollover
7+
* deps: Updated mbedTLS dependency to version 2.28.0 (LTS)
8+
* deps: Fixed lgw patch causing IQ inversion in 500kHz channel (#81)
9+
* s2e: Added support for AU915 (#43)
10+
* s2e: Added support for LoRaWAN Regional Parameters Common Names (#18)
11+
* s2e: Fixed dnchnl2 issue (#79)
12+
* s2e: Fixed class C backoff logic (#87)
13+
* s2e: Fixed class B beacon format (#129, #131)
14+
* s2e: Fixed DR range check in upchannels list parser (#141)
15+
* ral: Changed handling of xticks for lgw1302
16+
* ral: Fixed radio in use issue (#53, #62)
17+
* ral: Fixed types in txpow assignment (master/slave) (#118)
18+
* ral: Fixed class B beacon parameters (#132)
19+
* sx130xconf: Fixed parsing of rssi_tcomp values for sx1302 (#144)
20+
* tls: Fixed TLS cert parsing issue (#76)
21+
* sys_linux: Added support for usb/spi prefix in radio devname
22+
* sys_linux: Added mbedTLS version to startup log
23+
* sys_linux: Changed version to be printed to stdout (#51)
24+
* sys_linux: Changed default max dbuf size (#95)
25+
* sys_linux: Fixed relative home path handling (#140)
26+
* sys_linux: Fixed memory corruption during system command execution (#146)
27+
* tc/cups: Fixed sync on credset file IO (#94)
28+
* timesync: Fixed UTC to PPS alignment
29+
* log: Changed verbosity of XDEBUG log level
30+
* log: Changed logging experience for improved clarity
31+
* log: Added HAL log integration into logging module
32+
* make: Changed makefiles for more space-friendliness (#66)
33+
* net: Changed strictness on line-endings in key files (#68)
34+
* gps: Fixed parsing of ublox NAV-TIMEGPS message
35+
* Restored LICENSE file (#63, #67)
36+
337
## 2.0.5 - 2020-06-05
4-
* README.md - Updated with supported platform and Travis Banner
38+
539
* Remove LICENSE & ROADMAP.md file
640
* Based on v2.0.4 with no source code/functional changes
741

842
## 2.0.4 - 2020-03-17
9-
* cups - Add Content-Type header to CUPS request
10-
* sys_linux - truncate update file instead of append
11-
* cups - nullify sig pointer after free
12-
* cups - symbol for signature crc length
13-
* cups - Add segment length checks
14-
* sys_linux - cups update abort should unlink the right file
15-
* cups - free the key buffer
16-
* lgw1302: Added sx1302 hal and integrated with corecell platform
43+
44+
* cups: Added Content-Type header to CUPS request
45+
* cups: Fixed nullify sig pointer after free
46+
* cups: Added segment length checks
47+
* cups: Fixed freeing the key buffer
48+
* deps: Added sx1302 hal and integrated with corecell platform
1749
* sys_linux: Fixed decoder pointer dereferencing (#39)
50+
* sys_linux: Fixed cups update abort should unlink the right file
51+
* sys_linux: Fixed truncate update file instead of append
1852
* s2e: Fixed memory corruption bug in JoinEui filter parsing (#31)
1953
* s2e: Added DR and Freq fields to dntxed message (#37)
2054
* s2e: Added error message type for printing LNS error into Station's log (#33)
2155
* s2e: Added fts field to updf message
2256
* net: Added Websocket PONG (#29)
23-
* net: Added option for TLS server name indication/verification
57+
* net: Added option for TLS server name indication/verification (#57)
2458
* rt: Added MCU clock drift compensation for UTC time offset
2559
* ral: Fixed dntxed message for short transmissions
2660
* ral: Added Automatic channel allocation feature

LICENSE

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
--- Revised 3-Clause BSD License ---
2+
Copyright Semtech Corporation 2022. All rights reserved.
3+
4+
Redistribution and use in source and binary forms, with or without modification,
5+
are permitted provided that the following conditions are met:
6+
7+
* Redistributions of source code must retain the above copyright notice,
8+
this list of conditions and the following disclaimer.
9+
* Redistributions in binary form must reproduce the above copyright notice,
10+
this list of conditions and the following disclaimer in the documentation
11+
and/or other materials provided with the distribution.
12+
* Neither the name of the Semtech corporation nor the names of its
13+
contributors may be used to endorse or promote products derived from this
14+
software without specific prior written permission.
15+
16+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18+
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19+
DISCLAIMED. IN NO EVENT SHALL SEMTECH CORPORATION. BE LIABLE FOR ANY DIRECT,
20+
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
21+
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23+
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24+
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
25+
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

README.md

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
[![Build Status](https://travis-ci.com/lorabasics/basicstation.svg?branch=master)](https://travis-ci.com/lorabasics/basicstation)
1+
[![regr-tests](https://github.com/lorabasics/basicstation/actions/workflows/regr-tests.yml/badge.svg?branch=master)](https://github.com/lorabasics/basicstation/actions/workflows/regr-tests.yml?query=branch%3Amaster)
22

33
# LoRa Basics™ Station
44

@@ -40,7 +40,7 @@ Building the Station binary from source, requires
4040

4141
## First Steps
4242

43-
The following is a three-step quick start guide on how to build and run Station. It uses a Raspberry Pi as host platform and assumes a Concentrator Reference Design 1.5 compatible radio board connected via SPI. In this example the build process is done on the target platform itself (the make environment also supports cross compilation in which case the toolchain is expected in `~/toolchain-$platform` - see [setup.gmk](setup.gmk)).
43+
The following is a three-step quick start guide on how to build and run Station. It uses a Raspberry Pi as host platform and assumes a Concentrator Reference Design 1.5 compatible radio board connected via SPI, and assumes that SPI port is enabled using the [raspi-config](https://www.raspberrypi.org/documentation/configuration/raspi-config.md) tool. In this example the build process is done on the target platform itself (the make environment also supports cross compilation in which case the toolchain is expected in `~/toolchain-$platform` - see [setup.gmk](setup.gmk)).
4444

4545
#### Step 1: Cloning the Station Repository
4646

@@ -87,6 +87,8 @@ cd examples/corecell
8787

8888
This example configuration for Corecell connects to [The Things Network](https://www.thethingsnetwork.org/) public LNS. The example [station.conf](station.conf) file holds the required radio configurations and station fetches the channel plan from the configured LNS url ([tc.uri](tc.uri)).
8989

90+
Note: SPI port requires to be activated on Raspberry Pi thanks to [raspi-config](https://www.raspberrypi.org/documentation/configuration/raspi-config.md) tool.
91+
9092
#### PicoCell Gateway (Linux OS as HOST + [SX1308 USB Reference design](https://www.semtech.com/products/wireless-rf/lora-gateways/sx1308p868gw))
9193

9294

SECURITY.md

-15
This file was deleted.

VERSION.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.0.5
1+
2.0.6

deps/lgw/makefile

+11-7
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# --- Revised 3-Clause BSD License ---
2-
# Copyright Semtech Corporation 2020. All rights reserved.
2+
# Copyright Semtech Corporation 2022. All rights reserved.
33
#
44
# Redistribution and use in source and binary forms, with or without modification,
55
# are permitted provided that the following conditions are met:
@@ -35,10 +35,14 @@ LGWVERSION.default = 5.0.1
3535
LGWVERSION ?= $(or ${LGWVERSION.${platform}}, ${LGWVERSION.default})
3636

3737
HFILES = $(wildcard ${PLT}/libloragw/inc/*.h)
38-
SRCS = $(wildcard ${PLT}/libloragw/inc/*.c)
38+
SRCS = $(wildcard ${PLT}/libloragw/src/*.c)
3939
ARTEFACTS = ${LGWLIB} ${LGWINC} $(patsubst %, ${LGWINC}/%, $(notdir ${HFILES}) config.h)
4040

41-
all: $(if ${HFILES},${ARTEFACTS},${PLT})
41+
LGW_EXTRA_CFLAGS = -DSTATIONLOG # Enable station log integration
42+
43+
all: platform build
44+
platform: ${PLT}
45+
build: ${ARTEFACTS}
4246

4347
${LGWINC}:
4448
@mkdir -p $@
@@ -49,18 +53,18 @@ ${LGWLIB}: ${PLT}/libloragw/libloragw.a
4953
@cp $< $@
5054

5155
${PLT}/libloragw/libloragw.a: ${SRCS} ${HFILES}
52-
${MAKE} -C ${PLT}/libloragw libloragw.a CC=${CC} AR=${AR} LD=${LD} TDfull=${TDfull}
56+
${MAKE} -C ${PLT}/libloragw libloragw.a CC="${CC}" AR="${AR}" LD="${LD}" TDfull="${TDfull}" EXTRA_CFLAGS="${LGW_EXTRA_CFLAGS}"
5357

5458
${PLT}/libloragw/inc/config.h: ${PLT}/libloragw/library.cfg
55-
${MAKE} -C ${PLT}/libloragw inc/config.h CC=${CC} AR=${AR} LD=${LD} TDfull=${TDfull}
59+
${MAKE} -C ${PLT}/libloragw inc/config.h CC="${CC}" AR="${AR}" LD="${LD}" TDfull="${TDfull}"
5660

5761
${LGWINC}/%.h: ${PLT}/libloragw/inc/%.h | ${LGWINC}
5862
@echo " CP ${<F} -> $@"
5963
@cp $< $@
6064

6165
${PLT}: prep.sh
6266
platform=${platform} variant=${variant} lgwversion=${LGWVERSION} ./prep.sh
63-
$(MAKE) --no-print-directory all platform=${platform} variant=${variant}
67+
$(MAKE) --no-print-directory build platform=${platform} variant=${variant}
6468

6569
clean:
6670
rm -rf ${ARTEFACTS}
@@ -69,4 +73,4 @@ clean:
6973
super-clean: clean
7074
rm -rf git-repo platform-*
7175

72-
.PHONY: all clean super-clean platform-${platform}
76+
.PHONY: all build clean platform super-clean

deps/lgw/prep.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/bash
22

33
# --- Revised 3-Clause BSD License ---
4-
# Copyright Semtech Corporation 2020. All rights reserved.
4+
# Copyright Semtech Corporation 2022. All rights reserved.
55
#
66
# Redistribution and use in source and binary forms, with or without modification,
77
# are permitted provided that the following conditions are met:

0 commit comments

Comments
 (0)