Universal Radio Hacker Changelog

What's new in Universal Radio Hacker 2.9.6

Jan 14, 2024
  • Blacken code by @jopohl in #1076
  • Update year in license to 2023 by @jopohl in #1080
  • CI: Bump to macOS 12 by @jopohl in #1081
  • Feature/signal real timestamp by @jpacov in #969
  • Update LICENSE and CI by @jopohl in #1097

New in Universal Radio Hacker 2.9.5 (Oct 28, 2023)

  • CI: Add missing env definition to twine upload by @jopohl in #1029
  • Fix error in WSPChecksum by @andynoack in #1046
  • Bias-T checkbox for RTL-SDR device settings screen #2 by @jirjirjir in #1057
  • pin to Cython version <3.0.0 by @jopohl in #1063
  • Add noexcept to fix compiling of cythonext by @andynoack in #1065
  • Upgrade Python versions in CI by @jopohl in #1074

New in Universal Radio Hacker 2.9.4 (Jan 28, 2023)

  • Add paths for homebrew on M1 Mac / Apple Silicon by @n8henrie in #982
  • 'Remove Carrier' encoding truncates initial input by @delta512 in #997
  • Update ci.yml by @andynoack in #998
  • Flipper raw by @andynoack in #1000
  • Add I/Q view by @andynoack in #1007
  • Refresh protocol view also when hidden by @jopohl in #1011
  • Adding Save As pcapng for ProtocolAnalyzer by @jpacov in #970
  • Keep Y-Scale when showing/hiding demodulated view by @jopohl in #1012
  • Fix .sub file RAW_data strip by @orensbruli in #1016
  • Add rad1o support by @andynoack in #1020
  • CI: Install PyAudio directly via pip instead of pipwin by @jopohl in #1021
  • Flipper zero sub ghz by @andynoack in #1023
  • Fix error when selecting large ranges in Interpretation by @jopohl in #1024
  • Allow configuration of fractional font sizes by @jopohl in #1027

New in Universal Radio Hacker 2.9.3 (Mar 1, 2022)

  • requirements: restrict pyqt5 version due to PyInstaller issue by @jopohl in #862
  • add bias tee check box on device settings by @sophiekovalevsky in #854
  • add category HamRadio to desktop file by @andynoack in #889
  • Signal: retain the sample_rate on create_new by @kadamski in #884
  • Simulation fix: use sending device dtype for modulation by @jopohl in #918
  • Variable type mismatch, fix #937 by @andynoack in #938
  • CI: update python versions by @jopohl in #940
  • CI: Migrate to GitHub Actions by @jopohl in #942
  • remove HackRF anti-freeze timeouts in places that do not require them by @nilswint in #890
  • add b before data string by @andynoack in #846
  • update dependencies by @jopohl in #944
  • Fix microphone access for macOS DMG by @jopohl in #945
  • get magnitudes in cython for less memory consumption by @jopohl in #946
  • join simulation thread when simulation stopped by @jopohl in #947
  • Update year in LICENSE by @jopohl in #948
  • add default noise threshold setting by @jopohl in #949
  • Fix cython warnings by @jopohl in #951
  • CI: trigger on version tags by @jopohl in #952
  • MacOS: Add default include dir during installation by @jopohl in #953
  • set BladeRF min sample rate to 520.834 kHz by @jopohl in #954
  • Fix API check on macOS by @jopohl in #955
  • fix #933 improve y-scale in SendRecvDialog by @jopohl in #956
  • Enable native backend check on Windows by @jopohl in #957
  • Update Windows SDR drivers by @jopohl in #958
  • Update SDR drivers on macOS by @jopohl in #959
  • update requirements.txt by @jopohl in #960
  • CI: fix twine upload by @jopohl in #961

New in Universal Radio Hacker 2.9.2 (Apr 18, 2021)

  • Allow incomplete complex files to load fix #848
  • Add desktop entry to snap
  • Use list for checksum data_ranges

New in Universal Radio Hacker 2.9.1 (Dec 30, 2020)

  • use *.wav format for demodulated signal export
  • change separation colors to green and magenta
  • fix disappearing separation area in demod view
  • fix #829
  • fix overflow in AutoInterpretation for certain signals

New in Universal Radio Hacker 2.9.0 (Nov 24, 2020)

  • Update requirements (#821)
  • Update azure-pipelines.yml (#820)
  • Avoid graph overlapping legend in spectrum analyzer (#816)
  • CI: build on windows without -j (#815)
  • Improve Auto Interpretation Performance (#814)
  • Improve sdr check fix #811 (#812)
  • Use costas loop for PSK demod (#807)
  • Consider checksum label in copy operation (#803)

New in Universal Radio Hacker 2.8.9 (Sep 8, 2020)

  • Changes:
  • add bladerf fpga images to snap (#799) [ #798 ]
  • make HackRF bias tee configurable (#794)
  • Fix deprecation warnings due to invalid escape sequences.
  • Use ElementTree instead of deprecated cElementTree.
  • Refactor FileOperator (#787)
  • cleanup code
  • properly remember size and position of dialogs fix #784
  • add De Bruijn fuzzing (#782)
  • add support for already demodulated signals (#780)
  • Remove NRZ-I to prevent mixing with NRZ + Invert, clarify names. (#776) [ #775 ]

New in Universal Radio Hacker 2.8.8 (May 17, 2020)

  • Support for complex16u (2xuint8) signals (#772)
  • Circumvent a possible (not reproducable) bug on Windows where application window is not drawn (#769) by bundling PyQt5.14.1 instead of latest 5.14.2
  • Remove padding when drawing signals and remove autofit -> Weak captures are visible at a glance, use Y-Scale instead

New in Universal Radio Hacker 2.8.7 (Apr 27, 2020)

  • 733371f version2.8.7
  • 8413ece update snapcraft
  • e396ddc add retina support on macOS (#767)
  • 0908723 improve pyinstaller_helper.py
  • caa527a nicer output for device log in dialogs
  • e9657b6 enforce smaller headers -> more data visible in table views
  • dd141b6 add snapcraft.yaml and build_snap.sh
  • 84e32cb update README.md
  • 9631316 only close current project if new one requested
  • 93b99c7 remove parallelization in ExtensionHelper.py [ #761 ]

New in Universal Radio Hacker 2.8.6 (Apr 15, 2020)

  • Remove superfluous os.join
  • Update ui files (#759)
  • Improve appicon_big
  • New logo and icon (#757)
  • Fix attribute assignment
  • Use more recent UHD version
  • Check native backends on linux when installed from pip (#751)

New in Universal Radio Hacker 2.8.5 (Mar 24, 2020)

  • Overhaul GNU Radio backend (ready for gr 3.8+) (#748)
  • Add support for Manylinux2014 (#750) (see also the updated Readme.md if you are using Linux)
  • For packagers: Dropping the requirement python-zmq

New in Universal Radio Hacker 2.8.4 (Mar 7, 2020)

  • Changes:
  • Speed up unittests
  • fix message break plugin (#739)
  • Close old project only when new project acknowledged
  • build sequentially in pyinstaller_helper.py (#736)
  • Run .exe in CI for testing (#735)
  • improve timeouts in tests (#734)
  • UI: Updated capitalization of GNU Radio
  • make include path in rebuild configurable (#733)
  • make combobox for device selection editable

New in Universal Radio Hacker 2.8.3 (Feb 22, 2020)

  • Changes:
  • Allow more granular values in spinboxes
  • Fix #721
  • Show if demodulation is in progress
  • Add environment variables to set API version explicitly (#717)
  • Centralize setting operations + rename constants.py->settings.py (#714)

New in Universal Radio Hacker 2.8.2 (Jan 7, 2020)

  • Fix some typos
  • Improve some text
  • Fix #705
  • Ensure every message has a message type after awre
  • Increase range for samples_per_symbol (fix #699)

New in Universal Radio Hacker 2.8.1 (Nov 23, 2019)

  • Changes:
  • bb448bf fix PSK threshold in AInterpretation
  • 30e7442 remove randomness when equally common modulations found
  • e7927be improve performance of AInterpretation for long signals
  • be882ac update ranges for BladeRF fix #697

New in Universal Radio Hacker 2.8.0 (Oct 20, 2019)

  • Changes:
  • d172f update filter dialog UI
  • f4e49b fix crash when creating new project with compressed signal loaded
  • fbc1 Add GUI for higher order modulations (#666)
  • c4f391 Update PSK Demod routine to support higher order PSK (#686)

New in Universal Radio Hacker 2.7.5 (Aug 26, 2019)

  • 30a4d59 fix bug in FSK modulation: remove spiky jumps (#685)
  • ad0e175 add missing update when deleting bits
  • 7763d65 add hidden import (#682)

New in Universal Radio Hacker 2.7.4 (Aug 18, 2019)

  • Changes:
  • 4bcb93c version2.7.4
  • abc6fc0 Create FUNDING.yml
  • 8eadb7d make subdevice and antenna for usrp configurable (#678)
  • f10bda8 make analysis look better in lower resolutions
  • b3701bf give workpath to pyinstaller
  • 7f5de75 Update CI (#673)
  • ac7364f move to macOS 10.14 in CI (#672)

New in Universal Radio Hacker 2.7.3 (Jun 30, 2019)

  • This release fixes a bug with the PyPi installation of URH (#671).

New in Universal Radio Hacker 2.7.2 (Jun 26, 2019)

  • Fix #667
  • Show shortcuts in context menus if possible
  • Refactor demod backend (#665)
  • Add oqpsk modulation in backend
  • Fix crash when running spectrum dialog for long time
  • Improve usability of Decoding
  • Make modulation backend more generic (#660)
  • Fix #656
  • Fix #655

New in Universal Radio Hacker 2.7.0 (Jun 1, 2019)

  • This release brings #652 which uses native IQ formats of SDRs. This improves performance and reduces RAM requirements when recording and sending with native backend.
  • Furthermore, a DMG for OSX (#654) is provided from now on.

New in Universal Radio Hacker 2.6.0 (May 20, 2019)

  • This release greatly enhances the capabilities of automatic label and message type inference. Preamble, Synchronization, Address (SRC/DST), Sequence Number and Checksum labels are now assigned automatically when hitting the Analyze button.
  • Further Changes:
  • More accurate logic analysis (#403)
  • Fix parameters of auto interpretation for better PSK detection (#649)
  • Fix appearance of message type edit button in dark themes
  • Fix error with message length divisor (#640)
  • Add sdist build to CI (#639)

New in Universal Radio Hacker 2.5.7 (Apr 3, 2019)

  • Add compatibility with Macports
  • Build windows only for python 3.7
  • Improve dialog construction to prevent error on KDE
  • Update requirements.txt
  • Increase frequency range of PlutoSDR
  • Make readme paragraph about supported linux distributions more generic
  • Fix crash when showing diff of empty protocol
  • Create directory before to prevent error with multiprocessing
  • Improve PyInstaller performance
  • Fix InnoSetup Version

New in Universal Radio Hacker 2.5.6 (Feb 24, 2019)

  • c252616 install pyaudio for 3.7 and build win binary with 3.7 (#620)
  • 9ef4d1a Use PyInstaller and InnoSetup for Windows binaries (#618)
  • 8ea7feb fix center detection crash on special signals (fix #615)
  • 8666216 update requirements.txt for linux (#617)
  • 3966d56 Update CI (#614)

New in Universal Radio Hacker 2.5.5 (Jan 19, 2019)

  • 182c6be refactor name filters
  • 357f48b Add .cu8 .cs8 format alias (#612)
  • 6831028 remove MAX_MESSAGE_SAMPLES threshold in auto interpretation
  • 64fcd4e add user feedback if auto detection fails
  • d44e92f fix #609
  • c9e6404 improve max memory allocation on 32 bit (#605)
  • 92831f4 Make auto interpretation work in live mode during simulation (#583)

New in Universal Radio Hacker 2.5.4 (Jan 8, 2019)

  • This is a release to test out the new builds with Azure Pipelines and add some fixes to the unit tests. For end users there is no reason to upgrade.

New in Universal Radio Hacker 2.5.3 (Dec 20, 2018)

  • Fix crash when using spectrum analyzer with GNU Radio backend #588

New in Universal Radio Hacker 2.5.2 (Dec 10, 2018)

  • Bugfixes:
  • Certain windows (e.g. decoding) can't be closed on OSX
  • Prevent crash in substitution encoding
  • Consider alignment offset when showing selected labels
  • Adjustments:
  • Remove Save and Close of fuzzing dialog, as closing means saving here anyway
  • New features:
  • Make application font size configurable in Options -> View

New in Universal Radio Hacker 2.5.1 (Nov 26, 2018)

  • Bugfixes:
  • Improve stability when capturing with SoundCard
  • Fix bug making the docker container crash at startup
  • Stop simulation instantly after finishing

New in Universal Radio Hacker 2.4.2 (Nov 11, 2018)

  • New features:
  • enhance settings for RTL-SDR #561 + #566
  • ergonomic improvements #564
  • Bugfixes:
  • fix problem with set reference message shortcut #559
  • fix loading decodings and centralized place for decodings #563

New in Universal Radio Hacker 2.4.1 (Oct 23, 2018)

  • New features:
  • Add an option to disable automatic detection of interpretation parameters for newly loaded signals to the Edit menu #555
  • Bugfixes:
  • Fix off by one error when creating a new label in analysis
  • Fix crash when opening a project with saved dc correction setting

New in Universal Radio Hacker 2.4.0 (Oct 19, 2018)

  • New features:
  • added font size zoom to table views (analysis/generator/simulator); more details in #546
  • greatly enhance accuracy of automatic interpretation #550
  • added DC correction option to recording dialogs and as a new filter type in Interpretation #552
  • Improvements:
  • ignore case when searching for hex values in analysis #544
  • RSSI is now given in dBm #549
  • Bugfixes:
  • Fix display of RSSI indicator in Interpretation #547

New in Universal Radio Hacker 2.3.0 (Sep 28, 2018)

  • New features:
  • Added native support for BladeRF #524
  • Added backward compatibility for SDRPlay < 2.13 #528
  • Improved UI for message type and label configuration in analysis #532
  • Rename close all action to close all files for more clarity #532
  • Added a close project action #532

New in Universal Radio Hacker 2.2.3 (Jul 29, 2018)

  • New features:
  • allow save and load of binary protocols (.bin files) #488
  • consider API changes of SDRPlay 2.13 #508 thanks @mehdideveloper
  • also consider participant address (next to RSSI) when auto assigning participants in analysis #512
  • Clear button stays enabled during operation so e.g. recordings can be cleared live #514
  • improve bootstrap of simulator messages #500
  • auto assign destination when dropping messages to simulator
  • show participant address in participant legend if present
  • auto assign participant address when clicking analyze button in analysis based on SRC address label
  • Bugfixes:
  • antenna selection is not saved when reopening dialog #494
  • hiding multiple rows at once in analysis not working properly #499

New in Universal Radio Hacker 2.2.1 (Jul 1, 2018)

  • This is a hotfix release which targets issue #481, so if you had problems with a missing config.pxi make sure to use this version.

New in Universal Radio Hacker 2.2.0 (Jun 29, 2018)

  • Import announcement if you build URH manually: Cython is now a required dependency to build URH. If you install URH from PyPi (with pip) or use the .msi installer you will not notice any difference. However, if you run URH from source you need to install cython which is as easy as python3 -m pip install cython.
  • Merged Pull Requests:
  • #478 - make message pause configurable in simulator
  • #476 - add padding when sending very short messages with soundcard
  • #473 - move .desktop file to data folder. Important if you build a package of URH
  • #471 - make relative external programs paths relative to project path
  • #470 - improve conditional compiling of native device extensions
  • #469 - improve device selection in options, use a table instead of a list view
  • #468 - improve python2 interpreter settings for GNU Radio backend with empty urh.ini
  • #458 - add alignment action to analysis

New in Universal Radio Hacker 2.1.1 (Jun 18, 2018)

  • Bugfix:
  • A bug was fixed where sample rate of a signal was not written correctly to wav file when exporting as wav

New in Universal Radio Hacker 2.1.0 (Jun 1, 2018)

  • Moreover, these two features were added:
  • Add export features #437
  • make refin and refout configurable for CRC #439
  • These bugs were fixed:
  • fix #441 (Reference signal is not kept when disabling and re-enabling "Mark diffs in protocol")
  • fix #442 (consider hidden zeros for show selection in interpretation)
  • fix #444 (Message Break error box popping up too early)
  • fix #448 (Include pyaudio in windows package for soundcard support)

New in Universal Radio Hacker 2.0.4 (May 7, 2018)

  • This version fixes a bug when importing 24 bit wav files on windows.

New in Universal Radio Hacker 2.0.2 (Apr 22, 2018)

  • Improve external program behavior in Simulator
  • Fixed SpinBox looses last digit
  • Improve simulator usability
  • Improve transcript for external programs
  • Make endianness selectable in order column
  • UI improvements #430

New in Universal Radio Hacker 2.0.1 (Mar 23, 2018)

  • Changes:
  • Improve appearance of splitters
  • Add adaptive noise feature for protocol sniffer and simulator (#401)
  • Improve native device rebuild button in options + added a new button to view the build log there (only visible after hitting the rebuild button) (#402)
  • Improve performance of CRC calculation (#412)
  • Save number of sending repeats when changed in send dialog (#415)

New in Universal Radio Hacker 2.0.0 (Mar 6, 2018)

  • improve accuracy when sending messages with short pauses
  • improve accuracy of protocol sniffer
  • allow setting lower frequencies for HackRF (#396)
  • consider latest changes of LimeSuite API (#397)
  • add timestamp to protocol sniffer output (#392)
  • improve performance of modulations
  • improve performance of filtering in analysis
  • improve performance when starting sending
  • improve send accuracy of HackRF
  • improve performance when filtering messages in Analysis