SDRLab
the Software-Defined Radio Laboratory
IMICT FEI STU
Experimental site.
IMICT FEI STU
Experimental site.
under the contract Nr: 2023digVS008
Samples taken: GNU Radio companion 3.10.7.0 with Python 3.10.12 running on Ubuntu 22.04.4 LTS, using Ettus USRP B210
Tested using .dat files: GNU Radio companion 3.10.7.0 with Python 3.8.10 running on Ubuntu 20.04.6 LTS
Narrowband - receiving just one radio station - rf_decim = 10. download here: samplesFM_rf_decim_10.dat (430 MiB)
Wideband - receiving several stations at once - rf_decim = 80. download here: samplesFM_rf_decim_80.dat (2.61 GiB)
Set the appropriate File parameter in the File Source block together with rf_decim variable
Download decoder from: https://noaa-apt.mbernardi.com.ar/
Samples taken: GNU Radio companion 3.9.5.0 with Python 3.8.10 running on Ubuntu 20.04.4 LTS, using RTL-SDR
Tested using .dat files: GNU Radio companion 3.10.7.0 with Python 3.8.10 running on Ubuntu 20.04.6 LTS
Samples taken: GNU Radio companion 3.10.7.0 with Python 3.8.10 running on Ubuntu 20.04.6 LTS, using Ettus USRP B210
Tested using .dat files: GNU Radio companion 3.10.7.0 with Python 3.8.10 running on Ubuntu 20.04.6 LTS
6LoWPAN traffic over IEEE 802.15.4 - ping. raw samples: 6lowpan_ping.dat (303 MiB) decoded Wireshark output: 6lowpan_ping.pcap (2 KiB)
6LoWPAN traffic over IEEE 802.15.4 - IPv6 Router Solicitation. raw samples: 6lowpan_RS.dat (1.59 GiB) decoded Wireshark output: 6lowpan_RS.pcap (1 KiB)
Samples taken: GNU Radio companion 3.7. runnng in Docker on Ubuntu 20.04 LTS using Ettus USRP B210
Tested on the same system.
Waring: This needs to be properly installed and configured first.
The resulting LoRaWAN packets in hex format:
1a31804048780b2680020001c4e5094f5aec992259a6e6be173690cc51e63d
1a31804048780b2680030001f66577536aafb75415047a865054fe74666f39
You need a new version of Python to run this utility. Tested on Ubuntu 20.04 LTS running Python 3.12.4
See this guide on how to install a newer version of Python alogside your system version.
You also need to install the Cryptodomex module first: pip3 install pycryptodome
And you also need to change the LoraPacket.py import statements to import Cryptodome instead of Crypto
You need to strip the first 3 and last 2 bytes from the hex string above.
You will obtain the following human readable parsed LoRaWAN packets.
The payload is a Cayenne LPP format encoded information
The deciphered payloads for the frames are:
01670122026856030100040000
0167012C026852030100040000
See PyCayenneLPP page and install: pip3 install pycayennelpp
Resulting decoded payloads:
LppFrame(data = [
LppData(channel = 1, type = Temperature, value = (30.0,))
LppData(channel = 2, type = Humidity, value = (41.0,))
LppData(channel = 3, type = Digital Output, value = (0.0,))
LppData(channel = 4, type = Digital Input, value = (0.0,))
])
LppFrame(data = [
LppData(channel = 1, type = Temperature, value = (29.0,))
LppData(channel = 2, type = Humidity, value = (43.0,))
LppData(channel = 3, type = Digital Output, value = (0.0,))
LppData(channel = 4, type = Digital Input, value = (0.0,))
])
2023 -2026 Physical layer of wireless communications systems (dissertation)
2023 - 2024 Experiments with IoT nodes - IEEE 802.15.4 (team project)
2023 - 2024 Experiments with IoT nodes - LoRa (team project)
2023 Artificial Intelligence in 5G Networks (master thesis)
2023 IMPLEMENTING A WIRELESS SDR COMMUNICATION SYSTEM (master thesis)
2023 Trends in 5G networks – configuring an NB-IoT node (master thesis)
2022 Configuring Wireless Interfaces of IoT Nodes - IEEE 802.15.4 (team project)
2022 Configuring Wireless Interfaces of IoT Nodes - LoRa (team project)
2021 Analysis of the IEEE 802.15.4 standard using the GNU Radio platform (bachelor thesis)
2020 Experiments with IoT networks (master thesis)
2020 Technologies of modern computer and telecommunications networks (team project)
2018 Network technologies and protocols of IoT (master thesis)