Giter Club home page Giter Club logo

falcon's People

Contributors

cedrikschueler avatar falkenber9 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

falcon's Issues

Testdata not available

Is this testdata still necessary?

git clone --recurse-submodules https://github.com/falkenber9/falcon.git
Cloning into 'falcon'...
remote: Enumerating objects: 577, done.
remote: Counting objects: 100% (577/577), done.
remote: Compressing objects: 100% (257/257), done.
remote: Total 1181 (delta 354), reused 505 (delta 315), pack-reused 604
Receiving objects: 100% (1181/1181), 6.78 MiB | 1.79 MiB/s, done.
Resolving deltas: 100% (645/645), done.
Submodule '_gitlab-ci/testdata' (https://github.com/falkenber9/falcon-testdata.git) registered for path '_gitlab-ci/testdata'
Cloning into '/home/xxxx/falcon/_gitlab-ci/testdata'...
Username for 'https://github.com':
Password for 'https://[email protected]@github.com':
remote: Repository not found.
fatal: repository 'https://github.com/falkenber9/falcon-testdata.git/' not found
fatal: clone of 'https://github.com/falkenber9/falcon-testdata.git' into submodule path '/home/xxxxx/falcon/_gitlab-ci/testdata' failed
Failed to clone '_gitlab-ci/testdata'. Retry scheduled
Cloning into '/home/xxxxx/falcon/_gitlab-ci/testdata'...
Username for 'https://github.com':
Password for 'https://[email protected]':
remote: Repository not found.
fatal: repository 'https://github.com/falkenber9/falcon-testdata.git/' not found
fatal: clone of 'https://github.com/falkenber9/falcon-testdata.git' into submodule path '/home/Armin/falcon/_gitlab-ci/testdata' failed
Failed to clone '_gitlab-ci/testdata' a second time, aborting

Could not find any cell

Hello,

i would like to use the FalconGui for a SDR tech-demo, but unfortunately i am not able to find the cell in FalconGui.

To find the cell frequency and ID i used: https://github.com/JiaoXianjun/LTE-Cell-Scanner with an RTL-SDR:
with the following command:

CellSearch -s 1810e6 -e 1830e6 -p 1

Output:

Detected a FDD cell! At freqeuncy 1815.2MHz, try 0
    cell ID: 376
     PSS ID: 1
    RX power level: -18.6699 dB
    residual frequency offset: -11389.2 Hz
                     k_factor: 1.00001

For FalconGui i used a Ettus B200, that i previously tested with Gqrx.
I used the frequency and CID as input for FalconGui and got the following log:

QMetaObject::connectSlotsByName: No matching signal for on_actionDownlink_Plots_changed()
RF_Freq:  1.8152e+09
Creating Phy
SubframeWorkerThread ready
Spectrum View on
Opening RF device with 1 RX antennas...
[INFO] [UHD] linux; GNU C++ version 9.3.0; Boost_107100; UHD_3.15.0.0-release
[INFO] [B200] Loading firmware image: /usr/share/uhd/images/usrp_b200_fw.hex...
Opening USRP with args: type=b200,master_clock_rate=30.72e6
[INFO] [B200] Detected Device: B200
[INFO] [B200] Loading FPGA image: /usr/share/uhd/images/usrp_b200_fpga.bin...
[INFO] [B200] Operating over USB 3.
[INFO] [B200] Detecting internal GPSDO.... 
[INFO] [GPS] No GPSDO found
[INFO] [B200] Initialize CODEC control...
[INFO] [B200] Initialize Radio control...
[INFO] [B200] Performing register loopback test... 
[INFO] [B200] Register loopback test passed
[INFO] [B200] Asking for clock rate 30.720000 MHz... 
[INFO] [B200] Actually got clock rate 30.720000 MHz.
Starting AGC thread...
Tunning receiver to 1.8152e+09 Hz
Searching for cell...
Could not find any cell in this frequency
Cell not found after 0 trials
Searching for cell...
Could not find any cell in this frequency
Cell not found after 1 trials
Searching for cell...
Could not find any cell in this frequency
Cell not found after 2 trials
EyeCore: Exiting...
SubframeWorkerThread ended
Destroyed Phy

I have also tried this with several other Cells i have found with LTE-Cell-Scanner. A few times FalconGui found some PDCCH but discarded them without further information.

Can you help me with further information, what i am missing for this setup or how to debug it? May it be related to the usage of a B200?

Best regards,
Joe

Question regarding PRB utilization

I'm interested in getting PRB utilization in TTI level for a cell (1 ms). I saw COLUMNS collected by FALCON contains 'nof_prb', # number of allocated PRBs, but not sure how to convert it to a cell PRB utilization/ms with other COLUMNS. Is it possible in FALCON ? if possible, how to derive the PRB utilization/ms?

Can't build on ARM due to bug in srsLTE 18.09 when SIMD is unavailable

Greetings,

I was trying to build falcon in Ubuntu on ARM, but am unable to do so. I think this is because of a bug (#265) in the patched version of srsLTE that the falcon cmake scripts download and compile.

First, I changed the DISABLE_SIMD option in falcon's CMakeLists.txt from OFF to ON, then proceeded to try to build falcon following the instructions. The cmake step completes without errors, but make fails with:

/home/localadm/falcon/build/srsLTE-src/lib/src/phy/fec/turbodecoder.c:170:22: error: ‘sse16_win_impl’ undeclared (first use in this function)
  170 |       h->dec16[0] = &sse16_win_impl;

According to the srsLTE/srsRAN_4G bug I linked above, srsLTE 18.09 does not build correctly when SIMD instructions are unavailable. The recommendation in that thread is to either use srsLTE 18.06 or to wait for the next release after 18.09 (which I believe ended up being 18.12).

Would it be possible to update falcon to build and run against a version of srsLTE 18.06 or 18.12 with your patches applied to it? Or to provide diffs of your patches to 18.09 so I can attempt to patch one of these versions myself?

Thanks in advance, and thanks for all your work on this software!

Differences between FalconEye and FalconCaptureProbe

Firstly, many thanks for developing FALCON, it looks to be a really great way to analyse LTE networks.

I'm trying to use FALCON but have run into an issue: the output from using FalconEye directly differs from when I use FalconCaptureProbe and then analyse the captured file with FalconEye. Specifically, when I use FalconEye directly, several RNTIs are detected, but when I capture with FalconCaptureProbe then run FalconEye on the captured file, no RNTIs are detected.

A bit of background – my laptop is rather old so not particularly suitable for real-time decoding. So I decided to capture to a raw file and process the capture later. However, when I tried this FALCON didn't detect any RNTIs. I then tried FalconEye directly (reading from the USRP directly) and was surprised that several RNTIs were detected.

My setup is as follows: Dell Latitude E5420 laptop running Ubuntu 20.04 LTS, connected to a USRP B210 over USB 2 (I hope to get a USB 3 express card shortly).

To demonstrate the issue I ran two experiments. Both experiments used the same frequency and cell ID, and the second was run a few minutes after the first.

  1. Run FalconEye directly. The log file of this is in experiment-1.log, and FALCON detected 20 RNTIs.
  2. Run FalconCaptureProbe, then run FalconEye on the captured file. With this experiment, no RNTIs were detected. There are several files from this experiment:

Both experiments captured for 5 seconds, however since there is no way to limit FalconEye capture to 5000ms, I monitored it and manually cancelled it after 5 seconds had passed.

My guess would be that I'm mis-configuring something, or am mis-understanding how FalconEye / FalconCaptureProbe is supposed to work. I'd really appreciate help in understanding how to correctly use FalconCaptureProbe.

Many thanks!

patched srsLTE incompatible with SoapySDR 0.8

Hey there,

just to leave a comment, I needed to downgrade to SoapySDR 0.7.2 on Archlinux for the AUR package to work.
Also, I needed to install qt5-charts package for falcon to build.

Feature Request: change rf args for FalconGUI

I am using LimeSDR Mini which has different signal paths in the mixer. By default, the high frequency mixer (LNAH) is selected; for LTE bands below 2 GHz, selecting LNAW improves the signal strength massively.

As far as I can see, rf_args is not implemented in the GUI, so cannot be set.

Build fails, doesn't recognise existing srsLTE and UHD libraries

Getting the following error when falcon is trying to build UHD support, probably because my UHD version 4.0.0 is too new?

[ 38%] Building CXX object srsLTE-build/lib/src/phy/rf/CMakeFiles/srslte_rf.dir/uhd_c_api.cpp.o
cc1plus: warning: ‘-Werror=’ argument ‘-Werror=incompatible-pointer-types’ is not valid for C++
In file included from /usr/include/c++/9/typeindex:35,
                 from /usr/local/include/uhd/property_tree.hpp:16,
                 from /usr/local/include/uhd/device.hpp:11,
                 from /usr/local/include/uhd/usrp/multi_usrp.hpp:28,
                 from /home/balt/LTE/falcon/build/srsLTE-src/lib/src/phy/rf/uhd_c_api.cpp:5:
/usr/include/c++/9/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
   32 | #error This file requires compiler and library support \
      |  ^~~~~

Also, tried to set environment variables for srsLTE which I already have built and running fine, but it's unclear which directory they need to point to - I've set them into the srsLTE git source dir:

SRSLTE_LIBRARIES=/home/xxx/LTE/srsLTE/build/lib/
SRSLTE_INCLUDE_DIRS=/home/xxx/LTE/srsLTE/lib/include

but cmake still doesn't find them and downloads your flavour of srsLTE. Any hints on how to resolve greatly appreciated.

Prometheus Exporter

I'd like to contribute a Prometheus exporter and Grafana dashboard to see the realtime results of LTE scanning over time.

srsRAN seems to support doing this, but I don't know about srsLTE and I don't know about doing that when it's use in Falcon.

Is this already supported and I've just overlooked how to enable it?

The use case is I'd like to identify the downlinks available and as many metrics about the health of those downlinks as possible.

For example, I'd like to setup a system capturing data for 72 hours and periodically capture data about the LTE network at that location.

Types of data I'd like to capture export:

  • Identify what towers and downlinks are present
  • Identify the signal strength, quality, and interference for each
  • Identify the load, and other available metrics about each downlink
  • Stretch goal, measure or estimate the number of client devices present

What metrics could be made available in this tool?

Does FalconGUI only work with files?

I can't seem to figure out how to run FalconGUI straight from my B200 - for scripted use FalconEye works fine, but for visualisations it would be neat to be able to run FalconGUI in the same way. Is that not supported?

Falcon with zeroMQ

Hello, I am using srsRAN to build eNB. I want falcon to listen from eNB of srsRAN. Can I use ZeroMQ to connect Falcon and eNB.?

Has anyone tried like this? if yes can you please help? or any idea how I can do this?

Many Thanks

Build error "template with C linkage"

Trying to build falcon (AUR tudo-falcon 1.3.0-1) on a recent manjaro,

I get build errors:

[ 50%] Building CXX object src/eye/phy/CMakeFiles/eye_phy.dir/SubframeWorker.cc.o
In file included from /usr/include/glib-2.0/glib/gatomic.h:31,
                 from /usr/include/glib-2.0/glib/gthread.h:32,
                 from /usr/include/glib-2.0/glib/gasyncqueue.h:32,
                 from /usr/include/glib-2.0/glib.h:32,
                 from /usr/include/glib-2.0/gmodule.h:28,
                 from /usr/include/cmnalib/at_sierra_wireless_em7565.h:12,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/probe_modem.h:27,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/TrafficGeneratorEventHandler.h:23,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/DummyEventHandler.h:23,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/src/meas/DummyEventHandler.cc:21:
/usr/include/c++/11.1.0/type_traits:56:3: error: template with C linkage
   56 |   template<typename _Tp, _Tp __v>
      |   ^~~~~~~~
In file included from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/TrafficGeneratorEventHandler.h:23,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/DummyEventHandler.h:23,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/src/meas/DummyEventHandler.cc:21:
/home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/probe_modem.h:24:1: note: ‘extern "C"’ linkage started here
   24 | extern "C" {
      | ^~~~~~~~~~
In file included from /usr/include/glib-2.0/glib/gatomic.h:31,
                 from /usr/include/glib-2.0/glib/gthread.h:32,
                 from /usr/include/glib-2.0/glib/gasyncqueue.h:32,
                 from /usr/include/glib-2.0/glib.h:32,
                 from /usr/include/glib-2.0/gmodule.h:28,
                 from /usr/include/cmnalib/at_sierra_wireless_em7565.h:12,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/probe_modem.h:27,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/TrafficGeneratorEventHandler.h:23,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/DummyEventHandler.h:23,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/src/meas/DummyEventHandler.cc:21:
/usr/include/c++/11.1.0/type_traits:71:3: error: template with C linkage
   71 |   template<typename _Tp, _Tp __v>
      |   ^~~~~~~~
In file included from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/TrafficGeneratorEventHandler.h:23,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/DummyEventHandler.h:23,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/src/meas/DummyEventHandler.cc:21:
/home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/probe_modem.h:24:1: note: ‘extern "C"’ linkage started here
   24 | extern "C" {
      | ^~~~~~~~~~
In file included from /usr/include/glib-2.0/glib/gatomic.h:31,
                 from /usr/include/glib-2.0/glib/gthread.h:32,
                 from /usr/include/glib-2.0/glib/gasyncqueue.h:32,
                 from /usr/include/glib-2.0/glib.h:32,
                 from /usr/include/glib-2.0/gmodule.h:28,
                 from /usr/include/cmnalib/at_sierra_wireless_em7565.h:12,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/probe_modem.h:27,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/TrafficGeneratorEventHandler.h:23,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/include/falcon/meas/DummyEventHandler.h:23,
                 from /home/matthias/.cache/yay/tudo-falcon/src/falcon-1.3.0/lib/src/meas/DummyEventHandler.cc:21:
/usr/include/c++/11.1.0/type_traits:80:3: error: template with C linkage
   80 |   template<bool __v>
      |   ^~~~~~~~

and am a bit too stupid to look into it myself. Any hints what requirement I am missing? :D

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.