Commit Graph

16 Commits

Author SHA1 Message Date
Johannes Pohl
79bcb54eef adapt target num samples to new pause API 2018-06-26 09:48:22 +02:00
Johannes Pohl
5ac33fa30c Add alignment action in analysis (#458)
* add align action to gui

* initial message alignment

* consider alignment in diff and search

* add reset link for alignment

* consider alignment in setData

* rebuild icons + change placeholder text of search line edit

* catch None error

* increase timeout for ci

* fix restore selection + label adding for aligned messages

* consider alignment for labels

* consider alignment offset when calculating column count

* enhance show diff unittest

* scroll to alignment

* consider hidden labels when changing alignment

* update changelog
2018-06-24 21:02:37 +02:00
Johannes Pohl
543d7f3b5e compress larger test signals 2018-06-18 20:26:13 +02:00
Johannes Pohl
26e5bbb492 Add a CLI (#440)
* add argument parser for CLI

* add pause to cli

* parse messages to send

* add send function

* use while loop instead of hard sleep

* use logger for error msg

* use tabulator for progress bar

* prepare rx mode

* use Thread for Protocol Sniffer instead of qt signals

* adapt tests

* fix thread can only be started once error

* enable receiving from command line

* support send from file

* save gain correctly

* enable rx into file

* remove unused signal

* enable raw rx and file mode

* add support for device identifier

* add support for default pause

* enable abort sending witt ctrl c

* support encodings

* make logging multiprocessing aware and add autobuild extensions to cli

* move place

* fix sniffer when receiving multiple messages at once

* add test for modulator cli parsing and fix some bugs

* extend modulator test and fix another bug

* add unittests and reorder urh_cli structure

* add tests

* adapt CI to CLI tests

* force osx

* fix osx

* adapt close dialog method

* remove close dialog method

* test read messages to send

* centralize read messages method

* increase timeout for ci

* support loading of project files to load cli values

* add sleep for ci

* add cli to deployment

* replace static calls with ProjectManager Class

* use time sleep instead of qwait

* disable gc collect call

* disable gc collect for python 3.4 only

* gc collect only for osx

* simplify cleanup

* simplify cleanup

* advanced cleanup only for windows

* cleanup also for osx

* gc collect for osx

* add unittests

* consider frozen app path

* init multiprocessing first

* enable logging on cli for windows

* use log file handler for log

* add missing import
2018-06-01 09:59:53 +02:00
Johannes Pohl
cfbec470d3 Allow export of spectrogram and demodulated view (#437)
* add export for demodulated signal

* allow to export spectrogram

* improve initial names

* increase timeout for ci

* update coveragerc
2018-05-22 11:17:38 +02:00
Johannes Pohl
d1a75d1cea check result of external programs when receiving message 2018-03-26 15:50:53 +02:00
Johannes Pohl
bb8d8ab63a remove while loop in test 2018-03-21 16:09:32 +01:00
jopohl
f6296126ed increase timeout for tests 2018-03-20 22:44:37 +01:00
Johannes Pohl
00490c5229 optimize timeout for test 2018-03-11 23:51:02 +01:00
Johannes Pohl
79c8ac467e Optimize Tests 2018-03-11 22:19:55 +01:00
Johannes Pohl
9cfddb4d27 box travis tests and improve test simulator_flow test 2018-03-11 14:04:15 +01:00
Johannes Pohl
8368b46f77 improve simulator unittests 2018-03-11 00:45:54 +01:00
Johannes Pohl
f791514100 increase timeout for ci 2018-03-10 21:45:38 +01:00
Johannes Pohl
7e230c743b add test for mismatching label 2018-03-02 13:13:49 +01:00
Johannes Pohl
6c1ae0ec25 Integrate Simulator Tab (#395)
* enable simulator tab

* save simulated participant in project

* add link for checksum label and make it configurable

* handle checksum label change for simulator label

* fix crash when editing field types with active simulator labels

* allow assigning multiple source/destination at once

* remove unused event

* use default line color for arrows

* cleanup code

* refactor bootstrapping of device settings and sniff widget
add button for opening sniff dialog in simulator dialog

* reformat code

* enhance bootstrapping to keep initial project manager settings

* highlight simulated participants in flow graph

* more verbose logging

* reformat file

* fix initial gain settings

* reformat code

* also save antenna index

* unify sniffer settings

* add signal selection to sniff widget to take values from signal

* add default argument

* fix missing refresh when adding items to scene with participant assigned

* catch error when saving xml

* refactor SimulatorProtocolLabel

* Improve handling of checksum labels

* travis: generate coverage data for all python > 3.4

* replace print calls with logger calls

* refactor goto action

* refactor simulator message

* refactor simulator rule

* rename to SimulatorExternalProgramAction

* add tooltip for value type

* improve performance of protocol sniffer

* improve performance of protocol sniffer even further

* directly emit signal and do not use timer

* add unittest for protocol sniffer

* add test for clear action

* add test for settings proxy

* add test for accepting sniffed messages

* make test more generic

* repair test

* catch none error

* fix typo

* refactor dialog creation

* add test for simulation flow

* refactor read_receiving_queue

* fix unittest

* increase timeout for ci

* improve sniffer performance especially when reaching end of buffer

* catch error

* add timeout for windows

* improve condition

* move run command and parse command to util and refactor methods

* add validate command method and refactor run_command

* fix imports

* improve validate check

* proper renaming

* rename log messages accordingly

* cleanup method

* add external program support for simulator

* fix if condition

* travis ci: use sudo for all builds

* revert

* add wait for ci

* improve test

* fix shebang

* refactor run command

* fix enabled repeat status and add wait for sync send

* pad send buffer with zeros if not enough data present

* catch exceptions when closing errors

* Revert "pad send buffer with zeros if not enough data present"

This reverts commit b5ea80ae27.

* remove timeout and return zeros properly in callback

* prevent calling gnuradio installed check too often

* rename repeat -> copies

* mark get live vs static labels

* Get live from simulation -> Live Input

* use shlex for calling programs

* fix valid check

* catch empty list error

* check if commmand is available before running

* windows support

* catch value error

* improve windows support

* adapt unittests

* Revert "adapt unittests"

This reverts commit 97d8a2c45a.

* get and store default programs on windows

* improve condition and pipe stderr

* also pipe stderr

* add validity check when assigning multiple message sources/destinations

* remove Create new message type based on this message

* Rename External Program Action -> Trigger Command

* fix unittest

* increase timeout for ci

* get external command action to work

* add timeout for sync send devices

* fix windows test

* fix call

* improve logging view

* make use of filter

* append participants instead of overwriting to prevent key errors

* add sip version str

* travis: test revent pyqt5

* Revert "travis: test revent pyqt5"

This reverts commit df1b403a51.

* proper naming + add context menu action for set value type

* support batch assigning of value type index

* fix method name

* adapt unittest to new logic

* add copy and paste for simulator scene

* show transcript

* support bit and hex view for transcript

* Fix display error in simulator

* improve logging

* catch index error

* improve condition

* show signals in modulation dialog created from simulator dialog

* fix filtering for KDE users

* add comment

* improve performance of filtering rows

* remove redundant update

* fix empty frame visible status to handle larger protocol files

* fix sending finished status

* fix unittest

* enhance modulation API do not cache result to avoid memory leak

* increase wait for devices timeout

* Fix memory leak for send dialog

* fix data loss for tree views

* Fix sample rates for AirSpy
- R2: 10M only
- Mini: 6M only

* set delete on close attribute

* Fix sample rates for AirSpy
- R2: 10M only
- Mini: 6M only

* Fix sample rates for AirSpy
- R2: 10M only
- Mini: 6M only

* Fix sample rates for AirSpy
- R2: 10M only
- Mini: 6M only

* allow capture full rx in simulator and make it possible to save rx data

* do not add gr device for continuous send mode

* fix property

* Some UI improvements

* improve performance of fsk modulation

* Fixed handle width

* improve performance of ask modulation

* improve performance of psk modulation

* fix unittest

* improve gfsk performance

* remove old modulation implementation

* increase timeout for ci

* use sudo by default for travis

* use fsk for test

* remove prange as it can lead to errors in continous modulation

* short async wait

* use spawn on all platforms

* increase timeout for ci

* decrease modulator buffer size

* make fsk parallel

* improve data types

* centralize setting of CONTINUOUS_BUFFER_SIZE_MB

* add log message

* add reset link for filtering

* new simulator default timeout

* catch index error

* catch error

* use shared memory for send buffer

* remove auto assign decodings

* remove dup variable

* rename sendbuffersize to rx chunk size and remove var dup

* READ_SAMPLES->SYNC_RX_CHUNK_SIZE

* fix data type in send config and remove pause in simulation

* improve hackrf send callback

* Tab prio changed

* improve sending backend

* fix lime send

* fix usrp send

* improve continous send mode for usrp

* improve code

* pad limesdr with zeros if needed

* fix log error

* enter continuous send dialog earlier

* add missing set_bandwidth_status call for RTLSDR

* save gains and antenna index per rx/tx

* show modulation profiles only when requested in options

* decrease complexity

* add edit labels action to context menu in simulator message table

* improve performance of auto detect freq

* add sleep action

* fix unittests + remove redundant test

* add counter action

* add parent to timers + increase coverage for cfc

* improve test

* use sip to delete dialogs

* improve tests

* set dialog to none

* add log message

* remove unneeded base class

* remove redundant test

* do not inherit qttestcase without reason

* stop sniffer in test

* reformat test files

* add a short wait after teardown

* give each app a unique name

* fix travis conf

* name concurrency setting in coveragerc

* remove xml setting

* improve condition

* add combine

* coverage only for python 3.6

* install pytest cov and coveralls only for python 3.6

* remove concurrency setting

* update coveragerc

* add tests for decoding dialog

* Added external programm for decoding/encoding Homematic that does a dirty trick:
After "decryption" the CRC is recalculated and the corresponding field will be overwritten if the CRC was correct before. In this way you can directly see whether the Homematic message is correct without switching to a intermediate layer (before decryption).

* fix selection error in Decoding dialog and move test to TestExternalDecodings.py

* beautify simulation scene

* show shown rows labels always and not only for filter

* prevent auto default

* clear transcript only on start and add crc log

* Minor stuff:
* Timeout Sim in ms
* CRC Label check fixed
* transcript format improved

* improve loading of txt support transcript and hex

* fix close all disbled status

* prepare open in analysis

* implement logic for open in analysis button

* refactor transcript newline

* enhance order of close event

* improve logging output

* increase align depth

* only color got string in log

* update userguide
2018-02-28 10:15:08 +01:00
Johannes Pohl
fd933edfc7 integrate changes from simulator branch but disable simulator for now
The simulator is not yet ready for usage but the changes on the
architecture are valueable for the master branch.
Therefore, I merged the branch with the following addition:
 * Close the Simulator Tab whenever the program starts
2018-01-30 11:58:30 +01:00