diff --git a/doc/img/SatelliteTracker_plugin.xcf b/doc/img/SatelliteTracker_plugin.xcf new file mode 100644 index 000000000..3608d53b3 Binary files /dev/null and b/doc/img/SatelliteTracker_plugin.xcf differ diff --git a/doc/img/SatelliteTracker_plugin_settings.png b/doc/img/SatelliteTracker_plugin_settings.png index 57ae02f9c..160529761 100644 Binary files a/doc/img/SatelliteTracker_plugin_settings.png and b/doc/img/SatelliteTracker_plugin_settings.png differ diff --git a/plugins/feature/gs232controller/gs232controllerworker.cpp b/plugins/feature/gs232controller/gs232controllerworker.cpp index 5bfdaa6a4..f6d2391be 100644 --- a/plugins/feature/gs232controller/gs232controllerworker.cpp +++ b/plugins/feature/gs232controller/gs232controllerworker.cpp @@ -197,7 +197,7 @@ void GS232ControllerWorker::readSerialData() if (len != -1) { QString response = QString::fromUtf8(buf, len); - QRegularExpression re("AZ=(\\d\\d\\d)EL=(\\d\\d\\d)"); + QRegularExpression re("AZ=(\\d\\d\\d) *EL=(\\d\\d\\d)"); QRegularExpressionMatch match = re.match(response); if (match.hasMatch()) { @@ -213,7 +213,7 @@ void GS232ControllerWorker::readSerialData() } else { - qDebug() << "GS232ControllerWorker::readSerialData - unexpected response " << response; + qDebug() << "GS232ControllerWorker::readSerialData - unexpected response \"" << response << "\""; if (m_msgQueueToFeature) m_msgQueueToFeature->push(GS232Controller::MsgReportWorker::create(QString("Unexpected GS-232 serial response: %1").arg(response))); } diff --git a/plugins/feature/satellitetracker/CMakeLists.txt b/plugins/feature/satellitetracker/CMakeLists.txt index ccf56fd06..84b2f3ea8 100644 --- a/plugins/feature/satellitetracker/CMakeLists.txt +++ b/plugins/feature/satellitetracker/CMakeLists.txt @@ -53,7 +53,7 @@ if(NOT SERVER_MODE) set(INSTALL_FOLDER ${INSTALL_PLUGINS_DIR}) else() set(TARGET_NAME featuresatellitetrackersrv) - set(TARGET_LIB Qt5::Positioning) + set(TARGET_LIB Qt5::Positioning Qt5::Charts) set(TARGET_LIB_GUI "") set(INSTALL_FOLDER ${INSTALL_PLUGINSSRV_DIR}) endif() diff --git a/plugins/feature/satellitetracker/readme.md b/plugins/feature/satellitetracker/readme.md index e85408553..789297875 100644 --- a/plugins/feature/satellitetracker/readme.md +++ b/plugins/feature/satellitetracker/readme.md @@ -5,7 +5,7 @@ The Satellite Tracker feature plugin can be used to: * Track satellites, pointing antennas at them via SDRangel's Rotator Controller Features -* Control SDRangel by loading presets, starting/stopping acqusition and setting center frequenies on AOS (Acquisition of Signal) for each satellite +* Control SDRangel by loading presets, starting/stopping acquisition and setting center frequencies on AOS (Acquisition of Signal) for each satellite * Adjust channels' input frequency offset to account for Doppler shift * Display polar and elevation/azimuth vs time plots for satellite passes * Display the overhead position of satellites on the Map Feature, along with the ground track of the satellites @@ -32,9 +32,9 @@ Priority is determined by the order the satellites appear in the Satellite Selec

4: Update satellite data

-When clicked, the TLE (two line element) files selected in the Settings dialog are downloaded as well as the latest SatNogs satellite database, containing details of satellite's transmitter and receiver frequencies. While downloading, this button will appear green. +When clicked, the TLE (two line element) files selected in the Settings dialog are downloaded, as well as the latest SatNogs satellite database, containing details of satellites' transmitter and receiver frequencies. While downloading, this button will appear green. -Satellite positions can only be predicted with limited accuracy, so without the TLEs need to be updated frequently for accurate positioning. This could be daily, weekly or monthly depending upon the individual satellite. This downloads around 1MB of data. +Satellite positions can only be predicted with limited accuracy, so the TLEs need to be updated frequently for accurate positioning. This could be daily, weekly or monthly depending upon the individual satellite. This downloads around 1MB of data.

5: Show SDRangel Control dialog

@@ -42,16 +42,16 @@ Pressing this button displays the SDRangel Control dialog. ![SDRangel Control dialog](../../../doc/img/SatelliteTracker_plugin_control.png) -This dialog determines the actions the Satellite Tracker will take when AOS or LOS occurs for a satellite. First, select a satellite from the dropdown box. Information about the satellites transmit and receive modes should appear in the field at the bottom of the dialog, if available in the SatNogs database. +This dialog determines the actions the Satellite Tracker will take when AOS or LOS occurs for a satellite. First, select a satellite from the dropdown box. Information about the satellite's transmit and receive modes should appear in the field at the bottom of the dialog, if available in the SatNogs database. To perform an action on an SDRangel device set on AOS or LOS, press the + button. This will add a row in the table, allowing you to select: * The device set that will be controlled. This will list all currently open device sets. You can also type the name of a new device set. * The preset to load on AOS. This allows preset device settings (E.g. centre frequency) and demodulators to be opened when the satellite becomes visible. -* Which channels Doppler correction should be applied to. The list of channels is taken from the selected preset. Check a channel to enable Doppler correct for that channel. The Doppler correction is applied to the channel's input frequency offset. -* Whether to start acquisition (i.e. start the DDR device) on AOS. -* Whether to start acquisition on LOS. -* Whether and file sinks in the preset should be started on AOS and stopped on LOS. This allows the baseband signal received from the satellite to be recorded to a file. +* Which channels Doppler correction should be applied to. The list of channels is taken from the selected preset. Check a channel to enable Doppler correction for that channel. The Doppler correction is applied to the channel's input frequency offset. +* Whether to start acquisition (i.e. start the SDR device) on AOS. +* Whether to stop acquisition on LOS. +* Whether any file sinks in the preset should be started on AOS and stopped on LOS. This allows the baseband signal received from the satellite to be recorded to a file. * Whether to override the centre frequency in the preset. This allows a single preset to be used with multiple satellites. * A command or script to execute on AOS. * A command or script to execute on LOS. @@ -86,15 +86,15 @@ Pressing this button displays the Settings dialog. On the Settings tab, you can set: -* Height above sea level in metres of the anntenna. -* The prediciton period in days. This limits the maximum number of days ahead for which satellite passes are predicted until. -* The minimum elevation in degrees from the antenna location, which a satellite much reach in order for AOS to be indicated. +* Height above sea level in metres of the antenna. +* The prediction period in days. This limits the maximum number of days ahead for which satellite passes are predicted until. +* The elevation in degrees from the antenna location, which a satellite much reach in order for AOS to be indicated. * The minimum elevation in degrees from the antenna location, which a satellite much reach in order for a pass to be indicated. * A time window for which passes must start and end between, to be displayed or acted upon. For example, for day time passes, you could set "must start after" to 8:00 and "must end before" to 18:00. For night time passes, set "must start after" to 20:00 and "must end before" to 6:00. * The maximum azimuth angle in degrees supported by your rotator. 450 degree support is beneficial for passes that pass through 360/0 degrees, to avoid the rotator having to do a complete rotation mid pass. * The maximum elevation angle in degrees supported by your rotator. 180 degree support is beneficial for passes that pass through 360/0 degrees, to avoid the rotator having to do a complete rotation mid pass. -* A speech warning to be given on AOS. ${name} will be subsitited with the name of the satellite, ${duration} the pass duration and ${elevation} the maximum elevation of the pass. -* A speech warning to be given on LOS. ${name} will be subsitited with the name of the satellite. +* A speech warning to be given on AOS. ${name} will be substituted with the name of the satellite, ${duration} the pass duration and ${elevation} the maximum elevation of the pass. +* A speech warning to be given on LOS. ${name} will be substituted with the name of the satellite. * A command/script to be executed on AOS. This applies to all satellites. It is also possible to set a per-satellite command in the SDRangel Control dialog. * A command/script to be executed on LOS. This applies to all satellites. It is also possible to set a per-satellite command in the SDRangel Control dialog. * The Doppler correction period in seconds, which controls how frequently Doppler correction is applied. Which channels have Doppler correction applied is set on a per-channel basis in the SDRangel Control dialog. @@ -112,7 +112,7 @@ On the display tab, you can set: * The default frequency in MHz that is used for calculating Doppler and free space path loss in the Satellite Data table. * The units used to display azimuth and elevation to the target satellite. This can be in degrees, minutes and seconds or decimal degrees. * The number of points used for ground tracks on the map. More points result in smoother tracks, but require more processing. -* Whether times are display in the local time zone or UTC. +* Whether times are displayrf in the local time zone or UTC. * Whether to draw the satellites on the map.

9: Latitude

@@ -149,7 +149,7 @@ Pass charts can be plotted showing the azimuth and elevation of the target satel ![Satellite tracker settings dialog](../../../doc/img/SatelliteTracker_plugin_passchart.png) -The arrows next to the chart combobox, allow the pass number to be selected. Pass 0 is the next pass, with higher numbered passes occuring later in time. +The arrows next to the chart combobox, allow the pass number to be selected. Pass 0 is the next pass, with higher numbered passes occurring later in time. The amount of passes is determined by the prediction period, which can be set in the Settings dialog.

Satellite Data

@@ -162,18 +162,18 @@ The table contains: * The satellite name. * The azimuth in degrees to the satellite from the antenna location. -* The elevation in degress to the satellite from the antenna location. -* The time of the next AOS. If time is some days in the future, the number of days will be displayed as +days. E.g. +1 for tomorrow. +* The elevation in degrees to the satellite from the antenna location. +* The time of the next AOS. If this time is some days in the future, the number of days will be displayed as +days. E.g. +1 for tomorrow. * The time of the next LOS. * The maximum elevation in degrees that the satellite will be from the antenna location in the next pass. -* Whether the satellite will be heading South to North (up addow) or North to South (down arrow) in the next pass. +* Whether the satellite will be heading South to North (up arrow) or North to South (down arrow) in the next pass. * The altitude of the satellite in kilometres. -* The range to the satellite from the antenna location in kilometers. -* The range range (i.e. speed the satellite is moving away from the antenna location) in kilometres per second. +* The range to the satellite from the antenna location in kilometres. +* The rate range (i.e. speed the satellite is moving away from the antenna location) in kilometres per second. * The Doppler shift due to the satellite's motion that would be observed on a signal at the default frequency (which can be set in the Settings dialog). * The free space path loss to the satellite, at the default frequency. * The one-way propagation delay to the satellite from the antenna location in milliseconds. -* The NORAD catalog identifier for the satellite. +* The NORAD catalogue identifier for the satellite. Rows can be ordered by left clicking column headers. Columns can be hidden by right clicking on the header and unchecking them. diff --git a/sdrbase/resources/webapi/doc/html2/index.html b/sdrbase/resources/webapi/doc/html2/index.html index e7bd6038b..2b28c539c 100644 --- a/sdrbase/resources/webapi/doc/html2/index.html +++ b/sdrbase/resources/webapi/doc/html2/index.html @@ -1107,6 +1107,127 @@ margin-bottom: 20px; } }, "description" : "APRS settings" +}; + defs.APTDemodActions = { + "properties" : { + "aos" : { + "$ref" : "#/definitions/APTDemodActions_aos" + }, + "los" : { + "$ref" : "#/definitions/APTDemodActions_los" + } + }, + "description" : "APTDemod" +}; + defs.APTDemodActions_aos = { + "properties" : { + "satelliteName" : { + "type" : "string", + "description" : "Name of the satellite" + }, + "northToSouthPass" : { + "type" : "integer", + "description" : "Satellite is passing from the North to the South (1) or South to North (0)" + } + }, + "description" : "Acquisition of signal" +}; + defs.APTDemodActions_los = { + "properties" : { + "satelliteName" : { + "type" : "string", + "description" : "Name of the satellite" + } + }, + "description" : "Loss of signal" +}; + defs.APTDemodSettings = { + "properties" : { + "inputFrequencyOffset" : { + "type" : "integer", + "format" : "int64", + "description" : "channel center frequency shift from baseband center in Hz" + }, + "rfBandwidth" : { + "type" : "number", + "format" : "float", + "description" : "channel RF bandwidth in Hz" + }, + "fmDeviation" : { + "type" : "integer", + "description" : "frequency deviation in Hz" + }, + "cropNoise" : { + "type" : "integer", + "description" : "crop noise from top and bottom of image" + }, + "denoise" : { + "type" : "integer", + "description" : "apply denoise filter to image" + }, + "linearEqualise" : { + "type" : "integer", + "description" : "apply linear equalisation to image" + }, + "histogramEqualise" : { + "type" : "integer", + "description" : "apply histogram equalisation to image" + }, + "precipitationOverlay" : { + "type" : "integer", + "description" : "create colour overlay of precipitation" + }, + "flip" : { + "type" : "integer", + "description" : "flip image for South to North passes" + }, + "channels" : { + "type" : "integer", + "description" : "which channel to display (0=both, 1=A, 2=B)" + }, + "decodeEnabled" : { + "type" : "integer", + "description" : "controls whether the decoder is enabled" + }, + "autoSave" : { + "type" : "integer", + "description" : "automatically save images when acquisition is stopped" + }, + "autoSavePath" : { + "type" : "string", + "description" : "directory to automatically save images in" + }, + "autoSaveMinScanLines" : { + "type" : "integer" + }, + "rgbColor" : { + "type" : "integer" + }, + "title" : { + "type" : "string" + }, + "streamIndex" : { + "type" : "integer", + "description" : "MIMO channel. Not relevant when connected to SI (single Rx)." + }, + "useReverseAPI" : { + "type" : "integer", + "description" : "Synchronize with reverse API (1 for yes, 0 for no)" + }, + "reverseAPIAddress" : { + "type" : "string" + }, + "reverseAPIPort" : { + "type" : "integer" + }, + "reverseAPIDeviceIndex" : { + "type" : "integer" + }, + "reverseAPIChannelIndex" : { + "type" : "integer" + } + }, + "description" : "APTDemod" }; defs.ATVDemodSettings = { "properties" : { @@ -2411,6 +2532,9 @@ margin-bottom: 20px; "type" : "integer", "description" : "Optional for reverse API. This is the channel index from where the message comes from." }, + "APTDemodActions" : { + "$ref" : "#/definitions/APTDemodActions" + }, "FileSinkActions" : { "$ref" : "#/definitions/FileSinkActions" }, @@ -2659,6 +2783,9 @@ margin-bottom: 20px; "AMModSettings" : { "$ref" : "#/definitions/AMModSettings" }, + "APTDemodSettings" : { + "$ref" : "#/definitions/APTDemodSettings" + }, "ATVDemodSettings" : { "$ref" : "#/definitions/ATVDemodSettings" }, @@ -4188,6 +4315,9 @@ margin-bottom: 20px; "RigCtlServerSettings" : { "$ref" : "#/definitions/RigCtlServerSettings" }, + "SatelliteTrackerSettings" : { + "$ref" : "#/definitions/SatelliteTrackerSettings" + }, "StarTrackerSettings" : { "$ref" : "#/definitions/StarTrackerSettings" }, @@ -4946,6 +5076,22 @@ margin-bottom: 20px; "type" : "integer", "description" : "Elevation offset in degrees" }, + "azimuthMin" : { + "type" : "integer", + "description" : "Minimum azimuth the controller will output" + }, + "azimuthMax" : { + "type" : "integer", + "description" : "Maximum azimuth the controller will output" + }, + "elevationMin" : { + "type" : "integer", + "description" : "Minimum elevation the controller will output" + }, + "elevationMax" : { + "type" : "integer", + "description" : "Maximum elevation the controller will output" + }, "title" : { "type" : "string" }, @@ -6266,6 +6412,23 @@ margin-bottom: 20px; } }, "description" : "Map" +}; + defs.MapCoordinate = { + "properties" : { + "latitude" : { + "type" : "number", + "format" : "float" + }, + "longitude" : { + "type" : "number", + "format" : "float" + }, + "altitude" : { + "type" : "number", + "format" : "float" + } + }, + "description" : "A map coordinate" }; defs.MapItem = { "required" : [ "name" ], @@ -6303,6 +6466,20 @@ margin-bottom: 20px; "type" : "number", "format" : "float", "description" : "Altitude / height above sea level in metres" + }, + "track" : { + "type" : "array", + "description" : "Track/path the item has taken", + "items" : { + "$ref" : "#/definitions/MapCoordinate" + } + }, + "predictedTrack" : { + "type" : "array", + "description" : "Track/path the item is predicted to take", + "items" : { + "$ref" : "#/definitions/MapCoordinate" + } } }, "description" : "An item to draw on the map. Set image to an empty string to remove item from the map." @@ -6343,6 +6520,20 @@ margin-bottom: 20px; "type" : "number", "format" : "float", "description" : "Altitude / height above sea level in metres" + }, + "track" : { + "type" : "array", + "description" : "Track/path the item has taken", + "items" : { + "$ref" : "#/definitions/MapCoordinate" + } + }, + "predictedTrack" : { + "type" : "array", + "description" : "Track/path the item is predicted to take", + "items" : { + "$ref" : "#/definitions/MapCoordinate" + } } }, "description" : "An item to draw on the map. Set image to an empty string to remove item from the map." @@ -8360,6 +8551,152 @@ margin-bottom: 20px; } }, "description" : "Information about a logical device available from an attached hardware device that can be used as a sampling device" +}; + defs.SatelliteTrackerSettings = { + "properties" : { + "latitude" : { + "type" : "number", + "format" : "float", + "description" : "Latitude in decimal degrees (North positive) of antenna location" + }, + "longitude" : { + "type" : "number", + "format" : "float", + "description" : "Longitude in decimal degrees (East positive) of antenna location" + }, + "heightAboveSeaLevel" : { + "type" : "number", + "format" : "float", + "description" : "Height above sea level in metres of antenna location" + }, + "target" : { + "type" : "string", + "description" : "Target satellite" + }, + "satellites" : { + "type" : "array", + "description" : "Satellites to track", + "items" : { + "type" : "string" + } + }, + "tles" : { + "type" : "array", + "description" : "Two line element files", + "items" : { + "type" : "string" + } + }, + "dateTime" : { + "type" : "string", + "description" : "Date and time of observation. ISO 8601 extended format: yyyy-MM-ddTHH:mm:ss with Z suffix for UTC. Empty string for current time." + }, + "minAOSElevation" : { + "type" : "integer", + "description" : "Minimum elevation in degrees for AOS" + }, + "minPassElevation" : { + "type" : "integer", + "description" : "Minimum elevation in degrees for a pass" + }, + "rotatorMaxAzimuth" : { + "type" : "integer", + "description" : "Maximum azimuth in degrees for the rotator" + }, + "rotatorMaxElevation" : { + "type" : "integer", + "description" : "Maximum elevation in degrees for elevation" + }, + "azElUnits" : { + "type" : "integer", + "description" : "DMS (0) DM (1) D (2) Decimal (3)" + }, + "groundTrackPoints" : { + "type" : "integer", + "description" : "Number of points used to draw ground tracks" + }, + "dateFormat" : { + "type" : "string" + }, + "utc" : { + "type" : "integer", + "description" : "Times are UTC (1) or local (0)" + }, + "updatePeriod" : { + "type" : "number", + "format" : "float", + "description" : "Time in seconds between each calculation of the target's position" + }, + "dopplerPeriod" : { + "type" : "number", + "format" : "float", + "description" : "Time in seconds between each Doppler correction" + }, + "predictionPeriod" : { + "type" : "integer", + "description" : "How many days ahead to predict passes in" + }, + "passStartTime" : { + "type" : "string", + "description" : "Time after which a pass must start" + }, + "passFinishTime" : { + "type" : "string", + "description" : "Time before which a pass must finish" + }, + "defaultFrequency" : { + "type" : "number", + "format" : "float", + "description" : "Frequency to use for Doppler and free space path loss calculations in Satellite data table" + }, + "drawOnMap" : { + "type" : "integer", + "description" : "Draw satellites on the Map (1 for yes, 0 for no)" + }, + "autoTarget" : { + "type" : "integer", + "description" : "Automatically select target on AOS (1 for yes, 0 for no)" + }, + "aosSpeech" : { + "type" : "string", + "description" : "Speech warning on AOS" + }, + "losSpeech" : { + "type" : "string", + "description" : "Speech warning on LOS" + }, + "aosCommand" : { + "type" : "string", + "description" : "Command to execute on AOS for all satellites" + }, + "losCommand" : { + "type" : "string", + "description" : "Command to execute on LOS for all satellites" + }, + "title" : { + "type" : "string" + }, + "rgbColor" : { + "type" : "integer" + }, + "useReverseAPI" : { + "type" : "integer", + "description" : "Synchronize with reverse API (1 for yes, 0 for no)" + }, + "reverseAPIAddress" : { + "type" : "string" + }, + "reverseAPIPort" : { + "type" : "integer" + }, + "reverseAPIDeviceIndex" : { + "type" : "integer" + }, + "reverseAPIChannelIndex" : { + "type" : "integer" + } + }, + "description" : "Satellite Tracker settings" }; defs.SigMFFileInputActions = { "properties" : { @@ -45286,7 +45623,7 @@ except ApiException as e:
- Generated 2021-02-11T23:51:16.152+01:00 + Generated 2021-03-01T10:47:56.898+01:00
diff --git a/sdrbase/resources/webapi/doc/swagger/include/APTDemod.yaml b/sdrbase/resources/webapi/doc/swagger/include/APTDemod.yaml new file mode 100644 index 000000000..01a7a4059 --- /dev/null +++ b/sdrbase/resources/webapi/doc/swagger/include/APTDemod.yaml @@ -0,0 +1,86 @@ +APTDemodSettings: + description: APTDemod + properties: + inputFrequencyOffset: + description: channel center frequency shift from baseband center in Hz + type: integer + format: int64 + rfBandwidth: + description: channel RF bandwidth in Hz + type: number + format: float + fmDeviation: + description: frequency deviation in Hz + type: integer + cropNoise: + description: crop noise from top and bottom of image + type: integer + denoise: + description: apply denoise filter to image + type: integer + linearEqualise: + description: apply linear equalisation to image + type: integer + histogramEqualise: + description: apply histogram equalisation to image + type: integer + precipitationOverlay: + description: create colour overlay of precipitation + type: integer + flip: + description: flip image for South to North passes + type: integer + channels: + description: which channel to display (0=both, 1=A, 2=B) + type: integer + decodeEnabled: + description: controls whether the decoder is enabled + type: integer + autoSave: + description: automatically save images when acquisition is stopped + type: integer + autoSavePath: + description: directory to automatically save images in + type: string + autoSaveMinScanLines: + desciption: minimum number of scanlines (after cropping) for an image to be automatically saved + type: integer + rgbColor: + type: integer + title: + type: string + streamIndex: + description: MIMO channel. Not relevant when connected to SI (single Rx). + type: integer + useReverseAPI: + description: Synchronize with reverse API (1 for yes, 0 for no) + type: integer + reverseAPIAddress: + type: string + reverseAPIPort: + type: integer + reverseAPIDeviceIndex: + type: integer + reverseAPIChannelIndex: + type: integer + +APTDemodActions: + description: APTDemod + properties: + aos: + description: "Acquisition of signal" + type: object + properties: + satelliteName: + description: "Name of the satellite" + type: string + northToSouthPass: + description: "Satellite is passing from the North to the South (1) or South to North (0)" + type: integer + los: + description: "Loss of signal" + type: object + properties: + satelliteName: + description: "Name of the satellite" + type: string diff --git a/sdrbase/resources/webapi/doc/swagger/include/ChannelActions.yaml b/sdrbase/resources/webapi/doc/swagger/include/ChannelActions.yaml index a5d7005e5..3332bb9fb 100644 --- a/sdrbase/resources/webapi/doc/swagger/include/ChannelActions.yaml +++ b/sdrbase/resources/webapi/doc/swagger/include/ChannelActions.yaml @@ -17,6 +17,8 @@ ChannelActions: originatorChannelIndex: description: Optional for reverse API. This is the channel index from where the message comes from. type: integer + APTDemodActions: + $ref: "/doc/swagger/include/APTDemod.yaml#/APTDemodActions" FileSinkActions: $ref: "/doc/swagger/include/FileSink.yaml#/FileSinkActions" FileSourceActions: diff --git a/sdrbase/resources/webapi/doc/swagger/include/ChannelSettings.yaml b/sdrbase/resources/webapi/doc/swagger/include/ChannelSettings.yaml index 9f914cd10..9287e0b2c 100644 --- a/sdrbase/resources/webapi/doc/swagger/include/ChannelSettings.yaml +++ b/sdrbase/resources/webapi/doc/swagger/include/ChannelSettings.yaml @@ -23,6 +23,8 @@ ChannelSettings: $ref: "/doc/swagger/include/AMDemod.yaml#/AMDemodSettings" AMModSettings: $ref: "/doc/swagger/include/AMMod.yaml#/AMModSettings" + APTDemodSettings: + $ref: "/doc/swagger/include/APTDemod.yaml#/APTDemodSettings" ATVDemodSettings: $ref: "/doc/swagger/include/ATVDemod.yaml#/ATVDemodSettings" ATVModSettings: diff --git a/sdrbase/resources/webapi/doc/swagger/include/FeatureSettings.yaml b/sdrbase/resources/webapi/doc/swagger/include/FeatureSettings.yaml index 7da04ce4f..8e09c3e26 100644 --- a/sdrbase/resources/webapi/doc/swagger/include/FeatureSettings.yaml +++ b/sdrbase/resources/webapi/doc/swagger/include/FeatureSettings.yaml @@ -25,6 +25,8 @@ FeatureSettings: $ref: "/doc/swagger/include/Map.yaml#/MapSettings" RigCtlServerSettings: $ref: "/doc/swagger/include/RigCtlServer.yaml#/RigCtlServerSettings" + SatelliteTrackerSettings: + $ref: "/doc/swagger/include/SatelliteTracker.yaml#/SatelliteTrackerSettings" StarTrackerSettings: $ref: "/doc/swagger/include/StarTracker.yaml#/StarTrackerSettings" SimplePTTSettings: diff --git a/sdrbase/resources/webapi/doc/swagger/include/GS232Controller.yaml b/sdrbase/resources/webapi/doc/swagger/include/GS232Controller.yaml index 3ffbbad48..347fa5239 100644 --- a/sdrbase/resources/webapi/doc/swagger/include/GS232Controller.yaml +++ b/sdrbase/resources/webapi/doc/swagger/include/GS232Controller.yaml @@ -25,6 +25,18 @@ GS232ControllerSettings: elevationOffset: description: Elevation offset in degrees type: integer + azimuthMin: + description: Minimum azimuth the controller will output + type: integer + azimuthMax: + description: Maximum azimuth the controller will output + type: integer + elevationMin: + description: Minimum elevation the controller will output + type: integer + elevationMax: + description: Maximum elevation the controller will output + type: integer title: type: string rgbColor: diff --git a/sdrbase/resources/webapi/doc/swagger/include/Map.yaml b/sdrbase/resources/webapi/doc/swagger/include/Map.yaml index 19ff43c16..5981fa380 100644 --- a/sdrbase/resources/webapi/doc/swagger/include/Map.yaml +++ b/sdrbase/resources/webapi/doc/swagger/include/Map.yaml @@ -61,3 +61,27 @@ MapItem: description: "Altitude / height above sea level in metres" type: number format: float + track: + description: "Track/path the item has taken" + type: array + items: + $ref: "/doc/swagger/include/Map.yaml#/MapCoordinate" + predictedTrack: + description: "Track/path the item is predicted to take" + type: array + items: + $ref: "/doc/swagger/include/Map.yaml#/MapCoordinate" + +MapCoordinate: + description: "A map coordinate" + properties: + latitude: + type: number + format: float + longitude: + type: number + format: float + altitude: + type: number + format: float + diff --git a/sdrbase/resources/webapi/doc/swagger/include/SatelliteTracker.yaml b/sdrbase/resources/webapi/doc/swagger/include/SatelliteTracker.yaml new file mode 100644 index 000000000..6d7636b2d --- /dev/null +++ b/sdrbase/resources/webapi/doc/swagger/include/SatelliteTracker.yaml @@ -0,0 +1,109 @@ +SatelliteTrackerSettings: + description: "Satellite Tracker settings" + properties: + latitude: + description: "Latitude in decimal degrees (North positive) of antenna location" + type: number + format: float + longitude: + description: "Longitude in decimal degrees (East positive) of antenna location" + type: number + format: float + heightAboveSeaLevel: + description: "Height above sea level in metres of antenna location" + type: number + format: float + target: + description: "Target satellite" + type: string + satellites: + description: "Satellites to track" + type: array + items: + type: string + tles: + description: "Two line element files" + type: array + items: + type: string + dateTime: + description: "Date and time of observation. ISO 8601 extended format: yyyy-MM-ddTHH:mm:ss with Z suffix for UTC. Empty string for current time." + type: string + minAOSElevation: + description: "Minimum elevation in degrees for AOS" + type: integer + minPassElevation: + description: "Minimum elevation in degrees for a pass" + type: integer + rotatorMaxAzimuth: + description: "Maximum azimuth in degrees for the rotator" + type: integer + rotatorMaxElevation: + description: "Maximum elevation in degrees for elevation" + type: integer + azElUnits: + description: "DMS (0) DM (1) D (2) Decimal (3)" + type: integer + groundTrackPoints: + description: "Number of points used to draw ground tracks" + type: integer + dateFormat: + desciption: "Format for dates in the GUI (E.g: yy/MM/dd)" + type: string + utc: + description: "Times are UTC (1) or local (0)" + type: integer + updatePeriod: + description: "Time in seconds between each calculation of the target's position" + type: number + format: float + dopplerPeriod: + description: "Time in seconds between each Doppler correction" + type: number + format: float + predictionPeriod: + description: "How many days ahead to predict passes in" + type: integer + passStartTime: + description: "Time after which a pass must start" + type: string + passFinishTime: + description: "Time before which a pass must finish" + type: string + defaultFrequency: + description: "Frequency to use for Doppler and free space path loss calculations in Satellite data table" + type: number + format: float + drawOnMap: + description: "Draw satellites on the Map (1 for yes, 0 for no)" + type: integer + autoTarget: + description: "Automatically select target on AOS (1 for yes, 0 for no)" + type: integer + aosSpeech: + description: "Speech warning on AOS" + type: string + losSpeech: + description: "Speech warning on LOS" + type: string + aosCommand: + description: "Command to execute on AOS for all satellites" + type: string + losCommand: + description: "Command to execute on LOS for all satellites" + type: string + title: + type: string + rgbColor: + type: integer + useReverseAPI: + description: Synchronize with reverse API (1 for yes, 0 for no) + type: integer + reverseAPIAddress: + type: string + reverseAPIPort: + type: integer + reverseAPIDeviceIndex: + type: integer + reverseAPIChannelIndex: + type: integer diff --git a/swagger/sdrangel/code/html2/index.html b/swagger/sdrangel/code/html2/index.html index 016942a69..2b28c539c 100644 --- a/swagger/sdrangel/code/html2/index.html +++ b/swagger/sdrangel/code/html2/index.html @@ -45623,7 +45623,7 @@ except ApiException as e:
- Generated 2021-02-26T21:05:20.434+01:00 + Generated 2021-03-01T10:47:56.898+01:00