Giter Site home page Giter Site logo

saviobatista / 1090merge Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 1.0 10 KB

Capture and merge data from multiple ADS-B basestations into a single file on a daily basis

Home Page: https://hub.docker.com/r/saviobatista/1090merge

License: MIT License

Dockerfile 40.07% Shell 59.93%
adsb amateur-radio dump1090 dump1090-fa tar1090

1090merge's Introduction

1090merge

This repository contains scripts to capture and merge data from multiple ADS-B basestations into a single file on a daily basis.

Files

  • Dockerfile: Dockerfile for building a Docker image with the necessary tools and scripts.
  • scripts/
    • capture.sh: Thread invoker for each host
    • thread.sh: Responsible for call and maintain netcat active and grabbing data
    • cronjob.sh: Cron job script to backup the merged data and clear the data file daily.

Purpose

The main purpose of this project is to automate the data collection process and merge ADS-B data from multiple basestations into a single file. By consolidating the data, it becomes easier to analyze and extract insights from a broader range of aircraft information.

Example of Use

To use this project, follow these steps:

  1. Build the Docker image using the provided Dockerfile.
  2. Set the environment variable HOSTS to a comma-separated list of ADS-B basestation IP addresses or hostnames.
  3. Start the Docker container with the built image.

Be aware that must be open and available at port 30003 on each station to work.

Here's an example command to run the Docker container:

docker build -t 1090merge .
docker run -d -e HOSTS="192.168.1.100,192.168.1.101,192.168.1.102" 1090merge

1090merge's People

Contributors

luciodaou avatar saviobatista avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

luciodaou

1090merge's Issues

`init:true` supposedly still required for docker-compose

Accordingly to @luciodaou the flag init: true still required when using docker-compose.

But in my tests I could find any error, this was my stack of tests:

In Ubuntu Server 22.04 LTS, Dockerfile updated as version (commit 5edc4b2), docker-compose.yml with the following:

version: "3.8"

services:
  1090merge:
    build:
      dockerfile: Dockerfile
    environment:
      - HOSTS=192.168.1.100,192.168.1.101,192.168.1.102

With $ docker compose up I've got:

[+] Building 0.0s (0/0)                                                                                                                              
[+] Running 1/0
 ✔ Container 1090merge-1090merge-1  Recreated                                                                                                   0.1s 
Attaching to 1090merge-1090merge-1
1090merge-1090merge-1  | Capturing SBS data from 192.168.1.100
1090merge-1090merge-1  | Capturing SBS data from 192.168.1.101
1090merge-1090merge-1  | Capturing SBS data from 192.168.1.102
1090merge-1090merge-1  | crond 4.5 dillon's cron daemon, started with loglevel notice
^CGracefully stopping... (press Ctrl+C again to force)
Aborting on container exit...
[+] Stopping 1/1
 ✔ Container 1090merge-1090merge-1  Stopped                                                                                                    10.2s 
canceled

(kept running for 5 minutes before Ctrl+C and for obvious reasons the IP were changed for sample data)

With that, @luciodaou can you check --no-cache and put your details here for debugging?

Netcat is not effective at all

Using netcat (nc) has proven failed as when a connection drops this would kill a capture point and stop storing it.

One approach would be create a service that monitor and restart nc command, but this would be over work as there are way more effective ways to be effective in this matter as tcpdump, which is a great approach.

To be improved.

Backup being lost

I'm not sure how, but I've been losing some logs. I noticed that the log is not saved to the backup folder, and the adsb.csv file is emptied. So a whole day of log is lost, like June 18th and 21st:

adsb-log_20230614.csv
adsb-log_20230615.csv
adsb-log_20230616.csv
adsb-log_20230617.csv
adsb-log_20230619.csv
adsb-log_20230620.csv

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.