{"id":13775610,"url":"https://github.com/falkenber9/falcon","last_synced_at":"2026-01-14T19:42:41.806Z","repository":{"id":41288340,"uuid":"184469512","full_name":"falkenber9/falcon","owner":"falkenber9","description":"FALCON - Fast Analysis of LTE Control channels","archived":false,"fork":false,"pushed_at":"2023-10-13T12:50:06.000Z","size":7024,"stargazers_count":276,"open_issues_count":10,"forks_count":74,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-05-11T08:35:36.983Z","etag":null,"topics":["lte","sdr","srslte","usrp","wireless"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/falkenber9.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-05-01T19:25:48.000Z","updated_at":"2025-05-06T01:14:18.000Z","dependencies_parsed_at":"2024-01-20T22:47:36.894Z","dependency_job_id":null,"html_url":"https://github.com/falkenber9/falcon","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/falkenber9/falcon","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falkenber9%2Ffalcon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falkenber9%2Ffalcon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falkenber9%2Ffalcon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falkenber9%2Ffalcon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/falkenber9","download_url":"https://codeload.github.com/falkenber9/falcon/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falkenber9%2Ffalcon/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28432680,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T18:57:19.464Z","status":"ssl_error","status_checked_at":"2026-01-14T18:52:48.501Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["lte","sdr","srslte","usrp","wireless"],"created_at":"2024-08-03T17:01:42.475Z","updated_at":"2026-01-14T19:42:41.782Z","avatar_url":"https://github.com/falkenber9.png","language":"C++","funding_links":[],"categories":["Systems","UE","🛠️ Software \u0026 Tools","📡 BVLOS Communications"],"sub_categories":["Diagnostics, Monitor mode","Analysis Tools","Cellular Analysis \u0026 Tampering Tools"],"readme":"![Header image](gfx/FALCON_header.jpg \"FALCON\")\n\nFALCON - Fast Analysis of LTE Control channels\n==============================================\n\n[![Release](https://img.shields.io/github/release/falkenber9/falcon)](https://github.com/falkenber9/falcon/releases)\n[![AUR](https://img.shields.io/aur/version/tudo-falcon)](https://aur.archlinux.org/packages/tudo-falcon)\n[![DOI](https://img.shields.io/badge/DOI-10.1109/GLOBECOM38437.2019.9014096-fcb426.svg)](https://dx.doi.org/10.1109/GLOBECOM38437.2019.9014096)\n[![arXiv](https://img.shields.io/badge/arXiv-1907.10110-b31b1b.svg)](https://arxiv.org/abs/1907.10110)\n[![License](https://img.shields.io/github/license/falkenber9/falcon)](LICENSE)\n[![Video](https://img.shields.io/youtube/views/Va_aZYxRu3U)](http://www.youtube.com/watch?v=Va_aZYxRu3U)\n\n**FALCON** is an open-source software collection for real-time analysis of radio resources in private or commercial LTE/LTE-A networks.\n\nIt decodes the Physical Downlink Control Channel (PDCCH) of a base station and reveals the number of currently active devices including their Radio Network Temporary Identifiers (RNTIs) and their individual resource allocations.\n\nFALCON enables an exact determination of the current network load and the identification of bottlenecks. This information can be used to predict the achievable data rate of an additional subscriber by purely observing the current activity. Based on this criterion, congestion situations can be detected and avoidance strategies can be applied, e.g. switching to another network or postponing delay-tolerant transmissions.\n\nBased on [srsLTE][srslte] library, the software can be run on a plain x86 general-purpose PCs with any compatible SDR.\n\n\n\n![TU Dortmund University](gfx/tu-dortmund_small.png \"TU Dortmund University\")\n![SFB 876](gfx/SFB876_small.png \"Collaborative Research Center SFB 876\")\n![Communication Networks Institute](gfx/CNI_small.png \"Communication Networks Institute\")\n![DFG](gfx/DFG_small.png \"DFG\")\n\nThe research around this project has been supported by *Deutsche Forschungsgemeinschaft* (DFG) within the Collaborative Research Center SFB 876\n“Providing Information by Resource-Constrained Analysis”, project A4 at TU Dortmund University.\n\nA **corresponding scientific publication** (IEEE GLOBECOM 2019) is available on [IEEE Xplore](https://dx.doi.org/10.1109/GLOBECOM38437.2019.9014096) and on [ArXiV](https://arxiv.org/abs/1907.10110).\n\nPlease see section [Acknowledgements](#acknowledgements) of how to reference this project.\n\n## Video\n[![FALCON Video Presentation](http://img.youtube.com/vi/Va_aZYxRu3U/0.jpg)](http://www.youtube.com/watch?v=Va_aZYxRu3U)\n\n## License\nFALCON is released under the [AGPLv3 license](LICENSE).\n\n\n## Key Features\n* Reliable real-time monitoring public LTE cells\n* Monitoring up to 20 MHz bandwidth\n* FDD only\n* Supported DCI formats: 0/1A, 1, 1B, 1C, 2, 2A, 2B\n* Suitable for short-term and long-term monitoring with non-ideal radio conditions\n* Qt-based and OpenGL-accelerated GUI for visualization of allocated resource blocks, spectrogram and cell-specific performance metrics (throughput, resource utilization, user activity, etc.).\n* Synchronized recorder with integrated support for network probing by an auxiliary modem\n\nCheck the [changelog](CHANGELOG.md) for recently introduced updates.\n\n### Planned Features\n* TDD\n* Support for DCI with Carrier Indicator Field (CIF)\n* Multithreaded DCI search\n* Visualization of System Information Blocks (SIB)\n\n## Installation\n\nInstallation has been verified on the following operating systems:\n\n* Ubuntu 18.04.x LTS (Bionic Beaver)\n* Ubuntu 20.04.x LTS (Focal Fossa)\n* Archlinux [![](https://img.shields.io/aur/version/tudo-falcon)](https://aur.archlinux.org/packages/tudo-falcon) [![](https://img.shields.io/aur/maintainer/tudo-falcon)](https://aur.archlinux.org/packages/tudo-falcon)\n\n### Installation on Ubuntu\n\n#### 1) Required Dependencies\nFALCON installation automatically downloads a patched version of srsLTE and c-mnalib as subproject during the build process. Please install the following dependencies which are required by FALCON or its included components:\n\nFor srsLTE:\n```sh\nsudo apt-get install build-essential git cmake libfftw3-dev libmbedtls-dev libboost-program-options-dev libconfig++-dev libsctp-dev\n```\nFor srsGUI (only required to build the ported version of IMDEA OWL):\n```sh\nsudo apt-get install libboost-system-dev libboost-test-dev libboost-thread-dev libqwt-qt5-dev qtbase5-dev\ngit clone https://github.com/srsLTE/srsGUI.git\ncd srsgui\nmkdir build\ncd build\ncmake ../\nmake\nsudo make install\n```\nFor USRP support:\n```sh\nsudo add-apt-repository ppa:ettusresearch/uhd\nsudo apt-get update\nsudo apt-get install libuhd-dev uhd-host\n```\n\nFor LimeSDR support:\n```sh\nsudo add-apt-repository -y ppa:myriadrf/drivers\nsudo apt-get update\nsudo apt-get install limesuite limesuite-udev limesuite-images\nsudo apt-get install soapysdr soapysdr-module-lms7\n```\n\nFor FALCON:\n```sh\nsudo apt-get install libglib2.0-dev libudev-dev libcurl4-gnutls-dev libboost-all-dev qtdeclarative5-dev libqt5charts5-dev\n```\n\n#### 2) FALCON:\n```sh\ngit clone https://github.com/falkenber9/falcon.git\ncd falcon\nmkdir build\ncd build\ncmake -DCMAKE_INSTALL_PREFIX=/usr ../\nmake\n\n# Install (optional)\nsudo make install\n\n# Uninstall (use carefully!)\nsudo xargs rm \u003c install_manifest.txt\n```\n\n**Note:** FALCON requires a [patched version][srslte-falcon-patch] of srsLTE 18.09 that is automatically downloaded and included as subproject during the build process. However if a diffferent version of srsLTE is already installed on the computer, the build system will link against that version. In case of conflicts, force the use of srsLTE as a subproject by adding ``-DFORCE_SUBPROJECT_SRSLTE=ON`` to the ``cmake`` options. In this case, take care with ``make install``, since this may overwrite your existing version of srsLTE. Example:\n```\n...\ncmake -DFORCE_SUBPROJECT_SRSLTE=ON -DCMAKE_INSTALL_PREFIX=/usr ../\n...\n```\n\n\n### Installation on Archlinux\nOn Archlinux build and install the package ``tudo-falcon`` [![](https://img.shields.io/aur/version/tudo-falcon)](https://aur.archlinux.org/packages/tudo-falcon) from the [Arch User Repository (AUR)](https://aur.archlinux.org).\nThe most convenient way is the use of an [AUR Helper](https://wiki.archlinux.org/index.php/AUR_helpers), e.g. [yay](https://aur.archlinux.org/packages/yay) or [pacaur](https://aur.archlinux.org/packages/pacaur). The following example shows the installation with ``yay``.\n\n```sh\n# Install\nyay -Sy tudo-falcon\n\n# Uninstall\nsudo pacman -Rs tudo-falcon\n```\n\n#### Installation without AUR Helper\n\nWithout an AUR Helper, the package(s) can be built in a local directory with ``makepkg`` and installed via ``pacman``:\n```sh\n# Prerequisites\npacman -S --needed base-devel\n\n# Build directory\nmkdir falcon-packages\ncd falcon-packages\n\n# Dependency c-mnalib\ngit clone https://aur.archlinux.org/c-mnalib.git\ncd c-mnalib\nmakepkg -si\ncd ..\n\n# Dependency srsLTE (patched)\ngit clone https://aur.archlinux.org/srslte-falcon-patch-git.git\ncd srslte-falcon-patch-git\nmakepkg -si\ncd ..\n\n# FALCON\ngit clone https://aur.archlinux.org/tudo-falcon.git\ncd tudo-falcon\nmakepkg -si\n```\n\n## SDR Hardware\nFALCON has been tested with the following Software Defined Radios (SDRs):\n\n* Ettus Research: USRP B210\n* Ettus Research: USRP B205mini\n* Lime Microsystems: LimeSDR Mini\n\nIn addition, any SDR supported by [srsLTE library][srslte] should work as well.\n\n## Computer Hardware Requirements / Performance\nReal-time decoding of LTE signals requires a mature multicore CPU, especially when monitoring busy cells and large bandwidths (i.e. 15MHz and 20MHz cells). Large sample rates, wide FFTs, and larger search spaces make heavy use of the CPU, memory and involved buses.\n\nIn case of minor/sporadic performance issues, FALCON starts skipping/dropping single subframes in favor of maintaining synchronization if the processing of previous (buffered) subframes takes too long.\nSerious performance issues lead to IQ-sample overflows and degraded synchronization which causes false detections (spurious DCI) or may even cause an entire synchronization loss.\n\nThe actual computational demands depend on many internal (CPU capabilities, memory bandwidth, power-saving techniques, other processes) and external factors (interference from neighboring cells/sectors, signal strength, cell activity).\nTherefore, the following *rules of thumb* may not all be required for your setup or may not be sufficient to obtain satisfactory results.\n\n### General Recommendations\n* Don't run any other fancy (GUI) application at the same time, e.g. browser or Email clients\n* Use a CPU with at least 4 physical cores\n* Disable Hyper-Threading\n* Disable power-saving techniques such as DVFS and put the CPU into *performance* mode\n\n### Example Systems\nAll systems were tested with a USRP B210 SDR, attached via USB 3.0 and simple dipole antenna (connected via 1m SMA HF cable).\n#### Lenovo X250 Notebook\n* Intel Core i7-5600U (Dual Core CPU + Hyper-Threading), 2.6GHz, 8GB RAM, SSD\n* Arch Linux, kernel 5.3.5-arch1-1-ARCH, KDE/Plasma desktop environment\n* GUI: Good results up to 10MHz bandwidth and good LTE signal.\n* FalconEye: Good results up to 15MHz bandwidth and good LTE signal.\n* 20 MHz bandwidth: subframe skip ratio up to 50%, eventually sync loss, many false detections\n\n#### Lenovo T540p\n* Intel Core i7-4710Q (4 Core CPU + Hyper-Threading), 2.5GHz, 8GB RAM, SSD\n* Ubuntu 18.04.3 LTS (bionic), kernel 4.15.0-66-generic, GNOME or KDE/Plasma desktop environment\n* GUI: Good results up to 20MHz bandwidth and good LTE signal; frame skips during window resizing\n* FalconEye: Good results up to 20MHz bandwidth and good LTE signal\n\n## Usage Instructions\nThis section provides brief usage instructions for FALCON. The software collection comprises the following components:\n\n* FalconGUI: A visualization for online/offline PDCCH decoding\n* FalconEye: A command-line version of the PDCCH decoder for automated/batch processing\n* FalconCaptureProbe: Signal recorder with optional network probing\n* FalconCaptureWarden: A command-line controller for synchronized recordings by multiple instances of FalconCaptureProbe\n* imdea_cc_decoder: Port of IMDEA OWL's PDCCH decoder\n* imdea_capture_sync: Port of IMDEA OWL's signal recorder\n\n### FALCON GUI\nTo start the GUI version of FALCON's decoder, simply launch ``FalconGUI`` from a terminal or from your preferred window manager. Without installation, ``FalconGUI`` is located in ``\u003cbuild-dir\u003e/src/gui/FalconGUI``.\nEnter the center frequency of the target LTE cell or select a recording from a file using the file chooser or drag \u0026 drop. Example files are provided in a [separate repository][examples].\n\nPress 'Start' and the decoder immediately starts to synchronize to the cell and decodes the PDCCH.\nThe GUI will display waterfall plots of the spectrum and resource allocations (uplink and downlink) in real-time. The color of the displayed resource allocations is derived from the individual RNTIs of the particular subscribers.\n\n**Note:** At any time, you can click on a waterfall plot to freeze current state. Scroll to go back and forth in time within the scrollback buffer.\n\n\n![FALCON Screenshot](gfx/FalconGUI.png \"Falcon GUI Screenshot\")\n\n\n### FALCON Eye\nA command-line version of FALCON Decoder. For real-time monitoring of a cell, e.g. at 1829.4 MHz, run the following command:\n```sh\nFalconEye -f 1829.4e6 -D /tmp/dci.csv\n```\nThis will print an ASCII visualization of the discovered resource allocations to the terminal and a detailed log of all captured DCI into the trace file ``/tmp/dci.csv``.\nPress [CTRL]+C to exit the application and print some statistics of the run.\n\nThe output of Falcon Eye for a 15MHz (75 PRB) cell should look as follows:\n\n![FALCON Eye Screenshot](gfx/FalconEye.png \"FalconEye Screenshot\")\n\n#### DCI Tracefile Contents\nThe DCI tracefile is structures as CSV file, using tabs (\"\\t\") as separator. The columns contain:\n```python\nCOLUMNS_FALCON_DCI = [\n    'timestamp',    # unix timestamp in [s] as float, 1µs resolution\n    'sfn',          # system frame number\n    'subframe',     # subframe index {0,1,...,9}\n    'rnti',         # the addressed RNTI\n    'direction',    # 0 for uplink alloc., 1 for downlink alloc.\n    'mcs_idx',      # MCS index of the first transport block\n    'nof_prb',      # number of allocated PRBs\n    'tbs_sum',      # total Transport Block Size (TBS) in [Bit]\n    'tbs_0',        # TBS of first transport block (-1 for SISO)\n    'tbs_1',        # TBS of second transport block (-1 for SISO)\n    'format',       # index+1 of DCI format in array flacon_ue_all_formats[], see DCISearch.cc\n    'ndi',          # new data indicator for first transport block\n    'ndi_1',        # new data indicator for second transport block\n    'harq_idx',     # HARQ index\n    'ncce',         # index of first Control Channel Element (CCE) of this DCI within PDCCH\n    'L',            # aggregation level of this DCI {0..3}, occupies 2^L consecutive CCEs.\n    'cfi',          # number of OFDM symbols occupied by PDCCH\n    'histval',      # number of occurences of this RNTI within last 200ms\n    'nof_bits',     # DCI length (without CRC)\n    'hex'           # raw DCI content as hex string, see sscan_hex()/sprint_hex() in falcon_dci.c \n]\n```\n\n### FALCON Capture Probe and Capture Warden\nTwo command-line tools provide recording of LTE signals and optional cell probing by an auxiliary modem (supported by c-mnalib).\nFor synchronized recordings by multiple (distributed) instances of ``FalconCaptureProbe``, the ``FalconCaptureWarden`` provides a text-based command prompt for synchronous remote control.\n\nNote: In order to reduce the IO-load of the capturing system, ``FalconCaptureProbe`` will store the captured samples in RAM and write them to file after the capturing has ended.\nFor this purpose, the application allocates all available RAM (minus 500MB as a reserve) for the internal sample buffer.\nThe capturing process stops if the allocated buffer size is exceeded.\n\n#### Minimum example: capture raw data from a cell\nIn order to capture raw data from an LTE cell and store it on the hard disk for later (offline) analysis, launch ``FalconCaptureProbe`` as follows:\n\n```sh\nFalconCaptureProbe -f \u003ccarrier_frequency_Hz\u003e -n \u003cnof_subframes\u003e -o example\n```\n* carrier_frequency_Hz: Center frequency in Hz of the LTE cell to capture. Exponential values are also accepted, e.g. ``1845e6``.\n* nof_subframe: Number of subframes (= milliseconds) to capture. A value of ``5000`` may be a good start.\n\nIf it succeeds, the current working directory will contain the following files:\n\n* ``example-unknownOperator-cell.csv``: General cell information in CSV format\n* ``example-unknownOperator-iq.bin``: Raw IQ samples of the cell for later analysis\n\n## Application Notes\nThis section contains general application notes that might be helpful for reliable and accurate control channel analysis.\n\n### Signal Strength and Interference\nFALCON has a multi-stage validation chain that reduces error detection to a minimum even under non-ideal signal conditions.\nHowever, in order to obtain a complete view of cell activity, a location with good signal conditions should be chosen. This is because resource allocations for users with a good signal can be sent with less redundancy (lower aggregation level), but cannot be decoded correctly under poor channel conditions.\n\n### Uncommon occupancy of PDCCH\nIn most cases, the eNodeB only emits a signal on actually occupied CCEs of the PDCCH, while free CCEs are left empty.\nFALCON uses this circumstance for performance and skips empty CCEs.\n\nHowever, some open-source eNodeBs (e.g. Open Air Interface) nevertheless send a significant signal on empty CCEs. In typical applications with normal UEs, this does not lead to any disadvantages, only to increased interference on the control channel when several cells are used.\nBut depending on the actual content, such CCEs can lead to false detections by FALCON's *short-cut* detector. To counteract this, the *short-cut* detector can be deactivated (option ``-L`` in ``FalconEye``). The detection of the participants then takes place exclusively via random access and with the help of histograms based on the frequency of occurrence of individual RNTIs. In the latter case, previously unseen RNTIs are only accepted and activated with a time delay after a threshold value has been reached, e.g. at least 5 resource assignments in the last 200ms.\nThe threshold value can be configured by the option ``-H \u003cthreshold\u003e`` in ``FalconEye``.\n\n\n## Comparison with IMDEA OWL\nFALCON is an alternative to [IMDEA OWL][imdea-owl] which provides comparable functionalities for long-term monitoring of LTE cells. Other than OWL, FALCON additionally targets use cases that require short-term monitoring, mobility or increased robustness against non-ideal radio conditions.\n\nThe interface of FALCON's recorder and decoder is mostly compatible with [IMDEA OWL][imdea-owl].\nFALCON inherits OWL's approach of tracking C-RNTI assignments from PRACH for any UE that joins the cell during the observation time.\nHowever, the method to discover already active C-RNTIs from earlier assignments differs significantly.\nFALCON uses RNTI histograms and shortcut decoding to validate unseen RNTIs during the blind decoding procedure.\nIn contrast to OWL's re-encoding approach, this method is significantly less sensitive to non-ideal radio conditions. This makes FALCON suitable for robust and reliable short-term monitoring, e.g. for mobile applications.\n\nA direct comparison of FALCON and OWL in a controlled environment is discussed in this [video presentation][video-presentation].\n\n### Included port of IMDEA OWL for Benchmarking\nThe original version of IMDEA OWL was hardcoded into a fork of srsLTE v1.3 from Sep. 2016 and was updated to srsLTE v2.0 in Jul. 2017.\nIn order to provide a fair comparison of FALCON and OWL and their underlying methods, we extracted and ported OWL with its custom extensions on the srsLTE library into the FALCON project as separated modules and applications.\nBy this, both applications benefit from future advancements of srsLTE library.\n\n### Validation of the port against the original version\n\nEvery port requires at least slight adaptations of the code, especially if the underlying libraries evolve.\nHowever, this may lead to unintended side effects such as deviant functionality or different handling of exceptions.\n\nWe validated the functionality of the IMDEA OWL port against its original implementation by processing the same record of a public LTE cell (IQ samples) with both programs and compared the outputs.\n\nThis required the following precautions:\n\n- **Switch Viterbi decoder to 8 bit**: srsLTE uses a 16-bit Viterbi decoder if AVX2 is available, whereas the version underlying IMDEA OWL uses 8-bit Viterbi decoder. This circumvents direct comparison since spurious (false) DCI are decoded to different sequences of bits. Therefore, ``#undef VITERBI_16`` in file ``dci.c`` of srsLTE library even if ``LV_HAVE_AVX2`` is defined to achieve the same behavior.\n\nWith these precautions, both versions decoded and processed exactly the same set of DCI candidates (whether true or spurious). All candidates were classified identically.\nHowever, we noticed the following (minor) differences:\n\n- **DCI scrambled with RA/P/SI-RNTI**: MCS is correctly provided by the ported version. In such cases the original version always reports MCS=0.\n- **Swapping**: In case the *Transport Block to Codeword Swap Flag* is set, the related values appear in swapped order.\n- **Invalid RB allocation**: If the library detects an illegal RB allocation (i.e. spurious DCI carrying an illegal resource block group assignment), a nulled line is printed. The original version prints arbitrary values.\n\n\n\n## Related Publications\n- B. Sliwa, R. Falkenberg, C. Wietfeld, [**Towards Cooperative Data Rate Prediction for Future Mobile and Vehicular 6G Networks**](https://arxiv.org/abs/2001.09452), In *2nd 6G Wireless Summit (6G SUMMIT)*, 2020.\n- R. Falkenberg, C. Wietfeld, [**FALCON: An Accurate Real-time Monitor for Client-based Mobile Network Data Analytics**](https://arxiv.org/abs/1907.10110), In *GLOBECOM 2019 - 2019 IEEE Global Communications Conference*, 2019.\n- R. Falkenberg, K. Heimann, C. Wietfeld, [**Discover Your Competition in LTE: Client-Based Passive Data Rate Prediction by Machine Learning**](https://arxiv.org/abs/1711.06820), In *GLOBECOM 2017 - 2017 IEEE Global Communications Conference*, 2017.\n- R. Falkenberg, C. Ide, C. Wietfeld, [**Client-Based Control Channel Analysis for Connectivity Estimation in LTE Networks**](https://arxiv.org/abs/1701.03304), In *IEEE Vehicular Technology Conference (VTC-Fall)*, 2016.\n\n\n\n## Acknowledgements\n\nTo acknowledge us in your publication(s) please refer to the following publication:\n\n```tex\n@InProceedings{Falkenberg2019a,\n\tAuthor = {Robert Falkenberg and Christian Wietfeld},\n\tTitle = {{FALCON}: An Accurate Real-time Monitor for Client-based Mobile Network Data Analytics},\n\tBooktitle = {2019 IEEE Global Communications Conference (GLOBECOM)},\n\tYear = {2019},\n\tAddress = {Waikoloa, Hawaii, USA},\n\tMonth = dec,\n\tPublisher = {IEEE},\n\tDoi = {10.1109/GLOBECOM38437.2019.9014096},\n\tEprint = {1907.10110},\n\tEprinttype = {arxiv},\n\tUrl = {https://arxiv.org/abs/1907.10110}\n}\n```\n\n\n\u003c!-- Identifiers, in alphabetical order --\u003e\n\n[imdea-owl]: https://git.networks.imdea.org/nicola_bui/imdeaowl\n[examples]: https://github.com/falkenber9/falcon-examples\n[srslte]: https://github.com/srsLTE/srsLTE\n[srslte-falcon-patch]: https://github.com/falkenber9/srsLTE\n[video-presentation]: https://www.youtube.com/watch?v=Va_aZYxRu3U\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffalkenber9%2Ffalcon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffalkenber9%2Ffalcon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffalkenber9%2Ffalcon/lists"}