Skip to content

Commit

Permalink
Fixed RDIO scanner - and rearranged the Docs
Browse files Browse the repository at this point in the history
Trying to make it so I can just copy the Docs folder over to the website
  • Loading branch information
robotastic committed Nov 12, 2023
1 parent f8e3279 commit 602cd85
Show file tree
Hide file tree
Showing 13 changed files with 355 additions and 9 deletions.
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,14 +49,15 @@ RTL-SDR dongles; HackRF; Ettus USRP B200, B210, B205; BladeRF; Airspy; SDRplay

| | Docker | Ubuntu | RaspberryOS | Arch Linux | Homebrew | MacPorts |
| ------------ | :-------------------------: | :----------------------------------------: | :---------------------: | :-----------------------------------: | :-------------------------------------: | :-------------------------------------: |
| Linux | [📄](docs/INSTALL-DOCKER.md) | [📄](docs/INSTALL-LINUX.md#**ubuntu-2104**) | | [📄](docs/INSTALL-LINUX.md#arch-linux) | | |
| Raspberry Pi | [📄](docs/INSTALL-DOCKER.md) | [📄](docs/INSTALL-PI.md) | [📄](docs/INSTALL-PI.md) [🎬](https://youtu.be/DizBtDZ6kE8) | | | |
| MacOS | | | | | [📄](docs/INSTALL-MAC.md#using-homebrew) | [📄](docs/INSTALL-MAC.md#using-macports) |
| Linux | [📄](docs/Install/INSTALL-DOCKER.md) | [📄](docs/Install/INSTALL-LINUX.md#**ubuntu-2104**) | | [📄](docs/Install/INSTALL-LINUX.md#arch-linux) | | |
| Raspberry Pi | [📄](docs/Install/INSTALL-DOCKER.md) | [📄](docs/Install/INSTALL-PI.md) | [📄](docs/Install/INSTALL-PI.md) [🎬](https://youtu.be/DizBtDZ6kE8) | | | |
| MacOS | | | | | [📄](docs/Install/INSTALL-MAC.md#using-homebrew) | [📄](docs/Install/INSTALL-MAC.md#using-macports) |



### Setup
* [Configuring a system](docs/CONFIGURE.md)
* [FAQ](docs/FAQ.md)

### Playback & Sharing
By default, Trunk Recorder just dumps a lot of recorded files into a directory. Here are a couple of options to make it easier to browse through recordings and share them on the Internet.
Expand Down
11 changes: 8 additions & 3 deletions docs/CONFIGURE.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
---
sidebar_label: 'Configure'
sidebar_position: 3
---

# Configuring Trunk Recorder

It takes a little bit of work to correctly configure Trunk Recorder, but once you get everything working you will not have to touch it again.
Expand All @@ -8,9 +13,9 @@ Before you can start entering values, you will need to do a little research abou

### Frequency

![](media/gqrx.png)
![](./media/gqrx.png)

The next step is to try and receive the control channel for the trunked system, using [http://gqrx.dk/](GQRX). GQRX visualizes what your SDR is receiving and makes it easy to fine-tune the system and associated spectrum. While the system you are trying to tune in may have a lot of control channels, it is generally only transmitting on one. Type in the different frequencies to look for the active control channel. Control channels are always broadcasting, and show up as a persistent line on the waterfall graph.
The next step is to try and receive the control channel for the trunked system, using [GQRX](http://gqrx.dk/). GQRX visualizes what your SDR is receiving and makes it easy to fine-tune the system and associated spectrum. While the system you are trying to tune in may have a lot of control channels, it is generally only transmitting on one. Type in the different frequencies to look for the active control channel. Control channels are always broadcasting, and show up as a persistent line on the waterfall graph.

There is a chance that when you tune to the active control channel, it will actually be a few thousand Hz above or below the frequency you tuned to. This is because the tuners on some SDRs are not super accurate and have frequency drifting. Click on the transmission to get the frequency that your SDR thinks it is at.

Expand Down Expand Up @@ -99,7 +104,7 @@ Here is a map of the different sections of the *config.json* file:
}
```


There is a list of available Plugins [here](./Plugins.md).

### Global Configs

Expand Down
10 changes: 7 additions & 3 deletions docs/DEBUG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
---
sidebar_label: 'Debugging'
sidebar_position: 6
---
# How to Debug a Seg Fault

When Trunk Recorder crashes and give a Segmentation Fault error (a SegFault), there are some steps you can take to figure out what is causing it. Pulling this information makes it a lot easier to figure what is going wrong.
Expand Down Expand Up @@ -63,18 +67,18 @@ Use the settings from the source you are interested in from your config.json fil

you would use: `rtl_sdr -f 855700000 -s 2048000 -g 39 -d 41 debug.iq`

The file that rtl_sdr generates is in a compact format... which is great but it can't easily be opened by other program. There is a good write-up on it from here (from 2014!). Luckily, some wrote a small program to convert it into a more standard format (complex IQ). I have included it in the /utils folder: [rtlsdr-to-iq.c]("../utils/rtl-to-iq.c"). Compile the program and then copy it to the directory with your recordings and run it against them. Note - the conversion will cause the filesize to increase 4x, so make sure you have enough space.
The file that rtl_sdr generates is in a compact format... which is great but it can't easily be opened by other program. There is a good write-up on it from here (from 2014!). Luckily, some wrote a small program to convert it into a more standard format (complex IQ). I have included it in the /utils folder: [rtlsdr-to-iq.c](https://github.com/robotastic/trunk-recorder/blob/master/utils/rtlsdr-to-iq.c). Compile the program and then copy it to the directory with your recordings and run it against them. Note - the conversion will cause the filesize to increase 4x, so make sure you have enough space.


## Playback in GQRX

GQRX can playback files that are in the IQ Complex format. In GQRX, select IQ File as the source:
![gqrx file]("media/gqrx-file.png")
![gqrx file](./media/gqrx-file.png)

You are then going to need a device string with the correct options. Update this to match where your file is and its parameters:

`file=/Users/luke/Projects/TrunkRecorder/debug.iq,freq=855700000,rate=2048000,repeat=true,throttle=true`

## Playing an IQ File as a Source in Trunk Recorder

Check out the [config-iq-file.json]("../examples/config-iq-file.json") config as an example of how to playback an IQ file as a Source. You will probably need to have the `repeat` parameter turned on, unless you have a really long file.
Check out the [config-iq-file.json](https://github.com/robotastic/trunk-recorder/blob/master/examples/config-iq-file.json) config as an example of how to playback an IQ file as a Source. You will probably need to have the `repeat` parameter turned on, unless you have a really long file.
5 changes: 5 additions & 0 deletions docs/FAQ.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
---
sidebar_label: 'FAQ'
sidebar_position: 7
---

# Ugh! Why is it doing that thing

## Common Error Messages and What to Do
Expand Down
5 changes: 5 additions & 0 deletions docs/INSTALL-DOCKER.md → docs/Install/INSTALL-DOCKER.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
---
sidebar_label: 'Docker Install'
sidebar_position: 2
---

# Docker
If you are not going to be modifying the source code, **a [Docker](https://www.docker.com/) based install is the easiest way to get started.** Images are published frequently to [Docker Hub](https://hub.docker.com/r/robotastic/trunk-recorder). The images have GNURadio 3.8 and all other required dependencies built into it, so it should be ready to go and be a much faster solution than compiling. Images have been built for amd64 (amd64 is used by all modern Intel and AMD CPUs) and most popular flavors of ARM.

Expand Down
18 changes: 18 additions & 0 deletions docs/INSTALL-LINUX.md → docs/Install/INSTALL-LINUX.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
---
sidebar_label: 'Linux Install'
sidebar_position: 1
---

# Linux Installs

This page covers installing Trunk Recorder on a Linux box. I test everything on Ubuntu, but other flavors of Linux are supported. Instructions are also included for Arch Linux.
Expand All @@ -6,6 +11,19 @@ This page covers installing Trunk Recorder on a Linux box. I test everything on
To get started, install all of the required packages. Instructions for different versions are below:


### Ubuntu 23.04

```bash
sudo apt-get install -y apt-transport-https build-essential ca-certificates fdkaac git gnupg gnuradio gnuradio-dev gr-osmosdr libuhd-dev libboost-all-dev libcurl4-openssl-dev libgmp-dev libhackrf-dev liborc-0.4-dev libpthread-stubs0-dev libssl-dev libuhd-dev libusb-dev pkg-config software-properties-common cmake libsndfile1-dev sox
```

If you are using a HackRF:

```bash
sudo apt install -y hackrf libhackrf-dev libhackrf0
```


### Ubuntu 22.04

```bash
Expand Down
4 changes: 4 additions & 0 deletions docs/INSTALL-MAC.md → docs/Install/INSTALL-MAC.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
---
sidebar_label: 'Mac Install'
sidebar_position: 4
---
# MacOS
There are two main "package managers" used on MacOS: [Homebrew](#using-homebrew) and [MacPorts](#using-macports). Trunk-recorder can be installed with dependencies from one or the other

Expand Down
5 changes: 5 additions & 0 deletions docs/INSTALL-PI.md → docs/Install/INSTALL-PI.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
---
sidebar_label: 'Raspberry Pi Install'
sidebar_position: 3
---

# Raspberry Pi / Debian

Smaller radio systems can be covered using a Raspberry Pi. If you are interested in doing this, you should really get a Pi 4. It maybe possible to get things running on an older Pi, but you often get unexpect behavior and errors. A Pi 4 can handle 3-4 simulatanious recordings. Make sure you have a good power supply. Also pay attention to heat. If the Pi gets too hot, it will slow down. A good case or fan can help keep it going full tilt. You can also just run debian on a NUC or Miniform PC. These commands will work with a vaneilla debian install as well.
Expand Down
6 changes: 6 additions & 0 deletions docs/Install/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"position": 2,
"label": "Install",
"collapsible": true,
"collapsed": true
}
14 changes: 14 additions & 0 deletions docs/Playback.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
sidebar_label: 'Playback'
sidebar_position: 5
---

# Playback & Sharing
By default, Trunk Recorder just dumps a lot of recorded files into a directory. Here are a couple of options to make it easier to browse through recordings and share them on the Internet.
* [OpenMHz](https://github.com/robotastic/trunk-recorder/wiki/Uploading-to-OpenMHz): This is my free hosted platform for sharing recordings
* [Trunk Player](https://github.com/ScanOC/trunk-player): A great Python based server, if you want to you want to run your own
* [Rdio Scanner](https://github.com/chuot/rdio-scanner): Provide a good looking, scanner style interface for listening to Trunk Recorder
* Broadcastify Calls (API): see Radio Reference [forum thread](https://forums.radioreference.com/threads/405236/) and [wiki page](https://wiki.radioreference.com/index.php/Broadcastify-Calls-Trunk-Recorder)
* [Broadcastify via Liquidsoap](https://github.com/robotastic/trunk-recorder/wiki/Streaming-online-to-Broadcastify-with-Liquid-Soap)
* [audioplayer.php](https://github.com/robotastic/trunk-recorder/wiki/Using-audioplayer.php)
* [rosecitytransit's Live Web page](https://github.com/rosecitytransit/trunk-recorder-daily-log)
Loading

0 comments on commit 602cd85

Please sign in to comment.