Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • RTIS Network RTIS Network
  • Project information
    • Project information
    • Activity
    • Members
  • Wiki
    • Wiki
  • Activity
Collapse sidebar
  • RTIS Software
  • RTIS NetworkRTIS Network
  • Wiki
  • Home

Home · Changes

Page history
Update home authored Mar 31, 2023 by Wouter Jansen's avatar Wouter Jansen
Show whitespace changes
Inline Side-by-side
home.md
View page @ 06e4ade3
# RTIS Network - Usage Documentation
# RTIS Network
This project enables using RTIS sensors in a star network architecture. Each sensor is a client where a central server allows through an API any application to request sensor data.
It includes distributed signal processing workflows on both client and server with CUDA support.
## Configuration
## Usage
### A. Configuration
All configuration is done on the RTIS Server side. There are two configuration file types:
- [serversettings.json](Config/serversettings.json)
......@@ -42,11 +46,14 @@ Here is a more detailed explanation of each parameter:
"server": { [string, unique identifier to identify the processingSettings with which is used by serverProcessingName and clientSettings.]
"workers": 3, [integer, The amount of RTIS CUDA GPU workers that should be used for the DSP pipeline.]
"pdm" : 0, [integer, Disable or enable the binary data unpacking and PDM filtering part of the DSP pipeline. 0=off, 1=on]
"matchedFilter" : 0, [integer, Disable or enable the matched filter part of the DSP pipeline. 0=off, 1=on]
"preFilter" : 0, [integer, Disable or enable the optional pre processing filter of the DSP pipeline. This expects a 'preFilter.csv' file in the config folder. 0=off, 1=on]
"matchedFilter" : 0, [integer, Disable or enable the optional matched filter part of the DSP pipeline. 0=off, 1=on]
"beamforming" : 1, [integer, Disable or enable beamforming part of the DSP pipeline. 0=off, 1=on]
"postFilter" : 0, [integer, Disable or enable the optional post processing filter of the DSP pipeline.This expects a 'postFilter.csv' file in the config folder. 0=off, 1=on]
"enveloppe" : 1, [integer, Disable or enable enveloppe creation part of the DSP pipeline. 0=off, 1=on]
"clean" : 1, [integer, Disable or enable cleaning of the Energyscape part of the DSP pipeline. 0=off, 1=on]
"DSPFolderName" : "2D_90_debug" [string, unique identifier to identify the DSPFiles foldername to use.]
},
"clientDefault" : {
...
......@@ -84,7 +91,7 @@ Here is a more detailed explanation of the `config.json` file:
```
As long as you create a new unique folder name and add this `config.json` file the server will generate all other necessary files.
## Control
### B. Control
Currently the RTIS Network can be controlled through a single CLI interface. This is defined by the [RTISControl.py](Python/RTISControl.py) script.
As described in the Installation steps, this could be binded to a CLI command such as `rtiscontrol`, which we will use throughout this description of the RTIS Control script.
......@@ -128,7 +135,7 @@ The state can be:
When in this status mode of the CLI interface, keyboard shortcuts are also available and listed on the screen to quickly perform certain commands.
## Web Interface
### B. Web Interface
Currently a simple web interface is available on the RTIS Network LAN. It can be reached from any webbrowser on `serverIp:5000`.
It offers the same functionality as RTIS Control CLI currently but is more user friendly.
......@@ -158,7 +165,7 @@ The state can be:
Furthermore, on the **Configuration page** one can safely configure the [serversettings.json](Config/serversettings.json) file from this web interface.
Lastly, on the **DSP Settings** page the [DSP Config folders](Config/DSPFiles) can be managed and generated easily as well.
## HTTP API
### C. HTTP API
Similarly as to the web API, all control functionality is also available as HTTP commands.
They will return status 200 on success and 400 (with error message as data) on failure.
......@@ -181,7 +188,7 @@ The following functions can therefore be used:
- _-Customize active connectors_ - `http://serverIp:5000/api/start?active=string`: Choose which connections on RTIS Sync device should be activated that overrides the default in the serversettings.json file. Should be a string of the format `X,X,X,X,X,X` where each X is either 1(enabled) 0(disabled).
- Like normal HTTP, you can combine multiple arguments. For example: `http://serverIp:5000/api/start?frequency=10&measurements=250&active=1,1,1,0,0,0`
## Using and creating a RTIS Network application
### D. Using and creating a RTIS Network application
The idea of RTIS Network is to provide (processed) RTIS measurements of one or multiple RTIS sensors. In order to use these measurements one has to connect an application.
Several 'default' applications are already available:
......@@ -193,3 +200,14 @@ Making a new application is rather straight forward. Several functions are avail
For this, one should use the Python library [RTIS Common Library](https://cosysgit.uantwerpen.be/rtis-software/rtiscommon).
The available commands are available in the [wiki](https://cosysgit.uantwerpen.be/rtis-software/rtiscommon/-/wikis/home).
There you can also find an example on setting up a data connection to the RTIS Server and what the data format is like.
## Troubleshooting
Some issues we encountered while working on this that might come in handy for others in the future:
- Using PyCharm IDE on Ubuntu not being able to load RTIS CUDA library by not finding library path:
See solution [here](https://youtrack.jetbrains.com/issue/PY-29580#focus=Comments-27-2823760.0-0). Basically need to add `LD_LIBRARY_PATH` with value `/usr/lib/rtiscuda` (or your custom location) manually to your run configurations.
- The hotkeys for RTIS Control don't work when not using elevated permissions on ubuntu(use `sudo` to fix). Also doesn't work when using tools like Synergy. Use natively connected keyboard!
- If using PyCharm you can use [the ideolog plugin](https://github.com/JetBrains/ideolog) to apply automatic syntax highlighting to the RTIS Network logfiles. See here for the settings:
- message pattern: `^\[([0-9]+)\-([0-9]+)\-([0-9]+)\s([0-9]+):([0-9]+):([0-9]+)\,([0-9]+)\]\s\-\s([a-zA-Z\s]+)\s\-\s([a-zA-Z\']+)\s\-\s(.*)$`
- message start pattern: `^\[`
- time format: `yyyy-MM-dd HH:mm:ss,SSS`
- color patterns: `^\s*W(ARNING)?\s*$` , `_^\s*I(NFO)?\s*$_`, `_^\s*E(RROR)?\s*$_`, ...
Clone repository
  • Home