mirror of https://github.com/f4exb/sdrangel.git
Compare commits
67 Commits
a4f1cc9e28
...
39a24510fa
Author | SHA1 | Date |
---|---|---|
Daniele Forsi | 39a24510fa | |
Daniele Forsi | d4040c0eea | |
Daniele Forsi | bf1f90feab | |
Daniele Forsi | f58a86ae0b | |
Daniele Forsi | d8d884a224 | |
Daniele Forsi | c04bd8d309 | |
Daniele Forsi | 4b48a7764f | |
Edouard Griffiths | 5e321e3ead | |
Daniele Forsi | 991ccddb66 | |
Daniele Forsi | b4ec43e4aa | |
Daniele Forsi | f4b2dfc0a9 | |
Daniele Forsi | f72574d1ad | |
Daniele Forsi | 230c461204 | |
Edouard Griffiths | dac9b9a5b3 | |
Daniele Forsi | 90e917f666 | |
Edouard Griffiths | 4d43e53272 | |
Daniele Forsi | fd830a0153 | |
Edouard Griffiths | ba4c8a42fc | |
Daniele Forsi | 004811d83d | |
Daniele Forsi | fe84c20aff | |
Daniele Forsi | 613d9e4005 | |
Daniele Forsi | 570c1f6877 | |
Edouard Griffiths | acc06658ec | |
Mykola Dvornik | f55adc481d | |
Edouard Griffiths | 6b41a77e31 | |
Daniele Forsi | db4d07e59a | |
Edouard Griffiths | 3795b72855 | |
srcejon | 0dcc4755ef | |
srcejon | 002c824dd9 | |
Edouard Griffiths | e07a558329 | |
Edouard Griffiths | d7c461cad5 | |
Edouard Griffiths | 7e52d4a243 | |
srcejon | 5330b8ef45 | |
Daniele Forsi | dbb1adc540 | |
Mykola Dvornik | 15337cac66 | |
f4exb | cdae5ca048 | |
Edouard Griffiths | 0cd8800944 | |
Daniele Forsi | 147a88ccd8 | |
Daniele Forsi | 8c3f7e3775 | |
Daniele Forsi | 13222cac8d | |
Edouard Griffiths | d7f6ec7518 | |
srcejon | 4439b435b7 | |
srcejon | 84960eff03 | |
srcejon | c3a1c8db0e | |
srcejon | 2973eff337 | |
srcejon | d09b3a2fb2 | |
srcejon | 5e79f06c0e | |
srcejon | 6979117b26 | |
srcejon | 54713ef67c | |
srcejon | a77b6f1b36 | |
f4exb | 872bc8f13f | |
Edouard Griffiths | a6c1dc56c4 | |
srcejon | c9632b9fe3 | |
srcejon | 7b6bbe88f3 | |
srcejon | 304f0ea89a | |
srcejon | a76262f0b7 | |
srcejon | 67723563a4 | |
srcejon | 5b0d5b9efb | |
srcejon | 1d8d297565 | |
srcejon | 44385832c3 | |
srcejon | 035e6f59be | |
srcejon | be7199531d | |
srcejon | 116d6674bd | |
srcejon | 83498f848b | |
srcejon | 7b6c9e23ec | |
srcejon | 9c31f0066a | |
srcejon | c27ea6d5d7 |
28
CHANGELOG
28
CHANGELOG
|
@ -1,3 +1,31 @@
|
|||
sdrangel (7.20.0-1) unstable; urgency=medium
|
||||
|
||||
* New Sudden Ionospheric Disturbance feature. PR #2052
|
||||
* Removed unused includes and use more direct includes. PR #2062
|
||||
* Various updates and fixes. Fixing #2061. PR #2063
|
||||
* ChirpChat: added FT mode (FT-chirp)
|
||||
* Support VOR Localizer on Qt6. PR #2057
|
||||
* Fix audio sink/source mapping. PR #2056
|
||||
* Use mouse wheel to zoom in / out of charts. PR #2052
|
||||
* Channel Power: Add absolute frequency setting. PR #2052
|
||||
* RadiosondeDemod: Fix packets read from .csv not being sent to Radiosonde feature.. PR #2052
|
||||
* KiwiSDR: Add position of device to web API report. PR #2052
|
||||
* KiwiSDR: Add position to yaml. PR #2052
|
||||
* SkyMap: Add Moon map. PR #2052
|
||||
* APRS: Check for Cr or LF. For #2028. PR #2052
|
||||
* AX.25 Packet: packetmod supports multi Via; packetdemod fix H bit. PR #2039
|
||||
* Audio optimize & default input/output bugfix. PR #2038
|
||||
* Sat Tracker: Prevent crash if satellite not found. PR #2052
|
||||
* Astronomy: Add sunrise / sunset calculation. PR #2052
|
||||
* APRS: Fix forwarding of binary data to APRS-IS for #2028. PR #2052
|
||||
* APRS: Forward packets to aprsi-is, even if we can't decode them. For #2029. PR #2052
|
||||
* ADSB: Add Airplanes.Live at request of user. PR #2027
|
||||
* Heat Map: Fix overflow in average calculation. PR #2052
|
||||
* AIS Demod: Remove unused filter. PR #2052
|
||||
* SkyMap: Fix erronous entry in source list. PR #2052
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sun, 14 Aprr 2024 09:15:24 +0200
|
||||
|
||||
sdrangel (7.19.1-1) unstable; urgency=medium
|
||||
|
||||
* Add channel power channel. PR #2019, #2021
|
||||
|
|
|
@ -19,13 +19,14 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
|||
|
||||
# configure version
|
||||
set(sdrangel_VERSION_MAJOR "7")
|
||||
set(sdrangel_VERSION_MINOR "19")
|
||||
set(sdrangel_VERSION_PATCH "1")
|
||||
set(sdrangel_VERSION_MINOR "20")
|
||||
set(sdrangel_VERSION_PATCH "0")
|
||||
set(sdrangel_VERSION_SUFFIX "")
|
||||
|
||||
# SDRAngel cmake options
|
||||
option(DEBUG_OUTPUT "Print debug messages" OFF)
|
||||
option(SANITIZE_ADDRESS "Activate memory address sanitization" OFF)
|
||||
option(SANITIZE_ADDRESS "Activate detection of uninitialized memory (AddressSanitizer)" OFF)
|
||||
option(SANITIZE_MEMORY "Activate detection of leaked memory (LeakSanitizer)" OFF)
|
||||
option(RX_SAMPLE_24BIT "Internal 24 bit Rx DSP" ON)
|
||||
option(BUILD_SERVER "Build Server" ON)
|
||||
option(BUILD_GUI "Build GUI" ON)
|
||||
|
@ -456,7 +457,7 @@ elseif(ANDROID)
|
|||
set(LIBDSDCC_LIBRARIES "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/dsdcc/lib/libdsdcc.so" CACHE INTERNAL "")
|
||||
|
||||
set(FFMPEG_FOUND ON CACHE INTERNAL "")
|
||||
set(FFMEG_SKIP_CHECK ON CACHE INTERNAL "")
|
||||
set(FFMPEG_SKIP_CHECK ON CACHE INTERNAL "")
|
||||
set(FFMPEG_INCLUDE_DIRS "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/ffmpeg/include" CACHE INTERNAL "")
|
||||
set(FFMPEG_LIBRARIES "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/ffmpeg/bin" CACHE INTERNAL "")
|
||||
set(AVCODEC_INCLUDE_DIRS "${EXTERNAL_LIBRARY_FOLDER}/${ANDROID_ABI}/ffmpeg/include" CACHE INTERNAL "")
|
||||
|
|
|
@ -1,3 +1,31 @@
|
|||
sdrangel (7.20.0-1) unstable; urgency=medium
|
||||
|
||||
* New Sudden Ionospheric Disturbance feature. PR #2052
|
||||
* Removed unused includes and use more direct includes. PR #2062
|
||||
* Various updates and fixes. Fixing #2061. PR #2063
|
||||
* ChirpChat: added FT mode (FT-chirp)
|
||||
* Support VOR Localizer on Qt6. PR #2057
|
||||
* Fix audio sink/source mapping. PR #2056
|
||||
* Use mouse wheel to zoom in / out of charts. PR #2052
|
||||
* Channel Power: Add absolute frequency setting. PR #2052
|
||||
* RadiosondeDemod: Fix packets read from .csv not being sent to Radiosonde feature.. PR #2052
|
||||
* KiwiSDR: Add position of device to web API report. PR #2052
|
||||
* KiwiSDR: Add position to yaml. PR #2052
|
||||
* SkyMap: Add Moon map. PR #2052
|
||||
* APRS: Check for Cr or LF. For #2028. PR #2052
|
||||
* AX.25 Packet: packetmod supports multi Via; packetdemod fix H bit. PR #2039
|
||||
* Audio optimize & default input/output bugfix. PR #2038
|
||||
* Sat Tracker: Prevent crash if satellite not found. PR #2052
|
||||
* Astronomy: Add sunrise / sunset calculation. PR #2052
|
||||
* APRS: Fix forwarding of binary data to APRS-IS for #2028. PR #2052
|
||||
* APRS: Forward packets to aprsi-is, even if we can't decode them. For #2029. PR #2052
|
||||
* ADSB: Add Airplanes.Live at request of user. PR #2027
|
||||
* Heat Map: Fix overflow in average calculation. PR #2052
|
||||
* AIS Demod: Remove unused filter. PR #2052
|
||||
* SkyMap: Fix erronous entry in source list. PR #2052
|
||||
|
||||
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sun, 14 Aprr 2024 09:15:24 +0200
|
||||
|
||||
sdrangel (7.19.1-1) unstable; urgency=medium
|
||||
|
||||
* Add channel power channel. PR #2019, #2021
|
||||
|
|
|
@ -20,7 +20,6 @@
|
|||
#ifndef DEVICES_BLADERF_DEVICEHACKRFSHARED_H_
|
||||
#define DEVICES_BLADERF_DEVICEHACKRFSHARED_H_
|
||||
|
||||
#include "util/message.h"
|
||||
#include "export.h"
|
||||
|
||||
class DEVICES_API DeviceBladeRF1Shared
|
||||
|
|
|
@ -27,7 +27,6 @@
|
|||
#include <boost/lexical_cast.hpp>
|
||||
#include <QtGlobal>
|
||||
|
||||
#include "dsp/dsptypes.h"
|
||||
#include "dsp/wfir.h"
|
||||
#include "deviceplutosdr.h"
|
||||
#include "deviceplutosdrbox.h"
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 11 KiB |
Binary file not shown.
After Width: | Height: | Size: 19 KiB |
Binary file not shown.
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
|
@ -4,9 +4,6 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "Util.h"
|
||||
#include "Convolution.h"
|
||||
|
||||
#include <array>
|
||||
#include <cstdlib>
|
||||
#include <cstdint>
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "Trellis.h"
|
||||
#include "Convolution.h"
|
||||
#include "Util.h"
|
||||
|
||||
|
|
|
@ -29,7 +29,6 @@
|
|||
#include "dsp/hbfilterchainconverter.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "settings/serializable.h"
|
||||
#include "feature/feature.h"
|
||||
#include "maincore.h"
|
||||
|
||||
#include "beamsteeringcwmodbaseband.h"
|
||||
|
|
|
@ -20,7 +20,6 @@
|
|||
#include <QDebug>
|
||||
|
||||
#include "dsp/upchannelizer.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
|
||||
#include "beamsteeringcwmodbaseband.h"
|
||||
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
const PluginDescriptor BeamSteeringCWModPlugin::m_pluginDescriptor = {
|
||||
BeamSteeringCWMod::m_channelId,
|
||||
QStringLiteral("BeamSteeringCWMod"),
|
||||
QStringLiteral("7.17.3"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) Edouard Griffiths, F4EXB"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
|
@ -29,7 +29,6 @@
|
|||
#include "device/deviceapi.h"
|
||||
#include "dsp/hbfilterchainconverter.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "feature/feature.h"
|
||||
#include "util/db.h"
|
||||
#include "maincore.h"
|
||||
|
||||
|
|
|
@ -22,9 +22,7 @@
|
|||
#include <QDebug>
|
||||
|
||||
#include "dsp/downchannelizer.h"
|
||||
#include "dsp/basebandsamplesink.h"
|
||||
#include "dsp/scopevis.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
|
||||
#include "doa2baseband.h"
|
||||
#include "doa2settings.h"
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
#include <QRecursiveMutex>
|
||||
|
||||
#include "dsp/samplemififo.h"
|
||||
#include "util/message.h"
|
||||
#include "util/messagequeue.h"
|
||||
#include "doa2streamsink.h"
|
||||
#include "doa2corr.h"
|
||||
|
|
|
@ -23,7 +23,6 @@
|
|||
|
||||
#include "dsp/dsptypes.h"
|
||||
#include "dsp/fftwindow.h"
|
||||
#include "util/message.h"
|
||||
|
||||
#include "doa2settings.h"
|
||||
|
||||
|
|
|
@ -25,7 +25,6 @@
|
|||
#include "gui/dialogpositioner.h"
|
||||
#include "dsp/hbfilterchainconverter.h"
|
||||
#include "dsp/scopevis.h"
|
||||
#include "dsp/spectrumvis.h"
|
||||
#include "maincore.h"
|
||||
|
||||
#include "doa2gui.h"
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
const PluginDescriptor DOA2Plugin::m_pluginDescriptor = {
|
||||
DOA2::m_channelId,
|
||||
QStringLiteral("DOA 2 sources"),
|
||||
QStringLiteral("7.17.3"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) Edouard Griffiths, F4EXB"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include <QColor>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "settings/serializable.h"
|
||||
|
||||
|
|
|
@ -20,7 +20,6 @@
|
|||
|
||||
#include "channel/channelwebapiadapter.h"
|
||||
#include "dsp/glscopesettings.h"
|
||||
#include "dsp/spectrumsettings.h"
|
||||
#include "doa2settings.h"
|
||||
|
||||
/**
|
||||
|
|
|
@ -28,7 +28,6 @@
|
|||
#include "device/deviceapi.h"
|
||||
#include "dsp/hbfilterchainconverter.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "feature/feature.h"
|
||||
#include "maincore.h"
|
||||
|
||||
#include "interferometerbaseband.h"
|
||||
|
|
|
@ -24,7 +24,6 @@
|
|||
#include "dsp/downchannelizer.h"
|
||||
#include "dsp/basebandsamplesink.h"
|
||||
#include "dsp/scopevis.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
|
||||
#include "interferometerbaseband.h"
|
||||
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
#include <QRecursiveMutex>
|
||||
|
||||
#include "dsp/samplemififo.h"
|
||||
#include "util/message.h"
|
||||
#include "util/messagequeue.h"
|
||||
#include "interferometerstreamsink.h"
|
||||
#include "interferometercorr.h"
|
||||
|
|
|
@ -23,7 +23,6 @@
|
|||
|
||||
#include "dsp/dsptypes.h"
|
||||
#include "dsp/fftwindow.h"
|
||||
#include "util/message.h"
|
||||
|
||||
#include "interferometersettings.h"
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
const PluginDescriptor InterferometerPlugin::m_pluginDescriptor = {
|
||||
Interferometer::m_channelId,
|
||||
QStringLiteral("Interferometer"),
|
||||
QStringLiteral("7.17.3"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) Edouard Griffiths, F4EXB"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include <QColor>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "settings/serializable.h"
|
||||
|
||||
|
|
|
@ -234,7 +234,7 @@ if(NOT SERVER_MODE)
|
|||
if(WIN32)
|
||||
add_subdirectory(demoddatv)
|
||||
else()
|
||||
if(((AVUTIL_VERSION VERSION_GREATER "55.27.99") AND (AVCODEC_VERSION VERSION_GREATER "57.48.101")) OR FFMPEG_EXTERNAL OR FFMEG_SKIP_CHECK)
|
||||
if(((AVUTIL_VERSION VERSION_GREATER "55.27.99") AND (AVCODEC_VERSION VERSION_GREATER "57.48.101")) OR FFMPEG_EXTERNAL OR FFMPEG_SKIP_CHECK)
|
||||
message(STATUS "Include demoddatv")
|
||||
add_subdirectory(demoddatv)
|
||||
else()
|
||||
|
|
|
@ -380,13 +380,13 @@ void ChannelAnalyzer::webapiUpdateChannelSettings(
|
|||
const QStringList& channelSettingsKeys,
|
||||
SWGSDRangel::SWGChannelSettings& response)
|
||||
{
|
||||
if (channelSettingsKeys.contains("frequency")) {
|
||||
if (channelSettingsKeys.contains("inputFrequencyOffset")) {
|
||||
settings.m_inputFrequencyOffset = response.getChannelAnalyzerSettings()->getFrequency();
|
||||
}
|
||||
if (channelSettingsKeys.contains("downSample")) {
|
||||
if (channelSettingsKeys.contains("rationalDownSample ")) {
|
||||
settings.m_rationalDownSample = response.getChannelAnalyzerSettings()->getDownSample() != 0;
|
||||
}
|
||||
if (channelSettingsKeys.contains("downSampleRate")) {
|
||||
if (channelSettingsKeys.contains("rationalDownSamplerRate")) {
|
||||
settings.m_rationalDownSamplerRate = response.getChannelAnalyzerSettings()->getDownSampleRate();
|
||||
}
|
||||
if (channelSettingsKeys.contains("bandwidth")) {
|
||||
|
@ -639,13 +639,13 @@ void ChannelAnalyzer::webapiFormatChannelSettings(
|
|||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (channelSettingsKeys.contains("frequency") || force) {
|
||||
if (channelSettingsKeys.contains("inputFrequencyOffset") || force) {
|
||||
swgChannelAnalyzerSettings->setFrequency(settings.m_inputFrequencyOffset);
|
||||
}
|
||||
if (channelSettingsKeys.contains("downSample")) {
|
||||
if (channelSettingsKeys.contains("rationalDownSample")) {
|
||||
swgChannelAnalyzerSettings->setDownSample(settings.m_rationalDownSample ? 1 : 0);
|
||||
}
|
||||
if (channelSettingsKeys.contains("downSampleRate")) {
|
||||
if (channelSettingsKeys.contains("rationalDownSamplerRate")) {
|
||||
swgChannelAnalyzerSettings->setDownSampleRate(settings.m_rationalDownSamplerRate);
|
||||
}
|
||||
if (channelSettingsKeys.contains("bandwidth")) {
|
||||
|
|
|
@ -33,7 +33,6 @@
|
|||
#include "dsp/scopevis.h"
|
||||
#include "channel/channelapi.h"
|
||||
#include "util/message.h"
|
||||
#include "util/movingaverage.h"
|
||||
|
||||
#include "chanalyzerbaseband.h"
|
||||
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include <QDebug>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/downchannelizer.h"
|
||||
|
||||
|
|
|
@ -31,7 +31,6 @@
|
|||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "plugin/pluginapi.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "util/db.h"
|
||||
#include "maincore.h"
|
||||
|
||||
|
|
|
@ -23,7 +23,6 @@
|
|||
|
||||
#include "channel/channelgui.h"
|
||||
#include "dsp/channelmarker.h"
|
||||
#include "dsp/dsptypes.h"
|
||||
#include "util/movingaverage.h"
|
||||
#include "util/messagequeue.h"
|
||||
#include "settings/rollupstate.h"
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
const PluginDescriptor ChannelAnalyzerPlugin::m_pluginDescriptor = {
|
||||
ChannelAnalyzer::m_channelId,
|
||||
QStringLiteral("Channel Analyzer"),
|
||||
QStringLiteral("7.17.3"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) Edouard Griffiths, F4EXB"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include <QColor>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "settings/serializable.h"
|
||||
|
||||
|
|
|
@ -19,8 +19,6 @@
|
|||
#define INCLUDE_CHANALYZER_WEBAPIADAPTER_H
|
||||
|
||||
#include "channel/channelwebapiadapter.h"
|
||||
#include "dsp/glscopesettings.h"
|
||||
#include "dsp/spectrumsettings.h"
|
||||
#include "chanalyzersettings.h"
|
||||
|
||||
/**
|
||||
|
|
|
@ -32,13 +32,10 @@
|
|||
#include "SWGWorkspaceInfo.h"
|
||||
#include "SWGChannelReport.h"
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "feature/feature.h"
|
||||
#include "settings/serializable.h"
|
||||
#include "util/db.h"
|
||||
#include "maincore.h"
|
||||
|
||||
MESSAGE_CLASS_DEFINITION(ChannelPower::MsgConfigureChannelPower, Message)
|
||||
|
||||
|
@ -289,13 +286,26 @@ int ChannelPower::webapiSettingsPutPatch(
|
|||
ChannelPowerSettings settings = m_settings;
|
||||
webapiUpdateChannelSettings(settings, channelSettingsKeys, response);
|
||||
|
||||
MsgConfigureChannelPower *msg = MsgConfigureChannelPower::create(settings, channelSettingsKeys, force);
|
||||
// Ensure inputFrequencyOffset and frequency are consistent
|
||||
QStringList settingsKeys = channelSettingsKeys;
|
||||
if (settingsKeys.contains("frequency") && !settingsKeys.contains("inputFrequencyOffset"))
|
||||
{
|
||||
settings.m_inputFrequencyOffset = settings.m_frequency - m_centerFrequency;
|
||||
settingsKeys.append("inputFrequencyOffset");
|
||||
}
|
||||
else if (settingsKeys.contains("inputFrequencyOffset") && !settingsKeys.contains("frequency"))
|
||||
{
|
||||
settings.m_frequency = m_centerFrequency + settings.m_inputFrequencyOffset;
|
||||
settingsKeys.append("frequency");
|
||||
}
|
||||
|
||||
MsgConfigureChannelPower *msg = MsgConfigureChannelPower::create(settings, settingsKeys, force);
|
||||
m_inputMessageQueue.push(msg);
|
||||
|
||||
qDebug("ChannelPower::webapiSettingsPutPatch: forward to GUI: %p", m_guiMessageQueue);
|
||||
if (m_guiMessageQueue) // forward to GUI if any
|
||||
{
|
||||
MsgConfigureChannelPower *msgToGUI = MsgConfigureChannelPower::create(settings, channelSettingsKeys, force);
|
||||
MsgConfigureChannelPower *msgToGUI = MsgConfigureChannelPower::create(settings, settingsKeys, force);
|
||||
m_guiMessageQueue->push(msgToGUI);
|
||||
}
|
||||
|
||||
|
@ -312,6 +322,12 @@ void ChannelPower::webapiUpdateChannelSettings(
|
|||
if (channelSettingsKeys.contains("inputFrequencyOffset")) {
|
||||
settings.m_inputFrequencyOffset = response.getChannelPowerSettings()->getInputFrequencyOffset();
|
||||
}
|
||||
if (channelSettingsKeys.contains("frequencyMode")) {
|
||||
settings.m_frequencyMode = (ChannelPowerSettings::FrequencyMode) response.getChannelPowerSettings()->getFrequencyMode();
|
||||
}
|
||||
if (channelSettingsKeys.contains("frequency")) {
|
||||
settings.m_frequency = response.getChannelPowerSettings()->getFrequency();
|
||||
}
|
||||
if (channelSettingsKeys.contains("rfBandwidth")) {
|
||||
settings.m_rfBandwidth = response.getChannelPowerSettings()->getRfBandwidth();
|
||||
}
|
||||
|
@ -356,6 +372,8 @@ void ChannelPower::webapiUpdateChannelSettings(
|
|||
void ChannelPower::webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings& response, const ChannelPowerSettings& settings)
|
||||
{
|
||||
response.getChannelPowerSettings()->setInputFrequencyOffset(settings.m_inputFrequencyOffset);
|
||||
response.getChannelPowerSettings()->setFrequencyMode(settings.m_frequencyMode);
|
||||
response.getChannelPowerSettings()->setFrequency(settings.m_frequency);
|
||||
response.getChannelPowerSettings()->setRfBandwidth(settings.m_rfBandwidth);
|
||||
response.getChannelPowerSettings()->setPulseThreshold(settings.m_pulseThreshold);
|
||||
response.getChannelPowerSettings()->setAveragePeriodUs(settings.m_averagePeriodUS);
|
||||
|
@ -469,6 +487,12 @@ void ChannelPower::webapiFormatChannelSettings(
|
|||
if (channelSettingsKeys.contains("inputFrequencyOffset") || force) {
|
||||
swgChannelPowerSettings->setInputFrequencyOffset(settings.m_inputFrequencyOffset);
|
||||
}
|
||||
if (channelSettingsKeys.contains("frequencyMode") || force) {
|
||||
swgChannelPowerSettings->setFrequencyMode(settings.m_frequencyMode);
|
||||
}
|
||||
if (channelSettingsKeys.contains("inputFrequency") || force) {
|
||||
swgChannelPowerSettings->setFrequency(settings.m_frequency);
|
||||
}
|
||||
if (channelSettingsKeys.contains("rfBandwidth") || force) {
|
||||
swgChannelPowerSettings->setRfBandwidth(settings.m_rfBandwidth);
|
||||
}
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include <QDebug>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/downchannelizer.h"
|
||||
|
||||
|
|
|
@ -24,10 +24,8 @@
|
|||
#include "dsp/dspcommands.h"
|
||||
#include "ui_channelpowergui.h"
|
||||
#include "plugin/pluginapi.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "util/db.h"
|
||||
#include "gui/basicchannelsettingsdialog.h"
|
||||
#include "gui/devicestreamselectiondialog.h"
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "dsp/dspengine.h"
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
const PluginDescriptor ChannelPowerPlugin::m_pluginDescriptor = {
|
||||
ChannelPower::m_channelId,
|
||||
QStringLiteral("Channel Power"),
|
||||
QStringLiteral("7.19.1"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) Jon Beniston, M7RCE"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include <QColor>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "settings/serializable.h"
|
||||
#include "channelpowersettings.h"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<h1>Channel Power Plugin</h1>
|
||||
<h1>Channel Power Plugin</h1>
|
||||
|
||||
<h2>Introduction</h2>
|
||||
|
||||
|
@ -10,38 +10,48 @@ The top and bottom bars of the channel window are described [here](../../../sdrg
|
|||
|
||||
![Channel power plugin GUI](../../../doc/img/ChannelPower_plugin_settings.png)
|
||||
|
||||
<h3>1: Frequency shift from center frequency of reception</h3>
|
||||
<h3>1: Channel frequency entry mode</h3>
|
||||
|
||||
Use the wheels to adjust the channel center frequency as a shift in Hz from the center frequency of reception. Left click on a digit sets the cursor position at this digit. Right click on a digit sets all digits on the right to zero. This effectively floors value at the digit position. Wheels are moved with the mousewheel while pointing at the wheel or by selecting the wheel with the left mouse click and using the keyboard arrows. Pressing shift simultaneously moves digit by 5 and pressing control moves it by 2.
|
||||
Select from one of the following modes to determine how the channel center frequency is calculated:
|
||||
|
||||
<h3>2: BW - Channel Bandwidth</h3>
|
||||
* Δf - Specify an offset in Hz from device center frequency.
|
||||
* f - Specific a frequency in Hz.
|
||||
|
||||
<h3>2: Channel Frequency</h3>
|
||||
|
||||
Specifies channel center frequency according to frequency entry mode (1):
|
||||
|
||||
* Δf - Offset in Hz from device center frequency.
|
||||
* f - Absolute frequency in Hz.
|
||||
|
||||
<h3>3: BW - Channel Bandwidth</h3>
|
||||
|
||||
Bandwidth in Hz of the channel for which power is to be measured.
|
||||
|
||||
<h3>3: Tavg - Average Time</h3>
|
||||
<h3>4: Tavg - Average Time</h3>
|
||||
|
||||
Time period overwhich the channel power is averaged. Values range from 10us to 10s in powers of 10. The available values depend upon the sample rate.
|
||||
|
||||
<h3>4: THp - Pulse Threshold</h3>
|
||||
<h3>5: THp - Pulse Threshold</h3>
|
||||
|
||||
The pulse threshold sets the power in dB for which the channel power needs to exceed, in order to be included in the pulse average power measurement.
|
||||
|
||||
<h3>5: Avg - Average Power</h3>
|
||||
<h3>6: Avg - Average Power</h3>
|
||||
|
||||
Displays the most recent average power measurement in dB.
|
||||
|
||||
<h3>6: Max - Max Peak Power</h3>
|
||||
<h3>7: Max - Max Peak Power</h3>
|
||||
|
||||
Displays the maximum instantaneous peak power measurement in dB.
|
||||
|
||||
<h3>7: Min - Min Peak Power</h3>
|
||||
<h3>8: Min - Min Peak Power</h3>
|
||||
|
||||
Displays the minimum instantaneous peak power measurement in dB.
|
||||
|
||||
<h3>8: Pulse - Pulse Average Power</h3>
|
||||
<h3>9: Pulse - Pulse Average Power</h3>
|
||||
|
||||
Displays the most recent pulse average power measurement in dB.
|
||||
|
||||
<h3>9: Clear Data</h3>
|
||||
<h3>10: Clear Data</h3>
|
||||
|
||||
Clears current measurements (min and max values are reset).
|
||||
|
|
|
@ -37,7 +37,6 @@
|
|||
#include "SWGADSBDemodReport.h"
|
||||
#include "SWGTargetAzimuthElevation.h"
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/devicesamplemimo.h"
|
||||
#include "device/deviceapi.h"
|
||||
|
|
|
@ -43,12 +43,10 @@
|
|||
#include "plugin/pluginapi.h"
|
||||
#include "util/airlines.h"
|
||||
#include "util/crc.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "util/db.h"
|
||||
#include "util/units.h"
|
||||
#include "util/morse.h"
|
||||
#include "gui/basicchannelsettingsdialog.h"
|
||||
#include "gui/devicestreamselectiondialog.h"
|
||||
#include "gui/crightclickenabler.h"
|
||||
#include "gui/clickablelabel.h"
|
||||
#include "gui/tabletapandhold.h"
|
||||
|
@ -56,7 +54,6 @@
|
|||
#include "gui/dialogpositioner.h"
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "mainwindow.h"
|
||||
|
||||
#include "adsbdemodreport.h"
|
||||
#include "adsbdemod.h"
|
||||
|
@ -4671,6 +4668,7 @@ void ADSBDemodGUI::feedSelect(const QPoint& p)
|
|||
{
|
||||
ADSBDemodFeedDialog dialog(&m_settings);
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
|
||||
if (dialog.exec() == QDialog::Accepted)
|
||||
{
|
||||
|
@ -4804,6 +4802,25 @@ void ADSBDemodGUI::applyMapSettings()
|
|||
// Restore position of map
|
||||
if (newMap != nullptr)
|
||||
{
|
||||
// Move antenna icon to My Position
|
||||
QObject *stationObject = newMap->findChild<QObject*>("station");
|
||||
if(stationObject != NULL)
|
||||
{
|
||||
QGeoCoordinate coords = stationObject->property("coordinate").value<QGeoCoordinate>();
|
||||
coords.setLatitude(stationLatitude);
|
||||
coords.setLongitude(stationLongitude);
|
||||
coords.setAltitude(stationAltitude);
|
||||
stationObject->setProperty("coordinate", QVariant::fromValue(coords));
|
||||
stationObject->setProperty("stationName", QVariant::fromValue(MainCore::instance()->getSettings().getStationName()));
|
||||
}
|
||||
else
|
||||
{
|
||||
qDebug() << "ADSBDemodGUI::applyMapSettings - Couldn't find station";
|
||||
}
|
||||
|
||||
#if (QT_VERSION >= QT_VERSION_CHECK(6, 0, 0))
|
||||
newMap = newMap->findChild<QObject*>("map");
|
||||
#endif
|
||||
if (coords.isValid())
|
||||
{
|
||||
newMap->setProperty("zoomLevel", QVariant::fromValue(zoom));
|
||||
|
@ -4814,22 +4831,6 @@ void ADSBDemodGUI::applyMapSettings()
|
|||
{
|
||||
qDebug() << "ADSBDemodGUI::applyMapSettings - createMap returned a nullptr";
|
||||
}
|
||||
|
||||
// Move antenna icon to My Position
|
||||
QObject *stationObject = newMap->findChild<QObject*>("station");
|
||||
if(stationObject != NULL)
|
||||
{
|
||||
QGeoCoordinate coords = stationObject->property("coordinate").value<QGeoCoordinate>();
|
||||
coords.setLatitude(stationLatitude);
|
||||
coords.setLongitude(stationLongitude);
|
||||
coords.setAltitude(stationAltitude);
|
||||
stationObject->setProperty("coordinate", QVariant::fromValue(coords));
|
||||
stationObject->setProperty("stationName", QVariant::fromValue(MainCore::instance()->getSettings().getStationName()));
|
||||
}
|
||||
else
|
||||
{
|
||||
qDebug() << "ADSBDemodGUI::applyMapSettings - Couldn't find station";
|
||||
}
|
||||
}
|
||||
|
||||
// Called from QML when empty space clicked
|
||||
|
@ -5040,6 +5041,7 @@ ADSBDemodGUI::ADSBDemodGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, Baseb
|
|||
|
||||
ADSBDemodGUI::~ADSBDemodGUI()
|
||||
{
|
||||
disconnect(&MainCore::instance()->getSettings(), &MainSettings::preferenceChanged, this, &ADSBDemodGUI::preferenceChanged);
|
||||
if (m_templateServer)
|
||||
{
|
||||
m_templateServer->close();
|
||||
|
@ -6001,7 +6003,11 @@ void ADSBDemodGUI::preferenceChanged(int elementType)
|
|||
|
||||
// Update icon position on Map
|
||||
QQuickItem *item = ui->map->rootObject();
|
||||
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
|
||||
QObject *map = item->findChild<QObject*>("map");
|
||||
#else
|
||||
QObject *map = item->findChild<QObject*>("mapView");
|
||||
#endif
|
||||
if (map != nullptr)
|
||||
{
|
||||
QObject *stationObject = map->findChild<QObject*>("station");
|
||||
|
@ -6020,7 +6026,11 @@ void ADSBDemodGUI::preferenceChanged(int elementType)
|
|||
{
|
||||
// Update icon label on Map
|
||||
QQuickItem *item = ui->map->rootObject();
|
||||
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
|
||||
QObject *map = item->findChild<QObject*>("map");
|
||||
#else
|
||||
QObject *map = item->findChild<QObject*>("mapView");
|
||||
#endif
|
||||
if (map != nullptr)
|
||||
{
|
||||
QObject *stationObject = map->findChild<QObject*>("station");
|
||||
|
|
|
@ -32,7 +32,6 @@
|
|||
#include "channel/channelgui.h"
|
||||
#include "dsp/dsptypes.h"
|
||||
#include "dsp/channelmarker.h"
|
||||
#include "dsp/movingaverage.h"
|
||||
#include "util/aviationweather.h"
|
||||
#include "util/messagequeue.h"
|
||||
#include "util/azel.h"
|
||||
|
@ -48,7 +47,6 @@
|
|||
#include "adsbdemodsettings.h"
|
||||
#include "util/ourairportsdb.h"
|
||||
#include "util/osndb.h"
|
||||
#include "util/airlines.h"
|
||||
|
||||
class PluginAPI;
|
||||
class DeviceUISet;
|
||||
|
|
|
@ -23,7 +23,6 @@
|
|||
#include <QByteArray>
|
||||
#include <QDateTime>
|
||||
|
||||
#include "dsp/dsptypes.h"
|
||||
#include "util/message.h"
|
||||
#include "adsbdemodstats.h"
|
||||
|
||||
|
|
|
@ -20,10 +20,8 @@
|
|||
#include <QDataStream>
|
||||
#include <QDebug>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "settings/serializable.h"
|
||||
#include "settings/rollupstate.h"
|
||||
|
||||
#include "adsbdemodsettings.h"
|
||||
|
||||
|
|
|
@ -19,14 +19,6 @@
|
|||
#include <QTime>
|
||||
#include <QDebug>
|
||||
|
||||
#include "util/stepfunctions.h"
|
||||
#include "util/db.h"
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/devicesamplemimo.h"
|
||||
#include "device/deviceapi.h"
|
||||
|
||||
#include "adsbdemodreport.h"
|
||||
#include "adsbdemodsink.h"
|
||||
#include "adsbdemodsinkworker.h"
|
||||
#include "adsb.h"
|
||||
|
|
|
@ -25,10 +25,8 @@
|
|||
#include "dsp/channelsamplesink.h"
|
||||
#include "dsp/nco.h"
|
||||
#include "dsp/interpolator.h"
|
||||
#include "util/movingaverage.h"
|
||||
|
||||
#include "adsbdemodsettings.h"
|
||||
#include "adsbdemodstats.h"
|
||||
#include "adsbdemodsinkworker.h"
|
||||
|
||||
class ADSBDemodSink : public ChannelSampleSink {
|
||||
|
|
|
@ -20,11 +20,7 @@
|
|||
|
||||
#include <QDebug>
|
||||
|
||||
#include "util/stepfunctions.h"
|
||||
#include "util/db.h"
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
|
||||
#include "adsbdemodreport.h"
|
||||
#include "adsbdemodsink.h"
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
|
||||
#include "dsp/dsptypes.h"
|
||||
#include "util/crc.h"
|
||||
#include "util/message.h"
|
||||
#include "util/messagequeue.h"
|
||||
#include "adsbdemodstats.h"
|
||||
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
const PluginDescriptor ADSBPlugin::m_pluginDescriptor = {
|
||||
ADSBDemod::m_channelId,
|
||||
QStringLiteral("ADS-B Demodulator"),
|
||||
QStringLiteral("7.19.1"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) Jon Beniston, M7RCE"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
|
@ -74,6 +74,7 @@ Item {
|
|||
id: station
|
||||
objectName: "station"
|
||||
stationName: "Home"
|
||||
parent: mapView.map
|
||||
}
|
||||
|
||||
MapItemView {
|
||||
|
@ -431,7 +432,6 @@ Item {
|
|||
anchors.fill: parent
|
||||
acceptedButtons: Qt.LeftButton | Qt.RightButton
|
||||
onClicked: (mouse) => {
|
||||
console.log("AIRPORT CLICKED ************************* ");
|
||||
if (mouse.button === Qt.RightButton) {
|
||||
showRangeItem.visible = !rangeGroup.groupVisible
|
||||
hideRangeItem.visible = rangeGroup.groupVisible
|
||||
|
@ -508,7 +508,6 @@ Item {
|
|||
MouseArea {
|
||||
anchors.fill: parent
|
||||
onClicked: (mouse) => {
|
||||
console.log("AIRPORT 2 CLICKED ************************* ");
|
||||
if (showFreq) {
|
||||
var freqIdx = Math.floor((mouse.y-5)/((height-10)/airportDataRows))
|
||||
if (freqIdx == 0) {
|
||||
|
|
|
@ -30,14 +30,10 @@
|
|||
|
||||
#include "SWGChannelSettings.h"
|
||||
#include "SWGWorkspaceInfo.h"
|
||||
#include "SWGChannelReport.h"
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "feature/feature.h"
|
||||
#include "util/ais.h"
|
||||
#include "util/db.h"
|
||||
#include "maincore.h"
|
||||
|
||||
MESSAGE_CLASS_DEFINITION(AISDemod::MsgConfigureAISDemod, Message)
|
||||
|
|
|
@ -19,7 +19,6 @@
|
|||
|
||||
#include <QDebug>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/downchannelizer.h"
|
||||
|
||||
|
|
|
@ -37,25 +37,19 @@
|
|||
#include "dsp/dspcommands.h"
|
||||
#include "ui_aisdemodgui.h"
|
||||
#include "plugin/pluginapi.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "util/ais.h"
|
||||
#include "util/csv.h"
|
||||
#include "util/db.h"
|
||||
#include "util/mmsi.h"
|
||||
#include "gui/basicchannelsettingsdialog.h"
|
||||
#include "gui/devicestreamselectiondialog.h"
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/glscopesettings.h"
|
||||
#include "gui/crightclickenabler.h"
|
||||
#include "gui/tabletapandhold.h"
|
||||
#include "channel/channelwebapiutils.h"
|
||||
#include "maincore.h"
|
||||
#include "feature/featurewebapiutils.h"
|
||||
|
||||
#include "aisdemod.h"
|
||||
#include "aisdemodsink.h"
|
||||
|
||||
void AISDemodGUI::resizeTable()
|
||||
{
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
const PluginDescriptor AISDemodPlugin::m_pluginDescriptor = {
|
||||
AISDemod::m_channelId,
|
||||
QStringLiteral("AIS Demodulator"),
|
||||
QStringLiteral("7.17.3"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) Jon Beniston, M7RCE"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
|
@ -20,7 +20,6 @@
|
|||
|
||||
#include <QColor>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "settings/serializable.h"
|
||||
#include "aisdemodsettings.h"
|
||||
|
|
|
@ -20,13 +20,10 @@
|
|||
|
||||
#include <complex.h>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/datafifo.h"
|
||||
#include "dsp/scopevis.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "channel/channelwebapiutils.h"
|
||||
#include "util/db.h"
|
||||
#include "util/stepfunctions.h"
|
||||
#include "maincore.h"
|
||||
|
||||
#include "aisdemod.h"
|
||||
|
|
|
@ -26,10 +26,8 @@
|
|||
#include "dsp/phasediscri.h"
|
||||
#include "dsp/nco.h"
|
||||
#include "dsp/interpolator.h"
|
||||
#include "dsp/firfilter.h"
|
||||
#include "dsp/gaussian.h"
|
||||
#include "util/movingaverage.h"
|
||||
#include "util/doublebufferfifo.h"
|
||||
#include "util/messagequeue.h"
|
||||
#include "util/crc.h"
|
||||
|
||||
|
|
|
@ -38,11 +38,8 @@
|
|||
#include "SWGChannelReport.h"
|
||||
#include "SWGAMDemodReport.h"
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/devicesamplesource.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "feature/feature.h"
|
||||
#include "settings/serializable.h"
|
||||
#include "util/db.h"
|
||||
#include "maincore.h"
|
||||
|
|
|
@ -30,10 +30,8 @@
|
|||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "plugin/pluginapi.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "util/db.h"
|
||||
#include "gui/basicchannelsettingsdialog.h"
|
||||
#include "gui/devicestreamselectiondialog.h"
|
||||
#include "gui/crightclickenabler.h"
|
||||
#include "gui/audioselectdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
|
|
|
@ -24,7 +24,6 @@
|
|||
|
||||
#include "channel/channelgui.h"
|
||||
#include "dsp/channelmarker.h"
|
||||
#include "dsp/movingaverage.h"
|
||||
#include "util/messagequeue.h"
|
||||
#include "settings/rollupstate.h"
|
||||
#include "amdemodsettings.h"
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
const PluginDescriptor AMDemodPlugin::m_pluginDescriptor = {
|
||||
AMDemod::m_channelId,
|
||||
QStringLiteral("AM Demodulator"),
|
||||
QStringLiteral("7.19.1"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) Edouard Griffiths, F4EXB"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
|
@ -20,10 +20,9 @@
|
|||
|
||||
#include <QColor>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "audio/audiodevicemanager.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "settings/serializable.h"
|
||||
#include "settings/rollupstate.h"
|
||||
#include "amdemodsettings.h"
|
||||
|
||||
AMDemodSettings::AMDemodSettings() :
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
#ifndef PLUGINS_CHANNELRX_DEMODAM_AMDEMODSETTINGS_H_
|
||||
#define PLUGINS_CHANNELRX_DEMODAM_AMDEMODSETTINGS_H_
|
||||
|
||||
#include "dsp/dsptypes.h"
|
||||
#include <QByteArray>
|
||||
|
||||
class Serializable;
|
||||
|
|
|
@ -21,7 +21,6 @@
|
|||
|
||||
#include <complex.h>
|
||||
|
||||
#include "audio/audiooutputdevice.h"
|
||||
#include "dsp/fftfilt.h"
|
||||
#include "dsp/datafifo.h"
|
||||
#include "util/db.h"
|
||||
|
|
|
@ -31,18 +31,12 @@
|
|||
#include "SWGChannelSettings.h"
|
||||
#include "SWGWorkspaceInfo.h"
|
||||
#include "SWGAPTDemodSettings.h"
|
||||
#include "SWGChannelReport.h"
|
||||
#include "SWGChannelActions.h"
|
||||
#include "SWGMapItem.h"
|
||||
#include "SWGAPTDemodActions.h"
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "feature/feature.h"
|
||||
#include "settings/serializable.h"
|
||||
#include "util/db.h"
|
||||
#include "maincore.h"
|
||||
|
||||
MESSAGE_CLASS_DEFINITION(APTDemod::MsgConfigureAPTDemod, Message)
|
||||
MESSAGE_CLASS_DEFINITION(APTDemod::MsgPixels, Message)
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include <QDebug>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/downchannelizer.h"
|
||||
|
||||
|
|
|
@ -37,22 +37,15 @@
|
|||
#include "dsp/dspcommands.h"
|
||||
#include "ui_aptdemodgui.h"
|
||||
#include "plugin/pluginapi.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "util/db.h"
|
||||
#include "util/morse.h"
|
||||
#include "util/units.h"
|
||||
#include "gui/basicchannelsettingsdialog.h"
|
||||
#include "gui/devicestreamselectiondialog.h"
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "dsp/dspengine.h"
|
||||
#include "gui/crightclickenabler.h"
|
||||
#include "gui/graphicsviewzoom.h"
|
||||
#include "channel/channelwebapiutils.h"
|
||||
#include "maincore.h"
|
||||
|
||||
#include "aptdemod.h"
|
||||
#include "aptdemodsink.h"
|
||||
#include "aptdemodsettingsdialog.h"
|
||||
#include "aptdemodselectdialog.h"
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
const PluginDescriptor APTDemodPlugin::m_pluginDescriptor = {
|
||||
APTDemod::m_channelId,
|
||||
QStringLiteral("APT Demodulator"),
|
||||
QStringLiteral("7.17.3"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) Jon Beniston, M7RCE and Aptdec authors"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include <QColor>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "settings/serializable.h"
|
||||
#include "aptdemodsettings.h"
|
||||
|
|
|
@ -20,12 +20,6 @@
|
|||
|
||||
#include <complex.h>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspengine.h"
|
||||
#include "util/db.h"
|
||||
#include "util/stepfunctions.h"
|
||||
#include "maincore.h"
|
||||
|
||||
#include "aptdemod.h"
|
||||
#include "aptdemodsink.h"
|
||||
|
||||
|
|
|
@ -23,10 +23,10 @@
|
|||
#include <stdio.h>
|
||||
#include <complex.h>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "device/deviceapi.h"
|
||||
|
||||
#include "atvdemod.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
|
||||
MESSAGE_CLASS_DEFINITION(ATVDemod::MsgConfigureATVDemod, Message)
|
||||
|
||||
|
|
|
@ -27,8 +27,6 @@
|
|||
|
||||
#include "dsp/basebandsamplesink.h"
|
||||
#include "channel/channelapi.h"
|
||||
#include "dsp/devicesamplesource.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "util/message.h"
|
||||
|
||||
#include "atvdemodbaseband.h"
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include <QDebug>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/downchannelizer.h"
|
||||
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
#include "atvdemodgui.h"
|
||||
|
||||
#include "device/deviceuiset.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/scopevis.h"
|
||||
#include "dsp/glscopesettings.h"
|
||||
#include "gui/basicchannelsettingsdialog.h"
|
||||
|
@ -31,7 +32,6 @@
|
|||
#include "gui/dialogpositioner.h"
|
||||
#include "ui_atvdemodgui.h"
|
||||
#include "plugin/pluginapi.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "util/db.h"
|
||||
#include "dsp/dspengine.h"
|
||||
#include "maincore.h"
|
||||
|
|
|
@ -30,7 +30,7 @@ const PluginDescriptor ATVDemodPlugin::m_ptrPluginDescriptor =
|
|||
{
|
||||
ATVDemod::m_channelId,
|
||||
QStringLiteral("ATV Demodulator"),
|
||||
QStringLiteral("7.17.3"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) F4HKW for F4EXB / SDRAngel"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
|
@ -19,7 +19,6 @@
|
|||
|
||||
#include <QColor>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "settings/serializable.h"
|
||||
#include "atvdemodsettings.h"
|
||||
|
|
|
@ -25,9 +25,7 @@
|
|||
|
||||
#include "dsp/channelsamplesink.h"
|
||||
#include "dsp/nco.h"
|
||||
#include "dsp/interpolator.h"
|
||||
#include "dsp/fftfilt.h"
|
||||
#include "dsp/agc.h"
|
||||
#include "dsp/phaselock.h"
|
||||
#include "dsp/recursivefilters.h"
|
||||
#include "dsp/phasediscri.h"
|
||||
|
|
|
@ -36,11 +36,9 @@
|
|||
#include "SWGBFMDemodReport.h"
|
||||
#include "SWGRDSReport.h"
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/devicesamplemimo.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "feature/feature.h"
|
||||
#include "util/db.h"
|
||||
#include "maincore.h"
|
||||
|
||||
|
|
|
@ -37,10 +37,8 @@
|
|||
#include "dsp/dspcommands.h"
|
||||
#include "gui/glspectrum.h"
|
||||
#include "plugin/pluginapi.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "util/db.h"
|
||||
#include "gui/basicchannelsettingsdialog.h"
|
||||
#include "gui/devicestreamselectiondialog.h"
|
||||
#include "gui/crightclickenabler.h"
|
||||
#include "gui/audioselectdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
|
||||
#include <QColor>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "audio/audiodevicemanager.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "settings/serializable.h"
|
||||
|
||||
|
|
|
@ -16,21 +16,15 @@
|
|||
// along with this program. If not, see <http://www.gnu.org/licenses/>. //
|
||||
///////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include "boost/format.hpp"
|
||||
#include <stdio.h>
|
||||
#include <complex.h>
|
||||
|
||||
#include <QTime>
|
||||
#include <QDebug>
|
||||
|
||||
#include "audio/audiooutputdevice.h"
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/devicesamplemimo.h"
|
||||
#include "dsp/basebandsamplesink.h"
|
||||
#include "dsp/datafifo.h"
|
||||
#include "pipes/datapipes.h"
|
||||
#include "util/db.h"
|
||||
#include "maincore.h"
|
||||
|
||||
#include "rdsparser.h"
|
||||
|
|
|
@ -27,7 +27,6 @@
|
|||
#include "dsp/nco.h"
|
||||
#include "dsp/interpolator.h"
|
||||
#include "dsp/firfilter.h"
|
||||
#include "dsp/movingaverage.h"
|
||||
#include "dsp/fftfilt.h"
|
||||
#include "dsp/phaselock.h"
|
||||
#include "dsp/filterrc.h"
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
const PluginDescriptor BFMPlugin::m_pluginDescriptor = {
|
||||
BFMDemod::m_channelId,
|
||||
QStringLiteral("Broadcast FM Demodulator"),
|
||||
QStringLiteral("7.17.3"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) Edouard Griffiths, F4EXB"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
|
@ -38,7 +38,6 @@
|
|||
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "feature/feature.h"
|
||||
#include "util/ax25.h"
|
||||
#include "util/db.h"
|
||||
#include "maincore.h"
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include <QDebug>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/downchannelizer.h"
|
||||
|
||||
|
|
|
@ -54,10 +54,7 @@ void ChirpChatDemodDecoderFT::decodeSymbols(
|
|||
return;
|
||||
}
|
||||
|
||||
// float *lls = new float[mags.size()*nbSymbolBits]; // bits log likelihoods (>0 for 0, <0 for 1)
|
||||
// std::fill(lls, lls+mags.size()*nbSymbolBits, 0.0);
|
||||
FT8::FT8Params params;
|
||||
// FT8::FT8::soft_decode_mags(params, mags, nbSymbolBits, lls);
|
||||
int r174[174];
|
||||
std::string comments;
|
||||
payloadParityStatus = (int) ChirpChatDemodSettings::ParityOK;
|
||||
|
@ -170,7 +167,21 @@ int ChirpChatDemodDecoderFT::decodeWithShift(
|
|||
float *lls = new float[mags.size()*nbSymbolBits]; // bits log likelihoods (>0 for 0, <0 for 1)
|
||||
std::fill(lls, lls+mags.size()*nbSymbolBits, 0.0);
|
||||
FT8::FT8::soft_decode_mags(params, mags, nbSymbolBits, lls);
|
||||
return FT8::FT8::decode(lls, r174, params, 0, comments);
|
||||
deinterleave174(lls);
|
||||
int ret = FT8::FT8::decode(lls, r174, params, 0, comments);
|
||||
delete[] lls;
|
||||
return ret;
|
||||
}
|
||||
|
||||
void ChirpChatDemodDecoderFT::deinterleave174(float ll174[])
|
||||
{
|
||||
// 174 = 2*3*29
|
||||
float t174[174];
|
||||
std::copy(ll174, ll174+174, t174);
|
||||
|
||||
for (int i = 0; i < 174; i++) {
|
||||
ll174[i] = t174[(i%6)*29 + (i%29)];
|
||||
}
|
||||
}
|
||||
|
||||
#endif // HAS_FT8
|
||||
|
|
|
@ -57,6 +57,7 @@ private:
|
|||
std::string& comments,
|
||||
int shift = 0
|
||||
);
|
||||
static void deinterleave174(float ll174[]);
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -31,11 +31,9 @@
|
|||
#include "gui/glspectrum.h"
|
||||
#include "gui/glspectrumgui.h"
|
||||
#include "gui/basicchannelsettingsdialog.h"
|
||||
#include "gui/devicestreamselectiondialog.h"
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "plugin/pluginapi.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "util/db.h"
|
||||
#include "maincore.h"
|
||||
|
||||
|
|
|
@ -953,16 +953,6 @@
|
|||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="headerCRCStatus">
|
||||
<property name="toolTip">
|
||||
<string>Header CRC status</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string> HC </string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="headerHammingStatus">
|
||||
<property name="toolTip">
|
||||
|
@ -973,6 +963,16 @@
|
|||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="headerCRCStatus">
|
||||
<property name="toolTip">
|
||||
<string>Header CRC status</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string> HC </string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="payloadFECStatus">
|
||||
<property name="toolTip">
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include <QColor>
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "settings/serializable.h"
|
||||
|
||||
|
|
|
@ -25,7 +25,6 @@
|
|||
#include "dsp/nco.h"
|
||||
#include "dsp/interpolator.h"
|
||||
#include "dsp/fftwindow.h"
|
||||
#include "util/message.h"
|
||||
#include "util/movingaverage.h"
|
||||
|
||||
#include "chirpchatdemodsettings.h"
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
const PluginDescriptor ChirpChatPlugin::m_pluginDescriptor = {
|
||||
ChirpChatDemod::m_channelId,
|
||||
QStringLiteral("ChirpChat Demodulator"),
|
||||
QStringLiteral("7.17.3"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) Edouard Griffiths, F4EXB"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
|
@ -11,7 +11,7 @@ LoRa is a property of Semtech and the details of the protocol are not made publi
|
|||
- To get an idea of what is LoRa: [here](https://www.link-labs.com/blog/what-is-lora)
|
||||
- A detailed inspection of LoRa modulation and protocol: [here](https://static1.squarespace.com/static/54cecce7e4b054df1848b5f9/t/57489e6e07eaa0105215dc6c/1464376943218/Reversing-Lora-Knight.pdf)
|
||||
|
||||
⚠ Only spread factors of 11 and 12 are working in LoRa mode thus with the distance enhancement active (DE=2)
|
||||
⚠ Only spread factors of 11 and 12 are working in LoRa mode with the distance enhancement active (DE=2)
|
||||
|
||||
Transmissions from the RN2483 module (SF=11 and SF=12 with DE=2) could be successfully received. It has not been tested with Semtech SX127x hardware. This LoRa decoder is designed for experimentation. For production grade applications it is recommended to use dedicated hardware instead.
|
||||
|
||||
|
@ -110,7 +110,9 @@ This is the Spread Factor parameter of the ChirpChat signal. This is the log2 of
|
|||
|
||||
The LoRa standard specifies 0 (no DE) or 2 (DE active). The ChirpChat DE range is extended to all values between 0 and 4 bits.
|
||||
|
||||
This is the log2 of the number of FFT bins used for one symbol. Extending the number of FFT bins per symbol decreases the probability to detect the wrong symbol as an adjacent bin. It can also overcome frequency drift on long messages.
|
||||
The LoRa standard also specifies that the LowDataRateOptimizatio flag (thus DE=2 vs DE=0 here) should be set when the symbol time defined as BW / 2^SF exceeds 16 ms (See section 4.1.1.6 of the SX127x datasheet). In practice this happens for SF=11 and SF=12 and large enough bandwidths (you can do the maths).
|
||||
|
||||
Here this value is the log2 of the number of FFT bins used for one symbol. Extending the number of FFT bins per symbol decreases the probability to detect the wrong symbol as an adjacent bin. It can also overcome frequency or samlping time drift on long messages particularly for small bandwidths.
|
||||
|
||||
In practice it is difficult to make correct decodes if only one FFT bin is used to code one symbol (DE=0) therefore it is recommended to use a DE factor of 2 or more. With medium SNR DE=1 can still achieve good results.
|
||||
|
||||
|
|
|
@ -34,15 +34,10 @@
|
|||
#include "SWGChannelSettings.h"
|
||||
#include "SWGWorkspaceInfo.h"
|
||||
#include "SWGDABDemodSettings.h"
|
||||
#include "SWGChannelReport.h"
|
||||
#include "SWGMapItem.h"
|
||||
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "feature/feature.h"
|
||||
#include "settings/serializable.h"
|
||||
#include "util/db.h"
|
||||
#include "maincore.h"
|
||||
|
||||
MESSAGE_CLASS_DEFINITION(DABDemod::MsgConfigureDABDemod, Message)
|
||||
|
|
|
@ -30,11 +30,9 @@
|
|||
#include "dsp/dspcommands.h"
|
||||
#include "ui_dabdemodgui.h"
|
||||
#include "plugin/pluginapi.h"
|
||||
#include "util/simpleserializer.h"
|
||||
#include "util/db.h"
|
||||
#include "gui/audioselectdialog.h"
|
||||
#include "gui/basicchannelsettingsdialog.h"
|
||||
#include "gui/devicestreamselectiondialog.h"
|
||||
#include "gui/crightclickenabler.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "channel/channelwebapiutils.h"
|
||||
|
@ -42,7 +40,6 @@
|
|||
#include "maincore.h"
|
||||
|
||||
#include "dabdemod.h"
|
||||
#include "dabdemodsink.h"
|
||||
|
||||
// Table column indexes
|
||||
#define PROGRAMS_COL_NAME 0
|
||||
|
|
|
@ -25,7 +25,6 @@
|
|||
|
||||
#include "channel/channelgui.h"
|
||||
#include "dsp/channelmarker.h"
|
||||
#include "dsp/movingaverage.h"
|
||||
#include "util/messagequeue.h"
|
||||
#include "settings/rollupstate.h"
|
||||
#include "dabdemodsettings.h"
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
const PluginDescriptor DABDemodPlugin::m_pluginDescriptor = {
|
||||
DABDemod::m_channelId,
|
||||
QStringLiteral("DAB Demodulator"),
|
||||
QStringLiteral("7.17.3"),
|
||||
QStringLiteral("7.20.0"),
|
||||
QStringLiteral("(c) Jon Beniston, M7RCE. DAB library by Jvan Katwijk"),
|
||||
QStringLiteral("https://github.com/f4exb/sdrangel"),
|
||||
true,
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue