Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gr-radar with no UHD requirement #49

Open
wants to merge 1 commit into
base: maint-3.8
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,6 @@ endif(APPLE)
# Find gnuradio build dependencies
########################################################################
find_package(Doxygen)
find_package(UHD)
find_package(FFTW3f)

########################################################################
Expand Down
4 changes: 1 addition & 3 deletions MANIFEST.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,19 @@ title: gr-radar
brief: GNU Radio Radar Toolbox
tags:
- radar
- UHD
author:
- Stefan Wunsch <[email protected]>
copyright_owner:
- Stefan Wunsch
- Communications Engineering Lab (CEL) at Karlsruhe Institute of Technology (KIT)
dependencies (most of them are needed by GNU Radio 3.8 and are included transitively):
- gnuradio maint-3.8
- UHD = 3.15
- QT 5.10.1
- Qwt = 6.1.0
- python-matplotlib
repo: https://github.com/kit-cel/gr-radar
website: https://grradar.wordpress.com
gr_supported_version: v3.7, v3.8
gr_supported_version: v3.8
---

The *gr-radar* project provides a toolbox of commonly used radar algorithms. An important part is the *UHD Echotimer*, which enables a synchronized TX and RX stream from USRPs to ensure a constant phase relation in measurements. Example flowgraphs for CW, Dual CW, FSK, FMCW and OFDM radar are given and partly tested on hardware. GUI elements for target representation and further signal processing algorithms such as target tracking are implemented. Check out the project website for example videos and further information.
Expand Down
9 changes: 4 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@ Change to any folder in your home directory and enter following commands in your
`cmake ../` // build makefiles
`make` // build toolbox

Some testcases use huge buffer sizes. Therefore you have to increse the maximum size of a single shared memory segment. Run following line to fix that. Additionally the script configures some USRP stuff. All changes will be resetted after reboot.
Some testcases use huge buffer sizes. Therefore you have to increase the maximum size of a single shared memory segment. Run following line to fix that. Additionally the script configures some USRP stuff. All changes will be reset after reboot.

`sudo ./../examples/setup/setup_core`

Now you can run all testcases and install the toolbox. If `ctest` responds with '100% tests passed' the toolbox should be build correctly.
Now you can run all test cases and install the toolbox. If `ctest` responds with '100% tests passed' the toolbox should be build correctly.

`ctest` // run tests
`sudo make install` // install toolbox
Expand All @@ -29,16 +29,15 @@ For full documentation build the toolbox and open `build/docs/doxygen/html/index

**Development platform**
GNU Radio maint-3.8
UHD 3.15
Ubuntu 18.04
Ubuntu 20.04

**Dependencies**
Qt 5.10.1
Qwt 6.1.0
python-matplotlib


Qt and Qwt should be installed with GNU Radio. python-matplotlib is included in some testcases.
Qt and Qwt should be installed with GNU Radio. python-matplotlib is included in some test cases.

**Contact**
Stefan Wunsch
Expand Down
4 changes: 2 additions & 2 deletions examples/arch_makepkg/PKGBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ _gitname=gr-radar
pkgver=git
pkgrel=1
pkgdesc="GNU Radio Radar Toolbox"
arch=('x86_64')
arch=('amd64')
url="https://grradar.wordpress.com"
license=('GPL')
depends=('fftw' 'qwt' 'qt4' 'libuhd' 'python2-matplotlib')
depends=('fftw' 'qwt' 'qt4' 'libuhd' 'python3-matplotlib')
makedepends=('git' 'cmake' 'make')
optdepends=()
source=("git://github.com/kit-cel/gr-radar")
Expand Down
5 changes: 4 additions & 1 deletion grc/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,10 @@
# the Free Software Foundation, Inc., 51 Franklin Street,
# Boston, MA 02110-1301, USA.

# Removed from the following list until fix is implemented
# radar_usrp_echotimer_cc.block.yml
#---------------------------------------------------------

install(FILES
radar_signal_generator_cw_c.block.yml
radar_signal_generator_fmcw_c.block.yml
Expand All @@ -30,7 +34,6 @@ install(FILES
radar_signal_generator_fsk_c.block.yml
radar_split_fsk_cc.block.yml
radar_estimator_fsk.block.yml
radar_usrp_echotimer_cc.block.yml
radar_estimator_fmcw.block.yml
radar_signal_generator_sync_pulse_c.block.yml
radar_estimator_sync_pulse_c.block.yml
Expand Down
264 changes: 132 additions & 132 deletions grc/radar_usrp_echotimer_cc.block.yml
Original file line number Diff line number Diff line change
@@ -1,132 +1,132 @@
# auto-generated by grc.converter

id: radar_usrp_echotimer_cc
label: USRP Echotimer
category: '[RADAR]/RADAR'

parameters:
- id: samp_rate
label: Sample rate
dtype: int
- id: center_freq
label: Center frequency
dtype: float
- id: num_delay_samps
label: Number delay samples
dtype: int
default: '0'
- id: args_tx
label: TX Arguments
dtype: string
default: '''addr=192.168.xx.xx'''
hide: part
- id: wire_tx
label: TX Wire
dtype: string
default: ''''''
hide: part
- id: clock_source_tx
label: TX Clock source
dtype: string
default: '''internal'''
hide: part
- id: time_source_tx
label: TX Time source
dtype: string
default: '''none'''
hide: part
- id: antenna_tx
label: TX Antenna
dtype: string
hide: part
- id: gain_tx
label: TX Gain
dtype: float
hide: part
- id: timeout_tx
label: TX Timeout
dtype: float
default: '0.1'
hide: part
- id: wait_tx
label: TX Wait to start
dtype: float
default: '0.05'
hide: part
- id: lo_offset_tx
label: TX Lo offset
dtype: float
default: '0'
hide: part
- id: args_rx
label: RX Arguments
dtype: string
default: '''addr=192.168.xx.xx'''
hide: part
- id: wire_rx
label: RX Wire
dtype: string
default: ''''''
hide: part
- id: clock_source_rx
label: RX Clock source
dtype: string
default: '''mimo'''
hide: part
- id: time_source_rx
label: RX Time Source
dtype: string
default: '''mimo'''
hide: part
- id: antenna_rx
label: RX Antenna
dtype: string
hide: part
- id: gain_rx
label: RX Gain
dtype: float
hide: part
- id: timeout_rx
label: RX Timeout
dtype: float
default: '0.1'
hide: part
- id: wait_rx
label: RX Wait to start
dtype: float
default: '0.05'
hide: part
- id: lo_offset_rx
label: RX Lo offset
dtype: float
default: '0'
hide: part
- id: len_key
label: Packet length key
dtype: string
default: '"packet_len"'
hide: part

inputs:
- label: IQ in
domain: stream
dtype: complex

outputs:
- label: IQ out
domain: stream
dtype: complex

templates:
imports: import radar
make: radar.usrp_echotimer_cc(${samp_rate}, ${center_freq}, ${num_delay_samps},
${args_tx}, ${wire_tx}, ${clock_source_tx}, ${time_source_tx}, ${antenna_tx},
${gain_tx}, ${timeout_tx}, ${wait_tx}, ${lo_offset_tx}, ${args_rx}, ${wire_rx},
${clock_source_rx}, ${time_source_rx}, ${antenna_rx}, ${gain_rx}, ${timeout_rx},
${wait_rx}, ${lo_offset_rx}, ${len_key})
callbacks:
- set_num_delay_samps(${num_delay_samps})
- set_tx_gain(${gain_tx})
- set_rx_gain(${gain_rx})

file_format: 1
# # auto-generated by grc.converter
#
# id: radar_usrp_echotimer_cc
# label: USRP Echotimer
# category: '[RADAR]/RADAR'
#
# parameters:
# - id: samp_rate
# label: Sample rate
# dtype: int
# - id: center_freq
# label: Center frequency
# dtype: float
# - id: num_delay_samps
# label: Number delay samples
# dtype: int
# default: '0'
# - id: args_tx
# label: TX Arguments
# dtype: string
# default: '''addr=192.168.xx.xx'''
# hide: part
# - id: wire_tx
# label: TX Wire
# dtype: string
# default: ''''''
# hide: part
# - id: clock_source_tx
# label: TX Clock source
# dtype: string
# default: '''internal'''
# hide: part
# - id: time_source_tx
# label: TX Time source
# dtype: string
# default: '''none'''
# hide: part
# - id: antenna_tx
# label: TX Antenna
# dtype: string
# hide: part
# - id: gain_tx
# label: TX Gain
# dtype: float
# hide: part
# - id: timeout_tx
# label: TX Timeout
# dtype: float
# default: '0.1'
# hide: part
# - id: wait_tx
# label: TX Wait to start
# dtype: float
# default: '0.05'
# hide: part
# - id: lo_offset_tx
# label: TX Lo offset
# dtype: float
# default: '0'
# hide: part
# - id: args_rx
# label: RX Arguments
# dtype: string
# default: '''addr=192.168.xx.xx'''
# hide: part
# - id: wire_rx
# label: RX Wire
# dtype: string
# default: ''''''
# hide: part
# - id: clock_source_rx
# label: RX Clock source
# dtype: string
# default: '''mimo'''
# hide: part
# - id: time_source_rx
# label: RX Time Source
# dtype: string
# default: '''mimo'''
# hide: part
# - id: antenna_rx
# label: RX Antenna
# dtype: string
# hide: part
# - id: gain_rx
# label: RX Gain
# dtype: float
# hide: part
# - id: timeout_rx
# label: RX Timeout
# dtype: float
# default: '0.1'
# hide: part
# - id: wait_rx
# label: RX Wait to start
# dtype: float
# default: '0.05'
# hide: part
# - id: lo_offset_rx
# label: RX Lo offset
# dtype: float
# default: '0'
# hide: part
# - id: len_key
# label: Packet length key
# dtype: string
# default: '"packet_len"'
# hide: part
#
# inputs:
# - label: IQ in
# domain: stream
# dtype: complex
#
# outputs:
# - label: IQ out
# domain: stream
# dtype: complex
#
# templates:
# imports: import radar
# make: radar.usrp_echotimer_cc(${samp_rate}, ${center_freq}, ${num_delay_samps},
# ${args_tx}, ${wire_tx}, ${clock_source_tx}, ${time_source_tx}, ${antenna_tx},
# ${gain_tx}, ${timeout_tx}, ${wait_tx}, ${lo_offset_tx}, ${args_rx}, ${wire_rx},
# ${clock_source_rx}, ${time_source_rx}, ${antenna_rx}, ${gain_rx}, ${timeout_rx},
# ${wait_rx}, ${lo_offset_rx}, ${len_key})
# callbacks:
# - set_num_delay_samps(${num_delay_samps})
# - set_tx_gain(${gain_tx})
# - set_rx_gain(${gain_rx})
#
# file_format: 1
5 changes: 4 additions & 1 deletion include/radar/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,10 @@
# the Free Software Foundation, Inc., 51 Franklin Street,
# Boston, MA 02110-1301, USA.

# Removed until fix is implemented
# usrp_echotimer_cc.h


########################################################################
# Install public header files
########################################################################
Expand All @@ -34,7 +38,6 @@ install(FILES
signal_generator_fsk_c.h
split_fsk_cc.h
estimator_fsk.h
usrp_echotimer_cc.h
estimator_fmcw.h
signal_generator_sync_pulse_c.h
estimator_sync_pulse_c.h
Expand Down
Loading