Git Product home page Git Product logo

wxfetch's Introduction

wxfetch

Fetch APT images from satellites automatically as they pass over the horizon. Assumes a QFH antenna and an RTL-SDR dongle.

Preliminary functionality has been implemented, but development is currently stalled until libpredict has become more stable and feature-complete.

List of required libraries, in probable installation order:

Build instructions:

  1. mkdir build
  2. cd build
  3. cmake ..
  4. make

wxfetch's People

Contributors

bjorgan avatar

Stargazers

Gerad Munsch avatar Jason Todd avatar Jonathan Garay avatar Eirik Haustveit avatar Caleb Szalacinski avatar

Watchers

Jonathan Garay avatar Norvald H. Ryeng avatar Gerad Munsch avatar Espen Molven avatar James Cloos avatar  avatar Knut Magnus Kvamtrø avatar Per Kristian Fjellby avatar Jon Petter Skagmo avatar  avatar

wxfetch's Issues

cmake error

CMake Error: File /home/anubis/git/wxfetch/docs/doxygen/Doxyfile.swig_doc.in does not exist.
CMake Error at /usr/lib/x86_64-linux-gnu/cmake/gnuradio/GrSwig.cmake:58 (configure_file):
  configure_file Problem configuring file
Call Stack (most recent call first):
  /usr/lib/x86_64-linux-gnu/cmake/gnuradio/GrSwig.cmake:143 (GR_SWIG_MAKE_DOCS)
  gr-apt/swig/CMakeLists.txt:50 (GR_SWIG_MAKE)

Usage of libpredict

As a first step, some algorithms for finding the best pass were implemented very quickly in order to experiment with the libpredict API and get some sense on how to possibly do the calculations. Some of these calculations will be present in a future version of the libpredict API, and will probably be implemented it in a more consistent, better and more precise way. In particular do some of the tricks done in tracker.cpp seem to result in inconsistent values for AOS and LOS.

When the libpredict API becomes more stable and finished, switch to the functions contained therein and rewrite the algorithms for finding the satellite with the best pass during a given time period. Contribute to libpredict until this is achieved.

Gnuradio interface, filters

The gnuradio flowgraph was implemented based on http://websterling.com/tsro/apt/, but has yet to be tested properly due to other issues. Might need to adjust the filters. Go through the filters.

Should consider to use a class interface to the gnuradio receiver. Or, maybe not.

Automatic calibration

The RTL-SDR will drift in frequency. This application is meant to be running permanently, and it might be necessary to calibrate the system automatically once in a while.

Look into kalibrate-rtl for automatic calibration.

Gnuradio block for APT decoding

wxfetch (in theory) outputs sound files recording the signal from each weather satellite pass. Automatic decoding can easily be achieved by setting up a inotifywatcher instance and use e.g. atpdec to decode each sound file as they appear in the folder.

However, it can be interesting to develop a gnuradio block for decoding the APT images directly. Do a clean-up of atpdec, rewrite it into a library and use it to create a gnuradio block.

Variability in input

Properties should not be hard coded in main.cpp:

  • Should fetch satellite data from file.
  • QTH coordinates should be fetched from command line input (or file).
  • Device string to osmosdr should default to RTL-SDR, but be modified from command line.

Use getopts (if I won't do it myself, to future assignee: just be inspired by code present in e.g. https://github.com/ntnu-bioopt/mnf/blob/master/src/main.cpp).

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.