Coder Social home page Coder Social logo

mlat_minion's Introduction

OV_MLAT_Tool - GB3OV Mulilateration Tool

This project is an experiment to see whether we can use multilateration to identify the location of RF signals using a network of Raspberry Pis with RTL-SDR dongles. The project was inspired by the work of Stefan Scholl - DC9ST and presented by him at the Software Defined Radio Forum 2017 at Frederickshafen.

Background

Our local 70cms repeater, GB3OV, is located in Graveley, Cambridgeshire. In the UK, the 70cms band is shared and the Radio Amateur Service is only a secondary user. Thus we need to be prepared for co-channel interference - and we do experience this. The main source of intereference is low-power locator beacons that are used by cranes to locate their jibs. Locating these devices and then negotiating with the operator to - hopefully - change the frequency can be quite time-consuming. Hence this project to "automate" the positioning task.

Any additional use might be to locate deliberate interference by other licensed amateurs; however this is more difficult because they often transmit over an existing transmission.

Proposed Method

The general idea is to produce a small number (probably 3-4) of self-contained units that can be installed at known locations around the repeater. These units will use the techniques described in Stefan's paper to capture and send an IQ data stream to a Master Station running the analysis software. The results of the analysis will be displayed on a website.

Architecture

Linux Master Station

Hardware

The Master Station will probably be a Linux VM running on a publicaly accessible host somewhere.

Software

Installed on the Master Station will be the Analysis Software.

Raspberry Pi Minion

Hardware

The minion comprises a Raspberry Pi 3B microcomputer with a cheap plugin RTL-SDR Dongle and simple antenna. The total cost should be under £50.00

Software

The Pi will be running [Balena OS][BalenaOS] and a Balena IOT project built from the OV_MLAT_TOOL Github repository. This comprises a number of Docker containers running on Balena OS and controlled from a single point.

Docker Containers

The following containers run on the Minion.

wifi-connect

This is a pre-defined Balena container that detects if the Pi is connected to a local network. If not, then it presents a wifi hotspot that can be used to configure the Pi's wireless networking settings.

Typically, this is done just the once when the Pi is installed at a new location. If the Pi is connected to the local network using an Ethernet cable, this container is redundant.

resilio-sync

This container implements a customised version of the Resilio Sync Peer-2-Peer file transfer node that is used to synchronise the locally captured IQ data stream with the Master Station.

mlat

This container implements the custom multilateration code.

To Do

Currently, the system requires a master station to connect to. A future modification would be to move the Master into something like Amazon Web Services

mlat_minion's People

Contributors

chrisys avatar balena-ci avatar dansku avatar rahul-thakoor avatar phil-d-wilson avatar garethhowell avatar dimitrisnl avatar tmigone avatar shaunmulligan avatar andrewnhem avatar craftbyte avatar mozz100 avatar iamsolankiamit avatar bettse avatar jtonello avatar tuna-f1sh avatar

Stargazers

Arbal avatar

Watchers

 avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.