Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/markqvist/loramon

LoRa packet sniffer for RNode hardware
https://github.com/markqvist/loramon

Last synced: about 2 months ago
JSON representation

LoRa packet sniffer for RNode hardware

Awesome Lists containing this project

README

        

# LoRa packet sniffer for RNode hardware

## Intro

This utility allows you to sniff LoRa networks with an [RNode](https://unsigned.io/projects/rnode/), and dump captured packets to the console or files.

```sh
usage: loramon [-h] [-C] [-W directory] [--freq Hz] [--bw Hz] [--txp dBm]
[--sf factor] [--cr rate]
[port]

LoRa packet sniffer for RNode hardware.

positional arguments:
port Serial port where RNode is attached

optional arguments:
-h, --help show this help message and exit
-C, --console Print captured packets to the console
-W directory Write captured packets to a directory
--freq Hz Frequency in Hz
--bw Hz Bandwidth in Hze
--txp dBm TX power in dBm
--sf factor Spreading factor
--cr rate Coding rate
```

## Installation

If you already have Python3 and pip installed, you can easily install LoRaMon through pip:

```sh
pip3 install loramon
```

On Arch Linux it is also possible to install using the `loramon` package from the [AUR](https://aur.archlinux.org/packages/loramon).

If you want to install directly from this repository, first install the dependencies:

```sh
sudo apt install python3 python3-pip
sudo pip3 install pyserial
```

And then clone the repository and make LoRaMon executable:

```sh
git clone https://github.com/markqvist/LoRaMon.git
cd LoRaMon
chmod a+x loramon
./loramon --help
```

## Usage Examples

### Dump to console

Listens on a specified frequency and displays captured packets in the console.

```sh
loramon /dev/ttyUSB0 --freq 868000000 --bw 125000 --sf 7 --cr 5 -C
```

### Dump to console and disk

Like above, but also writes all captured packets individually to a specified directory.

```sh
loramon /dev/ttyUSB0 --freq 868000000 --bw 125000 --sf 7 --cr 5 -C -W capturedir
```

### Sniff implicit header mode packets

If you want to sniff LoRa packets with implicit header mode, use the --implicit option along with the length in bytes of the expected packet. This mode needs an RNode with a firmware version of at least 1.17.

```sh
loramon /dev/ttyUSB0 --freq 868000000 --bw 125000 --sf 7 --cr 5 -C -W capturedir --implicit 12
```