Commit Graph

185 Commits

Author SHA1 Message Date
Carles Fernandez 6aed77c3a0
Fix missing includes (iwyu) 2018-12-09 23:07:10 +01:00
Carles Fernandez 4f8bda4d39
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into release_0010 2018-12-09 01:09:52 +01:00
Carles Fernandez 87d1413447
Make cmakelint happier 2018-11-24 18:40:34 +01:00
Carles Fernandez b0ba246934
Apply some style rules to CMake scripts 2018-11-22 00:35:21 +01:00
Carles Fernandez 30d162c76a
Get rid of deprecated link_libraries() 2018-11-17 19:26:06 +01:00
Carles Fernandez 573092d033
Download and build PugiXML if not found 2018-11-11 12:27:01 +01:00
Javier 01a1954b15 Adding the Hotstart telecommand implementation to predict visible satellites for GPS and Galileo constellations 2018-11-05 17:53:53 +01:00
Javier 966d935fbc Adding the restart telecommand functionality by using external helper startup script 2018-10-23 16:54:06 +02:00
Carles Fernandez 0c2df93794
Bump version number to 0.0.10 2018-06-08 13:43:50 +02:00
Carles Fernandez d40094e6e2
Clean CMake scripts 2018-05-25 20:49:45 +02:00
Carles Fernandez 0d60d97c24
Use https instead of http in links when available
Update copyright year in headers
2018-05-13 22:49:11 +02:00
Carles Fernandez 34f24562cf Apply automated code formatting
Documented at .clang-format
See http://clang.llvm.org/docs/ClangFormat.html and http://clang.llvm.org/docs/ClangFormatStyleOptions.html
2018-03-03 02:03:39 +01:00
Carles Fernandez 658e677fc3 Reorder includes: local headers first, then 3rd-party library headers, and finally standard headers 2018-02-26 03:15:53 +01:00
Carles Fernandez 9e37e51447 Be more specific on required boost headers 2018-02-25 01:48:21 +01:00
Carles Fernandez 2b8ab9dcee Group all flags in a single file
This makes easier to document and to add new ones.
Shortened version of common files have been added:
-c for -config_file
-s for -signal_source
2018-02-18 12:23:55 +01:00
Carles Fernandez fc9740b4dc Do not use LOG(FATAL) since the glog library could have been stripped
off
2017-08-25 19:17:12 +02:00
Carles Fernandez 85cc7802be Fix const correctness when catching exceptions
See https://stackoverflow.com/questions/7581654/about-catching-exception-good-practices
Unneeded includes unistd.h removed
Close dump files in destructor
2017-08-14 13:59:00 +02:00
Carles Fernandez 02ea8acbfd Always initialize elapsed_seconds
It was causing warnings in GCC. Some code style applied.
2017-08-11 13:11:38 +02:00
Carles Fernandez 18cd7daa09 Eliminate ctime library. Replaced by chrono or boost::date_time 2017-08-11 05:18:38 +02:00
Carles Fernandez 3dd3c2f444 Enable building with Clang in Linux 2017-08-07 11:08:05 +02:00
Carles Fernandez 95ffcd3ac0 Improve portability
In some architectures (e.g. alpha, hppa, powerpcspe, m68k,  sh4, sparc64, x32) the package gr-osmosdr is not available. So when the package is build with -DENABLE_OSMOSDR=ON, it breaks on the mentioned architectures. This is expected behaviour (it breaks because a required dependency is not found), but prevents from building the package on such architectures. This commit introduces a small change: when compilation is called with

cmake -DENABLE_OSMOSDR=ON -DENABLE_PACKAGING=ON ..

then, the compilation does not break if gr-osmosdr is not found.

This commit also fixes building when UHD is present but gnuradio-uhd is not (for instance, in hurd-i386)
2017-04-12 18:06:04 +02:00
Carles Fernandez 0f796343bc Add upstream changelog as stated at Debian Policy Manual 12.7
https://www.debian.org/doc/debian-policy/ch-docs.html#s-changelogs
2017-04-07 18:56:35 +02:00
Carles Fernandez 385d153ee0 Remove unused includes
plus other minor updates
2017-02-06 16:36:21 +01:00
Carles Fernandez 7305c033d9 Update copyright year in help intro message 2017-01-14 15:50:15 +01:00
Carles Fernandez 071dec2ebb Remove unrequired variable 2016-10-27 08:28:37 +02:00
Carles Fernandez 85012b3d74 Improve handling of ORC library if present
This also allows to build a snap package
2016-10-23 11:12:13 +02:00
Carles Fernandez e4b0070e9a Add volk_gnsssdr-config-info to the list of generated executables 2016-07-06 20:25:39 +02:00
Carles Fernandez 6ad7bacba0 Bump version to 0.0.8 2016-07-04 16:55:16 +02:00
Carles Fernandez 19f46c2cd9 Bump version number to v0.0.7
preparing v0.0.7 release and minor code cleaning
2016-05-13 19:17:56 +02:00
Carles Fernandez 831cc75153 Remove tabs from the source code 2016-05-02 23:46:30 +02:00
Javier Arribas 7560a158f0 More telemetry global queues migration to GNURadio asynchronous messages
and
some
code cleaning
2016-04-13 16:19:15 +02:00
Javier Arribas b56183f93b Replacing Galileo E1, SBAS, and GPS L2C telemetry shared queues and maps
with GNURadio asynchronous messages (TLM -> PVT)
2016-04-12 17:29:16 +02:00
Javier Arribas 588864e19e Replacing GPS telemetry shared queues and maps with GNURadio
asynchronous messages (TLM -> PVT)
2016-04-12 15:28:58 +02:00
Carles Fernandez 26ff3dbe1c main returns 0 upon normal ternimation
The return value for main should indicate how the program exited. Normal
exit is generally represented by a 0 return value from main. Abnormal
termination is usually signalled by a non-zero return but there is no
standard for how non-zero codes are interpreted
2016-03-04 15:26:55 +01:00
Carles Fernandez e4206d38f6 Try to use OpenSSL if GnuTLS with openssl compatibility enabled is not
found.
2015-10-27 20:18:48 +01:00
Carles Fernandez 6febea48fa bumping version number 2015-09-02 00:38:46 +02:00
Carles Fernandez 429e4e8776 Fixing compilation when CUDA is not present 2015-08-25 17:07:36 +02:00
Javier Arribas 7b57bd28f8 Merge branch 'next-gnss-sdr' into next 2015-08-25 12:40:31 +02:00
Javier Arribas 1aa84cd1c4 Updated CUDA kernels and several GPU tracking optimizations.
Bug fix in GPS_L1_CA_DLL_PLL binary dump
2015-08-06 17:05:15 +02:00
Javier Arribas 26cf90cdd4 First working version of the GPU GPS tracking block (it requires NVIDIA
CUDA
3.0 GPU hardware)
2015-07-24 17:21:25 +02:00
Carles Fernandez 0dcdf00d19 Fixing linking problems 2015-07-16 15:46:01 +02:00
Javier b8d3f293f1 GPS L2C bug fixes. Added skeleton for a Mixed (multi-frequency and
multi-system) observables block.
2015-06-05 18:46:00 +02:00
Carles Fernandez 073d36e77f adding an option to remove logging 2015-05-23 11:20:26 +02:00
Carles Fernandez c22005eda1 catching all the exceptions 2015-05-23 10:04:48 +02:00
Carles Fernandez aa18634c87 Handling error if logging directory can't be created 2015-05-19 18:20:28 +02:00
Anthony Arnold 9ecf17a602 Link dependencies 2015-04-30 17:18:15 +10:00
Carles Fernandez 444bccdf2f empty folders forbidden by debian packaging 2015-02-15 15:50:31 +01:00
Carles Fernandez 3b3eb45499 version update 2015-01-13 11:11:23 +01:00
Carles Fernandez f978f8e3e7 fixing includes 2015-01-09 13:47:52 +01:00
Carles Fernandez 6620e7d43c Updating copyright year 2015-01-08 19:49:59 +01:00
Carles Fernandez 54eb5d65be Making UHD not required, but used by default if found 2014-11-14 21:42:22 +01:00
Carles Fernandez ee37617ce0 adding manpages 2014-11-14 21:03:45 +01:00
Carles Fernandez d7c8ecc230 etc/ folder changed to share/ since it is a Filesystem Hierarchy
Standard (FHS) requirement for architecture-independent
application-specific static files
2014-11-12 23:05:53 +01:00
Carles Fernandez 059c23595c some linking fixes 2014-11-09 15:31:35 +01:00
Carles Fernandez ba5b057302 Fix macports compilation 2014-11-07 21:44:16 +01:00
Carles Fernandez 8afa1be6cf Adding volk_gnsssdr 2014-11-07 18:23:59 +01:00
Carles Fernandez 79f88bd142 Changes in the building system 2014-11-05 23:26:31 +01:00
Carles Fernandez 74cb7ff362 Changing building system: 'cmake && make && sudo make install' 2014-11-04 21:28:01 +01:00
Carles Fernandez 045c432920 Some changes to make it work with Yosemite 2014-10-18 12:39:58 +02:00
Carles Fernandez 9c7795dd9a Changing C-styled cast by C++ style 2014-09-12 20:23:39 +02:00
Carles Fernandez 2445620e76 Changing build type to RelWithDebInfo if ENABLE_GPERFTOOLS option is ON 2014-08-10 20:00:10 +02:00
Carles Fernandez 3257d8cba1 Improving handling of optional processing blocks and linking libraries.
New options ENABLE_GN3S, ENABLE_RTLSDR, ENABLE_OPENCL, ENABLE_ARRAY and
ENABLE_GPERFTOOLS, all set by default to OFF. Users can enable that
features by 'cmake -DENABLE_XXX=ON ../ '. OpenCL is now not used by
default since it was giving problems in some platforms. Old variables
(RTSDR_DRIVER, GN3S_DRIVER, RAW_ARRAY_DRIVER and DISABLE_OPENCL) are
still honored and can be used in the same way, but the new ENABLE_XXX
are recommended for the sake of more uniform naming. Main CMakeFile.txt
has been rearranged, putting options first, then searching for the
required libraries, and then the optional ones. If Gperftools is enabled
and found, binaries are linked to the tcmalloc and profiler libraries,
and using the adequate flags. Fixed building in Mac OSX if Armadillo and
OpenBLAS were not installed in the system.
2014-08-07 21:04:01 +02:00
Carles Fernandez fabf623c43 Require at least Boost 1.45, so boost:filesystem::temp_directory_path()
can be used. It is useful on Mac OS X, where the log folder is not at
/tmp. Boost 1.45 was released on Nov 9th, 2010, so it is unlikely that
any user is using something older.
2014-06-10 00:14:18 +02:00
Carles Fernandez 8f16b0d095 adding two missing queues 2014-04-25 23:31:11 +02:00
Carles Fernandez 3a68888636 Recovering main 2014-04-25 22:00:09 +02:00
Carles Fernandez f371823fc0 Applying patch by Leonardo Tonetto
0001-Saving-acquisition-assistance-data.patch
2014-04-25 21:48:52 +02:00
Carles Fernandez 860743a6e1 Adding version info in program output 2014-04-10 22:26:39 +02:00
Carles Fernandez 39f8754217 Cleaning the terminal output and dumping most of the information in the log file. Better use of the glog library, logging can be seen also in Release, in real time by doing './gnss-sdr --logtostderr=1'. Update to latest version of Armadillo.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@486 64b25241-fba3-4117-9849-534c7e92360d
2014-03-16 19:58:29 +00:00
Carles Fernandez 004495507d Fixing detection of GNU Radio when installed in non-usual locations (e.g. /home/user/target). Now the user can tell cmake where GNU Radio is by 'cmake ../ -DGNURADIO_INSTALL_PREFIX=/home/user/target'
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@462 64b25241-fba3-4117-9849-534c7e92360d
2013-12-14 10:23:33 +00:00
Carles Fernandez 669910f6af Improving the way cmake detects GNU Radio. Switching from FindGnuradioXXX() to ConfigGnuradio.cmake. Fixed a typo in README. Tested in Mac OS X 10.9 and Ubuntu 13.10 64 bits, should work on other versions as well.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@442 64b25241-fba3-4117-9849-534c7e92360d
2013-11-13 21:07:33 +00:00
Carles Fernandez 5b2abb62c2 Clean Mavericks configuration
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@439 64b25241-fba3-4117-9849-534c7e92360d
2013-11-10 00:48:22 +00:00
Carles Fernandez 1a623a155f include SBAS_L1_Telemetry_Decoder in the block factory, and the corresponding queues
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@437 64b25241-fba3-4117-9849-534c7e92360d
2013-11-09 23:11:46 +00:00
Carles Fernandez a8619337be Now GNSS-SDR also builds on Mac OS X 10.9 Mavericks using clang++ and libc++. Updated cmake scripts, some modification of code not accepted by clang. Updated README with instructions for Mavericks. Fixed file length computation in 64-bit architectures.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@435 64b25241-fba3-4117-9849-534c7e92360d
2013-11-09 10:51:11 +00:00
Carles Fernandez e0947ff900 Adds libc++ (an implementation of the C++ standard library) when compiling on Mac OS X.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@426 64b25241-fba3-4117-9849-534c7e92360d
2013-10-20 22:12:43 +00:00
Carles Fernandez 2972272b3e Fixes compilation issues on Mac OS X. Now it builds successfully against gnuradio installed by Macports and using gcc 4.8. Upgrade version of Gtest. Some fixes and updates in documentation and code cleaning.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@423 64b25241-fba3-4117-9849-534c7e92360d
2013-10-18 18:26:06 +00:00
Carles Fernandez 05f09d1570 code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@401 64b25241-fba3-4117-9849-534c7e92360d
2013-08-02 16:00:12 +00:00
Javier Arribas b34a85c642 front-end-cal code cleaning, documentation and tunning tasks
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@400 64b25241-fba3-4117-9849-534c7e92360d
2013-08-01 14:01:07 +00:00
Javier Arribas b0a323095d Towards a Galileo INAV Navigation decoder: First version of the Galileo_E1_Telemetry_Decoder block. In this version only the preamble detection and page part synchro is functional.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@389 64b25241-fba3-4117-9849-534c7e92360d
2013-07-15 17:07:10 +00:00
Javier Arribas 58b280afb6 Switch to GNU Radio 3.7.x API
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@368 64b25241-fba3-4117-9849-534c7e92360d
2013-07-04 13:47:40 +00:00
Javier Arribas e592672282 GPS L1 multi-dwell Assisted acquisition algorithm under construction.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@352 64b25241-fba3-4117-9849-534c7e92360d
2013-03-20 18:19:26 +00:00
Javier Arribas d7b014e373 Experimental GPS assistence using Secure User Plane Protocol (SUPL) initial tests. Not usable yet!
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@348 64b25241-fba3-4117-9849-534c7e92360d
2013-03-15 18:05:37 +00:00
Javier Arribas 12003ffa94 GNSS-SDR now uses CMAKE as the only build system. Goodbye BJAM!
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@347 64b25241-fba3-4117-9849-534c7e92360d
2013-03-15 18:03:01 +00:00
Javier Arribas 8b2d21c1c9 Major changes:
- Gps telemetry decoder and PVT now uses independent queues for ephemeris, iono, utc_model and almanac. The old gps_navigation_queue is now deprecated and it is removed from the implementation. This affect almost all the PVT and Rinex printer classes.
- Rinex printer class updated to use the new ephemeris, iono, utc_model objects
Bug fixes and correction:
- The pseudorange generation now is based on the computed TOW for each received symbol. The History_Shift computation become simplier in this way. This modification is also a solution for a bug where the pseudoranges became temporally invalid when the TOW is updated (that happen every 6 secons!) 

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@343 64b25241-fba3-4117-9849-534c7e92360d
2013-03-14 12:52:32 +00:00
Javier Arribas 175a143c61 Thowards A-GNSS-SDR: New classes to store GPS SV orbital, clock, and ionosphere parameters. Work in progress...
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@342 64b25241-fba3-4117-9849-534c7e92360d
2013-03-11 18:29:33 +00:00
Carles Fernandez 0c5b294e7d Update year in welcome message
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@341 64b25241-fba3-4117-9849-534c7e92360d
2013-02-17 12:01:09 +00:00
Carles Fernandez 4819285e5c improving GCC flags related to the host processor and moving GNSS_SDR_VERSION definition to a better place.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@328 64b25241-fba3-4117-9849-534c7e92360d
2013-01-24 20:04:39 +00:00
Carles Fernandez 414b807f92 Using CMake to set the program version. This is an example of how a CMake variable can be used inside the C++ code without breaking anything.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@326 64b25241-fba3-4117-9849-534c7e92360d
2013-01-22 20:40:25 +00:00
Carles Fernandez 67246d9efe Avoid the requirement of Boost 1.45, since Debian 6.0.6 uses 1.42
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@322 64b25241-fba3-4117-9849-534c7e92360d
2013-01-19 17:06:39 +00:00
Carles Fernandez e0f577fe98 If Armadillo is not installed in the system, now CMake will download it, patch it in order to make a static library, build it, and link it with the rest of GNSS-SDR.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@306 64b25241-fba3-4117-9849-534c7e92360d
2013-01-03 01:48:34 +00:00
Carles Fernandez 6628e5e2d8 Now gflags and google-glog are downloaded, configured, build and linked automatically when doing "make". Since gflags is a prerequisite for the proper functioning of glog, glog is always built locally when gflags is missing.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@305 64b25241-fba3-4117-9849-534c7e92360d
2013-01-01 11:24:42 +00:00
Carles Fernandez 74668e14dd Glog is now downloaded, configured, built and linked automatically if it is not found in the host system.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@304 64b25241-fba3-4117-9849-534c7e92360d
2012-12-29 21:07:43 +00:00
Carles Fernandez c6e974ab21 Starting CMake support. In the root directory of gnss-sdr, type:
$ mkdir build && cd build && cmake ../ && make && make install

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@290 64b25241-fba3-4117-9849-534c7e92360d
2012-12-24 02:33:50 +00:00
Javier Arribas 0760fa0f3e - New NCO library for carrier signal generation: Provides a fixed point optimized wrapper for GNU Radio fxp CORDIC and SSE2 floating point implementation ( sse_mathfunc.h implementation). The library is available as nco_lib.h
- Updated Unit Test to benchmark all the current NCO implementations (./run_tests --gtest_filter=Cordic_Test.StandardCIsFasterThanCordic)

-Gps_L1_Ca_Dll_Pll_Optim_Tracking algorithm updated with new NCO library for carrier wipeoff and some other optimizations.



git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@281 64b25241-fba3-4117-9849-534c7e92360d
2012-11-22 17:43:24 +00:00
Carles Fernandez 1aea9db69f Changed the "CN_estimators" library name by the more informative "lock_detectors". The CN0 estimators for GPS L1 C/A and Galileo E1 have been unified
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@254 64b25241-fba3-4117-9849-534c7e92360d
2012-10-21 09:54:37 +00:00
David Pubill c241b7b1d6 - Added TCP connector for Galileo E1 simulink tracking
- Added simulink-based Galileo_E1_DLL_PLL_VEML_Tracking

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@250 64b25241-fba3-4117-9849-534c7e92360d
2012-10-19 13:38:25 +00:00
Javier Arribas 02ab6ce7d7 New GPS L1 CA tracking module GpsL1CaDllPllOptimTracking optimized for speed:
- The local code replica is pre-initialized and resampled to the nominal PRN code sample rate (no code Doppler correction)

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@242 64b25241-fba3-4117-9849-534c7e92360d
2012-09-04 15:57:30 +00:00
Luis Esteve 01c80dac80 Fixed bug in gnss_flowgraph.cc.
Galileo satellites added to available_GNSS_signals_

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@239 64b25241-fba3-4117-9849-534c7e92360d
2012-09-03 11:58:28 +00:00
Javier Arribas 598512529f Added NMEA 2.1 protocol for PVT dump.
This is an experimental release that only supports FILE dump operations.



git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@235 64b25241-fba3-4117-9849-534c7e92360d
2012-08-28 17:14:18 +00:00
Javier Arribas 2252797386 Post-processing of Baseband signals captured using IQ Interleaved short integers are now supported using the new data type adapter Ishort_To_Complex
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@221 64b25241-fba3-4117-9849-534c7e92360d
2012-08-01 14:17:40 +00:00
Javier Arribas bc87ea4472 Added support for the Realtek RTL2832U OsmoSDR signal source. The Rtlsdr_Signal_Source adapter compilation is optional. See GNSS-SDR README for more information.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@220 64b25241-fba3-4117-9849-534c7e92360d
2012-08-01 13:11:02 +00:00