From 1a9b6d17636980babbc29b4706e9eff166948867 Mon Sep 17 00:00:00 2001
From: Jon Beniston <jon@beniston.com>
Date: Tue, 27 Oct 2020 16:22:10 +0000
Subject: [PATCH] Add ADS-B Demodulator plugin. Add GS232 Rotator Controller
 feature plugin. Add altitude and station name to My Positon. Use QtDeploy to
 ensure all required Qt libraries are included (Should fix OpenGL issues)

---
 CMakeLists.txt                                |   13 +-
 cmake/Modules/DeployQt.cmake                  |   49 +
 cmake/cpack/CMakeLists.txt                    |   44 +-
 doc/img/ADSBDemod_plugin.png                  |  Bin 0 -> 15469 bytes
 doc/img/ADSBDemod_plugin.xcf                  |  Bin 0 -> 58734 bytes
 doc/img/ADSBDemod_plugin_map.png              |  Bin 0 -> 478712 bytes
 doc/img/ADSBDemod_plugin_table.png            |  Bin 0 -> 23970 bytes
 doc/img/GS232Controller_plugin.png            |  Bin 0 -> 17462 bytes
 doc/img/GS232Controller_plugin.xcf            |  Bin 0 -> 60536 bytes
 plugins/channelrx/CMakeLists.txt              |    3 +
 plugins/channelrx/demodadsb/CMakeLists.txt    |   70 ++
 plugins/channelrx/demodadsb/adsb.h            |   29 +
 plugins/channelrx/demodadsb/adsbdemod.cpp     |  468 ++++++++
 plugins/channelrx/demodadsb/adsbdemod.h       |  155 +++
 .../channelrx/demodadsb/adsbdemodbaseband.cpp |  157 +++
 .../channelrx/demodadsb/adsbdemodbaseband.h   |   87 ++
 plugins/channelrx/demodadsb/adsbdemodgui.cpp  | 1024 +++++++++++++++++
 plugins/channelrx/demodadsb/adsbdemodgui.h    |  272 +++++
 plugins/channelrx/demodadsb/adsbdemodgui.ui   |  667 +++++++++++
 .../channelrx/demodadsb/adsbdemodreport.cpp   |   21 +
 plugins/channelrx/demodadsb/adsbdemodreport.h |   65 ++
 .../channelrx/demodadsb/adsbdemodsettings.cpp |  142 +++
 .../channelrx/demodadsb/adsbdemodsettings.h   |   58 +
 plugins/channelrx/demodadsb/adsbdemodsink.cpp |  278 +++++
 plugins/channelrx/demodadsb/adsbdemodsink.h   |  106 ++
 .../demodadsb/adsbdemodwebapiadapter.cpp      |   51 +
 .../demodadsb/adsbdemodwebapiadapter.h        |   50 +
 .../channelrx/demodadsb/adsbdemodworker.cpp   |  197 ++++
 plugins/channelrx/demodadsb/adsbdemodworker.h |   87 ++
 plugins/channelrx/demodadsb/adsbplugin.cpp    |   92 ++
 plugins/channelrx/demodadsb/adsbplugin.h      |   49 +
 plugins/channelrx/demodadsb/readme.md         |   86 ++
 plugins/feature/CMakeLists.txt                |    3 +
 .../feature/gs232controller/CMakeLists.txt    |   64 ++
 .../gs232controller/gs232controller.cpp       |  425 +++++++
 .../feature/gs232controller/gs232controller.h |  140 +++
 .../gs232controller/gs232controllergui.cpp    |  447 +++++++
 .../gs232controller/gs232controllergui.h      |   90 ++
 .../gs232controller/gs232controllergui.ui     |  397 +++++++
 .../gs232controller/gs232controllerplugin.cpp |   80 ++
 .../gs232controller/gs232controllerplugin.h   |   49 +
 .../gs232controller/gs232controllerreport.h   |   64 ++
 .../gs232controllersettings.cpp               |  121 ++
 .../gs232controller/gs232controllersettings.h |   71 ++
 .../gs232controllerwebapiadapter.cpp          |   51 +
 .../gs232controllerwebapiadapter.h            |   50 +
 .../gs232controller/gs232controllerworker.cpp |  248 ++++
 .../gs232controller/gs232controllerworker.h   |   94 ++
 plugins/feature/gs232controller/readme.md     |   52 +
 sdrbase/CMakeLists.txt                        |    2 +
 sdrbase/resources/webapi/doc/html2/index.html |  144 ++-
 sdrbase/settings/mainsettings.h               |    6 +-
 sdrbase/settings/preferences.cpp              |   14 +-
 sdrbase/settings/preferences.h                |   10 +-
 sdrbase/util/azel.cpp                         |  151 +++
 sdrbase/util/azel.h                           |  133 +++
 sdrbase/util/crc.h                            |    7 +
 sdrbase/webapi/webapirequestmapper.cpp        |   23 +-
 sdrgui/gui/myposdialog.ui                     |   52 +-
 sdrgui/gui/mypositiondialog.cpp               |    4 +
 sdrgui/resources/MapStation.qml               |   38 +
 sdrgui/resources/aircraft_2engine.png         |  Bin 0 -> 782 bytes
 sdrgui/resources/aircraft_2enginesmall.png    |  Bin 0 -> 657 bytes
 sdrgui/resources/aircraft_4engine.png         |  Bin 0 -> 772 bytes
 sdrgui/resources/aircraft_drone.png           |  Bin 0 -> 1362 bytes
 sdrgui/resources/aircraft_fighter.png         |  Bin 0 -> 647 bytes
 sdrgui/resources/aircraft_helicopter.png      |  Bin 0 -> 779 bytes
 sdrgui/resources/aircraft_light.png           |  Bin 0 -> 541 bytes
 sdrgui/resources/aircraft_space.png           |  Bin 0 -> 735 bytes
 sdrgui/resources/map.qml                      |   85 ++
 sdrgui/resources/map_antenna.png              |  Bin 0 -> 1328 bytes
 sdrgui/resources/map_truck.png                |  Bin 0 -> 619 bytes
 sdrgui/resources/res.qrc                      |   11 +
 .../api/swagger/include/ADSBDemod.yaml        |   58 +
 .../api/swagger/include/ChannelReport.yaml    |    2 +
 .../api/swagger/include/ChannelSettings.yaml  |    2 +
 .../api/swagger/include/FeatureSettings.yaml  |    2 +
 .../api/swagger/include/GS232Controller.yaml  |   36 +
 swagger/sdrangel/code/html2/index.html        |  144 ++-
 .../code/qt5/client/SWGADSBDemodReport.cpp    |  177 +++
 .../code/qt5/client/SWGADSBDemodReport.h      |   76 ++
 .../code/qt5/client/SWGADSBDemodSettings.cpp  |  459 ++++++++
 .../code/qt5/client/SWGADSBDemodSettings.h    |  149 +++
 .../code/qt5/client/SWGChannelReport.cpp      |   25 +
 .../code/qt5/client/SWGChannelReport.h        |    7 +
 .../code/qt5/client/SWGChannelSettings.cpp    |   25 +
 .../code/qt5/client/SWGChannelSettings.h      |    7 +
 .../code/qt5/client/SWGFeatureSettings.cpp    |   25 +
 .../code/qt5/client/SWGFeatureSettings.h      |    7 +
 .../qt5/client/SWGGS232ControllerSettings.cpp |  413 +++++++
 .../qt5/client/SWGGS232ControllerSettings.h   |  137 +++
 .../code/qt5/client/SWGModelFactory.h         |   12 +
 92 files changed, 9158 insertions(+), 51 deletions(-)
 create mode 100644 cmake/Modules/DeployQt.cmake
 create mode 100644 doc/img/ADSBDemod_plugin.png
 create mode 100644 doc/img/ADSBDemod_plugin.xcf
 create mode 100644 doc/img/ADSBDemod_plugin_map.png
 create mode 100644 doc/img/ADSBDemod_plugin_table.png
 create mode 100644 doc/img/GS232Controller_plugin.png
 create mode 100644 doc/img/GS232Controller_plugin.xcf
 create mode 100644 plugins/channelrx/demodadsb/CMakeLists.txt
 create mode 100644 plugins/channelrx/demodadsb/adsb.h
 create mode 100644 plugins/channelrx/demodadsb/adsbdemod.cpp
 create mode 100644 plugins/channelrx/demodadsb/adsbdemod.h
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodbaseband.cpp
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodbaseband.h
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodgui.cpp
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodgui.h
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodgui.ui
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodreport.cpp
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodreport.h
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodsettings.cpp
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodsettings.h
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodsink.cpp
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodsink.h
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodwebapiadapter.cpp
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodwebapiadapter.h
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodworker.cpp
 create mode 100644 plugins/channelrx/demodadsb/adsbdemodworker.h
 create mode 100644 plugins/channelrx/demodadsb/adsbplugin.cpp
 create mode 100644 plugins/channelrx/demodadsb/adsbplugin.h
 create mode 100644 plugins/channelrx/demodadsb/readme.md
 create mode 100644 plugins/feature/gs232controller/CMakeLists.txt
 create mode 100644 plugins/feature/gs232controller/gs232controller.cpp
 create mode 100644 plugins/feature/gs232controller/gs232controller.h
 create mode 100644 plugins/feature/gs232controller/gs232controllergui.cpp
 create mode 100644 plugins/feature/gs232controller/gs232controllergui.h
 create mode 100644 plugins/feature/gs232controller/gs232controllergui.ui
 create mode 100644 plugins/feature/gs232controller/gs232controllerplugin.cpp
 create mode 100644 plugins/feature/gs232controller/gs232controllerplugin.h
 create mode 100644 plugins/feature/gs232controller/gs232controllerreport.h
 create mode 100644 plugins/feature/gs232controller/gs232controllersettings.cpp
 create mode 100644 plugins/feature/gs232controller/gs232controllersettings.h
 create mode 100644 plugins/feature/gs232controller/gs232controllerwebapiadapter.cpp
 create mode 100644 plugins/feature/gs232controller/gs232controllerwebapiadapter.h
 create mode 100644 plugins/feature/gs232controller/gs232controllerworker.cpp
 create mode 100644 plugins/feature/gs232controller/gs232controllerworker.h
 create mode 100644 plugins/feature/gs232controller/readme.md
 create mode 100644 sdrbase/util/azel.cpp
 create mode 100644 sdrbase/util/azel.h
 create mode 100644 sdrgui/resources/MapStation.qml
 create mode 100644 sdrgui/resources/aircraft_2engine.png
 create mode 100644 sdrgui/resources/aircraft_2enginesmall.png
 create mode 100644 sdrgui/resources/aircraft_4engine.png
 create mode 100644 sdrgui/resources/aircraft_drone.png
 create mode 100644 sdrgui/resources/aircraft_fighter.png
 create mode 100644 sdrgui/resources/aircraft_helicopter.png
 create mode 100644 sdrgui/resources/aircraft_light.png
 create mode 100644 sdrgui/resources/aircraft_space.png
 create mode 100644 sdrgui/resources/map.qml
 create mode 100644 sdrgui/resources/map_antenna.png
 create mode 100644 sdrgui/resources/map_truck.png
 create mode 100644 swagger/sdrangel/api/swagger/include/ADSBDemod.yaml
 create mode 100644 swagger/sdrangel/api/swagger/include/GS232Controller.yaml
 create mode 100644 swagger/sdrangel/code/qt5/client/SWGADSBDemodReport.cpp
 create mode 100644 swagger/sdrangel/code/qt5/client/SWGADSBDemodReport.h
 create mode 100644 swagger/sdrangel/code/qt5/client/SWGADSBDemodSettings.cpp
 create mode 100644 swagger/sdrangel/code/qt5/client/SWGADSBDemodSettings.h
 create mode 100644 swagger/sdrangel/code/qt5/client/SWGGS232ControllerSettings.cpp
 create mode 100644 swagger/sdrangel/code/qt5/client/SWGGS232ControllerSettings.h

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7642e3a40..ce5e14658 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -238,6 +238,9 @@ elseif (WIN32)
   set(UHD_LIBRARIES "${EXTERNAL_LIBRARY_FOLDER}/uhd/lib/uhd.lib" CACHE INTERNAL "")
   set(UHD_DLL_DIR "${EXTERNAL_LIBRARY_FOLDER}/uhd/bin" CACHE INTERNAL "")
 
+  set(OPENSSL_FOUND ON CACHE INTERNAL "")
+  set(OPENSSL_DLL_DIR "${EXTERNAL_LIBRARY_FOLDER}/openssl" CACHE INTERNAL "")
+
   # ffmpeg
   set(FFMPEG_INCLUDE_DIRS "${EXTERNAL_LIBRARY_FOLDER}/ffmpeg/include" CACHE INTERNAL "")
   set(FFMPEG_LIBRARIES "${EXTERNAL_LIBRARY_FOLDER}/ffmpeg/bin" CACHE INTERNAL "")
@@ -331,11 +334,15 @@ find_package(Qt5 COMPONENTS Widgets REQUIRED)
 find_package(Qt5 COMPONENTS WebSockets REQUIRED)
 find_package(Qt5 COMPONENTS Multimedia REQUIRED)
 find_package(Qt5 COMPONENTS MultimediaWidgets REQUIRED)
+find_package(Qt5 COMPONENTS SerialPort)
 
-# for the server we don't need OpenGL components
+# for the server we don't need OpenGL/Qt Quick components
 if (BUILD_GUI)
     find_package(OpenGL REQUIRED)
     find_package(Qt5 COMPONENTS OpenGL REQUIRED)
+    find_package(Qt5 COMPONENTS Quick)
+    find_package(Qt5 COMPONENTS QuickWidgets)
+    find_package(Qt5 COMPONENTS Positioning)
 endif()
 
 # other requirements
@@ -589,6 +596,10 @@ endif()
 if (LINUX AND ENABLE_EXTERNAL_LIBRARIES)
     install(DIRECTORY ${EXTERNAL_BUILD_LIBRARIES}/lib/ DESTINATION ${INSTALL_LIB_DIR})
 endif()
+if(WIN32)
+  include(DeployQt)
+  windeployqt(${CMAKE_PROJECT_NAME} ${SDRANGEL_BINARY_BIN_DIR} ${PROJECT_SOURCE_DIR}/sdrgui/resources)
+endif()
 
 # install documentation
 # TODO maybe install readme for every plugins
diff --git a/cmake/Modules/DeployQt.cmake b/cmake/Modules/DeployQt.cmake
new file mode 100644
index 000000000..d8a1d2d79
--- /dev/null
+++ b/cmake/Modules/DeployQt.cmake
@@ -0,0 +1,49 @@
+find_package(Qt5Core REQUIRED)
+
+get_target_property(_qmake_executable Qt5::qmake IMPORTED_LOCATION)
+get_filename_component(_qt_bin_dir "${_qmake_executable}" DIRECTORY)
+
+find_program(WINDEPLOYQT_EXECUTABLE windeployqt HINTS "${_qt_bin_dir}")
+if(WIN32 AND NOT WINDEPLOYQT_EXECUTABLE)
+    message(FATAL_ERROR "windeployqt not found")
+endif()
+
+# Add commands that copy the required Qt files to ${bindir} as well as including
+# them in final installation (by first copying them to a winqt subdir)
+# We need to specify ${bindir} as we run this on plugins as well as the main .exe
+# Preferably, it would be nicer to skip the extra copy to winqt subdir, but how?
+# Also, we should possibly only call install once, after all deployments are made
+function(windeployqt target bindir qmldir)
+
+    # Run windeployqt after build
+    # First deploy in to bin directory, so we can run from the build bin directory
+    add_custom_command(TARGET ${target} POST_BUILD
+        COMMAND "${CMAKE_COMMAND}" -E
+            env PATH="${_qt_bin_dir}" "${WINDEPLOYQT_EXECUTABLE}"
+                --verbose 1
+                --no-compiler-runtime
+                --dir "${bindir}"
+                --qmldir "${qmldir}"
+                --multimedia
+                \"$<TARGET_FILE:${target}>\"
+        COMMENT "Deploying Qt..."
+    )
+
+    # Then, deploy again in to separate directory for install to pick up
+    add_custom_command(TARGET ${target} POST_BUILD
+        COMMAND "${CMAKE_COMMAND}" -E
+            env PATH="${_qt_bin_dir}" "${WINDEPLOYQT_EXECUTABLE}"
+                --verbose 1
+                --no-compiler-runtime
+                --dir "${bindir}/winqt"
+                --qmldir "${qmldir}"
+                --multimedia
+                \"$<TARGET_FILE:${target}>\"
+        COMMENT "Deploying Qt..."
+    )
+
+    install(DIRECTORY "${bindir}/winqt/" DESTINATION .)
+
+endfunction()
+
+mark_as_advanced(WINDEPLOYQT_EXECUTABLE)
diff --git a/cmake/cpack/CMakeLists.txt b/cmake/cpack/CMakeLists.txt
index c8c80f70a..259853eeb 100644
--- a/cmake/cpack/CMakeLists.txt
+++ b/cmake/cpack/CMakeLists.txt
@@ -11,6 +11,7 @@ endfunction (QUERY_QMAKE)
 
 query_qmake (QT_INSTALL_PLUGINS QT_PLUGINS_DIR)
 query_qmake (QT_INSTALL_IMPORTS QT_IMPORTS_DIR)
+query_qmake (QT_INSTALL_QML QT_QML_DIR)
 
 if(APPLE AND BUNDLE AND BUILD_GUI)
 
@@ -172,24 +173,6 @@ elseif(LINUX AND BUNDLE)
 
 elseif(WIN32 OR MINGW)
 
-  set(QT_PLUGINS_DIR_SET
-    "${QT_PLUGINS_DIR}/platforms"
-    "${QT_PLUGINS_DIR}/audio"
-    "${QT_PLUGINS_DIR}/imageformats"
-    "${QT_PLUGINS_DIR}/mediaservice"
-    "${QT_PLUGINS_DIR}/playlistformats"
-    "${QT_PLUGINS_DIR}/renderplugins"
-    "${QT_PLUGINS_DIR}/iconengines"
-  )
-
-  # Copy Qt Plugins; fixup_bundle doesn't do that
-  foreach(qt_plugin ${QT_PLUGINS_DIR_SET})
-    get_filename_component(qt_plugin_name "${qt_plugin}"  NAME)
-    add_custom_target(copy_qt_plugin_${qt_plugin_name} ALL
-      COMMAND ${CMAKE_COMMAND} -E copy_directory "${qt_plugin}" "${SDRANGEL_BINARY_BIN_DIR}/${qt_plugin_name}"
-    )
-  endforeach(qt_plugin)
-
   # unfortunately some libraries are dependencies of dll so we copy by hand
   # TODO check if we can use fixup_bundle() and have libraries on root path
 
@@ -242,6 +225,14 @@ elseif(WIN32 OR MINGW)
     endforeach(uhd_dll)
   endif()
 
+  file(GLOB OPENSSL_DLLS "${OPENSSL_DLL_DIR}/*${CMAKE_SHARED_LIBRARY_SUFFIX}")
+  foreach(openssl_dll ${OPENSSL_DLLS})
+    get_filename_component(openssl_dll_name "${openssl_dll}"  NAME)
+    add_custom_target(copy_openssl_${openssl_dll_name} ALL
+      COMMAND ${CMAKE_COMMAND} -E copy_if_different "${openssl_dll}" "${SDRANGEL_BINARY_BIN_DIR}/"
+    )
+  endforeach(openssl_dll)
+
   # TODO we need a way to fixup_bundle() on the build bin/ directory without call install
   if(BUILD_GUI)
     install(CODE "
@@ -268,23 +259,9 @@ elseif(WIN32 OR MINGW)
       " COMPONENT Runtime)
     endif(BUILD_GUI)
 
-    # Copy Qt Plugins; fixup_bundle doesn't do that
-    install (
-      DIRECTORY ${QT_PLUGINS_DIR_SET}
-      DESTINATION "${INSTALL_BIN_DIR}"
-      CONFIGURATIONS Release MinSizeRel
-      COMPONENT runtime
-      FILES_MATCHING PATTERN "*${CMAKE_SHARED_LIBRARY_SUFFIX}"
-      PATTERN "*minimal*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
-      PATTERN "*offscreen*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
-      PATTERN "*quick*${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
-      PATTERN "*_debug${CMAKE_SHARED_LIBRARY_SUFFIX}" EXCLUDE
-    )
-
     # unfortunately some libraries are dependencies of dll so we copy by hand
     # TODO check if we can use fixup_bundle() and have libraries on root path
     # inputkiwisdr.dll
-    install(FILES "${Qt5_DIR}/../../../bin/Qt5WebSockets${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
     # demoddatv.dll
     install(DIRECTORY "${FFMPEG_LIBRARIES}/" DESTINATION "${INSTALL_LIB_DIR}"
       FILES_MATCHING PATTERN "*${CMAKE_SHARED_LIBRARY_SUFFIX}")
@@ -300,6 +277,9 @@ elseif(WIN32 OR MINGW)
     # uhd
     install(DIRECTORY "${UHD_DLL_DIR}/" DESTINATION "${INSTALL_LIB_DIR}"
       FILES_MATCHING PATTERN "*${CMAKE_SHARED_LIBRARY_SUFFIX}")
+    # OpenSSL
+    install(DIRECTORY "${OPENSSL_DLL_DIR}/" DESTINATION "${INSTALL_LIB_DIR}"
+      FILES_MATCHING PATTERN "*${CMAKE_SHARED_LIBRARY_SUFFIX}")
 
     install(CODE "
       # remove *.lib files
diff --git a/doc/img/ADSBDemod_plugin.png b/doc/img/ADSBDemod_plugin.png
new file mode 100644
index 0000000000000000000000000000000000000000..ec76e6ee1c16517d4905592bd1ca2d5b6f61e68a
GIT binary patch
literal 15469
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
Rf%i}$q{QSz%Z2s*{~w&qp)ddd

literal 0
HcmV?d00001

diff --git a/doc/img/ADSBDemod_plugin.xcf b/doc/img/ADSBDemod_plugin.xcf
new file mode 100644
index 0000000000000000000000000000000000000000..e60cae85f97123edc2f936dfaac9d881c49e417e
GIT binary patch
literal 58734
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
Q?tz;uKFgYc=Xv!1|1#J$dH?_b

literal 0
HcmV?d00001

diff --git a/doc/img/ADSBDemod_plugin_map.png b/doc/img/ADSBDemod_plugin_map.png
new file mode 100644
index 0000000000000000000000000000000000000000..645b5bfbc2e1e6a3badc05559b25064d7a9e6682
GIT binary patch
literal 478712
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%0AgP>Wz*5obQ^<>5tb7BF5+}Dx^TnDyf2C%Q
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
bPze1$-=)VBK>j?&00000NkvXXu0mjf^*-`Q

literal 0
HcmV?d00001

diff --git a/doc/img/ADSBDemod_plugin_table.png b/doc/img/ADSBDemod_plugin_table.png
new file mode 100644
index 0000000000000000000000000000000000000000..97d70921da8df1df38a3f879428f53332f1c87b1
GIT binary patch
literal 23970
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

literal 0
HcmV?d00001

diff --git a/doc/img/GS232Controller_plugin.png b/doc/img/GS232Controller_plugin.png
new file mode 100644
index 0000000000000000000000000000000000000000..2d4acd67d2f364de60a5f3ecd64322d4fc38fa4c
GIT binary patch
literal 17462
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

literal 0
HcmV?d00001

diff --git a/doc/img/GS232Controller_plugin.xcf b/doc/img/GS232Controller_plugin.xcf
new file mode 100644
index 0000000000000000000000000000000000000000..8ca672e50f0ccf9799c9b21f7d5c4e508ecc8f17
GIT binary patch
literal 60536
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

literal 0
HcmV?d00001

diff --git a/plugins/channelrx/CMakeLists.txt b/plugins/channelrx/CMakeLists.txt
index 322fb6961..dcdb70bd4 100644
--- a/plugins/channelrx/CMakeLists.txt
+++ b/plugins/channelrx/CMakeLists.txt
@@ -1,5 +1,8 @@
 project(demod)
 
+if (Qt5Quick_FOUND AND Qt5QuickWidgets_FOUND AND Qt5Positioning_FOUND)
+    add_subdirectory(demodadsb)
+endif()
 add_subdirectory(demodam)
 add_subdirectory(demodbfm)
 add_subdirectory(demodnfm)
diff --git a/plugins/channelrx/demodadsb/CMakeLists.txt b/plugins/channelrx/demodadsb/CMakeLists.txt
new file mode 100644
index 000000000..4cff3eb67
--- /dev/null
+++ b/plugins/channelrx/demodadsb/CMakeLists.txt
@@ -0,0 +1,70 @@
+project(adsb)
+
+set(adsb_SOURCES
+    adsbdemod.cpp
+    adsbdemodsettings.cpp
+    adsbdemodwebapiadapter.cpp
+    adsbplugin.cpp
+    adsbdemodsink.cpp
+    adsbdemodbaseband.cpp
+    adsbdemodreport.cpp
+    adsbdemodworker.cpp
+)
+
+set(adsb_HEADERS
+    adsbdemod.h
+    adsbdemodsettings.h
+    adsbdemodwebapiadapter.h
+    adsbplugin.h
+    adsbdemodsink.h
+    adsbdemodbaseband.h
+    adsbdemodreport.h
+    adsbdemodworker.h
+    adsb.h
+)
+
+include_directories(
+    ${CMAKE_SOURCE_DIR}/swagger/sdrangel/code/qt5/client
+)
+
+if(NOT SERVER_MODE)
+    set(adsb_SOURCES
+        ${adsb_SOURCES}
+        adsbdemodgui.cpp
+        adsbdemodgui.ui
+    )
+    set(adsb_HEADERS
+        ${adsb_HEADERS}
+        adsbdemodgui.h
+    )
+
+    set(TARGET_NAME demodadsb)
+    set(TARGET_LIB Qt5::Widgets Qt5::Quick Qt5::QuickWidgets Qt5::Positioning)
+    set(TARGET_LIB_GUI "sdrgui")
+    set(INSTALL_FOLDER ${INSTALL_PLUGINS_DIR})
+else()
+    set(TARGET_NAME demodadsbsrv)
+    set(TARGET_LIB "")
+    set(TARGET_LIB_GUI "")
+    set(INSTALL_FOLDER ${INSTALL_PLUGINSSRV_DIR})
+endif()
+
+add_library(${TARGET_NAME} SHARED
+    ${adsb_SOURCES}
+)
+
+target_link_libraries(${TARGET_NAME}
+    Qt5::Core
+    ${TARGET_LIB}
+    sdrbase
+    ${TARGET_LIB_GUI}
+    swagger
+)
+
+install(TARGETS ${TARGET_NAME} DESTINATION ${INSTALL_FOLDER})
+
+if(WIN32)
+  # Run deployqt for QtQuick etc
+  include(DeployQt)
+  windeployqt(${TARGET_NAME} ${SDRANGEL_BINARY_BIN_DIR} ${PROJECT_SOURCE_DIR}/../../../sdrgui/resources)
+endif()
diff --git a/plugins/channelrx/demodadsb/adsb.h b/plugins/channelrx/demodadsb/adsb.h
new file mode 100644
index 000000000..11b47faee
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsb.h
@@ -0,0 +1,29 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_ADSB_H
+#define INCLUDE_ADSB_H
+
+#define ADS_B_CHIPS_PER_BIT     2
+#define ADS_B_PREAMBLE_BITS     8
+#define ADS_B_PREAMBLE_CHIPS    (ADS_B_PREAMBLE_BITS*ADS_B_CHIPS_PER_BIT)
+#define ADS_B_ES_BITS           112
+#define ADS_B_ES_BYTES          (ADS_B_ES_BITS/8)
+#define ADS_B_DF_MASK           0x1f
+#define ADS_B_BITS_PER_SECOND   1000000
+
+#endif // INCLUDE_ADSB_H
diff --git a/plugins/channelrx/demodadsb/adsbdemod.cpp b/plugins/channelrx/demodadsb/adsbdemod.cpp
new file mode 100644
index 000000000..46e4e46b7
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemod.cpp
@@ -0,0 +1,468 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2012 maintech GmbH, Otto-Hahn-Str. 15, 97204 Hoechberg, Germany //
+// written by Christian Daniel                                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include <stdio.h>
+#include <complex.h>
+
+#include <QTime>
+#include <QDebug>
+#include <QNetworkAccessManager>
+#include <QNetworkReply>
+#include <QBuffer>
+#include <QThread>
+
+#include "SWGChannelSettings.h"
+#include "SWGADSBDemodSettings.h"
+#include "SWGChannelReport.h"
+#include "SWGADSBDemodReport.h"
+
+#include "dsp/dspengine.h"
+#include "dsp/dspcommands.h"
+#include "dsp/devicesamplemimo.h"
+#include "device/deviceapi.h"
+#include "util/db.h"
+
+#include "adsbdemod.h"
+#include "adsbdemodworker.h"
+
+MESSAGE_CLASS_DEFINITION(ADSBDemod::MsgConfigureADSBDemod, Message)
+
+const QString ADSBDemod::m_channelIdURI = "sdrangel.channel.adsbdemod";
+const QString ADSBDemod::m_channelId = "ADSBDemod";
+
+ADSBDemod::ADSBDemod(DeviceAPI *devieAPI) :
+        ChannelAPI(m_channelIdURI, ChannelAPI::StreamSingleSink),
+        m_deviceAPI(devieAPI),
+        m_basebandSampleRate(0),
+        m_targetAzElValid(false),
+        m_targetAzimuth(0.0f),
+        m_targetElevation(0.0f)
+{
+    qDebug("ADSBDemod::ADSBDemod");
+    setObjectName(m_channelId);
+
+    m_thread = new QThread(this);
+    m_basebandSink = new ADSBDemodBaseband();
+    m_basebandSink->moveToThread(m_thread);
+
+    m_worker = new ADSBDemodWorker();
+    m_basebandSink->setMessageQueueToWorker(m_worker->getInputMessageQueue());
+
+    applySettings(m_settings, true);
+
+    m_deviceAPI->addChannelSink(this);
+    m_deviceAPI->addChannelSinkAPI(this);
+
+    m_networkManager = new QNetworkAccessManager();
+    connect(m_networkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(networkManagerFinished(QNetworkReply*)));
+}
+
+ADSBDemod::~ADSBDemod()
+{
+    if (m_worker->isRunning()) {
+        stop();
+    }
+    delete m_worker;
+    disconnect(m_networkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(networkManagerFinished(QNetworkReply*)));
+    delete m_networkManager;
+    m_deviceAPI->removeChannelSinkAPI(this);
+    m_deviceAPI->removeChannelSink(this);
+    delete m_basebandSink;
+    delete m_thread;
+}
+
+uint32_t ADSBDemod::getNumberOfDeviceStreams() const
+{
+    return m_deviceAPI->getNbSourceStreams();
+}
+
+void ADSBDemod::feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end, bool firstOfBurst)
+{
+    (void) firstOfBurst;
+    m_basebandSink->feed(begin, end);
+}
+
+void ADSBDemod::start()
+{
+    qDebug() << "ADSBDemod::start";
+
+    if (m_basebandSampleRate != 0) {
+        m_basebandSink->setBasebandSampleRate(m_basebandSampleRate);
+    }
+
+    m_worker->reset();
+    m_worker->startWork();
+    m_basebandSink->reset();
+    m_thread->start();
+
+    ADSBDemodWorker::MsgConfigureADSBDemodWorker *msg = ADSBDemodWorker::MsgConfigureADSBDemodWorker::create(m_settings, true);
+    m_worker->getInputMessageQueue()->push(msg);
+}
+
+void ADSBDemod::stop()
+{
+    qDebug() << "ADSBDemod::stop";
+    m_worker->stopWork();
+    m_thread->exit();
+    m_thread->wait();
+}
+
+bool ADSBDemod::handleMessage(const Message& cmd)
+{
+    if (MsgConfigureADSBDemod::match(cmd))
+    {
+        MsgConfigureADSBDemod& cfg = (MsgConfigureADSBDemod&) cmd;
+        qDebug() << "ADSBDemod::handleMessage: MsgConfigureADSBDemod";
+
+        applySettings(cfg.getSettings(), cfg.getForce());
+
+        return true;
+    }
+    else if (DSPSignalNotification::match(cmd))
+    {
+        DSPSignalNotification& notif = (DSPSignalNotification&) cmd;
+        m_basebandSampleRate = notif.getSampleRate();
+        // Forward to the sink
+        DSPSignalNotification* rep = new DSPSignalNotification(notif); // make a copy
+        qDebug() << "ADSBDemod::handleMessage: DSPSignalNotification";
+        m_basebandSink->getInputMessageQueue()->push(rep);
+
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+
+void ADSBDemod::applySettings(const ADSBDemodSettings& settings, bool force)
+{
+    qDebug() << "ADSBDemod::applySettings:"
+            << " m_inputFrequencyOffset: " << settings.m_inputFrequencyOffset
+            << " m_rfBandwidth: " << settings.m_rfBandwidth
+            << " m_streamIndex: " << settings.m_streamIndex
+            << " m_useReverseAPI: " << settings.m_useReverseAPI
+            << " m_reverseAPIAddress: " << settings.m_reverseAPIAddress
+            << " m_reverseAPIPort: " << settings.m_reverseAPIPort
+            << " m_reverseAPIDeviceIndex: " << settings.m_reverseAPIDeviceIndex
+            << " m_reverseAPIChannelIndex: " << settings.m_reverseAPIChannelIndex
+            << " force: " << force;
+
+    QList<QString> reverseAPIKeys;
+
+    if ((settings.m_inputFrequencyOffset != m_settings.m_inputFrequencyOffset) || force) {
+        reverseAPIKeys.append("inputFrequencyOffset");
+    }
+    if ((settings.m_rgbColor != m_settings.m_rgbColor) || force) {
+        reverseAPIKeys.append("rgbColor");
+    }
+    if ((settings.m_title != m_settings.m_title) || force) {
+        reverseAPIKeys.append("title");
+    }
+    if ((settings.m_rfBandwidth != m_settings.m_rfBandwidth) || force) {
+        reverseAPIKeys.append("rfBandwidth");
+    }
+
+    if (m_settings.m_streamIndex != settings.m_streamIndex)
+    {
+        if (m_deviceAPI->getSampleMIMO()) // change of stream is possible for MIMO devices only
+        {
+            m_deviceAPI->removeChannelSinkAPI(this);
+            m_deviceAPI->removeChannelSink(this, m_settings.m_streamIndex);
+            m_deviceAPI->addChannelSink(this, settings.m_streamIndex);
+            m_deviceAPI->addChannelSinkAPI(this);
+        }
+
+        reverseAPIKeys.append("streamIndex");
+    }
+
+    ADSBDemodBaseband::MsgConfigureADSBDemodBaseband *msg = ADSBDemodBaseband::MsgConfigureADSBDemodBaseband::create(settings, force);
+    m_basebandSink->getInputMessageQueue()->push(msg);
+
+    ADSBDemodWorker::MsgConfigureADSBDemodWorker *workerMsg = ADSBDemodWorker::MsgConfigureADSBDemodWorker::create(settings, force);
+    m_worker->getInputMessageQueue()->push(workerMsg);
+
+    if (settings.m_useReverseAPI)
+    {
+        bool fullUpdate = ((m_settings.m_useReverseAPI != settings.m_useReverseAPI) && settings.m_useReverseAPI) ||
+                (m_settings.m_reverseAPIAddress != settings.m_reverseAPIAddress) ||
+                (m_settings.m_reverseAPIPort != settings.m_reverseAPIPort) ||
+                (m_settings.m_reverseAPIDeviceIndex != settings.m_reverseAPIDeviceIndex) ||
+                (m_settings.m_reverseAPIChannelIndex != settings.m_reverseAPIChannelIndex);
+        webapiReverseSendSettings(reverseAPIKeys, settings, fullUpdate || force);
+    }
+
+    m_settings = settings;
+}
+
+QByteArray ADSBDemod::serialize() const
+{
+    return m_settings.serialize();
+}
+
+bool ADSBDemod::deserialize(const QByteArray& data)
+{
+    bool success = true;
+
+    if (!m_settings.deserialize(data))
+    {
+        m_settings.resetToDefaults();
+        success = false;
+    }
+
+    MsgConfigureADSBDemod *msg = MsgConfigureADSBDemod::create(m_settings, true);
+    m_inputMessageQueue.push(msg);
+
+    return success;
+}
+
+int ADSBDemod::webapiSettingsGet(
+            SWGSDRangel::SWGChannelSettings& response,
+            QString& errorMessage)
+{
+    (void) errorMessage;
+    response.setAdsbDemodSettings(new SWGSDRangel::SWGADSBDemodSettings());
+    response.getAdsbDemodSettings()->init();
+    webapiFormatChannelSettings(response, m_settings);
+    return 200;
+}
+
+int ADSBDemod::webapiSettingsPutPatch(
+            bool force,
+            const QStringList& channelSettingsKeys,
+            SWGSDRangel::SWGChannelSettings& response,
+            QString& errorMessage)
+{
+    (void) errorMessage;
+    ADSBDemodSettings settings = m_settings;
+    webapiUpdateChannelSettings(settings, channelSettingsKeys, response);
+
+    MsgConfigureADSBDemod *msg = MsgConfigureADSBDemod::create(settings, force);
+    m_inputMessageQueue.push(msg);
+
+    if (m_guiMessageQueue) // forward to GUI if any
+    {
+        MsgConfigureADSBDemod *msgToGUI = MsgConfigureADSBDemod::create(settings, force);
+        m_guiMessageQueue->push(msgToGUI);
+    }
+
+    webapiFormatChannelSettings(response, settings);
+
+    return 200;
+}
+
+void ADSBDemod::webapiUpdateChannelSettings(
+        ADSBDemodSettings& settings,
+        const QStringList& channelSettingsKeys,
+        SWGSDRangel::SWGChannelSettings& response)
+{
+    if (channelSettingsKeys.contains("inputFrequencyOffset")) {
+        settings.m_inputFrequencyOffset = response.getAdsbDemodSettings()->getInputFrequencyOffset();
+    }
+    if (channelSettingsKeys.contains("rfBandwidth")) {
+        settings.m_rfBandwidth = response.getAdsbDemodSettings()->getRfBandwidth();
+    }
+    if (channelSettingsKeys.contains("correlationThreshold")) {
+        settings.m_correlationThreshold = response.getAdsbDemodSettings()->getCorrelationThreshold();
+    }
+    if (channelSettingsKeys.contains("samplesPerBit")) {
+        settings.m_samplesPerBit = response.getAdsbDemodSettings()->getSamplesPerBit();
+    }
+    if (channelSettingsKeys.contains("removeTimeout")) {
+        settings.m_removeTimeout = response.getAdsbDemodSettings()->getRemoveTimeout();
+    }
+    if (channelSettingsKeys.contains("beastEnabled")) {
+        settings.m_beastEnabled = response.getAdsbDemodSettings()->getBeastEnabled() != 0;
+    }
+    if (channelSettingsKeys.contains("beastHost")) {
+        settings.m_beastHost = *response.getAdsbDemodSettings()->getBeastHost();
+    }
+    if (channelSettingsKeys.contains("beastPort")) {
+        settings.m_beastPort = response.getAdsbDemodSettings()->getBeastPort();
+    }
+    if (channelSettingsKeys.contains("rgbColor")) {
+        settings.m_rgbColor = response.getAdsbDemodSettings()->getRgbColor();
+    }
+    if (channelSettingsKeys.contains("title")) {
+        settings.m_title = *response.getAdsbDemodSettings()->getTitle();
+    }
+    if (channelSettingsKeys.contains("streamIndex")) {
+        settings.m_streamIndex = response.getAdsbDemodSettings()->getStreamIndex();
+    }
+    if (channelSettingsKeys.contains("useReverseAPI")) {
+        settings.m_useReverseAPI = response.getAdsbDemodSettings()->getUseReverseApi() != 0;
+    }
+    if (channelSettingsKeys.contains("reverseAPIAddress")) {
+        settings.m_reverseAPIAddress = *response.getAdsbDemodSettings()->getReverseApiAddress();
+    }
+    if (channelSettingsKeys.contains("reverseAPIPort")) {
+        settings.m_reverseAPIPort = response.getAdsbDemodSettings()->getReverseApiPort();
+    }
+    if (channelSettingsKeys.contains("reverseAPIDeviceIndex")) {
+        settings.m_reverseAPIDeviceIndex = response.getAdsbDemodSettings()->getReverseApiDeviceIndex();
+    }
+    if (channelSettingsKeys.contains("reverseAPIChannelIndex")) {
+        settings.m_reverseAPIChannelIndex = response.getAdsbDemodSettings()->getReverseApiChannelIndex();
+    }
+}
+
+int ADSBDemod::webapiReportGet(
+            SWGSDRangel::SWGChannelReport& response,
+            QString& errorMessage)
+{
+    (void) errorMessage;
+    response.setAdsbDemodReport(new SWGSDRangel::SWGADSBDemodReport());
+    response.getAdsbDemodReport()->init();
+    webapiFormatChannelReport(response);
+    return 200;
+}
+
+void ADSBDemod::webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings& response, const ADSBDemodSettings& settings)
+{
+    response.getAdsbDemodSettings()->setInputFrequencyOffset(settings.m_inputFrequencyOffset);
+    response.getAdsbDemodSettings()->setRfBandwidth(settings.m_rfBandwidth);
+    response.getAdsbDemodSettings()->setCorrelationThreshold(settings.m_correlationThreshold);
+    response.getAdsbDemodSettings()->setSamplesPerBit(settings.m_samplesPerBit);
+    response.getAdsbDemodSettings()->setRemoveTimeout(settings.m_removeTimeout);
+    response.getAdsbDemodSettings()->setBeastEnabled(settings.m_beastEnabled ? 1 : 0);
+    response.getAdsbDemodSettings()->setBeastHost(new QString(settings.m_beastHost));
+    response.getAdsbDemodSettings()->setBeastPort(settings.m_beastPort);
+    response.getAdsbDemodSettings()->setRgbColor(settings.m_rgbColor);
+
+    if (response.getAdsbDemodSettings()->getTitle()) {
+        *response.getAdsbDemodSettings()->getTitle() = settings.m_title;
+    } else {
+        response.getAdsbDemodSettings()->setTitle(new QString(settings.m_title));
+    }
+
+    response.getAdsbDemodSettings()->setStreamIndex(settings.m_streamIndex);
+    response.getAdsbDemodSettings()->setUseReverseApi(settings.m_useReverseAPI ? 1 : 0);
+
+    if (response.getAdsbDemodSettings()->getReverseApiAddress()) {
+        *response.getAdsbDemodSettings()->getReverseApiAddress() = settings.m_reverseAPIAddress;
+    } else {
+        response.getAdsbDemodSettings()->setReverseApiAddress(new QString(settings.m_reverseAPIAddress));
+    }
+
+    response.getAdsbDemodSettings()->setReverseApiPort(settings.m_reverseAPIPort);
+    response.getAdsbDemodSettings()->setReverseApiDeviceIndex(settings.m_reverseAPIDeviceIndex);
+    response.getAdsbDemodSettings()->setReverseApiChannelIndex(settings.m_reverseAPIChannelIndex);
+}
+
+void ADSBDemod::webapiFormatChannelReport(SWGSDRangel::SWGChannelReport& response)
+{
+    double magsqAvg, magsqPeak;
+    int nbMagsqSamples;
+    getMagSqLevels(magsqAvg, magsqPeak, nbMagsqSamples);
+
+    response.getAdsbDemodReport()->setChannelPowerDb(CalcDb::dbPower(magsqAvg));
+    response.getAdsbDemodReport()->setChannelSampleRate(m_basebandSink->getChannelSampleRate());
+    if (m_targetAzElValid)
+    {
+        response.getAdsbDemodReport()->setTargetAzimuth(m_targetAzimuth);
+        response.getAdsbDemodReport()->setTargetElevation(m_targetElevation);
+    }
+}
+
+void ADSBDemod::webapiReverseSendSettings(QList<QString>& channelSettingsKeys, const ADSBDemodSettings& settings, bool force)
+{
+    SWGSDRangel::SWGChannelSettings *swgChannelSettings = new SWGSDRangel::SWGChannelSettings();
+    swgChannelSettings->setDirection(0); // single sink (Rx)
+    swgChannelSettings->setOriginatorChannelIndex(getIndexInDeviceSet());
+    swgChannelSettings->setOriginatorDeviceSetIndex(getDeviceSetIndex());
+    swgChannelSettings->setChannelType(new QString("ADSBDemod"));
+    swgChannelSettings->setAdsbDemodSettings(new SWGSDRangel::SWGADSBDemodSettings());
+    SWGSDRangel::SWGADSBDemodSettings *swgADSBDemodSettings = swgChannelSettings->getAdsbDemodSettings();
+
+    // transfer data that has been modified. When force is on transfer all data except reverse API data
+
+    if (channelSettingsKeys.contains("inputFrequencyOffset") || force) {
+        swgADSBDemodSettings->setInputFrequencyOffset(settings.m_inputFrequencyOffset);
+    }
+    if (channelSettingsKeys.contains("rfBandwidth") || force) {
+        swgADSBDemodSettings->setRfBandwidth(settings.m_rfBandwidth);
+    }
+    if (channelSettingsKeys.contains("correlationThreshold") || force) {
+        swgADSBDemodSettings->setCorrelationThreshold(settings.m_correlationThreshold);
+    }
+    if (channelSettingsKeys.contains("samplesPerBit") || force) {
+        swgADSBDemodSettings->setSamplesPerBit(settings.m_samplesPerBit);
+    }
+    if (channelSettingsKeys.contains("removeTimeout") || force) {
+        swgADSBDemodSettings->setRemoveTimeout(settings.m_removeTimeout);
+    }
+    if (channelSettingsKeys.contains("beastEnabled") || force) {
+        swgADSBDemodSettings->setBeastEnabled(settings.m_beastEnabled ? 1 : 0);
+    }
+    if (channelSettingsKeys.contains("beastHost") || force) {
+        swgADSBDemodSettings->setBeastHost(new QString(settings.m_beastHost));
+    }
+    if (channelSettingsKeys.contains("beastPort") || force) {
+        swgADSBDemodSettings->setBeastPort(settings.m_beastPort);
+    }
+    if (channelSettingsKeys.contains("rgbColor") || force) {
+        swgADSBDemodSettings->setRgbColor(settings.m_rgbColor);
+    }
+    if (channelSettingsKeys.contains("title") || force) {
+        swgADSBDemodSettings->setTitle(new QString(settings.m_title));
+    }
+    if (channelSettingsKeys.contains("streamIndex") || force) {
+        swgADSBDemodSettings->setStreamIndex(settings.m_streamIndex);
+    }
+
+    QString channelSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/channel/%4/settings")
+            .arg(settings.m_reverseAPIAddress)
+            .arg(settings.m_reverseAPIPort)
+            .arg(settings.m_reverseAPIDeviceIndex)
+            .arg(settings.m_reverseAPIChannelIndex);
+    m_networkRequest.setUrl(QUrl(channelSettingsURL));
+    m_networkRequest.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");
+
+    QBuffer *buffer = new QBuffer();
+    buffer->open((QBuffer::ReadWrite));
+    buffer->write(swgChannelSettings->asJson().toUtf8());
+    buffer->seek(0);
+
+    // Always use PATCH to avoid passing reverse API settings
+    QNetworkReply *reply = m_networkManager->sendCustomRequest(m_networkRequest, "PATCH", buffer);
+    buffer->setParent(reply);
+
+    delete swgChannelSettings;
+}
+
+void ADSBDemod::networkManagerFinished(QNetworkReply *reply)
+{
+    QNetworkReply::NetworkError replyError = reply->error();
+
+    if (replyError)
+    {
+        qWarning() << "ADSBDemod::networkManagerFinished:"
+                << " error(" << (int) replyError
+                << "): " << replyError
+                << ": " << reply->errorString();
+    }
+    else
+    {
+        QString answer = reply->readAll();
+        answer.chop(1); // remove last \n
+        qDebug("ADSBDemod::networkManagerFinished: reply:\n%s", answer.toStdString().c_str());
+    }
+
+    reply->deleteLater();
+}
diff --git a/plugins/channelrx/demodadsb/adsbdemod.h b/plugins/channelrx/demodadsb/adsbdemod.h
new file mode 100644
index 000000000..8d9c5e6af
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemod.h
@@ -0,0 +1,155 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2012 maintech GmbH, Otto-Hahn-Str. 15, 97204 Hoechberg, Germany //
+// written by Christian Daniel                                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_ADSBDEMOD_H
+#define INCLUDE_ADSBDEMOD_H
+
+#include <vector>
+
+#include <QNetworkRequest>
+
+#include "dsp/basebandsamplesink.h"
+#include "channel/channelapi.h"
+#include "util/message.h"
+
+#include "adsbdemodbaseband.h"
+#include "adsbdemodsettings.h"
+
+class QNetworkAccessManager;
+class QNetworkReply;
+class QThread;
+class DeviceAPI;
+class ADSBDemodWorker;
+
+class ADSBDemod : public BasebandSampleSink, public ChannelAPI {
+    Q_OBJECT
+public:
+    class MsgConfigureADSBDemod : public Message {
+        MESSAGE_CLASS_DECLARATION
+
+    public:
+        const ADSBDemodSettings& getSettings() const { return m_settings; }
+        bool getForce() const { return m_force; }
+
+        static MsgConfigureADSBDemod* create(const ADSBDemodSettings& settings, bool force)
+        {
+            return new MsgConfigureADSBDemod(settings, force);
+        }
+
+    private:
+        ADSBDemodSettings m_settings;
+        bool m_force;
+
+        MsgConfigureADSBDemod(const ADSBDemodSettings& settings, bool force) :
+            Message(),
+            m_settings(settings),
+            m_force(force)
+        { }
+    };
+
+    ADSBDemod(DeviceAPI *deviceAPI);
+    virtual ~ADSBDemod();
+    virtual void destroy() { delete this; }
+
+    virtual void feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end, bool positive);
+    virtual void start();
+    virtual void stop();
+    virtual bool handleMessage(const Message& cmd);
+
+    virtual void getIdentifier(QString& id) { id = m_channelId; }
+    virtual const QString& getURI() const { return m_channelIdURI; }
+    virtual void getTitle(QString& title) { title = m_settings.m_title; }
+    virtual qint64 getCenterFrequency() const { return m_settings.m_inputFrequencyOffset; }
+
+    virtual QByteArray serialize() const;
+    virtual bool deserialize(const QByteArray& data);
+
+    virtual int getNbSinkStreams() const { return 1; }
+    virtual int getNbSourceStreams() const { return 0; }
+
+    virtual qint64 getStreamCenterFrequency(int streamIndex, bool sinkElseSource) const
+    {
+        (void) streamIndex;
+        (void) sinkElseSource;
+        return m_settings.m_inputFrequencyOffset;
+    }
+
+    virtual int webapiSettingsGet(
+            SWGSDRangel::SWGChannelSettings& response,
+            QString& errorMessage);
+
+    virtual int webapiSettingsPutPatch(
+            bool force,
+            const QStringList& channelSettingsKeys,
+            SWGSDRangel::SWGChannelSettings& response,
+            QString& errorMessage);
+
+    virtual int webapiReportGet(
+            SWGSDRangel::SWGChannelReport& response,
+            QString& errorMessage);
+
+    static void webapiFormatChannelSettings(
+        SWGSDRangel::SWGChannelSettings& response,
+        const ADSBDemodSettings& settings);
+
+    static void webapiUpdateChannelSettings(
+            ADSBDemodSettings& settings,
+            const QStringList& channelSettingsKeys,
+            SWGSDRangel::SWGChannelSettings& response);
+
+    void getMagSqLevels(double& avg, double& peak, int& nbSamples) { m_basebandSink->getMagSqLevels(avg, peak, nbSamples); }
+    void propagateMessageQueueToGUI() {  m_basebandSink->setMessageQueueToGUI(getMessageQueueToGUI()); }
+
+    void setTarget(float targetAzimuth, float targetElevation)
+    {
+        m_targetAzimuth = targetAzimuth;
+        m_targetElevation = targetElevation;
+        m_targetAzElValid = true;
+    }
+    void clearTarget() { m_targetAzElValid = false; }
+
+    uint32_t getNumberOfDeviceStreams() const;
+
+    static const QString m_channelIdURI;
+    static const QString m_channelId;
+
+private:
+    DeviceAPI* m_deviceAPI;
+    QThread *m_thread;
+    ADSBDemodWorker *m_worker;
+    ADSBDemodBaseband* m_basebandSink;
+    ADSBDemodSettings m_settings;
+    int m_basebandSampleRate; //!< stored from device message used when starting baseband sink
+
+    bool m_targetAzElValid;
+    float m_targetAzimuth;
+    float m_targetElevation;
+
+    QNetworkAccessManager *m_networkManager;
+    QNetworkRequest m_networkRequest;
+
+    void applySettings(const ADSBDemodSettings& settings, bool force = false);
+    void webapiFormatChannelReport(SWGSDRangel::SWGChannelReport& response);
+    void webapiReverseSendSettings(QList<QString>& channelSettingsKeys, const ADSBDemodSettings& settings, bool force);
+
+private slots:
+    void networkManagerFinished(QNetworkReply *reply);
+};
+
+#endif // INCLUDE_ADSBDEMOD_H
diff --git a/plugins/channelrx/demodadsb/adsbdemodbaseband.cpp b/plugins/channelrx/demodadsb/adsbdemodbaseband.cpp
new file mode 100644
index 000000000..d2ed1a268
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodbaseband.cpp
@@ -0,0 +1,157 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2019 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include <QDebug>
+
+#include "dsp/dspengine.h"
+#include "dsp/dspcommands.h"
+#include "dsp/downchannelizer.h"
+
+#include "adsbdemodbaseband.h"
+#include "adsb.h"
+
+MESSAGE_CLASS_DEFINITION(ADSBDemodBaseband::MsgConfigureADSBDemodBaseband, Message)
+
+ADSBDemodBaseband::ADSBDemodBaseband() :
+    m_mutex(QMutex::Recursive)
+{
+    m_sampleFifo.setSize(SampleSinkFifo::getSizePolicy(8000000));
+    m_channelizer = new DownChannelizer(&m_sink);
+
+    qDebug("ADSBDemodBaseband::ADSBDemodBaseband");
+    QObject::connect(
+        &m_sampleFifo,
+        &SampleSinkFifo::dataReady,
+        this,
+        &ADSBDemodBaseband::handleData,
+        Qt::QueuedConnection
+    );
+
+    connect(&m_inputMessageQueue, SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages()));
+}
+
+ADSBDemodBaseband::~ADSBDemodBaseband()
+{
+    delete m_channelizer;
+}
+
+void ADSBDemodBaseband::reset()
+{
+    QMutexLocker mutexLocker(&m_mutex);
+    m_sampleFifo.reset();
+}
+
+void ADSBDemodBaseband::feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end)
+{
+    m_sampleFifo.write(begin, end);
+}
+
+void ADSBDemodBaseband::handleData()
+{
+    QMutexLocker mutexLocker(&m_mutex);
+
+    while ((m_sampleFifo.fill() > 0) && (m_inputMessageQueue.size() == 0))
+    {
+        SampleVector::iterator part1begin;
+        SampleVector::iterator part1end;
+        SampleVector::iterator part2begin;
+        SampleVector::iterator part2end;
+
+        std::size_t count = m_sampleFifo.readBegin(m_sampleFifo.fill(), &part1begin, &part1end, &part2begin, &part2end);
+
+        // first part of FIFO data
+        if (part1begin != part1end) {
+            m_channelizer->feed(part1begin, part1end);
+        }
+
+        // second part of FIFO data (used when block wraps around)
+        if(part2begin != part2end) {
+            m_channelizer->feed(part2begin, part2end);
+        }
+
+        m_sampleFifo.readCommit((unsigned int) count);
+    }
+}
+
+void ADSBDemodBaseband::handleInputMessages()
+{
+    Message* message;
+
+    while ((message = m_inputMessageQueue.pop()) != nullptr)
+    {
+        if (handleMessage(*message)) {
+            delete message;
+        }
+    }
+}
+
+bool ADSBDemodBaseband::handleMessage(const Message& cmd)
+{
+    if (MsgConfigureADSBDemodBaseband::match(cmd))
+    {
+        QMutexLocker mutexLocker(&m_mutex);
+        MsgConfigureADSBDemodBaseband& cfg = (MsgConfigureADSBDemodBaseband&) cmd;
+        qDebug() << "ADSBDemodBaseband::handleMessage: MsgConfigureADSBDemodBaseband";
+
+        applySettings(cfg.getSettings(), cfg.getForce());
+
+        return true;
+    }
+    else if (DSPSignalNotification::match(cmd))
+    {
+        QMutexLocker mutexLocker(&m_mutex);
+        DSPSignalNotification& notif = (DSPSignalNotification&) cmd;
+        qDebug() << "ADSBDemodBaseband::handleMessage: DSPSignalNotification: basebandSampleRate: " << notif.getSampleRate();
+        m_sampleFifo.setSize(SampleSinkFifo::getSizePolicy(8*notif.getSampleRate()));  // Need a large FIFO otherwise we get overflows - revist after better upsampling
+        m_channelizer->setBasebandSampleRate(notif.getSampleRate());
+        m_sink.applyChannelSettings(m_channelizer->getChannelSampleRate(), m_channelizer->getChannelFrequencyOffset());
+
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+
+void ADSBDemodBaseband::applySettings(const ADSBDemodSettings& settings, bool force)
+{
+    if ((settings.m_inputFrequencyOffset != m_settings.m_inputFrequencyOffset)
+        || (settings.m_samplesPerBit != m_settings.m_samplesPerBit) || force)
+    {
+        int requestedRate = ADS_B_BITS_PER_SECOND * settings.m_samplesPerBit;
+        m_channelizer->setChannelization(requestedRate, settings.m_inputFrequencyOffset);
+        m_sink.applyChannelSettings(m_channelizer->getChannelSampleRate(), m_channelizer->getChannelFrequencyOffset());
+    }
+
+    m_sink.applySettings(settings, force);
+
+    m_settings = settings;
+}
+
+int ADSBDemodBaseband::getChannelSampleRate() const
+{
+    return m_channelizer->getChannelSampleRate();
+}
+
+
+void ADSBDemodBaseband::setBasebandSampleRate(int sampleRate)
+{
+    m_channelizer->setBasebandSampleRate(sampleRate);
+    m_sink.applyChannelSettings(m_channelizer->getChannelSampleRate(), m_channelizer->getChannelFrequencyOffset());
+}
diff --git a/plugins/channelrx/demodadsb/adsbdemodbaseband.h b/plugins/channelrx/demodadsb/adsbdemodbaseband.h
new file mode 100644
index 000000000..be7367491
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodbaseband.h
@@ -0,0 +1,87 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2019 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_ADSBDEMODBASEBAND_H
+#define INCLUDE_ADSBDEMODBASEBAND_H
+
+#include <QObject>
+#include <QMutex>
+
+#include "dsp/samplesinkfifo.h"
+#include "util/message.h"
+#include "util/messagequeue.h"
+
+#include "adsbdemodsink.h"
+
+class DownChannelizer;
+
+class ADSBDemodBaseband : public QObject
+{
+    Q_OBJECT
+public:
+    class MsgConfigureADSBDemodBaseband : public Message {
+        MESSAGE_CLASS_DECLARATION
+
+    public:
+        const ADSBDemodSettings& getSettings() const { return m_settings; }
+        bool getForce() const { return m_force; }
+
+        static MsgConfigureADSBDemodBaseband* create(const ADSBDemodSettings& settings, bool force)
+        {
+            return new MsgConfigureADSBDemodBaseband(settings, force);
+        }
+
+    private:
+        ADSBDemodSettings m_settings;
+        bool m_force;
+
+        MsgConfigureADSBDemodBaseband(const ADSBDemodSettings& settings, bool force) :
+            Message(),
+            m_settings(settings),
+            m_force(force)
+        { }
+    };
+
+    ADSBDemodBaseband();
+    ~ADSBDemodBaseband();
+    void reset();
+    void feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end);
+    MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } //!< Get the queue for asynchronous inbound communication
+    int getChannelSampleRate() const;
+    void getMagSqLevels(double& avg, double& peak, int& nbSamples) { m_sink.getMagSqLevels(avg, peak, nbSamples); }
+    void setMessageQueueToGUI(MessageQueue *messageQueue) { m_sink.setMessageQueueToGUI(messageQueue); }
+    void setMessageQueueToWorker(MessageQueue *messageQueue) { m_sink.setMessageQueueToWorker(messageQueue); }
+    void setBasebandSampleRate(int sampleRate);
+
+private:
+    SampleSinkFifo m_sampleFifo;
+    DownChannelizer *m_channelizer;
+    ADSBDemodSink m_sink;
+    MessageQueue m_inputMessageQueue; //!< Queue for asynchronous inbound communication
+    ADSBDemodSettings m_settings;
+    QMutex m_mutex;
+
+    bool handleMessage(const Message& cmd);
+    void applySettings(const ADSBDemodSettings& settings, bool force = false);
+
+private slots:
+    void handleInputMessages();
+    void handleData(); //!< Handle data when samples have to be processed
+};
+
+#endif // INCLUDE_ADSBDEMODBASEBAND_H
diff --git a/plugins/channelrx/demodadsb/adsbdemodgui.cpp b/plugins/channelrx/demodadsb/adsbdemodgui.cpp
new file mode 100644
index 000000000..d035cf6d4
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodgui.cpp
@@ -0,0 +1,1024 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#define _USE_MATH_DEFINES
+#include <cmath>
+
+#include "device/deviceuiset.h"
+#include <QDockWidget>
+#include <QMainWindow>
+#include <QQuickItem>
+#include <QGeoLocation>
+#include <QQmlContext>
+#include <QDesktopServices>
+#include <QUrl>
+#include <QDebug>
+
+#include "ui_adsbdemodgui.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 "dsp/dspengine.h"
+#include "mainwindow.h"
+
+#include "adsbdemodreport.h"
+#include "adsbdemod.h"
+#include "adsbdemodgui.h"
+#include "adsb.h"
+
+// ADS-B table columns
+#define ADSB_COL_ICAO           0
+#define ADSB_COL_FLIGHT         1
+#define ADSB_COL_LATITUDE       2
+#define ADSB_COL_LONGITUDE      3
+#define ADSB_COL_ALTITUDE       4
+#define ADSB_COL_SPEED          5
+#define ADSB_COL_HEADING        6
+#define ADSB_COL_VERTICALRATE   7
+#define ADSB_COL_CATEGORY       8
+#define ADSB_COL_STATUS         9
+#define ADSB_COL_RANGE          10
+#define ADSB_COL_AZEL           11
+#define ADSB_COL_TIME           12
+#define ADSB_COL_FRAMECOUNT     13
+#define ADSB_COL_CORRELATION    14
+
+const char *Aircraft::m_speedTypeNames[] = {
+    "GS", "TAS", "IAS"
+};
+
+ADSBDemodGUI* ADSBDemodGUI::create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, BasebandSampleSink *rxChannel)
+{
+    ADSBDemodGUI* gui = new ADSBDemodGUI(pluginAPI, deviceUISet, rxChannel);
+    return gui;
+}
+
+void ADSBDemodGUI::destroy()
+{
+    delete this;
+}
+
+void ADSBDemodGUI::resetToDefaults()
+{
+    m_settings.resetToDefaults();
+    displaySettings();
+    applySettings();
+}
+
+QByteArray ADSBDemodGUI::serialize() const
+{
+    return m_settings.serialize();
+}
+
+bool ADSBDemodGUI::deserialize(const QByteArray& data)
+{
+    if(m_settings.deserialize(data)) {
+        displaySettings();
+        applySettings(true);
+        return true;
+    } else {
+        resetToDefaults();
+        return false;
+    }
+}
+
+// Longitude zone (returns value in range [1,59]
+static int cprNL(Real lat)
+{
+    if (lat == 0.0f)
+        return 59;
+    else if ((lat == 87.0f) || (lat == -87.0f))
+        return 2;
+    else if ((lat > 87.0f) || (lat < -87.0f))
+        return 1;
+    else
+    {
+        double nz = 15.0;
+        double n = 1 - std::cos(M_PI / (2.0 * nz));
+        double d = std::cos(std::fabs(lat) * M_PI/180.0);
+        return std::floor((M_PI * 2.0) / std::acos(1.0 - (n/(d*d))));
+    }
+}
+
+static int cprN(Real lat, int odd)
+{
+    int nl = cprNL(lat) - odd;
+    if (nl > 1)
+        return nl;
+    else
+        return 1;
+}
+
+static Real feetToMetres(Real feet)
+{
+    return feet * 0.3048;
+}
+
+// Can't use std::fmod, as that works differently for negative numbers
+static Real modulus(Real x, Real y)
+{
+    return x - y * std::floor(x/y);
+}
+
+QVariant AircraftModel::data(const QModelIndex &index, int role) const
+{
+    int row = index.row();
+    if ((row < 0) || (row >= m_aircrafts.count()))
+        return QVariant();
+    if (role == AircraftModel::positionRole)
+    {
+        // Coordinates to display the aircraft icon at
+        QGeoCoordinate coords;
+        coords.setLatitude(m_aircrafts[row]->m_latitude);
+        coords.setLongitude(m_aircrafts[row]->m_longitude);
+        coords.setAltitude(m_aircrafts[row]->m_altitude * 0.3048); // Convert feet to metres
+        return QVariant::fromValue(coords);
+    }
+    else if (role == AircraftModel::headingRole)
+    {
+        // What rotation to draw the aircraft icon at
+        return QVariant::fromValue(m_aircrafts[row]->m_heading);
+    }
+    else if (role == AircraftModel::adsbDataRole)
+    {
+        // Create the text to go in the bubble next to the aircraft
+        QStringList list;
+        if (m_aircrafts[row]->m_flight.length() > 0)
+        {
+            list.append(QString("Flight: %1").arg(m_aircrafts[row]->m_flight));
+        }
+        else
+        {
+            list.append(QString("ICAO: %1").arg(m_aircrafts[row]->m_icao, 1, 16));
+        }
+        if (m_aircrafts[row]->m_altitudeValid)
+        {
+            list.append(QString("Altitude: %1 (ft)").arg(m_aircrafts[row]->m_altitude));
+        }
+        if (m_aircrafts[row]->m_speedValid)
+        {
+            list.append(QString("%1: %2 (kn)").arg(m_aircrafts[row]->m_speedTypeNames[m_aircrafts[row]->m_speedType]).arg(m_aircrafts[row]->m_speed));
+        }
+        if (m_aircrafts[row]->m_verticalRateValid)
+        {
+            QString desc;
+            if (m_aircrafts[row]->m_verticalRate == 0)
+                desc = "Level flight";
+            else if (m_aircrafts[row]->m_verticalRate > 0)
+                desc = QString("Climbing: %1 (ft/min)").arg(m_aircrafts[row]->m_verticalRate);
+            else
+                desc = QString("Descending: %1 (ft/min)").arg(m_aircrafts[row]->m_verticalRate);
+            list.append(QString(desc));
+        }
+        if  ((m_aircrafts[row]->m_status.length() > 0) && m_aircrafts[row]->m_status.compare("No emergency"))
+        {
+            list.append(m_aircrafts[row]->m_status);
+        }
+        QString data = list.join("\n");
+        return QVariant::fromValue(data);
+    }
+    else if (role == AircraftModel::aircraftImageRole)
+    {
+        // Select an image to use for the aircraft
+        if (m_aircrafts[row]->m_emitterCategory.length() > 0)
+        {
+            if (!m_aircrafts[row]->m_emitterCategory.compare("Heavy"))
+                return QVariant::fromValue(QString("aircraft_4engine.png"));
+            else if (!m_aircrafts[row]->m_emitterCategory.compare("Large"))
+                return QVariant::fromValue(QString("aircraft_2engine.png"));
+            else if (!m_aircrafts[row]->m_emitterCategory.compare("Small"))
+                return QVariant::fromValue(QString("aircraft_2enginesmall.png"));
+            else if (!m_aircrafts[row]->m_emitterCategory.compare("Rotorcraft"))
+                return QVariant::fromValue(QString("aircraft_helicopter.png"));
+            else if (!m_aircrafts[row]->m_emitterCategory.compare("High performance"))
+                return QVariant::fromValue(QString("aircraft_fighter.png"));
+            else if (!m_aircrafts[row]->m_emitterCategory.compare("Light")
+                    || !m_aircrafts[row]->m_emitterCategory.compare("Ultralight")
+                    || !m_aircrafts[row]->m_emitterCategory.compare("Glider/sailplane"))
+                return QVariant::fromValue(QString("aircraft_light.png"));
+            else if (!m_aircrafts[row]->m_emitterCategory.compare("Space vehicle"))
+                return QVariant::fromValue(QString("aircraft_space.png"));
+            else if (!m_aircrafts[row]->m_emitterCategory.compare("UAV"))
+                return QVariant::fromValue(QString("aircraft_drone.png"));
+            else if (!m_aircrafts[row]->m_emitterCategory.compare("Emergency vehicle")
+                    || !m_aircrafts[row]->m_emitterCategory.compare("Service vehicle"))
+                return QVariant::fromValue(QString("map_truck.png"));
+            else
+                return QVariant::fromValue(QString("aircraft_2engine.png"));
+        }
+        else
+            return QVariant::fromValue(QString("aircraft_2engine.png"));
+    }
+    else if (role == AircraftModel::bubbleColourRole)
+    {
+        // Select a background colour for the text bubble next to the aircraft
+        if (m_aircrafts[row]->m_isBeingTracked)
+            return  QVariant::fromValue(QColor("lightgreen"));
+        else if ((m_aircrafts[row]->m_status.length() > 0) && m_aircrafts[row]->m_status.compare("No emergency"))
+            return  QVariant::fromValue(QColor("lightred"));
+        else
+            return  QVariant::fromValue(QColor("lightblue"));
+    }
+    return QVariant();
+}
+
+// Called when we have both lat & long
+void ADSBDemodGUI::updatePosition(Aircraft *aircraft)
+{
+    if (!aircraft->m_positionValid)
+    {
+        aircraft->m_positionValid = true;
+        // Now we have a position, add a plane to the map
+        QGeoCoordinate coords;
+        coords.setLatitude(aircraft->m_latitude);
+        coords.setLongitude(aircraft->m_longitude);
+        m_aircraftModel.addAircraft(aircraft);
+    }
+    // Calculate range, azimuth and elevation to aircraft from station
+    m_azEl.setTarget(aircraft->m_latitude, aircraft->m_longitude, feetToMetres(aircraft->m_altitude));
+    m_azEl.calculate();
+    aircraft->m_range = m_azEl.getDistance();
+    aircraft->m_azimuth = m_azEl.getAzimuth();
+    aircraft->m_elevation = m_azEl.getElevation();
+    aircraft->m_rangeItem->setText(QString("%1").arg(aircraft->m_range/1000.0, 0, 'f', 1));
+    aircraft->m_azElItem->setText(QString("%1/%2").arg(std::round(aircraft->m_azimuth)).arg(std::round(aircraft->m_elevation)));
+    if (aircraft == m_trackAircraft)
+        m_adsbDemod->setTarget(aircraft->m_azimuth, aircraft->m_elevation);
+}
+
+void ADSBDemodGUI::handleADSB(const QByteArray data, const QDateTime dateTime, float correlation)
+{
+    const char idMap[] = "?ABCDEFGHIJKLMNOPQRSTUVWXYZ????? ???????????????0123456789??????";
+    const QString categorySetA[] = {
+        "None",
+        "Light",
+        "Small",
+        "Large",
+        "High vortex",
+        "Heavy",
+        "High performance",
+        "Rotorcraft"
+    };
+    const QString categorySetB[] = {
+        "None",
+        "Glider/sailplane",
+        "Lighter-than-air",
+        "Parachutist",
+        "Ultralight",
+        "Reserved",
+        "UAV",
+        "Space vehicle"
+    };
+    const QString categorySetC[] = {
+        "None",
+        "Emergency vehicle",
+        "Service vehicle",
+        "Ground obstruction",
+        "Cluster obstacle",
+        "Line obstacle",
+        "Reserved",
+        "Reserved"
+    };
+    const QString emergencyStatus[] = {
+        "No emergency",
+        "General emergency",
+        "Lifeguard/Medical",
+        "Minimum fuel",
+        "No communications",
+        "Unlawful interference",
+        "Downed aircraft",
+        "Reserved"
+    };
+
+    int df = (data[0] >> 3) & ADS_B_DF_MASK; // Downlink format
+    int ca = data[0] & 0x7; // Capability
+    unsigned icao = ((data[1] & 0xff) << 16) | ((data[2] & 0xff) << 8) | (data[3] & 0xff); // ICAO aircraft address
+    int tc = (data[4] >> 3) & 0x1f; // Type code
+
+    Aircraft *aircraft;
+    if (m_aircraft.contains(icao))
+    {
+        // Update existing aircraft info
+        aircraft = m_aircraft.value(icao);
+    }
+    else
+    {
+        // Add new aircraft
+        aircraft = new Aircraft;
+        aircraft->m_icao = icao;
+        m_aircraft.insert(icao, aircraft);
+        aircraft->m_icaoItem->setText(QString("%1").arg(aircraft->m_icao, 1, 16));
+        int row = ui->adsbData->rowCount();
+        ui->adsbData->setRowCount(row + 1);
+        ui->adsbData->setItem(row, ADSB_COL_ICAO, aircraft->m_icaoItem);
+        ui->adsbData->setItem(row, ADSB_COL_FLIGHT, aircraft->m_flightItem);
+        ui->adsbData->setItem(row, ADSB_COL_LATITUDE, aircraft->m_latitudeItem);
+        ui->adsbData->setItem(row, ADSB_COL_LONGITUDE, aircraft->m_longitudeItem);
+        ui->adsbData->setItem(row, ADSB_COL_ALTITUDE, aircraft->m_altitudeItem);
+        ui->adsbData->setItem(row, ADSB_COL_SPEED, aircraft->m_speedItem);
+        ui->adsbData->setItem(row, ADSB_COL_HEADING, aircraft->m_headingItem);
+        ui->adsbData->setItem(row, ADSB_COL_VERTICALRATE, aircraft->m_verticalRateItem);
+        ui->adsbData->setItem(row, ADSB_COL_CATEGORY, aircraft->m_emitterCategoryItem);
+        ui->adsbData->setItem(row, ADSB_COL_STATUS, aircraft->m_statusItem);
+        ui->adsbData->setItem(row, ADSB_COL_RANGE, aircraft->m_rangeItem);
+        ui->adsbData->setItem(row, ADSB_COL_AZEL, aircraft->m_azElItem);
+        ui->adsbData->setItem(row, ADSB_COL_TIME, aircraft->m_timeItem);
+        ui->adsbData->setItem(row, ADSB_COL_FRAMECOUNT, aircraft->m_adsbFrameCountItem);
+        ui->adsbData->setItem(row, ADSB_COL_CORRELATION, aircraft->m_correlationItem);
+    }
+    aircraft->m_time = dateTime;
+    QTime time = dateTime.time();
+    aircraft->m_timeItem->setText(QString("%1:%2:%3").arg(time.hour(), 2, 10, QLatin1Char('0')).arg(time.minute(), 2, 10, QLatin1Char('0')).arg(time.second(), 2, 10, QLatin1Char('0')));
+    aircraft->m_adsbFrameCount++;
+    aircraft->m_adsbFrameCountItem->setText(QString("%1").arg(aircraft->m_adsbFrameCount));
+
+    if (correlation < aircraft->m_minCorrelation)
+        aircraft->m_minCorrelation = correlation;
+    if (correlation > aircraft->m_maxCorrelation)
+        aircraft->m_maxCorrelation = correlation;
+    aircraft->m_sumCorrelation += correlation;
+    aircraft->m_correlationItem->setText(QString("%1/%2/%3").arg(aircraft->m_minCorrelation, 3, 'f', 1).arg(aircraft->m_sumCorrelation / aircraft->m_adsbFrameCount, 3, 'f', 1).arg(aircraft->m_maxCorrelation, 3, 'f', 1));
+
+
+    if ((tc >= 1) && ((tc <= 4)))
+    {
+        // Aircraft identification
+        int ec = data[4] & 0x7;   // Emitter category
+        if (tc == 4)
+            aircraft->m_emitterCategory = categorySetA[ec];
+        else if (tc == 3)
+            aircraft->m_emitterCategory = categorySetB[ec];
+        else if (tc == 2)
+            aircraft->m_emitterCategory = categorySetC[ec];
+        else
+            aircraft->m_emitterCategory = QString("Reserved");
+        aircraft->m_emitterCategoryItem->setText(aircraft->m_emitterCategory);
+
+        // Flight/callsign - Extract 8 6-bit characters from 6 8-bit bytes, MSB first
+        unsigned char c[8];
+        char callsign[9];
+        c[0] = (data[5] >> 2) & 0x3f; // 6
+        c[1] = ((data[5] & 0x3) << 4) | ((data[6] & 0xf0) >> 4);  // 2+4
+        c[2] = ((data[6] & 0xf) << 2) | ((data[7] & 0xc0) >> 6);  // 4+2
+        c[3] = (data[7] & 0x3f); // 6
+        c[4] = (data[8] >> 2) & 0x3f;
+        c[5] = ((data[8] & 0x3) << 4) | ((data[9] & 0xf0) >> 4);
+        c[6] = ((data[9] & 0xf) << 2) | ((data[10] & 0xc0) >> 6);
+        c[7] = (data[10] & 0x3f);
+        // Map to ASCII
+        for (int i = 0; i < 8; i++)
+            callsign[i] = idMap[c[i]];
+        callsign[8] = '\0';
+
+        aircraft->m_flight = QString(callsign);
+        aircraft->m_flightItem->setText(aircraft->m_flight);
+    }
+    else if ((tc >= 5) && (tc <= 8))
+    {
+        // Surface position
+    }
+    else if (((tc >= 9) && (tc <= 18)) || ((tc >= 20) && (tc <= 22)))
+    {
+        // Airbourne position (9-18 baro, 20-22 GNSS)
+        int ss = (data[4] >> 1) & 0x3; // Surveillance status
+        int nicsb = data[4] & 1; // NIC supplement-B
+        int alt = ((data[5] & 0xff) << 4) | ((data[6] >> 4) & 0xf); // Altitude
+        int n = ((alt >> 1) & 0x7f0) | (alt & 0xf);
+        int alt_ft = n * ((alt & 0x10) ? 25 : 100) - 1000;
+
+        aircraft->m_altitude = alt_ft;
+        aircraft->m_altitudeValid = true;
+        aircraft->m_altitudeItem->setText(QString("%1").arg(aircraft->m_altitude));
+
+        int t = (data[6] >> 3) & 1; // Time
+        int f = (data[6] >> 2) & 1; // CPR odd/even frame
+        int lat_cpr = ((data[6] & 3) << 15) | ((data[7] & 0xff) << 7) | ((data[8] >> 1) & 0x7f);
+        int lon_cpr = ((data[8] & 1) << 16) | ((data[9] & 0xff) << 8) | (data[10] & 0xff);
+
+        aircraft->m_cprValid[f] = true;
+        aircraft->m_cprLat[f] = lat_cpr/131072.0f;
+        aircraft->m_cprLong[f] = lon_cpr/131072.0f;
+
+        // Check if both odd and even frames are available
+        // See: https://mode-s.org/decode/adsb/airborne-position.html
+        // We could compare global + local methods to see if the positions are sensible
+        if (aircraft->m_cprValid[0] && aircraft->m_cprValid[1])
+        {
+            // Global decode using odd and even frames
+
+            // Calculate latitude
+            const Real dLatEven = 360.0f/60.0f;
+            const Real dLatOdd = 360.0f/59.0f;
+            Real latEven, latOdd;
+
+            int j = std::floor(59.0f*aircraft->m_cprLat[0] - 60.0f*aircraft->m_cprLat[1] + 0.5);
+            latEven = dLatEven * ((j % 60) + aircraft->m_cprLat[0]);
+            if (latEven >= 270.0f)
+                latEven -= 360.0f;
+            latOdd = dLatOdd * ((j % 59) + aircraft->m_cprLat[1]);
+            if (latOdd >= 270.0f)
+                latOdd -= 360.0f;
+            if (!f)
+                aircraft->m_latitude = latEven;
+            else
+                aircraft->m_latitude = latOdd;
+            aircraft->m_latitudeItem->setText(QString("%1").arg(aircraft->m_latitude));
+
+            // Check if both frames in same latitude zone
+            int latEvenNL = cprNL(latEven);
+            int latOddNL = cprNL(latOdd);
+            if (latEvenNL == latOddNL)
+            {
+                // Calculate longitude
+                if (!f)
+                {
+                    int ni = cprN(latEven, 0);
+                    int m = std::floor(aircraft->m_cprLong[0] * (latEvenNL - 1) - aircraft->m_cprLong[1] * latEvenNL + 0.5f);
+                    aircraft->m_longitude = (360.0f/ni) * ((m % ni) + aircraft->m_cprLong[0]);
+                }
+                else
+                {
+                    int ni = cprN(latOdd, 1);
+                    int m = std::floor(aircraft->m_cprLong[0] * (latOddNL - 1) - aircraft->m_cprLong[1] * latOddNL + 0.5f);
+                    aircraft->m_longitude = (360.0f/ni) * ((m % ni) + aircraft->m_cprLong[1]);
+                }
+                if (aircraft->m_longitude > 180.0f)
+                    aircraft->m_longitude -= 360.0f;
+                aircraft->m_longitudeItem->setText(QString("%1").arg(aircraft->m_longitude));
+                updatePosition(aircraft);
+            }
+        }
+        else
+        {
+            // Local decode using a single aircraft position + location of receiver
+            // Only valid if within 180nm
+
+            // Caclulate latitude
+            const Real dLatEven = 360.0f/60.0f;
+            const Real dLatOdd = 360.0f/59.0f;
+            Real dLat = f ? dLatOdd : dLatEven;
+            int j = std::floor(m_azEl.getLocationSpherical().m_latitude/dLat) + std::floor(modulus(m_azEl.getLocationSpherical().m_latitude, dLat)/dLat - aircraft->m_cprLat[f] + 0.5);
+            aircraft->m_latitude = dLat * (j + aircraft->m_cprLat[f]);
+            // Add suffix of L to indicate local decode
+            aircraft->m_latitudeItem->setText(QString("%1 L").arg(aircraft->m_latitude));
+
+            // Caclulate longitude
+            Real dLong;
+            int latNL = cprNL(aircraft->m_latitude);
+            if (f == 0)
+            {
+                if (latNL > 0)
+                    dLong = 360.0 / latNL;
+                else
+                    dLong = 360.0;
+            }
+            else
+            {
+                if ((latNL - 1) > 0)
+                    dLong = 360.0 / (latNL - 1);
+                else
+                    dLong = 360.0;
+            }
+            int m = std::floor(m_azEl.getLocationSpherical().m_longitude/dLong) + std::floor(modulus(m_azEl.getLocationSpherical().m_longitude, dLong)/dLong - aircraft->m_cprLong[f] + 0.5);
+            aircraft->m_longitude = dLong * (m + aircraft->m_cprLong[f]);
+            // Add suffix of L to indicate local decode
+            aircraft->m_longitudeItem->setText(QString("%1 L").arg(aircraft->m_longitude));
+            updatePosition(aircraft);
+        }
+    }
+    else if (tc == 19)
+    {
+        // Airbourne velocity
+        int st = data[4] & 0x7;   // Subtype
+        int ic = (data[5] >> 7) & 1; // Intent change flag
+        int nac = (data[5] >> 3) & 0x3; // Velocity uncertainty
+        if ((st == 1) || (st == 2))
+        {
+            // Ground speed
+            int s_ew = (data[5] >> 2) & 1; // East-west velocity sign
+            int v_ew = ((data[5] & 0x3) << 8) | (data[6] & 0xff); // East-west velocity
+            int s_ns = (data[7] >> 7) & 1; // North-south velocity sign
+            int v_ns = ((data[7] & 0x7f) << 3) | ((data[8] >> 5) & 0x7); // North-south velocity
+
+            int v_we;
+            int v_sn;
+            int v;
+            int h;
+
+            if (s_ew)
+                v_we = -1 * (v_ew - 1);
+            else
+                v_we = v_ew - 1;
+            if (s_ns)
+                v_sn = -1 * (v_ns - 1);
+            else
+                v_sn = v_ns - 1;
+            v = (int)std::sqrt(v_we*v_we + v_sn*v_sn);
+            h = std::atan2(v_we, v_sn) * 360.0/(2.0*M_PI);
+            if (h < 0)
+                h += 360;
+
+            aircraft->m_heading = h;
+            aircraft->m_headingValid = true;
+            aircraft->m_speed = v;
+            aircraft->m_speedType = Aircraft::GS;
+            aircraft->m_speedValid = true;
+            aircraft->m_headingItem->setText(QString("%1").arg(aircraft->m_heading));
+            aircraft->m_speedItem->setText(QString("%1").arg(aircraft->m_speed));
+        }
+        else
+        {
+            // Airspeed
+            int s_hdg = (data[5] >> 2) & 1; // Heading status
+            int hdg =  ((data[5] & 0x3) << 8) | (data[6] & 0xff); // Heading
+            if (s_hdg)
+            {
+                aircraft->m_heading = hdg/1024.0f*360.0f;
+                aircraft->m_headingValid = true;
+                aircraft->m_headingItem->setText(QString("%1").arg(aircraft->m_heading));
+            }
+
+            int as_t =  (data[7] >> 7) & 1; // Airspeed type
+            int as = ((data[7] & 0x7f) << 3) | ((data[8] >> 5) & 0x7); // Airspeed
+
+            aircraft->m_speed = as;
+            aircraft->m_speedType = as_t ? Aircraft::IAS : Aircraft::TAS;
+            aircraft->m_speedValid = true;
+            aircraft->m_speedItem->setText(QString("%1").arg(aircraft->m_speed));
+        }
+        int vrsrc = (data[8] >> 4) & 1; // Vertical rate source
+        int s_vr = (data[8] >> 3) & 1; // Vertical rate sign
+        int vr = ((data[8] & 0x7) << 6) | ((data[9] >> 2) & 0x3f); // Vertical rate
+        aircraft->m_verticalRate = (vr-1)*64*(s_vr?-1:1);
+        aircraft->m_verticalRateValid = true;
+        aircraft->m_verticalRateItem->setText(QString("%1").arg(aircraft->m_verticalRate));
+
+        int s_dif = (data[10] >> 7) & 1; // Diff from baro alt, sign
+        int dif = data[10] & 0x7f; // Diff from baro alt
+    }
+    else if (tc == 28)
+    {
+        // Aircraft status
+        int st = data[4] & 0x7;   // Subtype
+        int es = (data[5] >> 5) & 0x7; // Emergeny state
+        if (st == 1)
+            aircraft->m_status = emergencyStatus[es];
+        else
+            aircraft->m_status = QString("");
+        aircraft->m_statusItem->setText(aircraft->m_status);
+    }
+    else if (tc == 29)
+    {
+        // Target state and status
+    }
+    else if (tc == 31)
+    {
+        // Aircraft operation status
+    }
+
+    // Update aircraft in map
+    if (aircraft->m_positionValid)
+    {
+        m_aircraftModel.aircraftUpdated(aircraft);
+    }
+
+}
+
+bool ADSBDemodGUI::handleMessage(const Message& message)
+{
+    if (ADSBDemodReport::MsgReportADSB::match(message))
+    {
+        ADSBDemodReport::MsgReportADSB& report = (ADSBDemodReport::MsgReportADSB&) message;
+        handleADSB(report.getData(), report.getDateTime(), report.getPreambleCorrelation());
+        return true;
+    }
+    else if (ADSBDemod::MsgConfigureADSBDemod::match(message))
+    {
+        qDebug("ADSBDemodGUI::handleMessage: ADSBDemod::MsgConfigureADSBDemod");
+        const ADSBDemod::MsgConfigureADSBDemod& cfg = (ADSBDemod::MsgConfigureADSBDemod&) message;
+        m_settings = cfg.getSettings();
+        blockApplySettings(true);
+        displaySettings();
+        blockApplySettings(false);
+        return true;
+    }
+
+    return false;
+}
+
+void ADSBDemodGUI::handleInputMessages()
+{
+    Message* message;
+
+    while ((message = getInputMessageQueue()->pop()) != 0)
+    {
+        if (handleMessage(*message))
+        {
+            delete message;
+        }
+    }
+}
+
+void ADSBDemodGUI::channelMarkerChangedByCursor()
+{
+    ui->deltaFrequency->setValue(m_channelMarker.getCenterFrequency());
+    m_settings.m_inputFrequencyOffset = m_channelMarker.getCenterFrequency();
+    applySettings();
+}
+
+void ADSBDemodGUI::channelMarkerHighlightedByCursor()
+{
+    setHighlighted(m_channelMarker.getHighlighted());
+}
+
+void ADSBDemodGUI::on_deltaFrequency_changed(qint64 value)
+{
+    m_channelMarker.setCenterFrequency(value);
+    m_settings.m_inputFrequencyOffset = m_channelMarker.getCenterFrequency();
+    applySettings();
+}
+
+void ADSBDemodGUI::on_rfBW_valueChanged(int value)
+{
+    Real bw = (Real)value;
+    ui->rfBWText->setText(QString("%1M").arg(bw / 1000000.0, 0, 'f', 1));
+    m_channelMarker.setBandwidth(bw);
+    m_settings.m_rfBandwidth = bw;
+    applySettings();
+}
+
+void ADSBDemodGUI::on_threshold_valueChanged(int value)
+{
+    Real threshold = ((Real)value)/10.0f;
+    ui->thresholdText->setText(QString("%1").arg(threshold, 0, 'f', 1));
+    m_settings.m_correlationThreshold = threshold;
+    applySettings();
+}
+
+void ADSBDemodGUI::on_beastEnabled_stateChanged(int state)
+{
+    m_settings.m_beastEnabled = state == Qt::Checked;
+    // Don't disable host/port - so they can be entered before connecting
+    applySettings();
+}
+
+void ADSBDemodGUI::on_host_editingFinished(QString value)
+{
+    m_settings.m_beastHost = value;
+    applySettings();
+}
+
+void ADSBDemodGUI::on_port_valueChanged(int value)
+{
+    m_settings.m_beastPort = value;
+    applySettings();
+}
+
+void ADSBDemodGUI::on_adsbData_cellDoubleClicked(int row, int column)
+{
+    // Get ICAO of aircraft in row double clicked
+    int icao = ui->adsbData->item(row, 0)->text().toInt(nullptr, 16);
+    if (column == ADSB_COL_ICAO)
+    {
+        // Search for aircraft on planespotters.net
+        QString icaoUpper = QString("%1").arg(icao, 1, 16).toUpper();
+        QDesktopServices::openUrl(QUrl(QString("https://www.planespotters.net/hex/%1").arg(icaoUpper)));
+    }
+    else if (m_aircraft.contains(icao))
+    {
+        Aircraft *aircraft = m_aircraft.value(icao);
+
+        if (column == ADSB_COL_FLIGHT)
+        {
+            if (aircraft->m_flight.length() > 0)
+            {
+                // Search for flight on flightradar24
+                QDesktopServices::openUrl(QUrl(QString("https://www.flightradar24.com/%1").arg(aircraft->m_flight.trimmed())));
+            }
+        }
+        else
+        {
+            if (column == ADSB_COL_AZEL)
+            {
+                if (m_trackAircraft)
+                {
+                    // Restore colour of current target
+                    m_trackAircraft->m_isBeingTracked = false;
+                    m_aircraftModel.aircraftUpdated(m_trackAircraft);
+                }
+                // Track this aircraft
+                m_trackAircraft = aircraft;
+                if (aircraft->m_positionValid)
+                    m_adsbDemod->setTarget(aircraft->m_azimuth, aircraft->m_elevation);
+                // Change colour of new target
+                aircraft->m_isBeingTracked = true;
+                m_aircraftModel.aircraftUpdated(aircraft);
+            }
+            // Center map view on aircraft if it has a valid position
+            if (aircraft->m_positionValid)
+            {
+                QQuickItem *item = ui->map->rootObject();
+                QObject *object = item->findChild<QObject*>("map");
+                if(object != NULL)
+                {
+                    QGeoCoordinate geocoord = object->property("center").value<QGeoCoordinate>();
+                    geocoord.setLatitude(aircraft->m_latitude);
+                    geocoord.setLongitude(aircraft->m_longitude);
+                    object->setProperty("center", QVariant::fromValue(geocoord));
+                }
+            }
+        }
+    }
+}
+
+void ADSBDemodGUI::on_spb_currentIndexChanged(int value)
+{
+    m_settings.m_samplesPerBit = (value + 2) * 2;
+    applySettings();
+}
+
+void ADSBDemodGUI::onWidgetRolled(QWidget* widget, bool rollDown)
+{
+    (void) widget;
+    (void) rollDown;
+}
+
+void ADSBDemodGUI::onMenuDialogCalled(const QPoint &p)
+{
+    if (m_contextMenuType == ContextMenuChannelSettings)
+    {
+        BasicChannelSettingsDialog dialog(&m_channelMarker, this);
+        dialog.setUseReverseAPI(m_settings.m_useReverseAPI);
+        dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
+        dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
+        dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
+        dialog.setReverseAPIChannelIndex(m_settings.m_reverseAPIChannelIndex);
+        dialog.move(p);
+        dialog.exec();
+
+        m_settings.m_inputFrequencyOffset = m_channelMarker.getCenterFrequency();
+        m_settings.m_rgbColor = m_channelMarker.getColor().rgb();
+        m_settings.m_title = m_channelMarker.getTitle();
+        m_settings.m_useReverseAPI = dialog.useReverseAPI();
+        m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
+        m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
+        m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
+        m_settings.m_reverseAPIChannelIndex = dialog.getReverseAPIChannelIndex();
+
+        setWindowTitle(m_settings.m_title);
+        setTitleColor(m_settings.m_rgbColor);
+
+        applySettings();
+    }
+    else if ((m_contextMenuType == ContextMenuStreamSettings) && (m_deviceUISet->m_deviceMIMOEngine))
+    {
+        DeviceStreamSelectionDialog dialog(this);
+        dialog.setNumberOfStreams(m_adsbDemod->getNumberOfDeviceStreams());
+        dialog.setStreamIndex(m_settings.m_streamIndex);
+        dialog.move(p);
+        dialog.exec();
+
+        m_settings.m_streamIndex = dialog.getSelectedStreamIndex();
+        m_channelMarker.clearStreamIndexes();
+        m_channelMarker.addStreamIndex(m_settings.m_streamIndex);
+        displayStreamIndex();
+        applySettings();
+    }
+
+    resetContextMenuType();
+}
+
+
+ADSBDemodGUI::ADSBDemodGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, BasebandSampleSink *rxChannel, QWidget* parent) :
+    ChannelGUI(parent),
+    ui(new Ui::ADSBDemodGUI),
+    m_pluginAPI(pluginAPI),
+    m_deviceUISet(deviceUISet),
+    m_channelMarker(this),
+    m_basicSettingsShown(false),
+    m_doApplySettings(true),
+    m_tickCount(0),
+    m_trackAircraft(nullptr)
+{
+    ui->setupUi(this);
+    ui->map->rootContext()->setContextProperty("aircraftModel", &m_aircraftModel);
+
+    setAttribute(Qt::WA_DeleteOnClose, true);
+
+    connect(this, SIGNAL(widgetRolled(QWidget*,bool)), this, SLOT(onWidgetRolled(QWidget*,bool)));
+    connect(this, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(onMenuDialogCalled(const QPoint &)));
+
+    m_adsbDemod = reinterpret_cast<ADSBDemod*>(rxChannel); //new ADSBDemod(m_deviceUISet->m_deviceSourceAPI);
+    m_adsbDemod->setMessageQueueToGUI(getInputMessageQueue());
+    m_adsbDemod->propagateMessageQueueToGUI();
+
+    connect(&MainCore::instance()->getMasterTimer(), SIGNAL(timeout()), this, SLOT(tick()));
+
+    ui->channelPowerMeter->setColorTheme(LevelMeterSignalDB::ColorGreenAndBlue);
+
+    ui->deltaFrequencyLabel->setText(QString("%1f").arg(QChar(0x94, 0x03)));
+    ui->deltaFrequency->setColorMapper(ColorMapper(ColorMapper::GrayGold));
+    ui->deltaFrequency->setValueRange(false, 7, -9999999, 9999999);
+
+    m_channelMarker.blockSignals(true);
+    m_channelMarker.setColor(Qt::red);
+    m_channelMarker.setBandwidth(5000);
+    m_channelMarker.setCenterFrequency(0);
+    m_channelMarker.setTitle("ADS-B Demodulator");
+    m_channelMarker.blockSignals(false);
+    m_channelMarker.setVisible(true); // activate signal on the last setting only
+
+    m_settings.setChannelMarker(&m_channelMarker);
+
+    m_deviceUISet->addChannelMarker(&m_channelMarker);
+    m_deviceUISet->addRollupWidget(this);
+
+    connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor()));
+    connect(&m_channelMarker, SIGNAL(highlightedByCursor()), this, SLOT(channelMarkerHighlightedByCursor()));
+
+    connect(getInputMessageQueue(), SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages()));
+
+    ui->adsbData->resizeColumnsToContents();
+
+    // Get station position
+    Real stationLatitude = MainCore::instance()->getSettings().getLatitude();
+    Real stationLongitude = MainCore::instance()->getSettings().getLongitude();
+    Real stationAltitude = MainCore::instance()->getSettings().getAltitude();
+    m_azEl.setLocation(stationLatitude, stationLongitude, stationAltitude);
+
+    // Centre map at My Position
+    QQuickItem *item = ui->map->rootObject();
+    QObject *object = item->findChild<QObject*>("map");
+    if(object != NULL)
+    {
+        QGeoCoordinate coords = object->property("center").value<QGeoCoordinate>();
+        coords.setLatitude(stationLatitude);
+        coords.setLongitude(stationLongitude);
+        object->setProperty("center", QVariant::fromValue(coords));
+    }
+    // Move antenna icon to My Position
+    QObject *stationObject = item->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()));
+    }
+
+    displaySettings();
+    applySettings(true);
+}
+
+ADSBDemodGUI::~ADSBDemodGUI()
+{
+    delete ui;
+    QHash<int,Aircraft *>::iterator i = m_aircraft.begin();
+    while (i != m_aircraft.end())
+    {
+        Aircraft *a = i.value();
+        delete a;
+        ++i;
+    }
+}
+
+void ADSBDemodGUI::applySettings(bool force)
+{
+    if (m_doApplySettings)
+    {
+        qDebug() << "ADSBDemodGUI::applySettings";
+
+        ADSBDemod::MsgConfigureADSBDemod* message = ADSBDemod::MsgConfigureADSBDemod::create( m_settings, force);
+        m_adsbDemod->getInputMessageQueue()->push(message);
+    }
+}
+
+void ADSBDemodGUI::displaySettings()
+{
+    m_channelMarker.blockSignals(true);
+    m_channelMarker.setCenterFrequency(m_settings.m_inputFrequencyOffset);
+    m_channelMarker.setBandwidth(m_settings.m_rfBandwidth);
+    m_channelMarker.setTitle(m_settings.m_title);
+    m_channelMarker.blockSignals(false);
+    m_channelMarker.setColor(m_settings.m_rgbColor);
+
+    setTitleColor(m_settings.m_rgbColor);
+    setWindowTitle(m_channelMarker.getTitle());
+
+    blockApplySettings(true);
+
+    ui->deltaFrequency->setValue(m_channelMarker.getCenterFrequency());
+
+    ui->rfBWText->setText(QString("%1M").arg(m_settings.m_rfBandwidth / 1000000.0, 0, 'f', 1));
+    ui->rfBW->setValue((int)m_settings.m_rfBandwidth);
+
+    ui->spb->setCurrentIndex(m_settings.m_samplesPerBit/2-2);
+
+    ui->thresholdText->setText(QString("%1").arg(m_settings.m_correlationThreshold, 0, 'f', 1));
+    ui->threshold->setValue((int)(m_settings.m_correlationThreshold*10));
+
+    ui->beastEnabled->setChecked(m_settings.m_beastEnabled);
+    ui->host->setText(m_settings.m_beastHost);
+    ui->port->setValue(m_settings.m_beastPort);
+
+    displayStreamIndex();
+
+    blockApplySettings(false);
+}
+
+void ADSBDemodGUI::displayStreamIndex()
+{
+    if (m_deviceUISet->m_deviceMIMOEngine) {
+        setStreamIndicator(tr("%1").arg(m_settings.m_streamIndex));
+    } else {
+        setStreamIndicator("S"); // single channel indicator
+    }
+}
+
+void ADSBDemodGUI::leaveEvent(QEvent*)
+{
+    m_channelMarker.setHighlighted(false);
+}
+
+void ADSBDemodGUI::enterEvent(QEvent*)
+{
+    m_channelMarker.setHighlighted(true);
+}
+
+void ADSBDemodGUI::blockApplySettings(bool block)
+{
+    m_doApplySettings = !block;
+}
+
+void ADSBDemodGUI::tick()
+{
+    double magsqAvg, magsqPeak;
+    int nbMagsqSamples;
+    m_adsbDemod->getMagSqLevels(magsqAvg, magsqPeak, nbMagsqSamples);
+    double powDbAvg = CalcDb::dbPower(magsqAvg);
+    double powDbPeak = CalcDb::dbPower(magsqPeak);
+
+    ui->channelPowerMeter->levelChanged(
+            (100.0f + powDbAvg) / 100.0f,
+            (100.0f + powDbPeak) / 100.0f,
+            nbMagsqSamples);
+
+    if (m_tickCount % 4 == 0) {
+        ui->channelPower->setText(tr("%1 dB").arg(powDbAvg, 0, 'f', 1));
+    }
+
+    m_tickCount++;
+
+    // Tick is called 20x a second - lets check this every 10 seconds
+    if (m_tickCount % (20*10) == 0)
+    {
+        // Remove aircraft that haven't been heard of for a minute as probably out of range
+        QDateTime now = QDateTime::currentDateTime();
+        qint64 nowSecs = now.toSecsSinceEpoch();
+        QHash<int, Aircraft *>::iterator i = m_aircraft.begin();
+        while (i != m_aircraft.end())
+        {
+            Aircraft *aircraft = i.value();
+            qint64 secondsSinceLastFrame = nowSecs - aircraft->m_time.toSecsSinceEpoch();
+            if (secondsSinceLastFrame >= m_settings.m_removeTimeout)
+            {
+                // Don't try to track it anymore
+                if (m_trackAircraft == aircraft)
+                {
+                    m_adsbDemod->clearTarget();
+                    m_trackAircraft = nullptr;
+                }
+                // Remove map model
+                m_aircraftModel.removeAircraft(aircraft);
+                // Remove row from table
+                ui->adsbData->removeRow(aircraft->m_icaoItem->row());
+                // Remove aircraft from hash
+                i = m_aircraft.erase(i);
+                // And finally free its memory
+                delete aircraft;
+            }
+            else
+                ++i;
+        }
+    }
+}
diff --git a/plugins/channelrx/demodadsb/adsbdemodgui.h b/plugins/channelrx/demodadsb/adsbdemodgui.h
new file mode 100644
index 000000000..68c8e2511
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodgui.h
@@ -0,0 +1,272 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_ADSBDEMODGUI_H
+#define INCLUDE_ADSBDEMODGUI_H
+
+#include <QTableWidgetItem>
+#include <QGeoCoordinate>
+#include <QDateTime>
+#include <QAbstractListModel>
+
+#include "channel/channelgui.h"
+#include "dsp/dsptypes.h"
+#include "dsp/channelmarker.h"
+#include "dsp/movingaverage.h"
+#include "util/messagequeue.h"
+#include "util/azel.h"
+
+#include "adsbdemodsettings.h"
+
+class PluginAPI;
+class DeviceUISet;
+class BasebandSampleSink;
+class ADSBDemod;
+
+namespace Ui {
+    class ADSBDemodGUI;
+}
+
+// Data about an aircraft extracted from an ADS-B frames
+struct Aircraft {
+    int m_icao;                 // 24-bit ICAO aircraft address
+    QString m_flight;           // Flight callsign
+    Real m_latitude;            // Latitude in decimal degrees
+    Real m_longitude;           // Longitude in decimal degrees
+    int m_altitude;             // Altitude in feet
+    int m_speed;                // Speed in knots
+    enum SpeedType {
+        GS,                     // Ground speed
+        TAS,                    // True air speed
+        IAS                     // Indicated air speed
+    } m_speedType;
+    static const char *m_speedTypeNames[];
+    int m_heading;              // Heading in degrees
+    int m_verticalRate;         // Vertical climb rate in ft/min
+    QString m_emitterCategory;  // Aircraft type
+    QString m_status;           // Aircraft status
+    Real m_range;               // Distance from station to aircraft
+    Real m_azimuth;             // Azimuth from station to aircraft
+    Real m_elevation;           // Elevation from station to aicraft;
+    QDateTime m_time;           // When last updated
+
+    bool m_positionValid;       // Indicates if we have valid data for the above fields
+    bool m_altitudeValid;
+    bool m_speedValid;
+    bool m_headingValid;
+    bool m_verticalRateValid;
+
+    // State for calculating position using two CPR frames
+    bool m_cprValid[2];
+    Real m_cprLat[2];
+    Real m_cprLong[2];
+
+    int m_adsbFrameCount;       // Number of ADS-B frames for this aircraft
+    float m_minCorrelation;
+    float m_maxCorrelation;
+    float m_sumCorrelation;
+    bool m_isBeingTracked;      // Are we tracking this aircraft
+
+    // GUI table items for above data
+    QTableWidgetItem *m_icaoItem;
+    QTableWidgetItem *m_flightItem;
+    QTableWidgetItem *m_latitudeItem;
+    QTableWidgetItem *m_longitudeItem;
+    QTableWidgetItem *m_altitudeItem;
+    QTableWidgetItem *m_speedItem;
+    QTableWidgetItem *m_headingItem;
+    QTableWidgetItem *m_verticalRateItem;
+    QTableWidgetItem *m_emitterCategoryItem;
+    QTableWidgetItem *m_statusItem;
+    QTableWidgetItem *m_rangeItem;
+    QTableWidgetItem *m_azElItem;
+    QTableWidgetItem *m_timeItem;
+    QTableWidgetItem *m_adsbFrameCountItem;
+    QTableWidgetItem *m_correlationItem;
+
+    Aircraft() :
+        m_icao(0),
+        m_latitude(0),
+        m_longitude(0),
+        m_altitude(0),
+        m_speed(0),
+        m_heading(0),
+        m_verticalRate(0),
+        m_azimuth(0),
+        m_elevation(0),
+        m_positionValid(false),
+        m_altitudeValid(false),
+        m_speedValid(false),
+        m_headingValid(false),
+        m_verticalRateValid(false),
+        m_adsbFrameCount(0),
+        m_minCorrelation(INFINITY),
+        m_maxCorrelation(-INFINITY),
+        m_sumCorrelation(0.0f),
+        m_isBeingTracked(false)
+    {
+        for (int i = 0; i < 2; i++)
+        {
+            m_cprValid[i] = false;
+        }
+        // These are deleted by QTableWidget
+        m_icaoItem = new QTableWidgetItem();
+        m_flightItem = new QTableWidgetItem();
+        m_latitudeItem = new QTableWidgetItem();
+        m_longitudeItem = new QTableWidgetItem();
+        m_altitudeItem = new QTableWidgetItem();
+        m_speedItem = new QTableWidgetItem();
+        m_headingItem = new QTableWidgetItem();
+        m_verticalRateItem = new QTableWidgetItem();
+        m_emitterCategoryItem = new QTableWidgetItem();
+        m_statusItem = new QTableWidgetItem();
+        m_rangeItem = new QTableWidgetItem();
+        m_azElItem = new QTableWidgetItem();
+        m_timeItem = new QTableWidgetItem();
+        m_adsbFrameCountItem = new QTableWidgetItem();
+        m_correlationItem = new QTableWidgetItem();
+    }
+};
+
+// Aircraft data model used by QML map item
+class AircraftModel : public QAbstractListModel {
+    Q_OBJECT
+
+public:
+    using QAbstractListModel::QAbstractListModel;
+    enum MarkerRoles{
+        positionRole = Qt::UserRole + 1,
+        headingRole = Qt::UserRole + 2,
+        adsbDataRole = Qt::UserRole + 3,
+        aircraftImageRole = Qt::UserRole + 4,
+        bubbleColourRole  = Qt::UserRole + 5
+    };
+
+    Q_INVOKABLE void addAircraft(Aircraft *aircraft) {
+        beginInsertRows(QModelIndex(), rowCount(), rowCount());
+        m_aircrafts.append(aircraft);
+        endInsertRows();
+    }
+
+    int rowCount(const QModelIndex &parent = QModelIndex()) const override {
+        Q_UNUSED(parent)
+        return m_aircrafts.count();
+    }
+
+    QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
+
+    void aircraftUpdated(Aircraft *aircraft) {
+        int row = m_aircrafts.indexOf(aircraft);
+        if (row >= 0)
+        {
+            QModelIndex idx = index(row);
+            emit dataChanged(idx, idx);
+        }
+    }
+
+    void removeAircraft(Aircraft *aircraft) {
+        int row = m_aircrafts.indexOf(aircraft);
+        if (row >= 0)
+        {
+            beginRemoveRows(QModelIndex(), row, row);
+            m_aircrafts.removeAt(row);
+            endRemoveRows();
+        }
+    }
+
+    QHash<int, QByteArray> roleNames() const {
+        QHash<int, QByteArray> roles;
+        roles[positionRole] = "position";
+        roles[headingRole] = "heading";
+        roles[adsbDataRole] = "adsbData";
+        roles[aircraftImageRole] = "aircraftImage";
+        roles[bubbleColourRole] = "bubbleColour";
+        return roles;
+    }
+
+private:
+    QList<Aircraft *> m_aircrafts;
+};
+
+class ADSBDemodGUI : public ChannelGUI {
+    Q_OBJECT
+
+public:
+    static ADSBDemodGUI* create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, BasebandSampleSink *rxChannel);
+    virtual void destroy();
+
+    void resetToDefaults();
+    QByteArray serialize() const;
+    bool deserialize(const QByteArray& data);
+    virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; }
+
+public slots:
+    void channelMarkerChangedByCursor();
+    void channelMarkerHighlightedByCursor();
+
+private:
+    Ui::ADSBDemodGUI* ui;
+    PluginAPI* m_pluginAPI;
+    DeviceUISet* m_deviceUISet;
+    ChannelMarker m_channelMarker;
+    ADSBDemodSettings m_settings;
+    bool m_basicSettingsShown;
+    bool m_doApplySettings;
+
+    ADSBDemod* m_adsbDemod;
+    uint32_t m_tickCount;
+    MessageQueue m_inputMessageQueue;
+
+    QHash<int,Aircraft *> m_aircraft;  // Hashed on ICAO
+    AircraftModel m_aircraftModel;
+
+    AzEl m_azEl;                        // Position of station
+    Aircraft *m_trackAircraft;          // Aircraft we want to track in Channel Report
+
+    explicit ADSBDemodGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, BasebandSampleSink *rxChannel, QWidget* parent = 0);
+    virtual ~ADSBDemodGUI();
+
+    void blockApplySettings(bool block);
+    void applySettings(bool force = false);
+    void displaySettings();
+    void displayStreamIndex();
+    bool handleMessage(const Message& message);
+    void updatePosition(Aircraft *aircraft);
+    void handleADSB(const QByteArray data, const QDateTime dateTime, float correlation);
+
+    void leaveEvent(QEvent*);
+    void enterEvent(QEvent*);
+
+private slots:
+    void on_deltaFrequency_changed(qint64 value);
+    void on_rfBW_valueChanged(int value);
+    void on_threshold_valueChanged(int value);
+    void on_adsbData_cellDoubleClicked(int row, int column);
+    void on_spb_currentIndexChanged(int value);
+    void on_beastEnabled_stateChanged(int state);
+    void on_host_editingFinished(QString value);
+    void on_port_valueChanged(int value);
+    void onWidgetRolled(QWidget* widget, bool rollDown);
+    void onMenuDialogCalled(const QPoint& p);
+    void handleInputMessages();
+    void tick();
+signals:
+    void homePositionChanged();
+};
+
+#endif // INCLUDE_ADSBDEMODGUI_H
diff --git a/plugins/channelrx/demodadsb/adsbdemodgui.ui b/plugins/channelrx/demodadsb/adsbdemodgui.ui
new file mode 100644
index 000000000..a0ffdff16
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodgui.ui
@@ -0,0 +1,667 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>ADSBDemodGUI</class>
+ <widget class="RollupWidget" name="ADSBDemodGUI">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>350</width>
+    <height>1019</height>
+   </rect>
+  </property>
+  <property name="sizePolicy">
+   <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+    <horstretch>0</horstretch>
+    <verstretch>0</verstretch>
+   </sizepolicy>
+  </property>
+  <property name="minimumSize">
+   <size>
+    <width>350</width>
+    <height>0</height>
+   </size>
+  </property>
+  <property name="font">
+   <font>
+    <family>Liberation Sans</family>
+    <pointsize>9</pointsize>
+   </font>
+  </property>
+  <property name="windowTitle">
+   <string>ADS-B Demodulator</string>
+  </property>
+  <widget class="QWidget" name="settingsContainer" native="true">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>340</width>
+     <height>101</height>
+    </rect>
+   </property>
+   <property name="minimumSize">
+    <size>
+     <width>300</width>
+     <height>0</height>
+    </size>
+   </property>
+   <property name="windowTitle">
+    <string>Settings</string>
+   </property>
+   <layout class="QVBoxLayout" name="verticalLayoutSettings">
+    <property name="spacing">
+     <number>3</number>
+    </property>
+    <property name="leftMargin">
+     <number>2</number>
+    </property>
+    <property name="topMargin">
+     <number>2</number>
+    </property>
+    <property name="rightMargin">
+     <number>2</number>
+    </property>
+    <property name="bottomMargin">
+     <number>2</number>
+    </property>
+    <item>
+     <layout class="QHBoxLayout" name="deltaFreqPowerLayout">
+      <property name="topMargin">
+       <number>2</number>
+      </property>
+      <item>
+       <layout class="QHBoxLayout" name="DeltaFrequencyLayout">
+        <item>
+         <widget class="QLabel" name="deltaFrequencyLabel">
+          <property name="minimumSize">
+           <size>
+            <width>16</width>
+            <height>0</height>
+           </size>
+          </property>
+          <property name="text">
+           <string>Df</string>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="ValueDialZ" name="deltaFrequency" native="true">
+          <property name="sizePolicy">
+           <sizepolicy hsizetype="Maximum" vsizetype="Maximum">
+            <horstretch>0</horstretch>
+            <verstretch>0</verstretch>
+           </sizepolicy>
+          </property>
+          <property name="minimumSize">
+           <size>
+            <width>32</width>
+            <height>16</height>
+           </size>
+          </property>
+          <property name="font">
+           <font>
+            <family>Liberation Mono</family>
+            <pointsize>12</pointsize>
+           </font>
+          </property>
+          <property name="cursor">
+           <cursorShape>PointingHandCursor</cursorShape>
+          </property>
+          <property name="focusPolicy">
+           <enum>Qt::StrongFocus</enum>
+          </property>
+          <property name="toolTip">
+           <string>Demod shift frequency from center in Hz</string>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QLabel" name="deltaUnits">
+          <property name="text">
+           <string>Hz </string>
+          </property>
+          <property name="alignment">
+           <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+          </property>
+         </widget>
+        </item>
+       </layout>
+      </item>
+      <item>
+       <spacer name="horizontalSpacer">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>40</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item>
+       <widget class="QLabel" name="channelPower">
+        <property name="minimumSize">
+         <size>
+          <width>60</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="toolTip">
+         <string>Channel power</string>
+        </property>
+        <property name="layoutDirection">
+         <enum>Qt::RightToLeft</enum>
+        </property>
+        <property name="text">
+         <string>-100.0 dB</string>
+        </property>
+        <property name="alignment">
+         <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+        </property>
+       </widget>
+      </item>
+     </layout>
+    </item>
+    <item>
+     <layout class="QHBoxLayout" name="levelMeterLayout">
+      <item>
+       <widget class="QLabel" name="channelPowerMeterUnits">
+        <property name="text">
+         <string>dB</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="LevelMeterSignalDB" name="channelPowerMeter" native="true">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+        <property name="minimumSize">
+         <size>
+          <width>0</width>
+          <height>24</height>
+         </size>
+        </property>
+        <property name="font">
+         <font>
+          <family>Liberation Mono</family>
+          <pointsize>8</pointsize>
+         </font>
+        </property>
+        <property name="toolTip">
+         <string>Level meter (dB) top trace: average, bottom trace: instantaneous peak, tip: peak hold</string>
+        </property>
+       </widget>
+      </item>
+     </layout>
+    </item>
+    <item>
+     <layout class="QHBoxLayout" name="rfBWLayout">
+      <item>
+       <widget class="QLabel" name="rfBWLabel">
+        <property name="text">
+         <string>RFBW</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QSlider" name="rfBW">
+        <property name="toolTip">
+         <string>RF bandwidth</string>
+        </property>
+        <property name="minimum">
+         <number>1000000</number>
+        </property>
+        <property name="maximum">
+         <number>3000000</number>
+        </property>
+        <property name="singleStep">
+         <number>100000</number>
+        </property>
+        <property name="pageStep">
+         <number>1000000</number>
+        </property>
+        <property name="value">
+         <number>2300000</number>
+        </property>
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="rfBWText">
+        <property name="text">
+         <string>2.3M</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <spacer name="horizontalSpacer_3">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>40</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item>
+       <widget class="Line" name="line_2">
+        <property name="orientation">
+         <enum>Qt::Vertical</enum>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="spbrLabel">
+        <property name="text">
+         <string>SR</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QComboBox" name="spb">
+        <property name="minimumSize">
+         <size>
+          <width>40</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="toolTip">
+         <string>Demodulator sample rate. This should ideally be matched to baseband sample rate</string>
+        </property>
+        <item>
+         <property name="text">
+          <string>4</string>
+         </property>
+        </item>
+        <item>
+         <property name="text">
+          <string>6</string>
+         </property>
+        </item>
+        <item>
+         <property name="text">
+          <string>8</string>
+         </property>
+        </item>
+        <item>
+         <property name="text">
+          <string>10</string>
+         </property>
+        </item>
+        <item>
+         <property name="text">
+          <string>12</string>
+         </property>
+        </item>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="spbUnit">
+        <property name="text">
+         <string>M</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="Line" name="line">
+        <property name="orientation">
+         <enum>Qt::Vertical</enum>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="thresholdLabel">
+        <property name="text">
+         <string>Threshold</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QDial" name="threshold">
+        <property name="maximumSize">
+         <size>
+          <width>24</width>
+          <height>24</height>
+         </size>
+        </property>
+        <property name="toolTip">
+         <string>Correlation threshold. Lower values will increase the number of frames that can be received, but require more processing.</string>
+        </property>
+        <property name="minimum">
+         <number>-100</number>
+        </property>
+        <property name="maximum">
+         <number>20</number>
+        </property>
+        <property name="value">
+         <number>0</number>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="thresholdText">
+        <property name="minimumSize">
+         <size>
+          <width>30</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="text">
+         <string>-15.0</string>
+        </property>
+       </widget>
+      </item>
+     </layout>
+    </item>
+    <item>
+     <layout class="QHBoxLayout" name="horizontalLayout">
+      <item>
+       <widget class="QCheckBox" name="beastEnabled">
+        <property name="toolTip">
+         <string>Enable feeding of received ADS-B messages in Beast binary format to the specifed server</string>
+        </property>
+        <property name="text">
+         <string>Feed</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="hostLabel">
+        <property name="text">
+         <string>Server</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLineEdit" name="host">
+        <property name="toolTip">
+         <string>Hostname of the server to feed</string>
+        </property>
+        <property name="text">
+         <string>feed.adsbexchange.com</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="portLabel">
+        <property name="text">
+         <string>Port</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QSpinBox" name="port">
+        <property name="minimumSize">
+         <size>
+          <width>60</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="toolTip">
+         <string>Port the server is listening on</string>
+        </property>
+        <property name="minimum">
+         <number>1024</number>
+        </property>
+        <property name="maximum">
+         <number>65535</number>
+        </property>
+        <property name="value">
+         <number>30005</number>
+        </property>
+       </widget>
+      </item>
+     </layout>
+    </item>
+   </layout>
+  </widget>
+  <widget class="QWidget" name="dataContainer" native="true">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>114</y>
+     <width>341</width>
+     <height>291</height>
+    </rect>
+   </property>
+   <property name="sizePolicy">
+    <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
+     <horstretch>0</horstretch>
+     <verstretch>0</verstretch>
+    </sizepolicy>
+   </property>
+   <property name="windowTitle">
+    <string>ADS-B Data</string>
+   </property>
+   <layout class="QVBoxLayout" name="verticalLayoutTable">
+    <property name="spacing">
+     <number>2</number>
+    </property>
+    <property name="leftMargin">
+     <number>3</number>
+    </property>
+    <property name="topMargin">
+     <number>3</number>
+    </property>
+    <property name="rightMargin">
+     <number>3</number>
+    </property>
+    <property name="bottomMargin">
+     <number>3</number>
+    </property>
+    <item>
+     <widget class="QTableWidget" name="adsbData">
+      <property name="font">
+       <font>
+        <family>Segoe UI</family>
+        <pointsize>9</pointsize>
+       </font>
+      </property>
+      <property name="editTriggers">
+       <set>QAbstractItemView::NoEditTriggers</set>
+      </property>
+      <column>
+       <property name="text">
+        <string>ICAO ID</string>
+       </property>
+       <property name="toolTip">
+        <string extracomment="Double click to search for the aircraft on www.planespotters.net"/>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Flight No.</string>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Latitude (°)</string>
+       </property>
+       <property name="toolTip">
+        <string extracomment="Double click to centre the map on this aircraft"/>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Longitude (°)</string>
+       </property>
+       <property name="toolTip">
+        <string extracomment="Double click to centre the map on this aircraft"/>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Altitude (ft)</string>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Speed (kn)</string>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Heading (°)</string>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Climb (ft/min)</string>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Category</string>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Status</string>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Range (km)</string>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Az/El (°)</string>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Updated</string>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>RX Frames</string>
+       </property>
+      </column>
+      <column>
+       <property name="text">
+        <string>Correlation</string>
+       </property>
+      </column>
+     </widget>
+    </item>
+   </layout>
+  </widget>
+  <widget class="QWidget" name="mapContainer" native="true">
+   <property name="geometry">
+    <rect>
+     <x>10</x>
+     <y>420</y>
+     <width>331</width>
+     <height>581</height>
+    </rect>
+   </property>
+   <property name="sizePolicy">
+    <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+     <horstretch>0</horstretch>
+     <verstretch>0</verstretch>
+    </sizepolicy>
+   </property>
+   <property name="windowTitle">
+    <string>Map</string>
+   </property>
+   <layout class="QVBoxLayout" name="verticalLayoutMap" stretch="0">
+    <property name="spacing">
+     <number>2</number>
+    </property>
+    <property name="leftMargin">
+     <number>3</number>
+    </property>
+    <property name="topMargin">
+     <number>3</number>
+    </property>
+    <property name="rightMargin">
+     <number>3</number>
+    </property>
+    <property name="bottomMargin">
+     <number>3</number>
+    </property>
+    <item>
+     <widget class="QQuickWidget" name="map">
+      <property name="sizePolicy">
+       <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+        <horstretch>0</horstretch>
+        <verstretch>0</verstretch>
+       </sizepolicy>
+      </property>
+      <property name="minimumSize">
+       <size>
+        <width>100</width>
+        <height>400</height>
+       </size>
+      </property>
+      <property name="toolTip">
+       <string>Aircraft location map</string>
+      </property>
+      <property name="resizeMode">
+       <enum>QQuickWidget::SizeRootObjectToView</enum>
+      </property>
+      <property name="source">
+       <url>
+        <string>qrc:/map.qml</string>
+       </url>
+      </property>
+     </widget>
+    </item>
+   </layout>
+  </widget>
+ </widget>
+ <customwidgets>
+  <customwidget>
+   <class>QQuickWidget</class>
+   <extends>QWidget</extends>
+   <header location="global">QtQuickWidgets/QQuickWidget</header>
+  </customwidget>
+  <customwidget>
+   <class>RollupWidget</class>
+   <extends>QWidget</extends>
+   <header>gui/rollupwidget.h</header>
+   <container>1</container>
+  </customwidget>
+  <customwidget>
+   <class>LevelMeterSignalDB</class>
+   <extends>QWidget</extends>
+   <header>gui/levelmeter.h</header>
+   <container>1</container>
+  </customwidget>
+  <customwidget>
+   <class>ValueDialZ</class>
+   <extends>QWidget</extends>
+   <header>gui/valuedialz.h</header>
+   <container>1</container>
+  </customwidget>
+ </customwidgets>
+ <tabstops>
+  <tabstop>deltaFrequency</tabstop>
+  <tabstop>rfBW</tabstop>
+  <tabstop>spb</tabstop>
+  <tabstop>threshold</tabstop>
+  <tabstop>beastEnabled</tabstop>
+  <tabstop>host</tabstop>
+  <tabstop>port</tabstop>
+  <tabstop>adsbData</tabstop>
+  <tabstop>map</tabstop>
+ </tabstops>
+ <resources>
+  <include location="../../../sdrgui/resources/res.qrc"/>
+ </resources>
+ <connections/>
+</ui>
diff --git a/plugins/channelrx/demodadsb/adsbdemodreport.cpp b/plugins/channelrx/demodadsb/adsbdemodreport.cpp
new file mode 100644
index 000000000..14c2a6d17
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodreport.cpp
@@ -0,0 +1,21 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2019 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include "adsbdemodreport.h"
+
+MESSAGE_CLASS_DEFINITION(ADSBDemodReport::MsgReportADSB, Message)
diff --git a/plugins/channelrx/demodadsb/adsbdemodreport.h b/plugins/channelrx/demodadsb/adsbdemodreport.h
new file mode 100644
index 000000000..3ee354896
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodreport.h
@@ -0,0 +1,65 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2019 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef PLUGINS_CHANNELRX_DEMOADSB_ADSBDEMODREPORT_H_
+#define PLUGINS_CHANNELRX_DEMOADSB_ADSBDEMODREPORT_H_
+
+#include <QObject>
+#include <QByteArray>
+#include <QDateTime>
+
+#include "dsp/dsptypes.h"
+#include "util/message.h"
+
+class ADSBDemodReport : public QObject
+{
+    Q_OBJECT
+public:
+    class MsgReportADSB : public Message {
+        MESSAGE_CLASS_DECLARATION
+
+    public:
+        QByteArray getData() const { return m_data; }
+        QDateTime getDateTime() const { return m_dateTime; }
+        float getPreambleCorrelation() const { return m_premableCorrelation; }
+
+        static MsgReportADSB* create(QByteArray data, float premableCorrelation)
+        {
+            return new MsgReportADSB(data, premableCorrelation);
+        }
+
+    private:
+        QByteArray m_data;
+        QDateTime m_dateTime;
+        float m_premableCorrelation;
+
+        MsgReportADSB(QByteArray data, float premableCorrelation) :
+            Message(),
+            m_data(data),
+            m_premableCorrelation(premableCorrelation)
+        {
+            m_dateTime = QDateTime::currentDateTime();
+        }
+    };
+
+public:
+    ADSBDemodReport() {}
+    ~ADSBDemodReport() {}
+};
+
+#endif // PLUGINS_CHANNELRX_DEMOADSB_ADSBDEMODREPORT_H_
diff --git a/plugins/channelrx/demodadsb/adsbdemodsettings.cpp b/plugins/channelrx/demodadsb/adsbdemodsettings.cpp
new file mode 100644
index 000000000..f24621a48
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodsettings.cpp
@@ -0,0 +1,142 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2017 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include <QColor>
+
+#include "dsp/dspengine.h"
+#include "util/simpleserializer.h"
+#include "settings/serializable.h"
+
+#include "adsbdemodsettings.h"
+
+ADSBDemodSettings::ADSBDemodSettings() :
+    m_channelMarker(0)
+{
+    resetToDefaults();
+}
+
+void ADSBDemodSettings::resetToDefaults()
+{
+    m_inputFrequencyOffset = 0;
+    m_rfBandwidth = 2*1300000;
+    m_correlationThreshold = 0.0f;
+    m_samplesPerBit = 6;
+    m_removeTimeout = 60;
+    m_beastEnabled = false;
+    m_beastHost = "feed.adsbexchange.com";
+    m_beastPort = 30005;
+    m_rgbColor = QColor(255, 0, 0).rgb();
+    m_title = "ADS-B Demodulator";
+    m_streamIndex = 0;
+    m_useReverseAPI = false;
+    m_reverseAPIAddress = "127.0.0.1";
+    m_reverseAPIPort = 8888;
+    m_reverseAPIDeviceIndex = 0;
+    m_reverseAPIChannelIndex = 0;
+}
+
+QByteArray ADSBDemodSettings::serialize() const
+{
+    SimpleSerializer s(1);
+    s.writeS32(1, m_inputFrequencyOffset);
+    s.writeReal(2, m_rfBandwidth);
+    s.writeReal(3, m_correlationThreshold);
+    s.writeS32(4, m_samplesPerBit);
+    s.writeS32(5, m_removeTimeout);
+    s.writeBool(6, m_beastEnabled);
+    s.writeString(7, m_beastHost);
+    s.writeU32(8, m_beastPort);
+
+    s.writeU32(9, m_rgbColor);
+    if (m_channelMarker) {
+        s.writeBlob(10, m_channelMarker->serialize());
+    }
+    s.writeString(11, m_title);
+    s.writeBool(12, m_useReverseAPI);
+    s.writeString(13, m_reverseAPIAddress);
+    s.writeU32(14, m_reverseAPIPort);
+    s.writeU32(15, m_reverseAPIDeviceIndex);
+    s.writeU32(16, m_reverseAPIChannelIndex);
+    s.writeS32(17, m_streamIndex);
+
+    return s.final();
+}
+
+bool ADSBDemodSettings::deserialize(const QByteArray& data)
+{
+    SimpleDeserializer d(data);
+
+    if (!d.isValid())
+    {
+        resetToDefaults();
+        return false;
+    }
+
+    if (d.getVersion() == 1)
+    {
+        QByteArray bytetmp;
+        qint32 tmp;
+        uint32_t utmp;
+
+        if (m_channelMarker)
+        {
+            d.readBlob(10, &bytetmp);
+            m_channelMarker->deserialize(bytetmp);
+        }
+
+        d.readS32(1, &tmp, 0);
+        m_inputFrequencyOffset = tmp;
+        d.readReal(2, &m_rfBandwidth, 2*1300000);
+        d.readReal(3, &m_correlationThreshold, 1.0f);
+        d.readS32(4, &m_samplesPerBit, 6);
+        d.readS32(5, &m_removeTimeout, 60);
+        d.readBool(6, &m_beastEnabled, false);
+        d.readString(7, &m_beastHost, "feed.adsbexchange.com");
+        d.readU32(8, &utmp, 0);
+        if ((utmp > 1023) && (utmp < 65535)) {
+            m_beastPort = utmp;
+        } else {
+            m_beastPort = 30005;
+        }
+
+        d.readU32(9, &m_rgbColor, QColor(255, 0, 0).rgb());
+        d.readString(11, &m_title, "ADS-B Demodulator");
+        d.readBool(12, &m_useReverseAPI, false);
+        d.readString(13, &m_reverseAPIAddress, "127.0.0.1");
+        d.readU32(14, &utmp, 0);
+
+        if ((utmp > 1023) && (utmp < 65535)) {
+            m_reverseAPIPort = utmp;
+        } else {
+            m_reverseAPIPort = 8888;
+        }
+
+        d.readU32(15, &utmp, 0);
+        m_reverseAPIDeviceIndex = utmp > 99 ? 99 : utmp;
+        d.readU32(16, &utmp, 0);
+        m_reverseAPIChannelIndex = utmp > 99 ? 99 : utmp;
+        d.readS32(17, &m_streamIndex, 0);
+
+        return true;
+    }
+    else
+    {
+        resetToDefaults();
+        return false;
+    }
+}
diff --git a/plugins/channelrx/demodadsb/adsbdemodsettings.h b/plugins/channelrx/demodadsb/adsbdemodsettings.h
new file mode 100644
index 000000000..9b02d1b51
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodsettings.h
@@ -0,0 +1,58 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2017 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef PLUGINS_CHANNELRX_DEMODADSB_ADSBDEMODSETTINGS_H_
+#define PLUGINS_CHANNELRX_DEMODADSB_ADSBDEMODSETTINGS_H_
+
+#include <QtGlobal>
+#include <QString>
+#include <stdint.h>
+#include "dsp/dsptypes.h"
+
+class Serializable;
+
+struct ADSBDemodSettings
+{
+    int32_t m_inputFrequencyOffset;
+    Real m_rfBandwidth;
+    Real m_correlationThreshold;
+    int m_samplesPerBit;
+    int m_removeTimeout;                // Time in seconds before removing an aircraft, unless a new frame is received
+    bool m_beastEnabled;
+    QString m_beastHost;
+    uint16_t m_beastPort;
+
+    quint32 m_rgbColor;
+    QString m_title;
+    int m_streamIndex; //!< MIMO channel. Not relevant when connected to SI (single Rx).
+    bool m_useReverseAPI;
+    QString m_reverseAPIAddress;
+    uint16_t m_reverseAPIPort;
+    uint16_t m_reverseAPIDeviceIndex;
+    uint16_t m_reverseAPIChannelIndex;
+
+    Serializable *m_channelMarker;
+
+    ADSBDemodSettings();
+    void resetToDefaults();
+    void setChannelMarker(Serializable *channelMarker) { m_channelMarker = channelMarker; }
+    QByteArray serialize() const;
+    bool deserialize(const QByteArray& data);
+};
+
+#endif /* PLUGINS_CHANNELRX_DEMODADSB_ADSBDEMODSETTINGS_H_ */
diff --git a/plugins/channelrx/demodadsb/adsbdemodsink.cpp b/plugins/channelrx/demodadsb/adsbdemodsink.cpp
new file mode 100644
index 000000000..8812e4082
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodsink.cpp
@@ -0,0 +1,278 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2019 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include <stdio.h>
+#include <complex.h>
+
+#include <QTime>
+#include <QDebug>
+
+#include "util/stepfunctions.h"
+#include "util/db.h"
+#include "util/crc.h"
+#include "audio/audiooutput.h"
+#include "dsp/dspengine.h"
+#include "dsp/dspcommands.h"
+#include "dsp/devicesamplemimo.h"
+#include "device/deviceapi.h"
+
+#include "adsbdemodreport.h"
+#include "adsbdemodsink.h"
+#include "adsb.h"
+
+ADSBDemodSink::ADSBDemodSink() :
+        m_channelSampleRate(6000000),
+        m_channelFrequencyOffset(0),
+        m_sampleIdx(0),
+        m_sampleCount(0),
+        m_skipCount(0),
+        m_magsq(0.0f),
+        m_magsqSum(0.0f),
+        m_magsqPeak(0.0f),
+        m_magsqCount(0),
+        m_messageQueueToGUI(nullptr),
+        m_sampleBuffer(nullptr),
+        m_preamble(nullptr)
+{
+    applySettings(m_settings, true);
+    applyChannelSettings(m_channelSampleRate, m_channelFrequencyOffset, true);
+}
+
+ADSBDemodSink::~ADSBDemodSink()
+{
+    delete m_sampleBuffer;
+    delete m_preamble;
+}
+
+void ADSBDemodSink::feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end)
+{
+    Complex ci;
+
+    for (SampleVector::const_iterator it = begin; it != end; ++it)
+    {
+        Complex c(it->real(), it->imag());
+        c *= m_nco.nextIQ();
+
+        if (m_interpolatorDistance == 1.0f)
+        {
+            processOneSample(c);
+        }
+        else if (m_interpolatorDistance < 1.0f) // interpolate
+        {
+            while (!m_interpolator.interpolate(&m_interpolatorDistanceRemain, c, &ci))
+            {
+                processOneSample(ci);
+                m_interpolatorDistanceRemain += m_interpolatorDistance;
+            }
+        }
+        else // decimate
+        {
+            if (m_interpolator.decimate(&m_interpolatorDistanceRemain, c, &ci))
+            {
+                processOneSample(ci);
+                m_interpolatorDistanceRemain += m_interpolatorDistance;
+            }
+        }
+    }
+
+}
+
+void ADSBDemodSink::processOneSample(Complex &ci)
+{
+    Real sample;
+
+    double magsqRaw = ci.real()*ci.real() + ci.imag()*ci.imag();
+    Real magsq = magsqRaw / (SDR_RX_SCALED*SDR_RX_SCALED);
+    m_movingAverage(magsq);
+    m_magsqSum += magsq;
+
+    if (magsq > m_magsqPeak)
+    {
+        m_magsqPeak = magsq;
+    }
+    m_magsqCount++;
+
+    sample = std::sqrtf(magsq);
+    m_sampleBuffer[m_sampleCount] = sample;
+    m_sampleCount++;
+
+    // Do we have enough data for a frame
+    if ((m_sampleCount >= m_totalSamples) && (m_skipCount == 0))
+    {
+        int startIdx = m_sampleCount - m_totalSamples;
+
+        // Correlate received signal with expected preamble
+        Real preambleCorrelation = 0.0f;
+        for (int i = 0; i < ADS_B_PREAMBLE_CHIPS*m_samplesPerChip; i++)
+            preambleCorrelation += m_preamble[i] * m_sampleBuffer[startIdx+i];
+
+        // If the correlation is exactly 0, it's probably no signal
+        if ((preambleCorrelation > m_settings.m_correlationThreshold) && (preambleCorrelation != 0.0f))
+        {
+            // Skip over preamble
+            startIdx += m_settings.m_samplesPerBit*ADS_B_PREAMBLE_BITS;
+
+            // Demodulate waveform to bytes
+            unsigned char data[ADS_B_ES_BYTES];
+            int byteIdx = 0;
+            int currentBit;
+            unsigned char currentByte = 0;
+            bool adsbOnly = true;
+            int df;
+
+            for (int bit = 0; bit < ADS_B_ES_BITS; bit++)
+            {
+                // PPM (Pulse position modulation) - Each bit spreads to two chips, 1->10, 0->01
+                // Determine if bit is 1 or 0, by seeing which chip has largest combined energy over the sampling period
+                Real oneSum = 0.0f;
+                Real zeroSum = 0.0f;
+                for (int i = 0; i < m_samplesPerChip; i++)
+                {
+                    oneSum += m_sampleBuffer[startIdx+i];
+                    zeroSum += m_sampleBuffer[startIdx+m_samplesPerChip+i];
+                }
+                currentBit = oneSum > zeroSum;
+                startIdx += m_settings.m_samplesPerBit;
+                // Convert bit to bytes - MSB first
+                currentByte |= currentBit << (7-(bit & 0x7));
+                if ((bit & 0x7) == 0x7)
+                {
+                    data[byteIdx++] = currentByte;
+                    currentByte = 0;
+                    // Don't try to demodulate any further, if this isn't an ADS-B frame
+                    // to help reduce processing overhead
+                    if (adsbOnly && (bit == 7))
+                    {
+                        df = ((data[0] >> 3) & ADS_B_DF_MASK);
+                        if ((df != 17) && (df != 18))
+                            break;
+                    }
+                }
+            }
+
+            // Is ADS-B?
+            df = ((data[0] >> 3) & ADS_B_DF_MASK);
+            if ((df == 17) || (df == 18))
+            {
+                crcadsb crc;
+                //int icao = (data[1] << 16) | (data[2] << 8) | data[3]; // ICAO aircraft address
+                int parity = (data[11] << 16) | (data[12] << 8) | data[13]; // Parity / CRC
+
+                crc.calculate(data, ADS_B_ES_BYTES-3);
+                if (parity == crc.get())
+                {
+                    // Got a valid frame
+                    // Don't try to re-demodulate the same frame
+                    m_skipCount = (ADS_B_ES_BITS+ADS_B_PREAMBLE_BITS)*ADS_B_CHIPS_PER_BIT*m_samplesPerChip;
+                    // Pass to GUI
+                    if (getMessageQueueToGUI())
+                    {
+                        ADSBDemodReport::MsgReportADSB *msg = ADSBDemodReport::MsgReportADSB::create(QByteArray((char*)data, sizeof(data)), preambleCorrelation);
+                        getMessageQueueToGUI()->push(msg);
+                    }
+                    // Pass to worker
+                    if (getMessageQueueToWorker())
+                    {
+                        ADSBDemodReport::MsgReportADSB *msg = ADSBDemodReport::MsgReportADSB::create(QByteArray((char*)data, sizeof(data)), preambleCorrelation);
+                        getMessageQueueToWorker()->push(msg);
+                    }
+                }
+            }
+        }
+    }
+    if (m_skipCount > 0)
+        m_skipCount--;
+    if (m_sampleCount >= 2*m_totalSamples)
+    {
+        // Copy second half of buffer to first
+        memcpy(&m_sampleBuffer[0], &m_sampleBuffer[m_totalSamples], m_totalSamples*sizeof(Real));
+        m_sampleCount = m_totalSamples;
+    }
+    m_sampleIdx++;
+
+}
+
+void ADSBDemodSink::init(int samplesPerBit)
+{
+    if (m_sampleBuffer)
+        delete m_sampleBuffer;
+    if (m_preamble)
+        delete m_preamble;
+
+    m_totalSamples = samplesPerBit*(ADS_B_PREAMBLE_BITS+ADS_B_ES_BITS);
+    m_samplesPerChip = samplesPerBit/ADS_B_CHIPS_PER_BIT;
+
+    m_sampleBuffer = new Real[2*m_totalSamples];
+    m_preamble = new Real[ADS_B_PREAMBLE_CHIPS*m_samplesPerChip];
+    // Possibly don't look for first chip
+    const int preambleChips[] = {1, -1, 1, -1, -1, -1, -1, 1, -1, 1, -1, -1, -1, -1, -1, -1};
+    for (int i = 0; i < ADS_B_PREAMBLE_CHIPS; i++)
+    {
+        for (int j = 0; j < m_samplesPerChip; j++)
+        {
+            m_preamble[i*m_samplesPerChip+j] = preambleChips[i];
+        }
+    }
+}
+
+void ADSBDemodSink::applyChannelSettings(int channelSampleRate, int channelFrequencyOffset, bool force)
+{
+    qDebug() << "ADSBDemodSink::applyChannelSettings:"
+            << " channelSampleRate: " << channelSampleRate
+            << " channelFrequencyOffset: " << channelFrequencyOffset;
+
+    if ((channelFrequencyOffset != m_channelFrequencyOffset) ||
+        (channelSampleRate != m_channelSampleRate) || force)
+    {
+        m_nco.setFreq(-channelFrequencyOffset, channelSampleRate);
+    }
+
+    if ((channelSampleRate != m_channelSampleRate) || force)
+    {
+        m_interpolator.create(16, channelSampleRate, m_settings.m_rfBandwidth / 2.2);
+        m_interpolatorDistanceRemain = 0;
+        m_interpolatorDistance = (Real) channelSampleRate / (Real) (ADS_B_BITS_PER_SECOND * m_settings.m_samplesPerBit);
+    }
+
+    m_channelSampleRate = channelSampleRate;
+    m_channelFrequencyOffset = channelFrequencyOffset;
+}
+
+void ADSBDemodSink::applySettings(const ADSBDemodSettings& settings, bool force)
+{
+    qDebug() << "ADSBDemodSink::applySettings:"
+            << " m_inputFrequencyOffset: " << settings.m_inputFrequencyOffset
+            << " m_rfBandwidth: " << settings.m_rfBandwidth
+            << " m_correlationThreshold: " << settings.m_correlationThreshold
+            << " m_samplesPerBit: " << settings.m_samplesPerBit
+            << " force: " << force;
+
+    if ((settings.m_rfBandwidth != m_settings.m_rfBandwidth)
+        || (settings.m_samplesPerBit != m_settings.m_samplesPerBit) || force)
+    {
+        m_interpolator.create(16, m_channelSampleRate, settings.m_rfBandwidth / 2.2);
+        m_interpolatorDistanceRemain = 0;
+        m_interpolatorDistance =  (Real) m_channelSampleRate / (Real) (ADS_B_BITS_PER_SECOND * settings.m_samplesPerBit);
+    }
+    if ((settings.m_samplesPerBit != m_settings.m_samplesPerBit) || force)
+    {
+        init(settings.m_samplesPerBit);
+    }
+
+    m_settings = settings;
+}
diff --git a/plugins/channelrx/demodadsb/adsbdemodsink.h b/plugins/channelrx/demodadsb/adsbdemodsink.h
new file mode 100644
index 000000000..b57970c7b
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodsink.h
@@ -0,0 +1,106 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2019 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_ADSBDEMODSINK_H
+#define INCLUDE_ADSBDEMODSINK_H
+
+#include <vector>
+
+#include "dsp/channelsamplesink.h"
+#include "dsp/nco.h"
+#include "dsp/interpolator.h"
+#include "util/movingaverage.h"
+
+#include "adsbdemodsettings.h"
+
+class ADSBDemodSink : public ChannelSampleSink {
+public:
+    ADSBDemodSink();
+    ~ADSBDemodSink();
+
+    virtual void feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end);
+
+    void getMagSqLevels(double& avg, double& peak, int& nbSamples)
+    {
+        if (m_magsqCount > 0)
+        {
+            m_magsq = m_magsqSum / m_magsqCount;
+            m_magSqLevelStore.m_magsq = m_magsq;
+            m_magSqLevelStore.m_magsqPeak = m_magsqPeak;
+        }
+
+        avg = m_magSqLevelStore.m_magsq;
+        peak = m_magSqLevelStore.m_magsqPeak;
+        nbSamples = m_magsqCount == 0 ? 1 : m_magsqCount;
+
+        m_magsqSum = 0.0f;
+        m_magsqPeak = 0.0f;
+        m_magsqCount = 0;
+    }
+
+    void init(int samplesPerBit);
+    void applyChannelSettings(int channelSampleRate, int channelFrequencyOffset, bool force = false);
+    void applySettings(const ADSBDemodSettings& settings, bool force = false);
+    void setMessageQueueToGUI(MessageQueue *messageQueue) { m_messageQueueToGUI = messageQueue; }
+    void setMessageQueueToWorker(MessageQueue *messageQueue) { m_messageQueueToWorker = messageQueue; }
+
+private:
+    struct MagSqLevelsStore
+    {
+        MagSqLevelsStore() :
+            m_magsq(1e-12),
+            m_magsqPeak(1e-12)
+        {}
+        double m_magsq;
+        double m_magsqPeak;
+    };
+
+    int m_channelSampleRate;
+    int m_channelFrequencyOffset;
+    ADSBDemodSettings m_settings;
+
+    NCO m_nco;
+    Interpolator m_interpolator;
+    Real m_interpolatorDistance;
+    Real m_interpolatorDistanceRemain;
+    int m_sampleIdx;
+    int m_sampleCount;
+    int m_skipCount;            // Samples to skip, because we've already received a frame
+    Real *m_sampleBuffer;
+    Real *m_preamble;
+
+    int m_totalSamples;         // These two values are derived from samplesPerBit
+    int m_samplesPerChip;
+
+    double m_magsq; //!< displayed averaged value
+    double m_magsqSum;
+    double m_magsqPeak;
+    int  m_magsqCount;
+    MagSqLevelsStore m_magSqLevelStore;
+
+    MovingAverageUtil<Real, double, 32> m_movingAverage;
+
+    MessageQueue *m_messageQueueToGUI;
+    MessageQueue *m_messageQueueToWorker;
+
+    void processOneSample(Complex &ci);
+    MessageQueue *getMessageQueueToGUI() { return m_messageQueueToGUI; }
+    MessageQueue *getMessageQueueToWorker() { return m_messageQueueToWorker; }
+};
+
+#endif // INCLUDE_ADSBDEMODSINK_H
diff --git a/plugins/channelrx/demodadsb/adsbdemodwebapiadapter.cpp b/plugins/channelrx/demodadsb/adsbdemodwebapiadapter.cpp
new file mode 100644
index 000000000..d18add79d
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodwebapiadapter.cpp
@@ -0,0 +1,51 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2019 Edouard Griffiths, F4EXB.                                  //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include "SWGChannelSettings.h"
+#include "adsbdemod.h"
+#include "adsbdemodwebapiadapter.h"
+
+ADSBDemodWebAPIAdapter::ADSBDemodWebAPIAdapter()
+{}
+
+ADSBDemodWebAPIAdapter::~ADSBDemodWebAPIAdapter()
+{}
+
+int ADSBDemodWebAPIAdapter::webapiSettingsGet(
+        SWGSDRangel::SWGChannelSettings& response,
+        QString& errorMessage)
+{
+    (void) errorMessage;
+    response.setAdsbDemodSettings(new SWGSDRangel::SWGADSBDemodSettings());
+    response.getAdsbDemodSettings()->init();
+    ADSBDemod::webapiFormatChannelSettings(response, m_settings);
+
+    return 200;
+}
+
+int ADSBDemodWebAPIAdapter::webapiSettingsPutPatch(
+        bool force,
+        const QStringList& channelSettingsKeys,
+        SWGSDRangel::SWGChannelSettings& response,
+        QString& errorMessage)
+{
+    (void) errorMessage;
+    ADSBDemod::webapiUpdateChannelSettings(m_settings, channelSettingsKeys, response);
+
+    return 200;
+}
diff --git a/plugins/channelrx/demodadsb/adsbdemodwebapiadapter.h b/plugins/channelrx/demodadsb/adsbdemodwebapiadapter.h
new file mode 100644
index 000000000..7e480d031
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodwebapiadapter.h
@@ -0,0 +1,50 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2019 Edouard Griffiths, F4EXB.                                  //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_ADSBDEMOD_WEBAPIADAPTER_H
+#define INCLUDE_ADSBDEMOD_WEBAPIADAPTER_H
+
+#include "channel/channelwebapiadapter.h"
+#include "adsbdemodsettings.h"
+
+/**
+ * Standalone API adapter only for the settings
+ */
+class ADSBDemodWebAPIAdapter : public ChannelWebAPIAdapter {
+public:
+    ADSBDemodWebAPIAdapter();
+    virtual ~ADSBDemodWebAPIAdapter();
+
+    virtual QByteArray serialize() const { return m_settings.serialize(); }
+    virtual bool deserialize(const QByteArray& data) { return m_settings.deserialize(data); }
+
+    virtual int webapiSettingsGet(
+            SWGSDRangel::SWGChannelSettings& response,
+            QString& errorMessage);
+
+    virtual int webapiSettingsPutPatch(
+            bool force,
+            const QStringList& channelSettingsKeys,
+            SWGSDRangel::SWGChannelSettings& response,
+            QString& errorMessage);
+
+private:
+    ADSBDemodSettings m_settings;
+};
+
+#endif // INCLUDE_ADSBDEMOD_WEBAPIADAPTER_H
diff --git a/plugins/channelrx/demodadsb/adsbdemodworker.cpp b/plugins/channelrx/demodadsb/adsbdemodworker.cpp
new file mode 100644
index 000000000..c254f4bbc
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodworker.cpp
@@ -0,0 +1,197 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include <QDebug>
+#include <QTcpServer>
+#include <QTcpSocket>
+#include <QEventLoop>
+#include <QTimer>
+
+#include "adsbdemodworker.h"
+#include "adsbdemodreport.h"
+
+MESSAGE_CLASS_DEFINITION(ADSBDemodWorker::MsgConfigureADSBDemodWorker, Message)
+
+ADSBDemodWorker::ADSBDemodWorker() :
+    m_running(false),
+    m_mutex(QMutex::Recursive)
+{
+    connect(&m_heartbeatTimer, SIGNAL(timeout()), this, SLOT(heartbeat()));
+    connect(&m_socket, SIGNAL(readyRead()),this, SLOT(recv()));
+}
+
+ADSBDemodWorker::~ADSBDemodWorker()
+{
+    m_inputMessageQueue.clear();
+}
+
+void ADSBDemodWorker::reset()
+{
+    QMutexLocker mutexLocker(&m_mutex);
+    m_inputMessageQueue.clear();
+}
+
+bool ADSBDemodWorker::startWork()
+{
+    QMutexLocker mutexLocker(&m_mutex);
+    connect(&m_inputMessageQueue, SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages()));
+    m_heartbeatTimer.start(60*1000);
+    m_running = true;
+    return m_running;
+}
+
+void ADSBDemodWorker::stopWork()
+{
+    QMutexLocker mutexLocker(&m_mutex);
+    m_heartbeatTimer.stop();
+    disconnect(&m_inputMessageQueue, SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages()));
+    m_running = false;
+}
+
+void ADSBDemodWorker::handleInputMessages()
+{
+    Message* message;
+
+    while ((message = m_inputMessageQueue.pop()) != nullptr)
+    {
+        if (handleMessage(*message)) {
+            delete message;
+        }
+    }
+}
+
+bool ADSBDemodWorker::handleMessage(const Message& message)
+{
+    if (MsgConfigureADSBDemodWorker::match(message))
+    {
+        QMutexLocker mutexLocker(&m_mutex);
+        MsgConfigureADSBDemodWorker& cfg = (MsgConfigureADSBDemodWorker&) message;
+
+        applySettings(cfg.getSettings(), cfg.getForce());
+        return true;
+    }
+    else if (ADSBDemodReport::MsgReportADSB::match(message))
+    {
+        ADSBDemodReport::MsgReportADSB& report = (ADSBDemodReport::MsgReportADSB&) message;
+        handleADSB(report.getData(), report.getDateTime(), report.getPreambleCorrelation());
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+
+void ADSBDemodWorker::applySettings(const ADSBDemodSettings& settings, bool force)
+{
+    qDebug() << "ADSBDemodWorker::applySettings:"
+            << " m_beastEnabled: " << settings.m_beastEnabled
+            << " m_beastHost: " << settings.m_beastHost
+            << " m_beastPort: " << settings.m_beastPort
+            << " force: " << force;
+
+    if ((settings.m_beastEnabled != m_settings.m_beastEnabled)
+        || (settings.m_beastHost != m_settings.m_beastHost)
+        || (settings.m_beastPort != m_settings.m_beastPort) || force)
+    {
+        // Close any existing connection
+        if (m_socket.isOpen())
+            m_socket.close();
+        // Open connection
+        if (settings.m_beastEnabled)
+            m_socket.connectToHost(settings.m_beastHost, settings.m_beastPort);
+    }
+
+    m_settings = settings;
+}
+
+void ADSBDemodWorker::recv()
+{
+    // Not expecting to receving anything from server
+    qDebug() << "ADSBDemodWorker::recv";
+    qDebug() << m_socket.readAll();
+}
+
+void ADSBDemodWorker::send(const char *data, int length)
+{
+    if (m_settings.m_beastEnabled)
+    {
+        // Reopen connection if it was lost
+        if (!m_socket.isOpen())
+            m_socket.connectToHost(m_settings.m_beastHost, m_settings.m_beastPort);
+        // Send data
+        m_socket.write(data, length);
+    }
+}
+
+#define BEAST_ESC 0x1a
+
+char *ADSBDemodWorker::escape(char *p, char c)
+{
+    *p++ = c;
+    if (c == BEAST_ESC)
+        *p++ = BEAST_ESC;
+    return p;
+}
+
+// Forward ADS-B data in Beast binary format to specified server
+// See: https://wiki.jetvision.de/wiki/Mode-S_Beast:Data_Output_Formats
+void ADSBDemodWorker::handleADSB(QByteArray data, const QDateTime dateTime, float correlation)
+{
+    char beastBinary[2+6*2+1*2+14*2];
+    int length;
+    char *p = beastBinary;
+    qint64 timestamp;
+    unsigned char signalStrength;
+
+    timestamp = dateTime.toMSecsSinceEpoch();
+
+    if (correlation > 255)
+       signalStrength = 255;
+    if (correlation < 1)
+       signalStrength = 1;
+    else
+       signalStrength = (unsigned char)correlation;
+
+    *p++ = BEAST_ESC;
+    *p++ = '3'; // Mode-S long
+
+    p = escape(p, timestamp >> 56); // Big-endian timestamp
+    p = escape(p, timestamp >> 48);
+    p = escape(p, timestamp >> 32);
+    p = escape(p, timestamp >> 24);
+    p = escape(p, timestamp >> 16);
+    p = escape(p, timestamp >> 8);
+    p = escape(p, timestamp);
+
+    p = escape(p, signalStrength);  // Signal strength
+
+    for (int i = 0; i < data.length(); i++) // ADS-B data
+        p = escape(p, data[i]);
+
+    length = p - beastBinary;
+
+    send(beastBinary, length);
+}
+
+// Periodically send heartbeat to keep connection alive
+void ADSBDemodWorker::heartbeat()
+{
+    const char heartbeat[] = {BEAST_ESC, '1', 0, 0, 0, 0, 0, 0, 0, 0, 0}; // Mode AC packet
+    send(heartbeat, sizeof(heartbeat));
+}
diff --git a/plugins/channelrx/demodadsb/adsbdemodworker.h b/plugins/channelrx/demodadsb/adsbdemodworker.h
new file mode 100644
index 000000000..8a592205b
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbdemodworker.h
@@ -0,0 +1,87 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_ADSBDEMODWORKER_H
+#define INCLUDE_ADSBDEMODWORKER_H
+
+#include <QObject>
+#include <QTimer>
+#include <QTcpSocket>
+
+#include "util/message.h"
+#include "util/messagequeue.h"
+
+#include "adsbdemodsettings.h"
+
+class ADSBDemodWorker : public QObject
+{
+    Q_OBJECT
+public:
+     class MsgConfigureADSBDemodWorker : public Message {
+        MESSAGE_CLASS_DECLARATION
+
+    public:
+        const ADSBDemodSettings& getSettings() const { return m_settings; }
+        bool getForce() const { return m_force; }
+
+        static MsgConfigureADSBDemodWorker* create(const ADSBDemodSettings& settings, bool force)
+        {
+            return new MsgConfigureADSBDemodWorker(settings, force);
+        }
+
+    private:
+        ADSBDemodSettings m_settings;
+        bool m_force;
+
+        MsgConfigureADSBDemodWorker(const ADSBDemodSettings& settings, bool force) :
+            Message(),
+            m_settings(settings),
+            m_force(force)
+        { }
+    };
+
+    ADSBDemodWorker();
+    ~ADSBDemodWorker();
+    void reset();
+    bool startWork();
+    void stopWork();
+    bool isRunning() const { return m_running; }
+    MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; }
+
+private:
+
+    MessageQueue m_inputMessageQueue;
+    ADSBDemodSettings m_settings;
+    bool m_running;
+    QMutex m_mutex;
+    QTimer m_heartbeatTimer;
+    QTcpSocket m_socket;
+
+    bool handleMessage(const Message& cmd);
+    void applySettings(const ADSBDemodSettings& settings, bool force = false);
+    void send(const char *data, int length);
+    char *escape(char *p, char c);
+    void handleADSB(QByteArray data, const QDateTime dateTime, float correlation);
+
+private slots:
+    void handleInputMessages();
+    void recv();
+    void heartbeat();
+};
+
+#endif // INCLUDE_ADSBDEMODWORKER_H
diff --git a/plugins/channelrx/demodadsb/adsbplugin.cpp b/plugins/channelrx/demodadsb/adsbplugin.cpp
new file mode 100644
index 000000000..2b44dd522
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbplugin.cpp
@@ -0,0 +1,92 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include <QtPlugin>
+#include "plugin/pluginapi.h"
+
+#include "adsbplugin.h"
+#ifndef SERVER_MODE
+#include "adsbdemodgui.h"
+#endif
+#include "adsbdemod.h"
+#include "adsbdemodwebapiadapter.h"
+#include "adsbplugin.h"
+
+const PluginDescriptor ADSBPlugin::m_pluginDescriptor = {
+    ADSBDemod::m_channelId,
+    QString("ADS-B Demodulator"),
+    QString("4.20.0"),
+    QString("(c) Jon Beniston, M7RCE"),
+    QString("https://github.com/f4exb/sdrangel"),
+    true,
+    QString("https://github.com/f4exb/sdrangel")
+};
+
+ADSBPlugin::ADSBPlugin(QObject* parent) :
+    QObject(parent),
+    m_pluginAPI(0)
+{
+}
+
+const PluginDescriptor& ADSBPlugin::getPluginDescriptor() const
+{
+    return m_pluginDescriptor;
+}
+
+void ADSBPlugin::initPlugin(PluginAPI* pluginAPI)
+{
+    m_pluginAPI = pluginAPI;
+
+    // register demodulator
+    m_pluginAPI->registerRxChannel(ADSBDemod::m_channelIdURI, ADSBDemod::m_channelId, this);
+}
+
+void ADSBPlugin::createRxChannel(DeviceAPI *deviceAPI, BasebandSampleSink **bs, ChannelAPI **cs) const
+{
+    if (bs || cs)
+    {
+        ADSBDemod *instance = new ADSBDemod(deviceAPI);
+
+        if (bs) {
+            *bs = instance;
+        }
+
+        if (cs) {
+            *cs = instance;
+        }
+    }
+}
+
+#ifdef SERVER_MODE
+ChannelGUI* ADSBPlugin::createRxChannelGUI(
+        DeviceUISet *deviceUISet,
+        BasebandSampleSink *rxChannel) const
+{
+    return 0;
+}
+#else
+ChannelGUI* ADSBPlugin::createRxChannelGUI(DeviceUISet *deviceUISet, BasebandSampleSink *rxChannel) const
+{
+    return ADSBDemodGUI::create(m_pluginAPI, deviceUISet, rxChannel);
+}
+#endif
+
+ChannelWebAPIAdapter* ADSBPlugin::createChannelWebAPIAdapter() const
+{
+    return new ADSBDemodWebAPIAdapter();
+}
diff --git a/plugins/channelrx/demodadsb/adsbplugin.h b/plugins/channelrx/demodadsb/adsbplugin.h
new file mode 100644
index 000000000..b43a49051
--- /dev/null
+++ b/plugins/channelrx/demodadsb/adsbplugin.h
@@ -0,0 +1,49 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_ADSBPLUGIN_H
+#define INCLUDE_ADSBPLUGIN_H
+
+#include <QObject>
+#include "plugin/plugininterface.h"
+
+class DeviceUISet;
+class BasebandSampleSink;
+
+class ADSBPlugin : public QObject, PluginInterface {
+    Q_OBJECT
+    Q_INTERFACES(PluginInterface)
+    Q_PLUGIN_METADATA(IID "sdrangel.channel.adsbdemod")
+
+public:
+    explicit ADSBPlugin(QObject* parent = NULL);
+
+    const PluginDescriptor& getPluginDescriptor() const;
+    void initPlugin(PluginAPI* pluginAPI);
+
+    virtual void createRxChannel(DeviceAPI *deviceAPI, BasebandSampleSink **bs, ChannelAPI **cs) const;
+    virtual ChannelGUI* createRxChannelGUI(DeviceUISet *deviceUISet, BasebandSampleSink *rxChannel) const;
+    virtual ChannelWebAPIAdapter* createChannelWebAPIAdapter() const;
+
+private:
+    static const PluginDescriptor m_pluginDescriptor;
+
+    PluginAPI* m_pluginAPI;
+};
+
+#endif // INCLUDE_ADSBPLUGIN_H
diff --git a/plugins/channelrx/demodadsb/readme.md b/plugins/channelrx/demodadsb/readme.md
new file mode 100644
index 000000000..dd2f603c5
--- /dev/null
+++ b/plugins/channelrx/demodadsb/readme.md
@@ -0,0 +1,86 @@
+<h1>ADS-B demodulator plugin</h1>
+
+<h2>Introduction</h2>
+
+This plugin can be used to receive and display ADS-B aircraft information. This is information about an aircraft, such as position, altitude, heading and speed, broadcast by aircraft on 1090MHz, in the 1090ES (Extended Squitter) format. 1090ES frames have a chip rate of 2Mchip/s, so the baseband sample rate should be set to be greater than 2MSa/s.
+
+<h2>Interface</h2>
+
+![ADS-B Demodulator plugin GUI](../../../doc/img/ADSBdemod_plugin.png)
+
+<h3>1: Frequency shift from center frequency of reception value</h3>
+
+Use the wheels to adjust the frequency shift in Hz from the center frequency of reception. 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. Left click on a digit sets the cursor position at this digit.
+
+<h3>2: Channel power</h3>
+
+Average total power in dB relative to a +/- 1.0 amplitude signal received in the pass band.
+
+<h3>3: Level meter in dB</h3>
+
+  - top bar (green): average value
+  - bottom bar (blue green): instantaneous peak value
+  - tip vertical bar (bright green): peak hold value
+
+<h3>4: RF bandwidth</h3>
+
+This is the bandwidth in MHz of the channel signal before demodulation.
+
+<h3>5: SR - Channel Sample Rate</h3>
+
+This specifies the channel sample rate the demodulator uses. Values of 4M-12MSa/s are supported, 2MSa/s steps. Ideally, this should be set to the same value as the baseband sample rate (the sample rate received from the radio). If it is different from the baseband sample rate, interpolation or decimation will be performed as needed to match the rates. However, interpolation currently requires a significant amount of processing power and may result in dropped samples.
+
+Higher channel sample rates may help decode more frames, but will require more processing power.
+
+<h3>6: Threshold</h3>
+
+This sets the correlation threshold between the received signal and expected 1090ES preamble, that is required to be exceeded before the demodulator will try to decode a frame. Lower values should decode more frames, but will require more processing power.
+
+<h3>7: Feed</h3>
+
+Checking Feed enables feeding received ADS-B frames to aggregators such as ADS-B Exchange: https://www.adsbexchange.com The server name and port to send the frames to should be entered in the Server and Port fields. For ADS-B Exchange, set Server to feed.adsbexchange.com and Port to 30005. You can check if you are feeding data to ADS-B Exchange (after about 30 seconds) at: https://www.adsbexchange.com/myip/ Frames are forwarded in the Beast binary format as described here: https://wiki.jetvision.de/wiki/Mode-S_Beast:Data_Output_Formats
+
+<h3>ADS-B Data</h3>
+
+The table displays the decoded ADS-B data for each aircraft. The data is not all able to be transmitted in a single ADS-B frame, so the table displays an amalgamation of the latest received data of each type.
+
+![ADS-B Demodulator Data](../../../doc/img/ADSBdemod_plugin_table.png)
+
+* ICAO ID - 24-bit hexidecimal ICAO aircraft address. This is unique for each aircraft.
+* Flight No. - Airline flight number or callsign.
+* Latitude - Vertical position coordinate, in decimal degrees.
+* Longitude - Horizontal position coordinate, in decimal degrees.
+* Altitude - Altitude in feet.
+* Speed - Speed (either ground speed, indicated airspeed, or true airspeed) in knots.
+* Heading - The direction the aircraft is heading, in degrees.
+* Climb - The vertical climb rate (or descent rate if negative) in feet/minute.
+* Categoty - The vehicle category, such as Light, Large, Heavy or Rotorcraft.
+* Range - The range (distance) to the aircraft from the receiving antenna in kilometres. The location of the receiving antenna is set under the Preferences > My Position menu.
+* Az/El - The azimuth and elevation angles to the aircraft from the receiving antenna in degrees. These values can be sent to a rotator controller to track the aircraft.
+* Updated - The local time at which the last ADS-B message was received.
+* RX Frames - A count of the number of ADS-B frames received from this aircraft.
+* Correlation - Displays the minimum, average and maximum of the preamable correlation for each recevied frame. These values can be used to help select a threshold setting.
+
+A suffix of L in the latitude and longitude columns, indicates the position is based on a local decode, using a single received frame and the position of the radio station. No suffix will be added for a global decode, which is based upon receving and odd and even frame.
+If an ADS-B frame has not been received from an aircraft for 60 seconds, the aircraft is removed from the table and map.
+
+Double clicking in an ICAO ID cell will open a Web browser and search for the corresponding aircraft on https://www.planespotters.net/
+Double clicking in an Flight No cell will open a Web browser and search for the corresponding flight on https://www.flightradar24.com/
+Double clicking in an Az/El cell will set the aircraft as the active target. The azimuth and elevation to the aicraft will be sent to a rotator controller plugin. The aircraft text will be coloured green, rather than blue, on the map.
+Double clicking on any other cell in the table will centre the map on the corresponding aircraft.
+
+<h3>Map</h3>
+
+The map displays aircraft locations and data geographically.
+
+![ADS-B Demodulator Map](../../../doc/img/ADSBdemod_plugin_map.png)
+
+The initial antenna location is placed according to My Position set under the Preferences > My Position menu. The position is only updated when the ADS-B demodulator plugin is first opened.
+
+Aircraft are only placed upon the map when a position can be calculated, which can require several frames to be received.
+
+To pan around the map, click the left mouse button and drag. To zoom in or out, use the mouse scroll wheel.
+
+<h3>Attribution</h3>
+
+Icons are by Alice Design, Alex Ahineev, Verry Obito, Sean Maldjia, Tinashe Mugayi, Andreas V�gele and Angriawan Ditya Zulkarnain from the Noun Project https://thenounproject.com/
diff --git a/plugins/feature/CMakeLists.txt b/plugins/feature/CMakeLists.txt
index 58a75ed42..6d80a3cd6 100644
--- a/plugins/feature/CMakeLists.txt
+++ b/plugins/feature/CMakeLists.txt
@@ -1,4 +1,7 @@
 project(feature)
 
+if (Qt5SerialPort_FOUND)
+    add_subdirectory(gs232controller)
+endif()
 add_subdirectory(rigctlserver)
 add_subdirectory(simpleptt)
diff --git a/plugins/feature/gs232controller/CMakeLists.txt b/plugins/feature/gs232controller/CMakeLists.txt
new file mode 100644
index 000000000..c5d99df76
--- /dev/null
+++ b/plugins/feature/gs232controller/CMakeLists.txt
@@ -0,0 +1,64 @@
+project(gs232controller)
+
+set(gs232controller_SOURCES
+    gs232controller.cpp
+    gs232controllersettings.cpp
+    gs232controllerplugin.cpp
+    gs232controllerworker.cpp
+    gs232controllerwebapiadapter.cpp
+)
+
+set(gs232controller_HEADERS
+    gs232controller.h
+    gs232controllersettings.h
+    gs232controllerplugin.h
+    gs232controllerreport.h
+    gs232controllerworker.h
+    gs232controllerwebapiadapter.h
+)
+
+include_directories(
+    ${CMAKE_SOURCE_DIR}/swagger/sdrangel/code/qt5/client
+)
+
+if(NOT SERVER_MODE)
+    set(gs232controller_SOURCES
+        ${gs232controller_SOURCES}
+        gs232controllergui.cpp
+        gs232controllergui.ui
+    )
+    set(gs232controller_HEADERS
+        ${gs232controller_HEADERS}
+        gs232controllergui.h
+    )
+
+    set(TARGET_NAME featuregs232controller)
+    set(TARGET_LIB Qt5::Widgets)
+    set(TARGET_LIB_GUI "sdrgui")
+    set(INSTALL_FOLDER ${INSTALL_PLUGINS_DIR})
+else()
+    set(TARGET_NAME featuregs232controllersrv)
+    set(TARGET_LIB "")
+    set(TARGET_LIB_GUI "")
+    set(INSTALL_FOLDER ${INSTALL_PLUGINSSRV_DIR})
+endif()
+
+add_library(${TARGET_NAME} SHARED
+    ${gs232controller_SOURCES}
+)
+
+target_link_libraries(${TARGET_NAME}
+    Qt5::Core
+    Qt5::SerialPort
+    ${TARGET_LIB}
+    sdrbase
+    ${TARGET_LIB_GUI}
+)
+
+install(TARGETS ${TARGET_NAME} DESTINATION ${INSTALL_FOLDER})
+
+if(WIN32)
+  # Run deployqt for serial libraries
+  include(DeployQt)
+  windeployqt(${TARGET_NAME} ${SDRANGEL_BINARY_BIN_DIR} ${PROJECT_SOURCE_DIR}/../../../sdrgui/resources)
+endif()
diff --git a/plugins/feature/gs232controller/gs232controller.cpp b/plugins/feature/gs232controller/gs232controller.cpp
new file mode 100644
index 000000000..d88b3dc90
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controller.cpp
@@ -0,0 +1,425 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include <QDebug>
+#include <QNetworkAccessManager>
+#include <QNetworkReply>
+#include <QBuffer>
+
+#include "SWGFeatureSettings.h"
+#include "SWGFeatureReport.h"
+#include "SWGFeatureActions.h"
+#include "SWGSimplePTTReport.h"
+#include "SWGDeviceState.h"
+
+#include "dsp/dspengine.h"
+
+#include "gs232controllerworker.h"
+#include "gs232controller.h"
+
+MESSAGE_CLASS_DEFINITION(GS232Controller::MsgConfigureGS232Controller, Message)
+MESSAGE_CLASS_DEFINITION(GS232Controller::MsgStartStop, Message)
+
+const QString GS232Controller::m_featureIdURI = "sdrangel.feature.gs232controller";
+const QString GS232Controller::m_featureId = "GS232Controller";
+
+GS232Controller::GS232Controller(WebAPIAdapterInterface *webAPIAdapterInterface) :
+    Feature(m_featureIdURI, webAPIAdapterInterface),
+    m_ptt(false)
+{
+    qDebug("GS232Controller::GS232Controller: webAPIAdapterInterface: %p", webAPIAdapterInterface);
+    setObjectName(m_featureId);
+    m_worker = new GS232ControllerWorker(webAPIAdapterInterface);
+    m_state = StIdle;
+    m_errorMessage = "GS232Controller error";
+}
+
+GS232Controller::~GS232Controller()
+{
+    if (m_worker->isRunning()) {
+        stop();
+    }
+
+    delete m_worker;
+}
+
+void GS232Controller::start()
+{
+    qDebug("GS232Controller::start");
+
+    m_worker->reset();
+    m_worker->setMessageQueueToFeature(getInputMessageQueue());
+    m_worker->setMessageQueueToGUI(getMessageQueueToGUI());
+    bool ok = m_worker->startWork();
+    m_state = ok ? StRunning : StError;
+    m_thread.start();
+
+    GS232ControllerWorker::MsgConfigureGS232ControllerWorker *msg = GS232ControllerWorker::MsgConfigureGS232ControllerWorker::create(m_settings, true);
+    m_worker->getInputMessageQueue()->push(msg);
+}
+
+void GS232Controller::stop()
+{
+    qDebug("GS232Controller::stop");
+    m_worker->stopWork();
+    m_state = StIdle;
+    m_thread.quit();
+    m_thread.wait();
+}
+
+bool GS232Controller::handleMessage(const Message& cmd)
+{
+    if (MsgConfigureGS232Controller::match(cmd))
+    {
+        MsgConfigureGS232Controller& cfg = (MsgConfigureGS232Controller&) cmd;
+        qDebug() << "GS232Controller::handleMessage: MsgConfigureGS232Controller";
+        applySettings(cfg.getSettings(), cfg.getForce());
+
+        return true;
+    }
+    else if (MsgStartStop::match(cmd))
+    {
+        MsgStartStop& cfg = (MsgStartStop&) cmd;
+        qDebug() << "GS232Controller::handleMessage: MsgStartStop: start:" << cfg.getStartStop();
+
+        if (cfg.getStartStop()) {
+            start();
+        } else {
+            stop();
+        }
+
+        return true;
+    }
+    else if (GS232ControllerSettings::MsgChannelIndexChange::match(cmd))
+    {
+        GS232ControllerSettings::MsgChannelIndexChange& cfg = (GS232ControllerSettings::MsgChannelIndexChange&) cmd;
+        int newChannelIndex = cfg.getIndex();
+        qDebug() << "GS232Controller::handleMessage: MsgChannelIndexChange: " << newChannelIndex;
+        GS232ControllerSettings settings = m_settings;
+        settings.m_channelIndex = newChannelIndex;
+        applySettings(settings, false);
+
+        if (getMessageQueueToGUI())
+        {
+            GS232ControllerSettings::MsgChannelIndexChange *msg = new GS232ControllerSettings::MsgChannelIndexChange(cfg);
+            getMessageQueueToGUI()->push(msg);
+        }
+
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+
+QByteArray GS232Controller::serialize() const
+{
+    return m_settings.serialize();
+}
+
+bool GS232Controller::deserialize(const QByteArray& data)
+{
+    if (m_settings.deserialize(data))
+    {
+        MsgConfigureGS232Controller *msg = MsgConfigureGS232Controller::create(m_settings, true);
+        m_inputMessageQueue.push(msg);
+        return true;
+    }
+    else
+    {
+        m_settings.resetToDefaults();
+        MsgConfigureGS232Controller *msg = MsgConfigureGS232Controller::create(m_settings, true);
+        m_inputMessageQueue.push(msg);
+        return false;
+    }
+}
+
+void GS232Controller::applySettings(const GS232ControllerSettings& settings, bool force)
+{
+    qDebug() << "GS232Controller::applySettings:"
+            << " m_azimuth: " << settings.m_azimuth
+            << " m_elevation: " << settings.m_elevation
+            << " m_serialPort: " << settings.m_serialPort
+            << " m_baudRate: " << settings.m_baudRate
+            << " m_track: " << settings.m_track
+            << " m_deviceIndex: " << settings.m_deviceIndex
+            << " m_channelIndex: " << settings.m_channelIndex
+            << " m_title: " << settings.m_title
+            << " m_rgbColor: " << settings.m_rgbColor
+            << " m_useReverseAPI: " << settings.m_useReverseAPI
+            << " m_reverseAPIAddress: " << settings.m_reverseAPIAddress
+            << " m_reverseAPIPort: " << settings.m_reverseAPIPort
+            << " m_reverseAPIFeatureSetIndex: " << settings.m_reverseAPIFeatureSetIndex
+            << " m_reverseAPIFeatureIndex: " << settings.m_reverseAPIFeatureIndex
+            << " force: " << force;
+
+    QList<QString> reverseAPIKeys;
+
+    if ((m_settings.m_azimuth != settings.m_azimuth) || force) {
+        reverseAPIKeys.append("azimuth");
+    }
+    if ((m_settings.m_elevation != settings.m_elevation) || force) {
+        reverseAPIKeys.append("elevation");
+    }
+    if ((m_settings.m_serialPort != settings.m_serialPort) || force) {
+        reverseAPIKeys.append("serialPort");
+    }
+    if ((m_settings.m_baudRate != settings.m_baudRate) || force) {
+        reverseAPIKeys.append("baudRate");
+    }
+    if ((m_settings.m_track != settings.m_track) || force) {
+        reverseAPIKeys.append("track");
+    }
+    if ((m_settings.m_deviceIndex != settings.m_deviceIndex) || force) {
+        reverseAPIKeys.append("deviceIndex");
+    }
+    if ((m_settings.m_channelIndex != settings.m_channelIndex) || force) {
+        reverseAPIKeys.append("channelIndex");
+    }
+    if ((m_settings.m_title != settings.m_title) || force) {
+        reverseAPIKeys.append("title");
+    }
+    if ((m_settings.m_rgbColor != settings.m_rgbColor) || force) {
+        reverseAPIKeys.append("rgbColor");
+    }
+
+    GS232ControllerWorker::MsgConfigureGS232ControllerWorker *msg = GS232ControllerWorker::MsgConfigureGS232ControllerWorker::create(
+        settings, force
+    );
+    m_worker->getInputMessageQueue()->push(msg);
+
+    if (settings.m_useReverseAPI)
+    {
+        bool fullUpdate = ((m_settings.m_useReverseAPI != settings.m_useReverseAPI) && settings.m_useReverseAPI) ||
+                (m_settings.m_reverseAPIAddress != settings.m_reverseAPIAddress) ||
+                (m_settings.m_reverseAPIPort != settings.m_reverseAPIPort) ||
+                (m_settings.m_reverseAPIFeatureSetIndex != settings.m_reverseAPIFeatureSetIndex) ||
+                (m_settings.m_reverseAPIFeatureIndex != settings.m_reverseAPIFeatureIndex);
+        webapiReverseSendSettings(reverseAPIKeys, settings, fullUpdate || force);
+    }
+
+    m_settings = settings;
+}
+
+int GS232Controller::webapiRun(bool run,
+    SWGSDRangel::SWGDeviceState& response,
+    QString& errorMessage)
+{
+    getFeatureStateStr(*response.getState());
+    MsgStartStop *msg = MsgStartStop::create(run);
+    getInputMessageQueue()->push(msg);
+    return 202;
+}
+
+int GS232Controller::webapiSettingsGet(
+    SWGSDRangel::SWGFeatureSettings& response,
+    QString& errorMessage)
+{
+    (void) errorMessage;
+    response.setGs232ControllerSettings(new SWGSDRangel::SWGGS232ControllerSettings());
+    response.getGs232ControllerSettings()->init();
+    webapiFormatFeatureSettings(response, m_settings);
+    return 200;
+}
+
+int GS232Controller::webapiSettingsPutPatch(
+    bool force,
+    const QStringList& featureSettingsKeys,
+    SWGSDRangel::SWGFeatureSettings& response,
+    QString& errorMessage)
+{
+    (void) errorMessage;
+    GS232ControllerSettings settings = m_settings;
+    webapiUpdateFeatureSettings(settings, featureSettingsKeys, response);
+
+    MsgConfigureGS232Controller *msg = MsgConfigureGS232Controller::create(settings, force);
+    m_inputMessageQueue.push(msg);
+
+    qDebug("GS232Controller::webapiSettingsPutPatch: forward to GUI: %p", m_guiMessageQueue);
+    if (m_guiMessageQueue) // forward to GUI if any
+    {
+        MsgConfigureGS232Controller *msgToGUI = MsgConfigureGS232Controller::create(settings, force);
+        m_guiMessageQueue->push(msgToGUI);
+    }
+
+    webapiFormatFeatureSettings(response, settings);
+
+    return 200;
+}
+
+void GS232Controller::webapiFormatFeatureSettings(
+    SWGSDRangel::SWGFeatureSettings& response,
+    const GS232ControllerSettings& settings)
+{
+    response.getGs232ControllerSettings()->setAzimuth(settings.m_azimuth);
+    response.getGs232ControllerSettings()->setElevation(settings.m_elevation);
+    response.getGs232ControllerSettings()->setSerialPort(new QString(settings.m_serialPort));
+    response.getGs232ControllerSettings()->setBaudRate(settings.m_baudRate);
+    response.getGs232ControllerSettings()->setTrack(settings.m_track);
+    response.getGs232ControllerSettings()->setDeviceIndex(settings.m_deviceIndex);
+    response.getGs232ControllerSettings()->setChannelIndex(settings.m_channelIndex);
+
+    if (response.getGs232ControllerSettings()->getTitle()) {
+        *response.getGs232ControllerSettings()->getTitle() = settings.m_title;
+    } else {
+        response.getGs232ControllerSettings()->setTitle(new QString(settings.m_title));
+    }
+
+    response.getGs232ControllerSettings()->setRgbColor(settings.m_rgbColor);
+    response.getGs232ControllerSettings()->setUseReverseApi(settings.m_useReverseAPI ? 1 : 0);
+
+    if (response.getGs232ControllerSettings()->getReverseApiAddress()) {
+        *response.getGs232ControllerSettings()->getReverseApiAddress() = settings.m_reverseAPIAddress;
+    } else {
+        response.getGs232ControllerSettings()->setReverseApiAddress(new QString(settings.m_reverseAPIAddress));
+    }
+
+    response.getGs232ControllerSettings()->setReverseApiPort(settings.m_reverseAPIPort);
+    response.getGs232ControllerSettings()->setReverseApiDeviceIndex(settings.m_reverseAPIFeatureSetIndex);
+    response.getGs232ControllerSettings()->setReverseApiChannelIndex(settings.m_reverseAPIFeatureIndex);
+}
+
+void GS232Controller::webapiUpdateFeatureSettings(
+    GS232ControllerSettings& settings,
+    const QStringList& featureSettingsKeys,
+    SWGSDRangel::SWGFeatureSettings& response)
+{
+    if (featureSettingsKeys.contains("azimuth")) {
+        settings.m_azimuth = response.getGs232ControllerSettings()->getAzimuth();
+    }
+    if (featureSettingsKeys.contains("elevation")) {
+        settings.m_elevation = response.getGs232ControllerSettings()->getElevation();
+    }
+    if (featureSettingsKeys.contains("serialPort")) {
+        settings.m_serialPort = *response.getGs232ControllerSettings()->getSerialPort();
+    }
+    if (featureSettingsKeys.contains("baudRate")) {
+        settings.m_serialPort = response.getGs232ControllerSettings()->getBaudRate();
+    }
+    if (featureSettingsKeys.contains("track")) {
+        settings.m_track = response.getGs232ControllerSettings()->getTrack() != 0;
+    }
+    if (featureSettingsKeys.contains("deviceIndex")) {
+        settings.m_deviceIndex = response.getGs232ControllerSettings()->getDeviceIndex();
+    }
+    if (featureSettingsKeys.contains("channelIndex")) {
+        settings.m_channelIndex = response.getGs232ControllerSettings()->getChannelIndex();
+    }
+    if (featureSettingsKeys.contains("title")) {
+        settings.m_title = *response.getGs232ControllerSettings()->getTitle();
+    }
+    if (featureSettingsKeys.contains("rgbColor")) {
+        settings.m_rgbColor = response.getGs232ControllerSettings()->getRgbColor();
+    }
+    if (featureSettingsKeys.contains("useReverseAPI")) {
+        settings.m_useReverseAPI = response.getGs232ControllerSettings()->getUseReverseApi() != 0;
+    }
+    if (featureSettingsKeys.contains("reverseAPIAddress")) {
+        settings.m_reverseAPIAddress = *response.getGs232ControllerSettings()->getReverseApiAddress();
+    }
+    if (featureSettingsKeys.contains("reverseAPIPort")) {
+        settings.m_reverseAPIPort = response.getGs232ControllerSettings()->getReverseApiPort();
+    }
+    if (featureSettingsKeys.contains("reverseAPIDeviceIndex")) {
+        settings.m_reverseAPIFeatureSetIndex = response.getGs232ControllerSettings()->getReverseApiDeviceIndex();
+    }
+    if (featureSettingsKeys.contains("reverseAPIChannelIndex")) {
+        settings.m_reverseAPIFeatureIndex = response.getGs232ControllerSettings()->getReverseApiChannelIndex();
+    }
+}
+
+void GS232Controller::webapiReverseSendSettings(QList<QString>& featureSettingsKeys, const GS232ControllerSettings& settings, bool force)
+{
+    SWGSDRangel::SWGFeatureSettings *swgFeatureSettings = new SWGSDRangel::SWGFeatureSettings();
+    // swgFeatureSettings->setOriginatorFeatureIndex(getIndexInDeviceSet());
+    // swgFeatureSettings->setOriginatorFeatureSetIndex(getDeviceSetIndex());
+    swgFeatureSettings->setFeatureType(new QString("GS232Controller"));
+    swgFeatureSettings->setGs232ControllerSettings(new SWGSDRangel::SWGGS232ControllerSettings());
+    SWGSDRangel::SWGGS232ControllerSettings *swgGS232ControllerSettings = swgFeatureSettings->getGs232ControllerSettings();
+
+    // transfer data that has been modified. When force is on transfer all data except reverse API data
+
+    if (featureSettingsKeys.contains("azimuth") || force) {
+        swgGS232ControllerSettings->setAzimuth(settings.m_azimuth);
+    }
+    if (featureSettingsKeys.contains("elevation") || force) {
+        swgGS232ControllerSettings->setElevation(settings.m_elevation);
+    }
+    if (featureSettingsKeys.contains("serialPort") || force) {
+        swgGS232ControllerSettings->setSerialPort(new QString(settings.m_serialPort));
+    }
+    if (featureSettingsKeys.contains("baudRate") || force) {
+        swgGS232ControllerSettings->setBaudRate(settings.m_baudRate);
+    }
+    if (featureSettingsKeys.contains("track") || force) {
+        swgGS232ControllerSettings->setTrack(settings.m_track);
+    }
+    if (featureSettingsKeys.contains("deviceIndex") || force) {
+        swgGS232ControllerSettings->setDeviceIndex(settings.m_deviceIndex);
+    }
+    if (featureSettingsKeys.contains("channelIndex") || force) {
+        swgGS232ControllerSettings->setChannelIndex(settings.m_channelIndex);
+    }
+    if (featureSettingsKeys.contains("title") || force) {
+        swgGS232ControllerSettings->setTitle(new QString(settings.m_title));
+    }
+    if (featureSettingsKeys.contains("rgbColor") || force) {
+        swgGS232ControllerSettings->setRgbColor(settings.m_rgbColor);
+    }
+
+    QString channelSettingsURL = QString("http://%1:%2/sdrangel/featureset/%3/feature/%4/settings")
+            .arg(settings.m_reverseAPIAddress)
+            .arg(settings.m_reverseAPIPort)
+            .arg(settings.m_reverseAPIFeatureSetIndex)
+            .arg(settings.m_reverseAPIFeatureIndex);
+    m_networkRequest.setUrl(QUrl(channelSettingsURL));
+    m_networkRequest.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");
+
+    QBuffer *buffer = new QBuffer();
+    buffer->open((QBuffer::ReadWrite));
+    buffer->write(swgFeatureSettings->asJson().toUtf8());
+    buffer->seek(0);
+
+    // Always use PATCH to avoid passing reverse API settings
+    QNetworkReply *reply = m_networkManager->sendCustomRequest(m_networkRequest, "PATCH", buffer);
+    buffer->setParent(reply);
+
+    delete swgFeatureSettings;
+}
+
+void GS232Controller::networkManagerFinished(QNetworkReply *reply)
+{
+    QNetworkReply::NetworkError replyError = reply->error();
+
+    if (replyError)
+    {
+        qWarning() << "GS232Controller::networkManagerFinished:"
+                << " error(" << (int) replyError
+                << "): " << replyError
+                << ": " << reply->errorString();
+    }
+    else
+    {
+        QString answer = reply->readAll();
+        answer.chop(1); // remove last \n
+        qDebug("GS232Controller::networkManagerFinished: reply:\n%s", answer.toStdString().c_str());
+    }
+
+    reply->deleteLater();
+}
diff --git a/plugins/feature/gs232controller/gs232controller.h b/plugins/feature/gs232controller/gs232controller.h
new file mode 100644
index 000000000..d101992f3
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controller.h
@@ -0,0 +1,140 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_FEATURE_GS232CONTROLLER_H_
+#define INCLUDE_FEATURE_GS232CONTROLLER_H_
+
+#include <QThread>
+#include <QNetworkRequest>
+
+#include "feature/feature.h"
+#include "util/message.h"
+
+#include "gs232controllersettings.h"
+
+class WebAPIAdapterInterface;
+class GS232ControllerWorker;
+class QNetworkAccessManager;
+class QNetworkReply;
+
+namespace SWGSDRangel {
+    class SWGDeviceState;
+}
+
+class GS232Controller : public Feature
+{
+	Q_OBJECT
+public:
+    class MsgConfigureGS232Controller : public Message {
+        MESSAGE_CLASS_DECLARATION
+
+    public:
+        const GS232ControllerSettings& getSettings() const { return m_settings; }
+        bool getForce() const { return m_force; }
+
+        static MsgConfigureGS232Controller* create(const GS232ControllerSettings& settings, bool force) {
+            return new MsgConfigureGS232Controller(settings, force);
+        }
+
+    private:
+        GS232ControllerSettings m_settings;
+        bool m_force;
+
+        MsgConfigureGS232Controller(const GS232ControllerSettings& settings, bool force) :
+            Message(),
+            m_settings(settings),
+            m_force(force)
+        { }
+    };
+
+    class MsgStartStop : public Message {
+        MESSAGE_CLASS_DECLARATION
+
+    public:
+        bool getStartStop() const { return m_startStop; }
+
+        static MsgStartStop* create(bool startStop) {
+            return new MsgStartStop(startStop);
+        }
+
+    protected:
+        bool m_startStop;
+
+        MsgStartStop(bool startStop) :
+            Message(),
+            m_startStop(startStop)
+        { }
+    };
+
+    GS232Controller(WebAPIAdapterInterface *webAPIAdapterInterface);
+    virtual ~GS232Controller();
+    virtual void destroy() { delete this; }
+    virtual bool handleMessage(const Message& cmd);
+
+    virtual const QString& getURI() const { return m_featureIdURI; }
+    virtual void getIdentifier(QString& id) const { id = m_featureId; }
+    virtual void getTitle(QString& title) const { title = m_settings.m_title; }
+
+    virtual QByteArray serialize() const;
+    virtual bool deserialize(const QByteArray& data);
+
+    virtual int webapiRun(bool run,
+            SWGSDRangel::SWGDeviceState& response,
+            QString& errorMessage);
+
+    virtual int webapiSettingsGet(
+            SWGSDRangel::SWGFeatureSettings& response,
+            QString& errorMessage);
+
+    virtual int webapiSettingsPutPatch(
+            bool force,
+            const QStringList& featureSettingsKeys,
+            SWGSDRangel::SWGFeatureSettings& response,
+            QString& errorMessage);
+
+    static void webapiFormatFeatureSettings(
+        SWGSDRangel::SWGFeatureSettings& response,
+        const GS232ControllerSettings& settings);
+
+    static void webapiUpdateFeatureSettings(
+            GS232ControllerSettings& settings,
+            const QStringList& featureSettingsKeys,
+            SWGSDRangel::SWGFeatureSettings& response);
+
+    static const QString m_featureIdURI;
+    static const QString m_featureId;
+
+private:
+    QThread m_thread;
+    GS232ControllerWorker *m_worker;
+    GS232ControllerSettings m_settings;
+    bool m_ptt;
+
+    QNetworkAccessManager *m_networkManager;
+    QNetworkRequest m_networkRequest;
+
+    void start();
+    void stop();
+    void applySettings(const GS232ControllerSettings& settings, bool force = false);
+    void webapiReverseSendSettings(QList<QString>& featureSettingsKeys, const GS232ControllerSettings& settings, bool force);
+
+private slots:
+    void networkManagerFinished(QNetworkReply *reply);
+};
+
+#endif // INCLUDE_FEATURE_GS232CONTROLLER_H_
diff --git a/plugins/feature/gs232controller/gs232controllergui.cpp b/plugins/feature/gs232controller/gs232controllergui.cpp
new file mode 100644
index 000000000..f39650630
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controllergui.cpp
@@ -0,0 +1,447 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include <QMessageBox>
+#include <QLineEdit>
+#include <QSerialPortInfo>
+
+#include "feature/featureuiset.h"
+#include "gui/basicfeaturesettingsdialog.h"
+#include "mainwindow.h"
+#include "device/deviceuiset.h"
+
+#include "ui_gs232controllergui.h"
+#include "gs232controller.h"
+#include "gs232controllergui.h"
+#include "gs232controllerreport.h"
+
+GS232ControllerGUI* GS232ControllerGUI::create(PluginAPI* pluginAPI, FeatureUISet *featureUISet, Feature *feature)
+{
+    GS232ControllerGUI* gui = new GS232ControllerGUI(pluginAPI, featureUISet, feature);
+    return gui;
+}
+
+void GS232ControllerGUI::destroy()
+{
+    delete this;
+}
+
+void GS232ControllerGUI::resetToDefaults()
+{
+    m_settings.resetToDefaults();
+    displaySettings();
+    applySettings(true);
+}
+
+QByteArray GS232ControllerGUI::serialize() const
+{
+    qDebug("GS232ControllerGUI::serialize: %d", m_settings.m_channelIndex);
+    return m_settings.serialize();
+}
+
+bool GS232ControllerGUI::deserialize(const QByteArray& data)
+{
+    if (m_settings.deserialize(data))
+    {
+        qDebug("GS232ControllerGUI::deserialize: %d", m_settings.m_channelIndex);
+        updateDeviceSetList();
+        displaySettings();
+        applySettings(true);
+        return true;
+    }
+    else
+    {
+        resetToDefaults();
+        return false;
+    }
+}
+
+bool GS232ControllerGUI::handleMessage(const Message& message)
+{
+    if (GS232Controller::MsgConfigureGS232Controller::match(message))
+    {
+        qDebug("GS232ControllerGUI::handleMessage: GS232Controller::MsgConfigureGS232Controller");
+        const GS232Controller::MsgConfigureGS232Controller& cfg = (GS232Controller::MsgConfigureGS232Controller&) message;
+        m_settings = cfg.getSettings();
+        blockApplySettings(true);
+        displaySettings();
+        blockApplySettings(false);
+
+        return true;
+    }
+    else if (GS232ControllerSettings::MsgChannelIndexChange::match(message))
+    {
+        const GS232ControllerSettings::MsgChannelIndexChange& cfg = (GS232ControllerSettings::MsgChannelIndexChange&) message;
+        int newChannelIndex = cfg.getIndex();
+        qDebug("GS232ControllerGUI::handleMessage: GS232ControllerSettings::MsgChannelIndexChange: %d", newChannelIndex);
+        ui->channel->blockSignals(true);
+        ui->channel->setCurrentIndex(newChannelIndex);
+        m_settings.m_channelIndex = newChannelIndex;
+        ui->channel->blockSignals(false);
+
+        return true;
+    } else if (GS232ControllerReport::MsgReportAzAl::match(message))
+    {
+        GS232ControllerReport::MsgReportAzAl& azAl = (GS232ControllerReport::MsgReportAzAl&) message;
+        if (azAl.getType() == GS232ControllerReport::AzAlType::TARGET)
+        {
+            ui->azimuth->setValue(std::round(azAl.getAzimuth()));
+            ui->elevation->setValue(std::round(azAl.getElevation()));
+        }
+        else
+        {
+            ui->azimuthCurrentText->setText(QString("%1").arg(std::round(azAl.getAzimuth())));
+            ui->elevationCurrentText->setText(QString("%1").arg(std::round(azAl.getElevation())));
+        }
+        return true;
+    }
+
+    return false;
+}
+
+void GS232ControllerGUI::handleInputMessages()
+{
+    Message* message;
+
+    while ((message = getInputMessageQueue()->pop()))
+    {
+        if (handleMessage(*message)) {
+            delete message;
+        }
+    }
+}
+
+void GS232ControllerGUI::onWidgetRolled(QWidget* widget, bool rollDown)
+{
+    (void) widget;
+    (void) rollDown;
+}
+
+GS232ControllerGUI::GS232ControllerGUI(PluginAPI* pluginAPI, FeatureUISet *featureUISet, Feature *feature, QWidget* parent) :
+    FeatureGUI(parent),
+    ui(new Ui::GS232ControllerGUI),
+    m_pluginAPI(pluginAPI),
+    m_featureUISet(featureUISet),
+    m_doApplySettings(true),
+    m_lastFeatureState(0)
+{
+    ui->setupUi(this);
+    setAttribute(Qt::WA_DeleteOnClose, true);
+    setChannelWidget(false);
+    connect(this, SIGNAL(widgetRolled(QWidget*,bool)), this, SLOT(onWidgetRolled(QWidget*,bool)));
+    m_gs232Controller = reinterpret_cast<GS232Controller*>(feature);
+    m_gs232Controller->setMessageQueueToGUI(&m_inputMessageQueue);
+
+    m_featureUISet->addRollupWidget(this);
+
+    connect(this, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(onMenuDialogCalled(const QPoint &)));
+    connect(getInputMessageQueue(), SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages()));
+
+    connect(&m_statusTimer, SIGNAL(timeout()), this, SLOT(updateStatus()));
+    m_statusTimer.start(1000);
+
+    updateSerialPortList();
+    updateDeviceSetList();
+    displaySettings();
+    applySettings(true);
+}
+
+GS232ControllerGUI::~GS232ControllerGUI()
+{
+    delete ui;
+}
+
+void GS232ControllerGUI::blockApplySettings(bool block)
+{
+    m_doApplySettings = !block;
+}
+
+void GS232ControllerGUI::displaySettings()
+{
+    setTitleColor(m_settings.m_rgbColor);
+    setWindowTitle(m_settings.m_title);
+    blockApplySettings(true);
+    ui->azimuth->setValue(m_settings.m_azimuth);
+    ui->elevation->setValue(m_settings.m_elevation);
+    if (m_settings.m_serialPort.length() > 0)
+        ui->serialPort->lineEdit()->setText(m_settings.m_serialPort);
+    ui->baudRate->setCurrentText(QString("%1").arg(m_settings.m_baudRate));
+    ui->track->setChecked(m_settings.m_track);
+    blockApplySettings(false);
+}
+
+void GS232ControllerGUI::updateSerialPortList()
+{
+    ui->serialPort->clear();
+    QList<QSerialPortInfo> serialPorts = QSerialPortInfo::availablePorts();
+    QListIterator<QSerialPortInfo> i(serialPorts);
+    while (i.hasNext())
+    {
+        QSerialPortInfo info = i.next();
+        ui->serialPort->addItem(info.portName());
+    }
+}
+
+void GS232ControllerGUI::updateDeviceSetList()
+{
+    MainWindow *mainWindow = MainWindow::getInstance();
+    std::vector<DeviceUISet*>& deviceUISets = mainWindow->getDeviceUISets();
+    std::vector<DeviceUISet*>::const_iterator it = deviceUISets.begin();
+
+    ui->device->blockSignals(true);
+
+    ui->device->clear();
+    unsigned int deviceIndex = 0;
+
+    for (; it != deviceUISets.end(); ++it, deviceIndex++)
+    {
+        DSPDeviceSourceEngine *deviceSourceEngine =  (*it)->m_deviceSourceEngine;
+        DSPDeviceSinkEngine *deviceSinkEngine = (*it)->m_deviceSinkEngine;
+        DSPDeviceMIMOEngine *deviceMIMOEngine = (*it)->m_deviceMIMOEngine;
+
+        if (deviceSourceEngine) {
+            ui->device->addItem(QString("R%1").arg(deviceIndex), deviceIndex);
+        }
+    }
+
+    int newDeviceIndex;
+
+    if (it != deviceUISets.begin())
+    {
+        if (m_settings.m_deviceIndex < 0) {
+            ui->device->setCurrentIndex(0);
+        } else {
+            ui->device->setCurrentIndex(m_settings.m_deviceIndex);
+        }
+
+        newDeviceIndex = ui->device->currentData().toInt();
+    }
+    else
+    {
+        newDeviceIndex = -1;
+    }
+
+
+    if (newDeviceIndex != m_settings.m_deviceIndex)
+    {
+        qDebug("GS232ControllerGUI::updateDeviceSetLists: device index changed: %d", newDeviceIndex);
+        m_settings.m_deviceIndex = newDeviceIndex;
+    }
+
+    updateChannelList();
+
+    ui->device->blockSignals(false);
+}
+
+bool GS232ControllerGUI::updateChannelList()
+{
+    int newChannelIndex;
+    ui->channel->blockSignals(true);
+    ui->channel->clear();
+
+    if (m_settings.m_deviceIndex < 0)
+    {
+        newChannelIndex = -1;
+    }
+    else
+    {
+        MainWindow *mainWindow = MainWindow::getInstance();
+        std::vector<DeviceUISet*>& deviceUISets = mainWindow->getDeviceUISets();
+        DeviceUISet *deviceUISet = deviceUISets[m_settings.m_deviceIndex];
+        int nbChannels = deviceUISet->getNumberOfChannels();
+
+        for (int ch = 0; ch < nbChannels; ch++) {
+            ui->channel->addItem(QString("%1").arg(ch), ch);
+        }
+
+        if (nbChannels > 0)
+        {
+            if (m_settings.m_channelIndex < 0) {
+                ui->channel->setCurrentIndex(0);
+            } else {
+                ui->channel->setCurrentIndex(m_settings.m_channelIndex);
+            }
+
+            newChannelIndex = ui->channel->currentIndex();
+        }
+        else
+        {
+            newChannelIndex = -1;
+        }
+    }
+
+    ui->channel->blockSignals(false);
+
+    if (newChannelIndex != m_settings.m_channelIndex)
+    {
+        qDebug("GS232ControllerGUI::updateChannelList: channel index changed: %d", newChannelIndex);
+        m_settings.m_channelIndex = newChannelIndex;
+        return true;
+    }
+
+    return false;
+}
+
+void GS232ControllerGUI::leaveEvent(QEvent*)
+{
+}
+
+void GS232ControllerGUI::enterEvent(QEvent*)
+{
+}
+
+void GS232ControllerGUI::onMenuDialogCalled(const QPoint &p)
+{
+    if (m_contextMenuType == ContextMenuChannelSettings)
+    {
+        BasicFeatureSettingsDialog dialog(this);
+        dialog.setTitle(m_settings.m_title);
+        dialog.setColor(m_settings.m_rgbColor);
+        dialog.setUseReverseAPI(m_settings.m_useReverseAPI);
+        dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
+        dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
+        dialog.setReverseAPIFeatureSetIndex(m_settings.m_reverseAPIFeatureSetIndex);
+        dialog.setReverseAPIFeatureIndex(m_settings.m_reverseAPIFeatureIndex);
+
+        dialog.move(p);
+        dialog.exec();
+
+        m_settings.m_rgbColor = dialog.getColor().rgb();
+        m_settings.m_title = dialog.getTitle();
+        m_settings.m_useReverseAPI = dialog.useReverseAPI();
+        m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
+        m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
+        m_settings.m_reverseAPIFeatureSetIndex = dialog.getReverseAPIFeatureSetIndex();
+        m_settings.m_reverseAPIFeatureIndex = dialog.getReverseAPIFeatureIndex();
+
+        setWindowTitle(m_settings.m_title);
+        setTitleColor(m_settings.m_rgbColor);
+
+        applySettings();
+    }
+
+    resetContextMenuType();
+}
+
+void GS232ControllerGUI::on_startStop_toggled(bool checked)
+{
+    if (m_doApplySettings)
+    {
+        GS232Controller::MsgStartStop *message = GS232Controller::MsgStartStop::create(checked);
+        m_gs232Controller->getInputMessageQueue()->push(message);
+    }
+}
+
+void GS232ControllerGUI::on_devicesRefresh_clicked()
+{
+    updateDeviceSetList();
+    displaySettings();
+    applySettings();
+}
+
+void GS232ControllerGUI::on_device_currentIndexChanged(int index)
+{
+    if (index >= 0)
+    {
+        m_settings.m_deviceIndex = ui->device->currentData().toInt();
+        updateChannelList();
+        applySettings();
+    }
+}
+
+void GS232ControllerGUI::on_channel_currentIndexChanged(int index)
+{
+    if (index >= 0)
+    {
+        m_settings.m_channelIndex = index;
+        applySettings();
+    }
+}
+
+void GS232ControllerGUI::on_serialPort_currentIndexChanged(int index)
+{
+    m_settings.m_serialPort = ui->serialPort->currentText();
+    applySettings();
+}
+
+void GS232ControllerGUI::on_baudRate_currentIndexChanged(int index)
+{
+    m_settings.m_baudRate = ui->baudRate->currentText().toInt();
+    applySettings();
+}
+
+void GS232ControllerGUI::on_azimuth_valueChanged(int value)
+{
+    m_settings.m_azimuth = value;
+    applySettings();
+}
+
+void GS232ControllerGUI::on_elevation_valueChanged(int value)
+{
+    m_settings.m_elevation = value;
+    applySettings();
+}
+
+void GS232ControllerGUI::on_track_stateChanged(int state)
+{
+    m_settings.m_track = state == Qt::Checked;
+    ui->devicesRefresh->setEnabled(m_settings.m_track);
+    ui->deviceLabel->setEnabled(m_settings.m_track);
+    ui->device->setEnabled(m_settings.m_track);
+    ui->channelLabel->setEnabled(m_settings.m_track);
+    ui->channel->setEnabled(m_settings.m_track);
+    applySettings();
+}
+
+void GS232ControllerGUI::updateStatus()
+{
+    int state = m_gs232Controller->getState();
+
+    if (m_lastFeatureState != state)
+    {
+        switch (state)
+        {
+            case Feature::StNotStarted:
+                ui->startStop->setStyleSheet("QToolButton { background:rgb(79,79,79); }");
+                break;
+            case Feature::StIdle:
+                ui->startStop->setStyleSheet("QToolButton { background-color : blue; }");
+                break;
+            case Feature::StRunning:
+                ui->startStop->setStyleSheet("QToolButton { background-color : green; }");
+                break;
+            case Feature::StError:
+                ui->startStop->setStyleSheet("QToolButton { background-color : red; }");
+                QMessageBox::information(this, tr("Message"), m_gs232Controller->getErrorMessage());
+                break;
+            default:
+                break;
+        }
+
+        m_lastFeatureState = state;
+    }
+}
+
+void GS232ControllerGUI::applySettings(bool force)
+{
+    if (m_doApplySettings)
+    {
+        GS232Controller::MsgConfigureGS232Controller* message = GS232Controller::MsgConfigureGS232Controller::create(m_settings, force);
+        m_gs232Controller->getInputMessageQueue()->push(message);
+    }
+}
diff --git a/plugins/feature/gs232controller/gs232controllergui.h b/plugins/feature/gs232controller/gs232controllergui.h
new file mode 100644
index 000000000..a8a41f62c
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controllergui.h
@@ -0,0 +1,90 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_FEATURE_GS232CONTROLLERGUI_H_
+#define INCLUDE_FEATURE_GS232CONTROLLERGUI_H_
+
+#include <QTimer>
+
+#include "feature/featuregui.h"
+#include "util/messagequeue.h"
+#include "gs232controllersettings.h"
+
+class PluginAPI;
+class FeatureUISet;
+class GS232Controller;
+
+namespace Ui {
+    class GS232ControllerGUI;
+}
+
+class GS232ControllerGUI : public FeatureGUI {
+    Q_OBJECT
+public:
+    static GS232ControllerGUI* create(PluginAPI* pluginAPI, FeatureUISet *featureUISet, Feature *feature);
+    virtual void destroy();
+
+    void resetToDefaults();
+    QByteArray serialize() const;
+    bool deserialize(const QByteArray& data);
+    virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; }
+
+private:
+    Ui::GS232ControllerGUI* ui;
+    PluginAPI* m_pluginAPI;
+    FeatureUISet* m_featureUISet;
+    GS232ControllerSettings m_settings;
+    bool m_doApplySettings;
+
+    GS232Controller* m_gs232Controller;
+    MessageQueue m_inputMessageQueue;
+    QTimer m_statusTimer;
+    int m_lastFeatureState;
+
+    explicit GS232ControllerGUI(PluginAPI* pluginAPI, FeatureUISet *featureUISet, Feature *feature, QWidget* parent = nullptr);
+    virtual ~GS232ControllerGUI();
+
+    void blockApplySettings(bool block);
+    void applySettings(bool force = false);
+    void displaySettings();
+    void updateSerialPortList();
+    void updateDeviceSetList();
+    bool updateChannelList(); //!< true if channel index has changed
+    bool handleMessage(const Message& message);
+
+    void leaveEvent(QEvent*);
+    void enterEvent(QEvent*);
+
+private slots:
+    void onMenuDialogCalled(const QPoint &p);
+    void onWidgetRolled(QWidget* widget, bool rollDown);
+    void handleInputMessages();
+    void on_startStop_toggled(bool checked);
+    void on_devicesRefresh_clicked();
+    void on_device_currentIndexChanged(int index);
+    void on_channel_currentIndexChanged(int index);
+    void on_serialPort_currentIndexChanged(int index);
+    void on_baudRate_currentIndexChanged(int index);
+    void on_track_stateChanged(int state);
+    void on_azimuth_valueChanged(int value);
+    void on_elevation_valueChanged(int value);
+    void updateStatus();
+};
+
+
+#endif // INCLUDE_FEATURE_GS232CONTROLLERGUI_H_
diff --git a/plugins/feature/gs232controller/gs232controllergui.ui b/plugins/feature/gs232controller/gs232controllergui.ui
new file mode 100644
index 000000000..5189f070b
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controllergui.ui
@@ -0,0 +1,397 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>GS232ControllerGUI</class>
+ <widget class="RollupWidget" name="GS232ControllerGUI">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>320</width>
+    <height>187</height>
+   </rect>
+  </property>
+  <property name="sizePolicy">
+   <sizepolicy hsizetype="Minimum" vsizetype="Minimum">
+    <horstretch>0</horstretch>
+    <verstretch>0</verstretch>
+   </sizepolicy>
+  </property>
+  <property name="minimumSize">
+   <size>
+    <width>320</width>
+    <height>100</height>
+   </size>
+  </property>
+  <property name="maximumSize">
+   <size>
+    <width>320</width>
+    <height>16777215</height>
+   </size>
+  </property>
+  <property name="font">
+   <font>
+    <family>Liberation Sans</family>
+    <pointsize>9</pointsize>
+   </font>
+  </property>
+  <property name="windowTitle">
+   <string>GS-232 Rotator Controller</string>
+  </property>
+  <widget class="QWidget" name="settingsContainer" native="true">
+   <property name="geometry">
+    <rect>
+     <x>10</x>
+     <y>10</y>
+     <width>301</width>
+     <height>171</height>
+    </rect>
+   </property>
+   <property name="windowTitle">
+    <string>Settings</string>
+   </property>
+   <layout class="QVBoxLayout" name="verticalLayout">
+    <property name="spacing">
+     <number>3</number>
+    </property>
+    <property name="leftMargin">
+     <number>2</number>
+    </property>
+    <property name="topMargin">
+     <number>2</number>
+    </property>
+    <property name="rightMargin">
+     <number>2</number>
+    </property>
+    <property name="bottomMargin">
+     <number>2</number>
+    </property>
+    <item>
+     <layout class="QHBoxLayout" name="controlLayout">
+      <item>
+       <widget class="ButtonSwitch" name="startStop">
+        <property name="toolTip">
+         <string>start/stop acquisition</string>
+        </property>
+        <property name="text">
+         <string/>
+        </property>
+        <property name="icon">
+         <iconset resource="../../../sdrgui/resources/res.qrc">
+          <normaloff>:/play.png</normaloff>
+          <normalon>:/stop.png</normalon>:/play.png</iconset>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <spacer name="horizontalSpacer_2">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>40</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item>
+       <widget class="QLabel" name="azimuthtLabel">
+        <property name="text">
+         <string>Azimuth</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QSpinBox" name="azimuth">
+        <property name="toolTip">
+         <string>Target azimuth in degrees</string>
+        </property>
+        <property name="minimum">
+         <number>0</number>
+        </property>
+        <property name="maximum">
+         <number>450</number>
+        </property>
+        <property name="value">
+         <number>359</number>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="azimuthCurrentText">
+        <property name="minimumSize">
+         <size>
+          <width>23</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="toolTip">
+         <string>Current azimuth in degrees</string>
+        </property>
+        <property name="text">
+         <string>-</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="Line" name="line">
+        <property name="orientation">
+         <enum>Qt::Vertical</enum>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="elevationLabel">
+        <property name="text">
+         <string>Elevation</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QSpinBox" name="elevation">
+        <property name="toolTip">
+         <string>Target elevation in degrees</string>
+        </property>
+        <property name="maximum">
+         <number>180</number>
+        </property>
+        <property name="value">
+         <number>180</number>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="elevationCurrentText">
+        <property name="minimumSize">
+         <size>
+          <width>22</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="toolTip">
+         <string>Current elevation in degrees</string>
+        </property>
+        <property name="text">
+         <string>-</string>
+        </property>
+       </widget>
+      </item>
+     </layout>
+    </item>
+    <item>
+     <layout class="QHBoxLayout" name="serverLayout">
+      <item>
+       <widget class="QLabel" name="serialLabel">
+        <property name="text">
+         <string>Serial Port</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QComboBox" name="serialPort">
+        <property name="toolTip">
+         <string>Name of serial port to use to connect to the GS-232 controller</string>
+        </property>
+        <property name="editable">
+         <bool>true</bool>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <spacer name="horizontalSpacer_3">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>40</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item>
+       <widget class="QLabel" name="baudRateLabel">
+        <property name="text">
+         <string>Baud rate</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QComboBox" name="baudRate">
+        <property name="toolTip">
+         <string>Serial port baud rate for the GS-232 controller</string>
+        </property>
+        <property name="currentIndex">
+         <number>3</number>
+        </property>
+        <item>
+         <property name="text">
+          <string>1200</string>
+         </property>
+        </item>
+        <item>
+         <property name="text">
+          <string>2400</string>
+         </property>
+        </item>
+        <item>
+         <property name="text">
+          <string>4800</string>
+         </property>
+        </item>
+        <item>
+         <property name="text">
+          <string>9600</string>
+         </property>
+        </item>
+        <item>
+         <property name="text">
+          <string>19200</string>
+         </property>
+        </item>
+        <item>
+         <property name="text">
+          <string>38400</string>
+         </property>
+        </item>
+        <item>
+         <property name="text">
+          <string>57600</string>
+         </property>
+        </item>
+        <item>
+         <property name="text">
+          <string>115200</string>
+         </property>
+        </item>
+       </widget>
+      </item>
+     </layout>
+    </item>
+    <item>
+     <layout class="QHBoxLayout" name="localDeviceLayout">
+      <item>
+       <widget class="QCheckBox" name="track">
+        <property name="toolTip">
+         <string>Check to enable automatic tracking of azimuth and elevation from the specified channel</string>
+        </property>
+        <property name="text">
+         <string>Track</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QPushButton" name="devicesRefresh">
+        <property name="maximumSize">
+         <size>
+          <width>24</width>
+          <height>16777215</height>
+         </size>
+        </property>
+        <property name="toolTip">
+         <string>Refresh indexes of available device sets</string>
+        </property>
+        <property name="text">
+         <string/>
+        </property>
+        <property name="icon">
+         <iconset resource="../../../sdrgui/resources/res.qrc">
+          <normaloff>:/recycle.png</normaloff>:/recycle.png</iconset>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="deviceLabel">
+        <property name="text">
+         <string>Device</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QComboBox" name="device">
+        <property name="minimumSize">
+         <size>
+          <width>55</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="toolTip">
+         <string>Receiver deviceset index</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="channelLabel">
+        <property name="text">
+         <string>Channel</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QComboBox" name="channel">
+        <property name="minimumSize">
+         <size>
+          <width>55</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="toolTip">
+         <string>Channel index</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <spacer name="horizontalSpacer">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>40</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+     </layout>
+    </item>
+    <item>
+     <layout class="QHBoxLayout" name="channelLayout">
+      <item>
+       <spacer name="horizontalSpacer_5">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>40</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+     </layout>
+    </item>
+   </layout>
+  </widget>
+ </widget>
+ <customwidgets>
+  <customwidget>
+   <class>RollupWidget</class>
+   <extends>QWidget</extends>
+   <header>gui/rollupwidget.h</header>
+   <container>1</container>
+  </customwidget>
+  <customwidget>
+   <class>ButtonSwitch</class>
+   <extends>QToolButton</extends>
+   <header>gui/buttonswitch.h</header>
+  </customwidget>
+ </customwidgets>
+ <resources>
+  <include location="../../../sdrgui/resources/res.qrc"/>
+ </resources>
+ <connections/>
+</ui>
diff --git a/plugins/feature/gs232controller/gs232controllerplugin.cpp b/plugins/feature/gs232controller/gs232controllerplugin.cpp
new file mode 100644
index 000000000..868d7a9df
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controllerplugin.cpp
@@ -0,0 +1,80 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+
+#include <QtPlugin>
+#include "plugin/pluginapi.h"
+
+#ifndef SERVER_MODE
+#include "gs232controllergui.h"
+#endif
+#include "gs232controller.h"
+#include "gs232controllerplugin.h"
+#include "gs232controllerwebapiadapter.h"
+
+const PluginDescriptor GS232ControllerPlugin::m_pluginDescriptor = {
+    GS232Controller::m_featureId,
+    QString("GS-232 Rotator Controller"),
+    QString("4.20.0"),
+    QString("(c) Jon Beniston, M7RCE"),
+    QString("https://github.com/f4exb/sdrangel"),
+    true,
+    QString("https://github.com/f4exb/sdrangel")
+};
+
+GS232ControllerPlugin::GS232ControllerPlugin(QObject* parent) :
+    QObject(parent),
+    m_pluginAPI(nullptr)
+{
+}
+
+const PluginDescriptor& GS232ControllerPlugin::getPluginDescriptor() const
+{
+    return m_pluginDescriptor;
+}
+
+void GS232ControllerPlugin::initPlugin(PluginAPI* pluginAPI)
+{
+    m_pluginAPI = pluginAPI;
+
+    m_pluginAPI->registerFeature(GS232Controller::m_featureIdURI, GS232Controller::m_featureId, this);
+}
+
+#ifdef SERVER_MODE
+FeatureGUI* GS232ControllerPlugin::createFeatureGUI(FeatureUISet *featureUISet, Feature *feature) const
+{
+    (void) featureUISet;
+    (void) feature;
+    return nullptr;
+}
+#else
+FeatureGUI* GS232ControllerPlugin::createFeatureGUI(FeatureUISet *featureUISet, Feature *feature) const
+{
+    return GS232ControllerGUI::create(m_pluginAPI, featureUISet, feature);
+}
+#endif
+
+Feature* GS232ControllerPlugin::createFeature(WebAPIAdapterInterface* webAPIAdapterInterface) const
+{
+    return new GS232Controller(webAPIAdapterInterface);
+}
+
+FeatureWebAPIAdapter* GS232ControllerPlugin::createFeatureWebAPIAdapter() const
+{
+    return new GS232ControllerWebAPIAdapter();
+}
diff --git a/plugins/feature/gs232controller/gs232controllerplugin.h b/plugins/feature/gs232controller/gs232controllerplugin.h
new file mode 100644
index 000000000..b58a51267
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controllerplugin.h
@@ -0,0 +1,49 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_FEATURE_GS232CONTROLLERPLUGIN_H
+#define INCLUDE_FEATURE_GS232CONTROLLERPLUGIN_H
+
+#include <QObject>
+#include "plugin/plugininterface.h"
+
+class FeatureGUI;
+class WebAPIAdapterInterface;
+
+class GS232ControllerPlugin : public QObject, PluginInterface {
+	Q_OBJECT
+	Q_INTERFACES(PluginInterface)
+	Q_PLUGIN_METADATA(IID "sdrangel.feature.gs232controller")
+
+public:
+	explicit GS232ControllerPlugin(QObject* parent = nullptr);
+
+	const PluginDescriptor& getPluginDescriptor() const;
+	void initPlugin(PluginAPI* pluginAPI);
+
+	virtual FeatureGUI* createFeatureGUI(FeatureUISet *featureUISet, Feature *feature) const;
+	virtual Feature* createFeature(WebAPIAdapterInterface *webAPIAdapterInterface) const;
+	virtual FeatureWebAPIAdapter* createFeatureWebAPIAdapter() const;
+
+private:
+	static const PluginDescriptor m_pluginDescriptor;
+
+	PluginAPI* m_pluginAPI;
+};
+
+#endif // INCLUDE_FEATURE_GS232CONTROLLERPLUGIN_H
diff --git a/plugins/feature/gs232controller/gs232controllerreport.h b/plugins/feature/gs232controller/gs232controllerreport.h
new file mode 100644
index 000000000..8e175d8fc
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controllerreport.h
@@ -0,0 +1,64 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2019 Edouard Griffiths, F4EXB                                   //
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_FEATURE_GS232CONTROLLERREPORT_H_
+#define INCLUDE_FEATURE_GS232CONTROLLERREPORT_H_
+
+#include <QObject>
+
+#include "util/message.h"
+
+class GS232ControllerReport : public QObject
+{
+    Q_OBJECT
+public:
+    enum AzAlType {TARGET, ACTUAL};
+
+    class MsgReportAzAl : public Message {
+        MESSAGE_CLASS_DECLARATION
+
+    public:
+        float getAzimuth() const { return m_azimuth; }
+        float getElevation() const { return m_elevation; }
+        AzAlType getType() const { return m_type; }
+
+        static MsgReportAzAl* create(float azimuth, float elevation, AzAlType type)
+        {
+            return new MsgReportAzAl(azimuth, elevation, type);
+        }
+
+    private:
+        float m_azimuth;
+        float m_elevation;
+        AzAlType m_type;
+
+        MsgReportAzAl(float azimuth, float elevation, AzAlType type) :
+            Message(),
+            m_azimuth(azimuth),
+            m_elevation(elevation),
+            m_type(type)
+        {
+        }
+    };
+
+public:
+    GS232ControllerReport() {}
+    ~GS232ControllerReport() {}
+};
+
+#endif // INCLUDE_FEATURE_GS232CONTROLLERREPORT_H_
diff --git a/plugins/feature/gs232controller/gs232controllersettings.cpp b/plugins/feature/gs232controller/gs232controllersettings.cpp
new file mode 100644
index 000000000..3b8ba8cb7
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controllersettings.cpp
@@ -0,0 +1,121 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include <QColor>
+
+#include "util/simpleserializer.h"
+#include "settings/serializable.h"
+
+#include "gs232controllersettings.h"
+
+MESSAGE_CLASS_DEFINITION(GS232ControllerSettings::MsgChannelIndexChange, Message)
+
+GS232ControllerSettings::GS232ControllerSettings()
+{
+    resetToDefaults();
+}
+
+void GS232ControllerSettings::resetToDefaults()
+{
+    m_azimuth = 0;
+    m_elevation = 0;
+    m_serialPort = "";
+    m_baudRate = 9600;
+    m_track = false;
+    m_deviceIndex = -1;
+    m_channelIndex = -1;
+    m_title = "GS-232 Rotator Controller";
+    m_rgbColor = QColor(225, 25, 99).rgb();
+    m_useReverseAPI = false;
+    m_reverseAPIAddress = "127.0.0.1";
+    m_reverseAPIPort = 8888;
+    m_reverseAPIFeatureSetIndex = 0;
+    m_reverseAPIFeatureIndex = 0;
+}
+
+QByteArray GS232ControllerSettings::serialize() const
+{
+    SimpleSerializer s(1);
+
+    s.writeS32(1, m_azimuth);
+    s.writeS32(2, m_elevation);
+    s.writeString(3, m_serialPort);
+    s.writeS32(4, m_baudRate);
+    s.writeBool(5, m_track);
+    s.writeS32(6, m_deviceIndex);
+    s.writeS32(7, m_channelIndex);
+    s.writeString(8, m_title);
+    s.writeU32(9, m_rgbColor);
+    s.writeBool(10, m_useReverseAPI);
+    s.writeString(11, m_reverseAPIAddress);
+    s.writeU32(12, m_reverseAPIPort);
+    s.writeU32(13, m_reverseAPIFeatureSetIndex);
+    s.writeU32(14, m_reverseAPIFeatureIndex);
+
+    return s.final();
+}
+
+bool GS232ControllerSettings::deserialize(const QByteArray& data)
+{
+    SimpleDeserializer d(data);
+
+    if (!d.isValid())
+    {
+        resetToDefaults();
+        return false;
+    }
+
+    if (d.getVersion() == 1)
+    {
+        QByteArray bytetmp;
+        qint32 tmp;
+        uint32_t utmp;
+        QString strtmp;
+
+        d.readS32(1, &m_azimuth, 0);
+        d.readS32(2, &m_elevation, 0);
+        d.readString(3, &m_serialPort, "");
+        d.readS32(4, &m_baudRate, 9600);
+        d.readBool(5, &m_track, false);
+        d.readS32(6, &m_deviceIndex, -1);
+        d.readS32(7, &m_channelIndex, -1);
+        d.readString(8, &m_title, "GS-232 Rotator Controller");
+        d.readU32(9, &m_rgbColor, QColor(225, 25, 99).rgb());
+        d.readBool(10, &m_useReverseAPI, false);
+        d.readString(11, &m_reverseAPIAddress, "127.0.0.1");
+        d.readU32(12, &utmp, 0);
+
+        if ((utmp > 1023) && (utmp < 65535)) {
+            m_reverseAPIPort = utmp;
+        } else {
+            m_reverseAPIPort = 8888;
+        }
+
+        d.readU32(13, &utmp, 0);
+        m_reverseAPIFeatureSetIndex = utmp > 99 ? 99 : utmp;
+        d.readU32(14, &utmp, 0);
+        m_reverseAPIFeatureIndex = utmp > 99 ? 99 : utmp;
+
+        return true;
+    }
+    else
+    {
+        resetToDefaults();
+        return false;
+    }
+}
diff --git a/plugins/feature/gs232controller/gs232controllersettings.h b/plugins/feature/gs232controller/gs232controllersettings.h
new file mode 100644
index 000000000..01cd25992
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controllersettings.h
@@ -0,0 +1,71 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_FEATURE_GS232CONTROLLERSETTINGS_H_
+#define INCLUDE_FEATURE_GS232CONTROLLERSETTINGS_H_
+
+#include <QByteArray>
+#include <QString>
+
+#include "util/message.h"
+
+class Serializable;
+
+struct GS232ControllerSettings
+{
+    class MsgChannelIndexChange : public Message {
+        MESSAGE_CLASS_DECLARATION
+
+    public:
+        bool getIndex() const { return m_index; }
+
+        static MsgChannelIndexChange* create(int index) {
+            return new MsgChannelIndexChange(index);
+        }
+
+    protected:
+        int m_index;
+
+        MsgChannelIndexChange(int index) :
+            Message(),
+            m_index(index)
+        { }
+    };
+
+    int m_azimuth;
+    int m_elevation;
+    QString m_serialPort;
+    int m_baudRate;
+    int m_deviceIndex;
+    bool m_track;
+    int m_channelIndex;
+    QString m_title;
+    quint32 m_rgbColor;
+    bool m_useReverseAPI;
+    QString m_reverseAPIAddress;
+    uint16_t m_reverseAPIPort;
+    uint16_t m_reverseAPIFeatureSetIndex;
+    uint16_t m_reverseAPIFeatureIndex;
+
+    GS232ControllerSettings();
+    void resetToDefaults();
+    QByteArray serialize() const;
+    bool deserialize(const QByteArray& data);
+};
+
+#endif // INCLUDE_FEATURE_GS232CONTROLLERSETTINGS_H_
diff --git a/plugins/feature/gs232controller/gs232controllerwebapiadapter.cpp b/plugins/feature/gs232controller/gs232controllerwebapiadapter.cpp
new file mode 100644
index 000000000..2bfd5de86
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controllerwebapiadapter.cpp
@@ -0,0 +1,51 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB.                                  //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include "SWGFeatureSettings.h"
+#include "gs232controller.h"
+#include "gs232controllerwebapiadapter.h"
+
+GS232ControllerWebAPIAdapter::GS232ControllerWebAPIAdapter()
+{}
+
+GS232ControllerWebAPIAdapter::~GS232ControllerWebAPIAdapter()
+{}
+
+int GS232ControllerWebAPIAdapter::webapiSettingsGet(
+        SWGSDRangel::SWGFeatureSettings& response,
+        QString& errorMessage)
+{
+    (void) errorMessage;
+    response.setSimplePttSettings(new SWGSDRangel::SWGSimplePTTSettings());
+    response.getSimplePttSettings()->init();
+    GS232Controller::webapiFormatFeatureSettings(response, m_settings);
+
+    return 200;
+}
+
+int GS232ControllerWebAPIAdapter::webapiSettingsPutPatch(
+        bool force,
+        const QStringList& featureSettingsKeys,
+        SWGSDRangel::SWGFeatureSettings& response,
+        QString& errorMessage)
+{
+    (void) errorMessage;
+    GS232Controller::webapiUpdateFeatureSettings(m_settings, featureSettingsKeys, response);
+
+    return 200;
+}
diff --git a/plugins/feature/gs232controller/gs232controllerwebapiadapter.h b/plugins/feature/gs232controller/gs232controllerwebapiadapter.h
new file mode 100644
index 000000000..7afa55e63
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controllerwebapiadapter.h
@@ -0,0 +1,50 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB.                                  //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_GS232CONTROLLER_WEBAPIADAPTER_H
+#define INCLUDE_GS232CONTROLLER_WEBAPIADAPTER_H
+
+#include "feature/featurewebapiadapter.h"
+#include "gs232controllersettings.h"
+
+/**
+ * Standalone API adapter only for the settings
+ */
+class GS232ControllerWebAPIAdapter : public FeatureWebAPIAdapter {
+public:
+    GS232ControllerWebAPIAdapter();
+    virtual ~GS232ControllerWebAPIAdapter();
+
+    virtual QByteArray serialize() const { return m_settings.serialize(); }
+    virtual bool deserialize(const QByteArray& data) { return m_settings.deserialize(data); }
+
+    virtual int webapiSettingsGet(
+            SWGSDRangel::SWGFeatureSettings& response,
+            QString& errorMessage);
+
+    virtual int webapiSettingsPutPatch(
+            bool force,
+            const QStringList& featureSettingsKeys,
+            SWGSDRangel::SWGFeatureSettings& response,
+            QString& errorMessage);
+
+private:
+    GS232ControllerSettings m_settings;
+};
+
+#endif // INCLUDE_GS232CONTROLLER_WEBAPIADAPTER_H
diff --git a/plugins/feature/gs232controller/gs232controllerworker.cpp b/plugins/feature/gs232controller/gs232controllerworker.cpp
new file mode 100644
index 000000000..59af9333b
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controllerworker.cpp
@@ -0,0 +1,248 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include <QDebug>
+#include <QTcpServer>
+#include <QTcpSocket>
+#include <QEventLoop>
+#include <QTimer>
+#include <QSerialPort>
+#include <QRegularExpression>
+
+#include "SWGDeviceState.h"
+#include "SWGSuccessResponse.h"
+#include "SWGErrorResponse.h"
+#include "SWGDeviceSettings.h"
+#include "SWGChannelSettings.h"
+#include "SWGDeviceSet.h"
+#include "SWGChannelReport.h"
+
+#include "webapi/webapiadapterinterface.h"
+#include "webapi/webapiutils.h"
+
+#include "gs232controllerworker.h"
+#include "gs232controllerreport.h"
+
+MESSAGE_CLASS_DEFINITION(GS232ControllerWorker::MsgConfigureGS232ControllerWorker, Message)
+MESSAGE_CLASS_DEFINITION(GS232ControllerReport::MsgReportAzAl, Message)
+
+GS232ControllerWorker::GS232ControllerWorker(WebAPIAdapterInterface *webAPIAdapterInterface) :
+    m_webAPIAdapterInterface(webAPIAdapterInterface),
+    m_msgQueueToFeature(nullptr),
+    m_msgQueueToGUI(nullptr),
+    m_running(false),
+    m_mutex(QMutex::Recursive)
+{
+    connect(&m_pollTimer, SIGNAL(timeout()), this, SLOT(update()));
+    m_pollTimer.start(1000);
+}
+
+GS232ControllerWorker::~GS232ControllerWorker()
+{
+    m_inputMessageQueue.clear();
+}
+
+void GS232ControllerWorker::reset()
+{
+    QMutexLocker mutexLocker(&m_mutex);
+    m_inputMessageQueue.clear();
+}
+
+bool GS232ControllerWorker::startWork()
+{
+    QMutexLocker mutexLocker(&m_mutex);
+    connect(&m_inputMessageQueue, SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages()));
+    connect(&m_serialPort, &QSerialPort::readyRead, this, &GS232ControllerWorker::readSerialData);
+    m_running = true;
+    return m_running;
+}
+
+void GS232ControllerWorker::stopWork()
+{
+    QMutexLocker mutexLocker(&m_mutex);
+    disconnect(&m_inputMessageQueue, SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages()));
+    disconnect(&m_serialPort, &QSerialPort::readyRead, this, &GS232ControllerWorker::readSerialData);
+    m_running = false;
+}
+
+void GS232ControllerWorker::handleInputMessages()
+{
+    Message* message;
+
+    while ((message = m_inputMessageQueue.pop()) != nullptr)
+    {
+        if (handleMessage(*message)) {
+            delete message;
+        }
+    }
+}
+
+bool GS232ControllerWorker::handleMessage(const Message& cmd)
+{
+    if (MsgConfigureGS232ControllerWorker::match(cmd))
+    {
+        QMutexLocker mutexLocker(&m_mutex);
+        MsgConfigureGS232ControllerWorker& cfg = (MsgConfigureGS232ControllerWorker&) cmd;
+
+        applySettings(cfg.getSettings(), cfg.getForce());
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+
+void GS232ControllerWorker::applySettings(const GS232ControllerSettings& settings, bool force)
+{
+    qDebug() << "GS232ControllerWorker::applySettings:"
+            << " m_azimuth: " << settings.m_azimuth
+            << " m_elevation: " << settings.m_elevation
+            << " m_serialPort: " << settings.m_serialPort
+            << " m_baudRate: " << settings.m_baudRate
+            << " m_deviceIndex: " << settings.m_deviceIndex
+            << " m_channelIndex: " << settings.m_channelIndex
+            << " force: " << force;
+
+    if ((settings.m_serialPort != m_settings.m_serialPort) || force)
+    {
+        if (m_serialPort.isOpen())
+            m_serialPort.close();
+        m_serialPort.setPortName(settings.m_serialPort);
+        m_serialPort.setBaudRate(settings.m_baudRate);
+        if (!m_serialPort.open(QIODevice::ReadWrite))
+            qCritical() << "GS232ControllerWorker::applySettings: Failed to open serial port " << settings.m_serialPort << ". Error: " << m_serialPort.error();
+    }
+    else if ((settings.m_baudRate != m_settings.m_baudRate) || force)
+    {
+        m_serialPort.setBaudRate(settings.m_baudRate);
+    }
+
+    if ((settings.m_elevation != m_settings.m_elevation) || force)
+    {
+        setAzimuthElevation(settings.m_azimuth, settings.m_elevation);
+    }
+    else if ((settings.m_azimuth != m_settings.m_azimuth) || force)
+    {
+        setAzimuth(settings.m_azimuth);
+    }
+
+    m_settings = settings;
+}
+
+void GS232ControllerWorker::setAzimuth(int azimuth)
+{
+   QString cmd = QString("M%1\r\n").arg(azimuth, 3, 10, QLatin1Char('0'));
+   QByteArray data = cmd.toLatin1();
+   m_serialPort.write(data);
+}
+
+void GS232ControllerWorker::setAzimuthElevation(int azimuth, int elevation)
+{
+   QString cmd = QString("W%1 %2\r\n").arg(azimuth, 3, 10, QLatin1Char('0')).arg(elevation, 3, 10, QLatin1Char('0'));
+   QByteArray data = cmd.toLatin1();
+   m_serialPort.write(data);
+}
+
+void GS232ControllerWorker::readSerialData()
+{
+    char buf[1024];
+    qint64 len;
+
+    while (m_serialPort.canReadLine())
+    {
+        len = m_serialPort.readLine(buf, sizeof(buf));
+        if (len != -1)
+        {
+            QString response = QString::fromUtf8(buf, len);
+
+            QRegularExpression re("AZ=(\\d\\d\\d)EL=(\\d\\d\\d)");
+            QRegularExpressionMatch match = re.match(response);
+            if (match.hasMatch())
+            {
+                QString az = match.captured(1);
+                QString el = match.captured(2);
+                //qDebug() << "GS232ControllerWorker::readSerialData read az " << az << " el " << el;
+                if (getMessageQueueToGUI())
+                {
+                    GS232ControllerReport::MsgReportAzAl *msg = GS232ControllerReport::MsgReportAzAl::create(
+                                                                        az.toFloat(), el.toFloat(), GS232ControllerReport::ACTUAL);
+                    getMessageQueueToGUI()->push(msg);
+                }
+            }
+            else
+            {
+                qDebug() << "GS232ControllerWorker::readSerialData unknown response " << response;
+            }
+        }
+    }
+}
+
+void GS232ControllerWorker::update()
+{
+    // Request current Az/El from GS-232 controller
+    if (m_serialPort.isOpen())
+    {
+        QByteArray cmd("C2\r\n");
+        m_serialPort.write(cmd);
+    }
+
+    // Request target Az/EL from channel
+    if (m_settings.m_track)
+    {
+        SWGSDRangel::SWGChannelReport response;
+        SWGSDRangel::SWGErrorResponse errorResponse;
+
+        int httpRC = m_webAPIAdapterInterface->devicesetChannelReportGet(
+            m_settings.m_deviceIndex,
+            m_settings.m_channelIndex,
+            response,
+            errorResponse
+        );
+
+        if (httpRC/100 != 2)
+        {
+            qWarning("GS232ControllerWorker::update: get channel report error %d: %s",
+                httpRC, qPrintable(*errorResponse.getMessage()));
+        }
+        else
+        {
+            QJsonObject *jsonObj = response.asJsonObject();
+            double targetAzimuth;
+            double targetElevation;
+            bool gotElevation = false;
+            bool gotAzimuth = false;
+
+            if (WebAPIUtils::getSubObjectDouble(*jsonObj, "targetAzimuth", targetAzimuth))
+                gotAzimuth = true;
+
+            if (WebAPIUtils::getSubObjectDouble(*jsonObj, "targetElevation", targetElevation))
+                gotElevation = true;
+
+            if (gotAzimuth && gotElevation)
+            {
+                if (getMessageQueueToGUI())
+                {
+                    GS232ControllerReport::MsgReportAzAl *msg = GS232ControllerReport::MsgReportAzAl::create(
+                                                                targetAzimuth, targetElevation, GS232ControllerReport::TARGET);
+                    getMessageQueueToGUI()->push(msg);
+                }
+            }
+        }
+    }
+}
diff --git a/plugins/feature/gs232controller/gs232controllerworker.h b/plugins/feature/gs232controller/gs232controllerworker.h
new file mode 100644
index 000000000..2041e17c8
--- /dev/null
+++ b/plugins/feature/gs232controller/gs232controllerworker.h
@@ -0,0 +1,94 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+// Copyright (C) 2020 Edouard Griffiths, F4EXB                                   //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_FEATURE_GS232CONTROLLERWORKER_H_
+#define INCLUDE_FEATURE_GS232CONTROLLERWORKER_H_
+
+#include <QObject>
+#include <QTimer>
+#include <QSerialPort>
+
+#include "util/message.h"
+#include "util/messagequeue.h"
+
+#include "gs232controllersettings.h"
+
+class WebAPIAdapterInterface;
+
+class GS232ControllerWorker : public QObject
+{
+    Q_OBJECT
+public:
+    class MsgConfigureGS232ControllerWorker : public Message {
+        MESSAGE_CLASS_DECLARATION
+
+    public:
+        const GS232ControllerSettings& getSettings() const { return m_settings; }
+        bool getForce() const { return m_force; }
+
+        static MsgConfigureGS232ControllerWorker* create(const GS232ControllerSettings& settings, bool force)
+        {
+            return new MsgConfigureGS232ControllerWorker(settings, force);
+        }
+
+    private:
+        GS232ControllerSettings m_settings;
+        bool m_force;
+
+        MsgConfigureGS232ControllerWorker(const GS232ControllerSettings& settings, bool force) :
+            Message(),
+            m_settings(settings),
+            m_force(force)
+        { }
+    };
+
+    GS232ControllerWorker(WebAPIAdapterInterface *webAPIAdapterInterface);
+    ~GS232ControllerWorker();
+    void reset();
+    bool startWork();
+    void stopWork();
+    bool isRunning() const { return m_running; }
+    MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; }
+    void setMessageQueueToFeature(MessageQueue *messageQueue) { m_msgQueueToFeature = messageQueue; }
+    void setMessageQueueToGUI(MessageQueue *messageQueue) { m_msgQueueToGUI = messageQueue; }
+
+private:
+
+    WebAPIAdapterInterface *m_webAPIAdapterInterface;
+    MessageQueue m_inputMessageQueue;  //!< Queue for asynchronous inbound communication
+    MessageQueue *m_msgQueueToFeature; //!< Queue to report channel change to main feature object
+    MessageQueue *m_msgQueueToGUI;
+    GS232ControllerSettings m_settings;
+    bool m_running;
+    QMutex m_mutex;
+    QSerialPort m_serialPort;
+    QTimer m_pollTimer;
+
+    bool handleMessage(const Message& cmd);
+    void applySettings(const GS232ControllerSettings& settings, bool force = false);
+    MessageQueue *getMessageQueueToGUI() { return m_msgQueueToGUI; }
+    void setAzimuth(int azimuth);
+    void setAzimuthElevation(int azimuth, int elevation);
+
+private slots:
+    void handleInputMessages();
+    void readSerialData();
+    void update();
+};
+
+#endif // INCLUDE_FEATURE_GS232CONTROLLERWORKER_H_
diff --git a/plugins/feature/gs232controller/readme.md b/plugins/feature/gs232controller/readme.md
new file mode 100644
index 000000000..3e55f92ea
--- /dev/null
+++ b/plugins/feature/gs232controller/readme.md
@@ -0,0 +1,52 @@
+<h1>GS-232 Rotator Controller Feature Plugin</h1>
+
+<h2>Introduction</h2>
+
+The GS-232 Rotator Controller feature plugin allows SDRangel to send commands to GS-232 rotators. This allows SDRangel to point antennas mounted on a rotator to a specified azimuth and elevation.
+
+Azimuth and elevation can be set manually by a user in the GUI, via the REST API, or via another plugin, such as the ADS-B Demodulator, which can track a selected aircraft.
+
+<h2>Interface</h2>
+
+![File source channel plugin GUI](../../../doc/img/GS232Controller_plugin.png)
+
+<h3>1: Start/Stop plugin</h3>
+
+This button starts or stops the plugin. When the plugin is stopped, azimuth and elevation commands will not be sent to the GS-232 rotator.
+
+<h3>2: Azimuth</h3>
+
+Specifies the target azimuth (angle in degrees, clockwise from North) to point the antenna towards. Valid values range from 0 to 450 degrees. The value to the right of the target azimuth, is the current azimuth read from the GS-232 rotator.
+
+<h3>3: Elevation</h3>
+
+Specifies the target elevation (angle in degrees) to point the antenna towards. Valid values range from 0 to 180 degrees, where 0 and 180 point towards the horizon and 90 degrees to zenith. The value to the right of the target elevation, is the current elevation read from the GS-232 rotator.
+
+<h3>4: Serial Port</h3>
+
+Specifies the serial port (E.g. COM3 on Windows or /dev/ttyS0 on Linux) that will be used to send commands to the GS-232 rotator.
+
+<h3>5: Baud rate</h3>
+
+Specifies the baud rate that will be used to send commands to the GS-232 rotator. Typically this is 9600.
+
+<h3>6: Track</h3>
+
+When checked, the GS-232 Rotator Controller plugin will query the channel specified by the Device (8) and Channel (9) combo boxes for the target azimuth and elevation. For example, this allows an aircraft to be tracked, by setting the Device and Channel to correspond to the ADS-B Demodulator plugin.  
+
+<h3>7: Refresh list of devices and channels</h3>
+
+Use this button to refresh the list of devices (8) and channels (9)
+
+<h3>8: Select device set</h3>
+
+Specify the SDRangel device set containing the channel plugin that will be asked for aziumth and elevation values. Defaults to R0.
+
+<h3>9: Select channel</h3>
+
+The channel index specifies the SDRangel channel that will be asked for azimuth and elevation values. Defaults to 0.
+
+<h2>Developer Information</h2>
+
+For a channel plugin to be able to set the azimuth and elevation, its channel report should contain targetAzimuth and targetElevation. See the ADS-B plugin as an example.
+ 
\ No newline at end of file
diff --git a/sdrbase/CMakeLists.txt b/sdrbase/CMakeLists.txt
index 407e8d1f2..aeac9d603 100644
--- a/sdrbase/CMakeLists.txt
+++ b/sdrbase/CMakeLists.txt
@@ -149,6 +149,7 @@ set(sdrbase_SOURCES
     settings/preset.cpp
     settings/mainsettings.cpp
 
+    util/azel.cpp
     util/crc.cpp
     util/CRC64.cpp
     util/db.cpp
@@ -314,6 +315,7 @@ set(sdrbase_HEADERS
     settings/preset.h
     settings/mainsettings.h
 
+    util/azel.h
     util/CRC64.h
     util/db.h
     util/doublebuffer.h
diff --git a/sdrbase/resources/webapi/doc/html2/index.html b/sdrbase/resources/webapi/doc/html2/index.html
index 2dd81cdeb..abbdba250 100644
--- a/sdrbase/resources/webapi/doc/html2/index.html
+++ b/sdrbase/resources/webapi/doc/html2/index.html
@@ -696,6 +696,87 @@ margin-bottom: 20px;
   <script>
     // Script section to load models into a JS Var
     var defs = {}
+            defs.ADSBDemodReport = {
+  "properties" : {
+    "channelPowerDB" : {
+      "type" : "number",
+      "format" : "float",
+      "description" : "power received in channel (dB)"
+    },
+    "channelSampleRate" : {
+      "type" : "integer"
+    },
+    "targetAzimuth" : {
+      "type" : "number",
+      "format" : "float"
+    },
+    "targetElevation" : {
+      "type" : "number",
+      "format" : "float"
+    }
+  },
+  "description" : "ADSBDemod"
+};
+            defs.ADSBDemodSettings = {
+  "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"
+    },
+    "correlationThreshold" : {
+      "type" : "number",
+      "format" : "float"
+    },
+    "samplesPerBit" : {
+      "type" : "integer"
+    },
+    "removeTimeout" : {
+      "type" : "integer"
+    },
+    "beastEnabled" : {
+      "type" : "integer"
+    },
+    "beastHost" : {
+      "type" : "string"
+    },
+    "beastPort" : {
+      "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" : "ADSBDemod"
+};
             defs.AMBEDevice = {
   "properties" : {
     "deviceRef" : {
@@ -2163,6 +2244,9 @@ margin-bottom: 20px;
       "type" : "integer",
       "description" : "0 for Rx only, 1 for Tx only or 2 for any number and direction (default 0)"
     },
+    "ADSBDemodReport" : {
+      "$ref" : "#/definitions/ADSBDemodReport"
+    },
     "AMDemodReport" : {
       "$ref" : "#/definitions/AMDemodReport"
     },
@@ -2249,6 +2333,9 @@ margin-bottom: 20px;
       "type" : "integer",
       "description" : "Optional for reverse API. This is the channel index from where the message comes from."
     },
+    "ADSBDemodSettings" : {
+      "$ref" : "#/definitions/ADSBDemodSettings"
+    },
     "AMDemodSettings" : {
       "$ref" : "#/definitions/AMDemodSettings"
     },
@@ -3300,6 +3387,9 @@ margin-bottom: 20px;
       "type" : "integer",
       "description" : "Optional for reverse API. This is the feature index from where the message comes from."
     },
+    "GS232ControllerSettings" : {
+      "$ref" : "#/definitions/GS232ControllerSettings"
+    },
     "SimplePTTSettings" : {
       "$ref" : "#/definitions/SimplePTTSettings"
     },
@@ -4001,6 +4091,58 @@ margin-bottom: 20px;
     }
   },
   "description" : "GLSpectrumGUI settings"
+};
+            defs.GS232ControllerSettings = {
+  "properties" : {
+    "azimuth" : {
+      "type" : "integer",
+      "description" : "Target azimuth in degrees (0-450)"
+    },
+    "elevation" : {
+      "type" : "integer",
+      "description" : "Target elevation in degrees (0-180)"
+    },
+    "serialPort" : {
+      "type" : "string",
+      "description" : "The serial port the GS-232 controller is connected to"
+    },
+    "baudRate" : {
+      "type" : "integer",
+      "description" : "The baud rate to use for the serial connection to the GS-232 controller"
+    },
+    "track" : {
+      "type" : "integer"
+    },
+    "title" : {
+      "type" : "string"
+    },
+    "rgbColor" : {
+      "type" : "integer"
+    },
+    "deviceIndex" : {
+      "type" : "integer"
+    },
+    "channelIndex" : {
+      "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" : "GS-232 Controller settings"
 };
             defs.Gain = {
   "properties" : {
@@ -39969,7 +40111,7 @@ except ApiException as e:
           </div>
           <div id="generator">
             <div class="content">
-              Generated 2020-10-11T08:49:12.690+02:00
+              Generated 2020-10-27T16:45:08.746+01:00
             </div>
           </div>
       </div>
diff --git a/sdrbase/settings/mainsettings.h b/sdrbase/settings/mainsettings.h
index 0815d5fa0..9f2057519 100644
--- a/sdrbase/settings/mainsettings.h
+++ b/sdrbase/settings/mainsettings.h
@@ -73,10 +73,14 @@ public:
 	const QString& getSourceDeviceId() const { return m_preferences.getSourceDevice(); }
 	void setSourceDeviceId(const QString& deviceId) { m_preferences.setSourceDevice(deviceId); }
 
-	void setLatitude(float latitude) { m_preferences.setLatitude(latitude); }
+	void setStationName(const QString& name) { m_preferences.setStationName(name); }
+        void setLatitude(float latitude) { m_preferences.setLatitude(latitude); }
 	void setLongitude(float longitude) { m_preferences.setLongitude(longitude); }
+	void setAltitude(float altitude) { m_preferences.setAltitude(altitude); }
+        QString getStationName() const { return m_preferences.getStationName(); }
 	float getLatitude() const { return m_preferences.getLatitude(); }
 	float getLongitude() const { return m_preferences.getLongitude(); }
+	float getAltitude() const { return m_preferences.getAltitude(); }
 
     void setConsoleMinLogLevel(const QtMsgType& minLogLevel) { m_preferences.setConsoleMinLogLevel(minLogLevel); }
     void setFileMinLogLevel(const QtMsgType& minLogLevel) { m_preferences.setFileMinLogLevel(minLogLevel); }
diff --git a/sdrbase/settings/preferences.cpp b/sdrbase/settings/preferences.cpp
index 98b6ca284..4df70478a 100644
--- a/sdrbase/settings/preferences.cpp
+++ b/sdrbase/settings/preferences.cpp
@@ -12,8 +12,10 @@ void Preferences::resetToDefaults()
 	m_audioType.clear();
 	m_audioDevice.clear();
 	m_sourceIndex = 0;
-	m_latitude = 0.0;
-	m_longitude = 0.0;
+        m_stationName = "Home";
+	m_latitude = 49.012423; // Set an interesting location so map doesn't open up in the middle of the ocean
+	m_longitude = 8.418125;
+        m_altitude = 0.0f;
 	m_useLogFile = false;
 	m_logFileName = "sdrangel.log";
 	m_consoleMinLogLevel = QtDebugMsg;
@@ -33,6 +35,8 @@ QByteArray Preferences::serialize() const
 	s.writeBool(9, m_useLogFile);
 	s.writeString(10, m_logFileName);
     s.writeS32(11, (int) m_fileMinLogLevel);
+        s.writeString(12, m_stationName);
+        s.writeFloat(13, m_altitude);
 	return s.final();
 }
 
@@ -53,8 +57,8 @@ bool Preferences::deserialize(const QByteArray& data)
 		d.readString(3, &m_audioType);
 		d.readString(4, &m_audioDevice);
 		d.readS32(5, &m_sourceIndex, 0);
-		d.readFloat(6, &m_latitude, 0.0);
-		d.readFloat(7, &m_longitude, 0.0);
+		d.readFloat(6, &m_latitude, 0.0f);
+		d.readFloat(7, &m_longitude, 0.0f);
 
 		d.readS32(8, &tmpInt, (int) QtDebugMsg);
 
@@ -72,6 +76,8 @@ bool Preferences::deserialize(const QByteArray& data)
 		d.readString(10, &m_logFileName, "sdrangel.log");
 
         d.readS32(11, &tmpInt, (int) QtDebugMsg);
+        d.readString(12, &m_stationName, "Home");
+        d.readFloat(13, &m_altitude, 0.0f);
 
         if ((tmpInt == (int) QtDebugMsg) ||
             (tmpInt == (int) QtInfoMsg) ||
diff --git a/sdrbase/settings/preferences.h b/sdrbase/settings/preferences.h
index 598e96e22..de3a8f631 100644
--- a/sdrbase/settings/preferences.h
+++ b/sdrbase/settings/preferences.h
@@ -23,10 +23,14 @@ public:
 	void setAudioDevice(const QString& value) { m_audioDevice = value; }
 	const QString& getAudioDevice() const { return m_audioDevice; }
 
-	void setLatitude(float latitude) { m_latitude = latitude; }
+	void setStationName(const QString& name) { m_stationName = name; }
+        void setLatitude(float latitude) { m_latitude = latitude; }
 	void setLongitude(float longitude) { m_longitude = longitude; }
+	void setAltitude(float altitude) { m_altitude = altitude; }
+        QString getStationName() const { return m_stationName; }
 	float getLatitude() const { return m_latitude; }
 	float getLongitude() const { return m_longitude; }
+	float getAltitude() const { return m_altitude; }
 
 	void setConsoleMinLogLevel(const QtMsgType& minLogLevel) { m_consoleMinLogLevel = minLogLevel; }
     void setFileMinLogLevel(const QtMsgType& minLogLevel) { m_fileMinLogLevel = minLogLevel; }
@@ -44,8 +48,10 @@ protected:
 	QString m_audioType;
 	QString m_audioDevice;
 
-	float m_latitude;
+	QString m_stationName;  //!< Name of the station (for drawing on the map)
+        float m_latitude;       //!< Position of the station
 	float m_longitude;
+        float m_altitude;       //!< Altitude in metres
 
 	QtMsgType m_consoleMinLogLevel;
     QtMsgType m_fileMinLogLevel;
diff --git a/sdrbase/util/azel.cpp b/sdrbase/util/azel.cpp
new file mode 100644
index 000000000..4bb7494bb
--- /dev/null
+++ b/sdrbase/util/azel.cpp
@@ -0,0 +1,151 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#include "azel.h"
+
+#define _USE_MATH_DEFINES
+#include <cmath>
+
+// Calculate cartesian distance between two points
+double AzEl::cartDistance(const AzElPoint& a, const AzElPoint& b)
+{
+    double dx = b.m_cart.m_x - a.m_cart.m_x;
+    double dy = b.m_cart.m_y - a.m_cart.m_y;
+    double dz = b.m_cart.m_z - a.m_cart.m_z;
+    return std::sqrt(dx*dx + dy*dy + dz*dz);
+}
+
+// Calculate vector difference then normalise the result
+bool AzEl::normVectorDiff(const AzElCartesian& a, const AzElCartesian& b, AzElCartesian& n)
+{
+    n.m_x = b.m_x - a.m_x;
+    n.m_y = b.m_y - a.m_y;
+    n.m_z = b.m_z - a.m_z;
+    double distance = std::sqrt(n.m_x*n.m_x + n.m_y*n.m_y + n.m_z*n.m_z);
+    if (distance > 0.0f)
+    {
+        n.m_x = n.m_x / distance;
+        n.m_y = n.m_y / distance;
+        n.m_z = n.m_z / distance;
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+
+// Convert geodetic latitude (as given by GPS) to geocentric latitude (angle from centre of Earth between the point and equator)
+// Both in radians.
+// https://en.wikipedia.org/wiki/Latitude#Geocentric_latitude
+double AzEl::geocentricLatitude(double latRad) const
+{
+    double e2 = 0.00669437999014;
+    return std::atan((1.0 - e2) * std::tan(latRad));
+}
+
+// Earth radius for a given latitude, as it's not quite spherical
+// http://en.wikipedia.org/wiki/Earth_radius
+double AzEl::earthRadiusInMetres(double geodeticLatRad) const
+{
+   double equatorialRadius = 6378137.0;
+   double polarRadius = 6356752.3;
+   double cosLat = std::cos(geodeticLatRad);
+   double sinLat = std::sin(geodeticLatRad);
+   double t1 = equatorialRadius * equatorialRadius * cosLat;
+   double t2 = polarRadius * polarRadius * sinLat;
+   double t3 = equatorialRadius * cosLat;
+   double t4 = polarRadius * sinLat;
+   return std::sqrt((t1*t1 + t2*t2)/(t3*t3 + t4*t4));
+}
+
+// Convert spherical coordinate to cartesian. Also calculates radius and a normal vector
+void AzEl::sphericalToCartesian(AzElPoint& point)
+{
+    // First calculate cartesian coords for point on Earth's surface
+    double latRad = point.m_spherical.m_latitude * M_PI/180.0;
+    double longRad = point.m_spherical.m_longitude * M_PI/180.0;
+    point.m_radius = earthRadiusInMetres(latRad);
+    double clat = geocentricLatitude(latRad);
+    double cosLong = cos(longRad);
+    double sinLong = sin(longRad);
+    double cosLat = cos(clat);
+    double sinLat = sin(clat);
+
+    point.m_cart.m_x = point.m_radius * cosLong * cosLat;
+    point.m_cart.m_y = point.m_radius * sinLong * cosLat;
+    point.m_cart.m_z = point.m_radius * sinLat;
+
+    // Calculate normal vector at surface
+    double cosGLat = std::cos(latRad);
+    double sinGLat = std::sin(latRad);
+
+    point.m_norm.m_x = cosGLat * cosLong;
+    point.m_norm.m_y = cosGLat * sinLong;
+    point.m_norm.m_z = sinGLat;
+
+    // Add altitude along normal vector
+    point.m_cart.m_x += point.m_spherical.m_altitude * point.m_norm.m_x;
+    point.m_cart.m_y += point.m_spherical.m_altitude * point.m_norm.m_y;
+    point.m_cart.m_z += point.m_spherical.m_altitude * point.m_norm.m_z;
+}
+
+// Calculate azimuth of target from location
+void AzEl::calcAzimuth()
+{
+    AzElPoint bRot;
+
+    // Rotate so location is at lat=0, long=0
+    bRot.m_spherical.m_latitude = m_target.m_spherical.m_latitude;
+    bRot.m_spherical.m_longitude = m_target.m_spherical.m_longitude - m_location.m_spherical.m_longitude;
+    bRot.m_spherical.m_altitude = m_target.m_spherical.m_altitude;
+    sphericalToCartesian(bRot);
+
+    double aLat = geocentricLatitude(-m_location.m_spherical.m_latitude * M_PI / 180.0);
+    double aCos = std::cos(aLat);
+    double aSin = std::sin(aLat);
+
+    double bx = (bRot.m_cart.m_x * aCos) - (bRot.m_cart.m_z * aSin);
+    double by = bRot.m_cart.m_y;
+    double bz = (bRot.m_cart.m_x * aSin) + (bRot.m_cart.m_z * aCos);
+
+    if (bz*bz + by*by > 1e-6)
+    {
+        double theta = std::atan2(bz, by) * 180.0 / M_PI;
+        m_azimuth = 90.0 - theta;
+        if (m_azimuth < 0.0)
+            m_azimuth += 360.0;
+        else if (m_azimuth > 360.0)
+            m_azimuth -= 360.0;
+    }
+    else
+        m_azimuth = 0.0;
+}
+
+// Calculate elevation of target from location
+void AzEl::calcElevation()
+{
+    AzElCartesian bma;
+    if (normVectorDiff(m_location.m_cart, m_target.m_cart, bma))
+    {
+        m_elevation = 90.0 - (180.0/M_PI) * std::acos(bma.m_x * m_location.m_norm.m_x
+                                                    + bma.m_y * m_location.m_norm.m_y
+                                                    + bma.m_z * m_location.m_norm.m_z);
+    }
+    else
+        m_elevation = 0.0;
+}
diff --git a/sdrbase/util/azel.h b/sdrbase/util/azel.h
new file mode 100644
index 000000000..671750915
--- /dev/null
+++ b/sdrbase/util/azel.h
@@ -0,0 +1,133 @@
+///////////////////////////////////////////////////////////////////////////////////
+// Copyright (C) 2020 Jon Beniston, M7RCE                                        //
+//                                                                               //
+// This program is free software; you can redistribute it and/or modify          //
+// it under the terms of the GNU General Public License as published by          //
+// the Free Software Foundation as version 3 of the License, or                  //
+// (at your option) any later version.                                           //
+//                                                                               //
+// This program is distributed in the hope that it will be useful,               //
+// but WITHOUT ANY WARRANTY; without even the implied warranty of                //
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                  //
+// GNU General Public License V3 for more details.                               //
+//                                                                               //
+// You should have received a copy of the GNU General Public License             //
+// along with this program. If not, see <http://www.gnu.org/licenses/>.          //
+///////////////////////////////////////////////////////////////////////////////////
+
+#ifndef INCLUDE_AZ_EL_H
+#define INCLUDE_AZ_EL_H
+
+#include "export.h"
+
+// Spherical coordinate
+struct SDRBASE_API AzElSpherical
+{
+    double m_latitude;          // Degrees
+    double m_longitude;         // Degrees
+    double m_altitude;          // Metres
+};
+
+// Cartesian coordinate
+struct SDRBASE_API AzElCartesian
+{
+    double m_x;                 // Metres
+    double m_y;                 // Metres
+    double m_z;                 // Metres
+};
+
+struct SDRBASE_API AzElPoint
+{
+    AzElSpherical m_spherical;  // Spherical coordinates
+    AzElCartesian m_cart;       // Cartesian coordinates
+    AzElCartesian m_norm;       // Normal vector on surface of sphere
+    double m_radius;            // Radius from centre of sphere to the point
+};
+
+
+// Class to calculate azimuth, elevation and distance between two points specified
+// by latitude, longitude and altitude
+// See: https://doncross.net/geocalc
+class SDRBASE_API AzEl
+{
+public:
+    // Location is the point we are looking from
+    void setLocation(double latitude, double longitude, double altitude)
+    {
+        m_location.m_spherical.m_latitude = latitude;
+        m_location.m_spherical.m_longitude = longitude;
+        m_location.m_spherical.m_altitude = altitude;
+        sphericalToCartesian(m_location);
+    }
+
+    // Target is the point we are looking at
+    void setTarget(double latiude, double longitude, double altitude)
+    {
+        m_target.m_spherical.m_latitude = latiude;
+        m_target.m_spherical.m_longitude = longitude;
+        m_target.m_spherical.m_altitude = altitude;
+        sphericalToCartesian(m_target);
+    }
+
+    AzElSpherical getLocationSpherical()
+    {
+        return m_location.m_spherical;
+    }
+
+    AzElCartesian getLocationCartesian()
+    {
+        return m_location.m_cart;
+    }
+
+    AzElSpherical getTargetSpherical()
+    {
+        return m_target.m_spherical;
+    }
+
+    AzElCartesian getTargetCartesian()
+    {
+        return m_target.m_cart;
+    }
+
+    void calculate()
+    {
+        m_distance = cartDistance(m_location, m_target);
+        calcAzimuth();
+        calcElevation();
+    }
+
+    double getDistance()
+    {
+        return m_distance;
+    }
+
+    double getAzimuth()
+    {
+        return m_azimuth;
+    }
+
+    double getElevation()
+    {
+        return m_elevation;
+    }
+
+private:
+
+    double cartDistance(const AzElPoint& a, const AzElPoint& b);
+    bool normVectorDiff(const AzElCartesian& a, const AzElCartesian& b, AzElCartesian& n);
+    double geocentricLatitude(double latRad) const;
+    double earthRadiusInMetres(double geodeticLatRad) const;
+    void sphericalToCartesian(AzElPoint& point);
+    void calcAzimuth();
+    void calcElevation();
+
+    AzElPoint m_location;
+    AzElPoint m_target;
+
+    double m_azimuth;
+    double m_elevation;
+    double m_distance;
+
+};
+
+#endif
diff --git a/sdrbase/util/crc.h b/sdrbase/util/crc.h
index 3fcd44559..cde0e5294 100644
--- a/sdrbase/util/crc.h
+++ b/sdrbase/util/crc.h
@@ -111,4 +111,11 @@ public:
     crc32c() : crc(32, 0x1EDC6F41, false, 0xffffffff, 0) {}
 };
 
+// ADS-B - https://mode-s.org/decode/adsb/introduction.html
+class SDRBASE_API crcadsb : public crc
+{
+public:
+    crcadsb() : crc(24, 0xfff409, true, 0, 0) {}
+};
+
 #endif
diff --git a/sdrbase/webapi/webapirequestmapper.cpp b/sdrbase/webapi/webapirequestmapper.cpp
index 376da9135..651fab751 100644
--- a/sdrbase/webapi/webapirequestmapper.cpp
+++ b/sdrbase/webapi/webapirequestmapper.cpp
@@ -57,6 +57,7 @@
 #include "SWGFeatureActions.h"
 
 const QMap<QString, QString> WebAPIRequestMapper::m_channelURIToSettingsKey = {
+    {"sdrangel.channel.adsbdemod", "ADSBDemodSettings"},
     {"sdrangel.channel.amdemod", "AMDemodSettings"},
     {"de.maintech.sdrangelove.channel.am", "AMDemodSettings"}, // remap
     {"sdrangel.channeltx.modam", "AMModSettings"},
@@ -136,6 +137,7 @@ const QMap<QString, QString> WebAPIRequestMapper::m_deviceIdToSettingsKey = {
 };
 
 const QMap<QString, QString> WebAPIRequestMapper::m_channelTypeToSettingsKey = {
+    {"ADSBDemod", "ADSBDemodSettings"},
     {"AMDemod", "AMDemodSettings"},
     {"AMMod", "AMModSettings"},
     {"ATVDemod", "ATVDemodSettings"},
@@ -242,6 +244,7 @@ const QMap<QString, QString> WebAPIRequestMapper::m_mimoDeviceHwIdToActionsKey=
 };
 
 const QMap<QString, QString> WebAPIRequestMapper::m_featureTypeToSettingsKey = {
+    {"GS232Controller", "GS232ControllerSettings"},
     {"SimplePTT", "SimplePTTSettings"},
     {"RigCtlServer", "RigCtlServerSettings"}
 };
@@ -251,6 +254,7 @@ const QMap<QString, QString> WebAPIRequestMapper::m_featureTypeToActionsKey = {
 };
 
 const QMap<QString, QString> WebAPIRequestMapper::m_featureURIToSettingsKey = {
+    {"sdrangel.feature.gs232controller", "GS232ControllerSettings"},
     {"sdrangel.feature.simpleptt", "SimplePTTSettings"},
     {"sdrangel.feature.rigctlserver", "RigCtlServerSettings"}
 };
@@ -3715,7 +3719,12 @@ bool WebAPIRequestMapper::getChannelSettings(
             appendSettingsSubKeys(settingsJsonObject, cwJson, "cwKeyer", channelSettingsKeys);
         }
 
-        if (channelSettingsKey == "AMDemodSettings")
+        if (channelSettingsKey == "ADSBDemodSettings")
+        {
+            channelSettings->setAdsbDemodSettings(new SWGSDRangel::SWGADSBDemodSettings());
+            channelSettings->getAdsbDemodSettings()->fromJsonObject(settingsJsonObject);
+        }
+        else if (channelSettingsKey == "AMDemodSettings")
         {
             channelSettings->setAmDemodSettings(new SWGSDRangel::SWGAMDemodSettings());
             channelSettings->getAmDemodSettings()->fromJsonObject(settingsJsonObject);
@@ -4179,11 +4188,17 @@ bool WebAPIRequestMapper::getFeatureSettings(
         QJsonObject settingsJsonObject = featureSettingsJson[featureSettingsKey].toObject();
         featureSettingsKeys = settingsJsonObject.keys();
 
-        if (featureSettingsKey == "SimplePTTSettings")
+        if (featureSettingsKey == "GS232ControllerSettings")
+        {
+            featureSettings->setGs232ControllerSettings(new SWGSDRangel::SWGGS232ControllerSettings());
+            featureSettings->getGs232ControllerSettings()->fromJsonObject(settingsJsonObject);
+        }
+        else if (featureSettingsKey == "SimplePTTSettings")
         {
             featureSettings->setSimplePttSettings(new SWGSDRangel::SWGSimplePTTSettings());
             featureSettings->getSimplePttSettings()->fromJsonObject(settingsJsonObject);
-        } else if (featureSettingsKey == "RigCtlServerSettings")
+        }
+        else if (featureSettingsKey == "RigCtlServerSettings")
         {
             featureSettings->setRigCtlServerSettings(new SWGSDRangel::SWGRigCtlServerSettings());
             featureSettings->getRigCtlServerSettings()->fromJsonObject(settingsJsonObject);
@@ -4328,6 +4343,7 @@ void WebAPIRequestMapper::resetChannelSettings(SWGSDRangel::SWGChannelSettings&
 {
     channelSettings.cleanup();
     channelSettings.setChannelType(nullptr);
+    channelSettings.setAdsbDemodSettings(nullptr);
     channelSettings.setAmDemodSettings(nullptr);
     channelSettings.setAmModSettings(nullptr);
     channelSettings.setAtvModSettings(nullptr);
@@ -4351,6 +4367,7 @@ void WebAPIRequestMapper::resetChannelReport(SWGSDRangel::SWGChannelReport& chan
 {
     channelReport.cleanup();
     channelReport.setChannelType(nullptr);
+    channelReport.setAdsbDemodReport(nullptr);
     channelReport.setAmDemodReport(nullptr);
     channelReport.setAmModReport(nullptr);
     channelReport.setAtvModReport(nullptr);
diff --git a/sdrgui/gui/myposdialog.ui b/sdrgui/gui/myposdialog.ui
index bc022184e..f972db551 100644
--- a/sdrgui/gui/myposdialog.ui
+++ b/sdrgui/gui/myposdialog.ui
@@ -7,7 +7,7 @@
     <x>0</x>
     <y>0</y>
     <width>324</width>
-    <height>147</height>
+    <height>190</height>
    </rect>
   </property>
   <property name="font">
@@ -26,22 +26,25 @@
       <string>My Station Position</string>
      </property>
      <layout class="QFormLayout" name="formLayout">
-      <item row="0" column="0">
+      <item row="2" column="0">
        <widget class="QLabel" name="latitudeLabel">
         <property name="text">
          <string>Latitude</string>
         </property>
        </widget>
       </item>
-      <item row="1" column="0">
+      <item row="3" column="0">
        <widget class="QLabel" name="longitudeLabel">
         <property name="text">
          <string>Longitude</string>
         </property>
        </widget>
       </item>
-      <item row="1" column="1">
+      <item row="3" column="1">
        <widget class="QDoubleSpinBox" name="longitudeSpinBox">
+        <property name="toolTip">
+         <string>Longitude in decimal degrees</string>
+        </property>
         <property name="decimals">
          <number>6</number>
         </property>
@@ -53,8 +56,11 @@
         </property>
        </widget>
       </item>
-      <item row="0" column="1">
+      <item row="2" column="1">
        <widget class="QDoubleSpinBox" name="latitudeSpinBox">
+        <property name="toolTip">
+         <string>Latitude in decimal degrees</string>
+        </property>
         <property name="decimals">
          <number>6</number>
         </property>
@@ -66,6 +72,37 @@
         </property>
        </widget>
       </item>
+      <item row="4" column="1">
+       <widget class="QSpinBox" name="altitudeSpinBox">
+        <property name="toolTip">
+         <string>Altitude in metres</string>
+        </property>
+       </widget>
+      </item>
+      <item row="4" column="0">
+       <widget class="QLabel" name="altitudeLabel">
+        <property name="text">
+         <string>Altitude (m)</string>
+        </property>
+       </widget>
+      </item>
+      <item row="0" column="1">
+       <widget class="QLineEdit" name="name">
+        <property name="toolTip">
+         <string>Enter the name of your station</string>
+        </property>
+        <property name="text">
+         <string>Home</string>
+        </property>
+       </widget>
+      </item>
+      <item row="0" column="0">
+       <widget class="QLabel" name="nameLabel">
+        <property name="text">
+         <string>Station name</string>
+        </property>
+       </widget>
+      </item>
      </layout>
     </widget>
    </item>
@@ -82,7 +119,10 @@
   </layout>
  </widget>
  <tabstops>
-  <tabstop>buttonBox</tabstop>
+  <tabstop>name</tabstop>
+  <tabstop>latitudeSpinBox</tabstop>
+  <tabstop>longitudeSpinBox</tabstop>
+  <tabstop>altitudeSpinBox</tabstop>
  </tabstops>
  <resources/>
  <connections>
diff --git a/sdrgui/gui/mypositiondialog.cpp b/sdrgui/gui/mypositiondialog.cpp
index 2e945096a..58c8284a8 100644
--- a/sdrgui/gui/mypositiondialog.cpp
+++ b/sdrgui/gui/mypositiondialog.cpp
@@ -29,8 +29,10 @@ MyPositionDialog::MyPositionDialog(MainSettings& mainSettings, QWidget* parent)
 	m_mainSettings(mainSettings)
 {
 	ui->setupUi(this);
+    ui->name->setText(m_mainSettings.getStationName());
     ui->latitudeSpinBox->setValue(m_mainSettings.getLatitude());
     ui->longitudeSpinBox->setValue(m_mainSettings.getLongitude());
+    ui->altitudeSpinBox->setValue(m_mainSettings.getAltitude());
 }
 
 MyPositionDialog::~MyPositionDialog()
@@ -40,7 +42,9 @@ MyPositionDialog::~MyPositionDialog()
 
 void MyPositionDialog::accept()
 {
+    m_mainSettings.setStationName(ui->name->text());
     m_mainSettings.setLatitude(ui->latitudeSpinBox->value());
     m_mainSettings.setLongitude(ui->longitudeSpinBox->value());
+    m_mainSettings.setAltitude(ui->altitudeSpinBox->value());
 	QDialog::accept();
 }
diff --git a/sdrgui/resources/MapStation.qml b/sdrgui/resources/MapStation.qml
new file mode 100644
index 000000000..d489dc92f
--- /dev/null
+++ b/sdrgui/resources/MapStation.qml
@@ -0,0 +1,38 @@
+import QtQuick 2.4
+import QtLocation 5.6
+import QtPositioning 5.6
+
+MapQuickItem {
+    id: station
+    property string stationName // Name of the station, E.g. Home
+    
+    coordinate: QtPositioning.coordinate(51.5, 0.125) // Location of the antenna (QTH) - London
+    zoomLevel: 11
+
+    anchorPoint.x: image.width/2
+    anchorPoint.y: image.height/2
+
+    sourceItem: Grid {
+        columns: 1
+        Grid {
+            horizontalItemAlignment: Grid.AlignHCenter
+            Image {
+                id: image
+                source: "map_antenna.png"
+            }
+            Rectangle {
+                id: bubble
+                color: "lightblue"
+                border.width: 1
+                width: text.width * 1.3
+                height: text.height * 1.3
+                radius: 5
+                Text {
+                    id: text
+                    anchors.centerIn: parent
+                    text: stationName
+                }
+            }
+        }
+    }
+}
diff --git a/sdrgui/resources/aircraft_2engine.png b/sdrgui/resources/aircraft_2engine.png
new file mode 100644
index 0000000000000000000000000000000000000000..42967cc08dd7c78295746a3fd99bd040a7851430
GIT binary patch
literal 782
zcmV+p1M&QcP)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY4c7nw4c7reD4Tcy000McNliru<O&WB7$UZdXb}Ja0-H%h
zK~!ko?b=I-j$srB@E;MzWlT|0WaY9^NR608V+^4zCeq|mVqw8Xv$3$kk|dXsVmD=j
zg%Bl|vQw4_3)hSp<1%jZS$Nd+_I=NM_xaxXPMyX3p67es^FQZ2&+|V|A9cwoV{iti
zFgA?<4j~itMB1ERfFDBuWUwhs0InpQ&)_LWr@{Hz_>%=d25sg3SS2E|CNl5pGys?v
zvCT~bfGI`VY6iflB5gGTpsG>_PzO*4PzNyboV}3!y%kdfuepPdWjZ6KU^B+yD=uT8
z++dd^h}r3cy#<%>JqMA?U=X*lH8}fU4kpHJt3(DSWqEGI7VN{qJTtH=XfL{P5)FxQ
z4V5Ujm5C_5A12!Q>L5NO-tDeL29jf^mytV7OS~Ij?%F?#{xU>6U;Trd=qUC=U~;JI
z$5nJXm%hf4(COtR?RZ-Qjwkgy_7CU$e0-}x=Z7x%=<UY2A}4;13)q2Uk#Xm-E{u7I
zUqyWDZVbSqJSTY?oY|hGHg`pScR0&g(vG8ekSCzt*w&cq0C|IZxP=>d5eY(H#MYB|
z{(|d4|9^immIvC>k~pzpLM#JM0?KE&h&`B7;11RriC$-cb2VTEy27?P5N`Z(N*iXD
zcy26>0N7CC+zo+-R8;0g04z&GKTyaTs7U~yBeqXzX_S8ED50@w$Uv?v^oM;u6#)9G
zQUBG>KwlbazcKU<gE`hfH=1hI`So~}C%@lVOO7{%s29pAYa$zK@va1Z{}Rn3<@~HN
zH9tLBu57BZ3pGcm?O>qF`JB#8STqs<l05x4?&Cmca=M1tb_QC$7uUi`9h<8v(ix(B
zHFRc;3Hyw2J@OS3vqZfk^c;PmhZvDPe>iS)+`s=!#AJLaYasRV7pcdk)6{FUy8r+H
M07*qoM6N<$g5FnLtN;K2

literal 0
HcmV?d00001

diff --git a/sdrgui/resources/aircraft_2enginesmall.png b/sdrgui/resources/aircraft_2enginesmall.png
new file mode 100644
index 0000000000000000000000000000000000000000..77712261c0f566558a9b3f38d7eff66d6d34fce2
GIT binary patch
literal 657
zcmV;C0&e|@P)<h;3K|Lk000e1NJLTq001Ze001cn1^@s6N1|)U00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY4c7nw4c7reD4Tcy000McNliru<O&WF4Gc)s+1>yE0v<_3
zK~z}7?by3(R8bJX;m-$ZL`f9F22l~w!U&3}AShbIPEf3DtPEKA7l<H;Hg<N3*w|)m
zL<<EGANXj*E~XI_UorUFM0^q0weSQkmveVF`|_eYFf4b@%(=fkXJ^iw<v)@IxQjdJ
z$s^zyRDxd48{B&QN&r?clqbM*DYy!*<q7av1n?{7<puCZ1h9favlGv45#XX(+B*)|
zHt7O(0lR=TWPY7~o6(Q&c+})OcZd2|!mU<yDbtDKI~eRsaTHH7igX1paS|&+OfSlb
z@wKf0T%3C8FfL-M3RqgFaTSMC_6_X-Y^Bx&taX@g!U=3|Qx2@c$M93A)Em@;BY51#
zl}qb$91n?DRkq?)2f@->!htNfg$=?@;Ag~M##jUMeZxQuaH!4+#xa6piIOuK@tX`|
z12}~98GbPxjuq;GjFlb7y@ZZMe5N9{FX8ij_(CJ$xqv+h9mJeeY#|0X<1~T$c!&ph
zT1SS(06%5;PM{c6NQ@oWiM`ko0R}6>?W_?gMz-m8gLCy`O>70<G*QoHvx2qcL(rCX
zGm{b9=RCDr)smzO_)l!{vWTrW4;^`5=ncymCqfa+{}$XnysqQedWZd;1X~i0t=TjH
zWn2o^hqlXwCfcdfok)^x5!(ygOgvx5+d5-gE;F~dQJlrDaJcvR^Dk>Dv6UNfDiL#|
r6MzS?I%Dig==)-_E+kf0Ix4>bwBa|-9o;Gg00000NkvXXu0mjf`o$aC

literal 0
HcmV?d00001

diff --git a/sdrgui/resources/aircraft_4engine.png b/sdrgui/resources/aircraft_4engine.png
new file mode 100644
index 0000000000000000000000000000000000000000..0c6ac5f9474bddabd6fc3d79d2a45e84d3bfea4b
GIT binary patch
literal 772
zcmV+f1N;1mP)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY4c7nw4c7reD4Tcy000McNliru<O&WB7Y&-iNrwOc0+C5X
zK~!ko?U~DK6hRQie;Z>~gU|Sg1fL|tNI=Dlm;3?Z3rSQwdDQ4Fmw;Cfo&q6wlH6iI
zFa!|=y%{72kBUeh;43Hugxv%&4=@=I)<V<l^vw3`%ubUjD5iJ1>G{5{?&_*q$i!E6
z0^`6CQ0F3n$ABl==NkCS3V07#0@_>wzZv+V5%7R#t`O)h1KtDHfMeDESR9AzqTyTT
zT_AAE(0AGe0!@a#JuVQ~WZ9P*0*OjSAR~|w$OyPe;3V(~_zX-)09UEB0$+gw@Etgj
zB=MVCpw_GqEBFL+9`FI^kg?~qzHS>J^#T3Yfiu#62}~LY^#Er>SZ)e<3w#U+2ro%{
z0(fG((sRlRJvUgO8me00jq-jfiUsPlb{@C_+>K#d-UGG)V?a)MpNlf-4`n6hfnPDK
zysky<98KF=Ag_6s=7b!?F75Xgpi%PbP;w9$NNBYyvC2c>Xb||Tz@HQW*L4}V;Rn7A
zShbvZO)3$u<#O^H_f1@J6zi_4B^vb%^a2e57Wxg$h)&CMR-P*|X2f9XSHK-5^=y}m
ztzFZ+0Yd|D3+UGgl&<o1@&7u|8Q^D#Gqe!0uK>Ig)m`@yA#z-_MC_2b)y{I0cS%KI
zYeX+{-(dd!h;uheWuvRy7MiS*8!TG(g^?xTeca*nLW~3w$p?y-<WfT*v%rS3Kpe8e
z$AzvFLuoM%$pL@M5Lk4jD&YsV=n8=zpWD0%xRB<pvtI(aplI?bus3bsuT>Z#&r9x6
zb2-5OKeKIP`xih<t-!a+N=D7H=77VsATU(LRPli=i24WwN?F&UWM#9G{FK_gz-<{b
z2#hL;iJFCNmjotp=?Eyb>;r~@N5F2wxE3L@G36g+AbQzffM1*d0000<MNUMnLSTYT
C(@}i@

literal 0
HcmV?d00001

diff --git a/sdrgui/resources/aircraft_drone.png b/sdrgui/resources/aircraft_drone.png
new file mode 100644
index 0000000000000000000000000000000000000000..e5a9b2c418f71a49624e7b7432b0cc568ad1734c
GIT binary patch
literal 1362
zcmV-Y1+DstP)<h;3K|Lk000e1NJLTq001li001fo1^@s6$lbXd00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY4c7nw4c7reD4Tcy000McNliru<O&WC4iD}Q>x2LR1m8(S
zK~z}7?U;LLmQ@_bKiizwP!TJsw9L7*T2f(Dv_f%`q&0<#Y5tMJOBc;Q3bTue6lOu2
zblFlgSMfF#N^O<5jA~BIa;EdTjM<37iWGuI<zD~!9{6>5-uF50yJSN9!Nc=D=lss^
zeBbl@p6~AhUD750lAHjYV&E>I05}6Q0~>)o9o)MZxEm-Gj_-gvU`MtFhX9`g$rRVe
zz@RMbUMf(j?A8NAGc`I4_*n*i0A2u&1Ji)Tz)xmwa0YgV0zYc)319)R6j%o=(kUl_
zUv%<8k_UXNg&TnW8gB-M>vun3n>mpX*UANUYt1I0kH+T!Z|HXqpjJBjg(X&|ng!i8
zHW6q6MjO2WK&y0b53oB{y3If@GkzcN1u#L+y?}$#of-o8eJRh<^GxGkPk6ddYP>4I
z?h5HX?u{=p_NRM$uJ?^}i!eMw_bY&BfN^GS8E}hEp&#&%@%cEpQun^VTwow@88E}>
zJPSMwwCj0f2w*psluvyCoC5BVuTIumSO{DQYz2A;0PbU`bP!PHu|X~Hj`r%UZzRZv
zw+ie;?@!d5SJw{A(@AdwRtDHzDJtwK*RoW0zynvR@wyPe^Q64R8?OR>^FYrR=<5UQ
zUZ*#<zytfGJ~A83KGWPoA%HJ1Jo}s(U!s$#^)`Gekk)d<;dX5eaEbWbQR>T@YxUS9
zt&9QwG7)WxHk%=%32)<1fUDEkD+0EAYu3ot<v^n-tU+^az-^gEyApHK_Ignpt@Fm)
z70Q<Y59-f7FW+zXbl;VY$_V?dz#ZA<6Mcbl`EwI+RNPpgul{J7oFLV8K(BhZfFA<B
z78^Za*yNnZqzFL!feK)`iCFd;*V*Z5ivhD#ueu1h2FUkb`;qe@r(P{E4H3Tmwm7^|
z&#!fKv)umxaEtDBz^%Z&W^TGT`Xf)bQvsjR{cpK|FZr6o<OrP#c!=)fl_uH}XR~tP
z@p>M7KKQVuw)yhe66L>niiB>yv9rOBiJ+|=$`=;u#Qpi3&n2K9N+%PFSi6B$z*X|i
zZ?Xs+4SEZOVvU_9<GV9O${Qp%nW8W%2Y5YV?ufFwr<MG_sglUos}Qi-h`A<URHk5W
z1pY97H&drsB(N3UCVOJye~Bq<ZBEineqW`u*6ExEuFb>^zSqKPQ;0U}EB6zYS5weg
zl-(8H+GW5az)Pl3Sf#ncq3%(x1-m@j+iOaDyJ22TYU!j<y30Kq#}qAXb>qH`X(50&
zNcny*XZR|`D@}MCrVHV3rEsZFJ>6LvUmH?{x(fKD%9{R4`$l`=__Rv)GNp%cG77js
zE>tbsV@=PZT8DCxdLEd@O<KS%e7>Tvd$G!KCmY2ct^)+{X8_<f-78fUx2c{h*7$5?
zc=ak&UF9At>!mnH&yRU@WaUv)o5e}Ovx_+xXMeT<p9J2^q*ZlLl|ily>@=Mj#2!u3
zoe*HR)bMOiuiiT;>detw-z(j+&}N_mk}$MZDb92h<xXs0ApLX~Rk=Jl-y}pQOkb_W
z{IR@HE*@ce5QkOX*QlbHtB95ael@Kv0zbS{rj#mI>+84z$05!A9@VCblY$5;v)3-u
zFUv$mMnpY(?MrtEaSf0hB_xyd2a;llO{S%lZ602#c9^5CW59>9-Qh&POa3=<7HZhd
UQJK0ip8x;=07*qoM6N<$g5RQsQUCw|

literal 0
HcmV?d00001

diff --git a/sdrgui/resources/aircraft_fighter.png b/sdrgui/resources/aircraft_fighter.png
new file mode 100644
index 0000000000000000000000000000000000000000..d217c5654d48eba0586da9f60bddd5b27e441057
GIT binary patch
literal 647
zcmV;20(kw2P)<h;3K|Lk000e1NJLTq001xm001or1^@s6=t}6q00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY4c7nw4c7reD4Tcy000McNliru<O&WBEDKK)1Bw6u0u)I^
zK~!ko?b*9)6j2lg@L$%D6e|JA(?==35EMkPP%MIt53B?m1xe%IU~O%worR@VqK#22
zK`mlL@ITNf8Y2qgE6J{fcVHNHVP<z`cLwHz4-R)PyWcl^=bm%!rACb!mByBWzyAsj
z;Z0Q^&~rSks`zpI#!rk@(ZFG}1NRp7BaH$L?25%Zs%RiCdV3WO#6{0l(ZED3ZdTF2
zc$c^~P#Z{z_`2U(mE?66OW2Ghv4|UZiBn}2e-!H-geUn22g|sGu3|LByfG}4(ZGQW
zbN83gz*IqV2V!6ZGa2U3mF)#Smg41&vxR+S5#Pk?j0W0xR%C)pi`gKg-6J1ia#-R|
z<5M5vBfiJ{AcgP2-LQ_^Ir0H^7b*M*?%;3E!joD0cIc;b+h)(<ae<<{aS4}GX7`TW
z)D3(bg773i1T7O;3@nsDc#@a0Wa0}Ytai_LD*-xT8>U0eG8tnu79Wq|tYt|HU$7P!
z#j7Dse)bvPi+n;;xRqil+|09>%M&M4HZ<!vQ8w{2Sjm`ur^_O~fyEwnl_!e7pGbx4
zeQb@_hAn<RoHq1oU}MmQToTE;XfxIuv=R+W8_OMzTvjr6bGhPILd+s|;uRjo#_!`^
zNRY|*WlbL!AftU6I3AjsX6Oyx;%oR9-r-D`w;b5O#c(b(iywG_Z~ZjmMYWlY*jBmf
h|9#m=Savlc`~$v6bp0hm50C%=002ovPDHLkV1j=q89D#}

literal 0
HcmV?d00001

diff --git a/sdrgui/resources/aircraft_helicopter.png b/sdrgui/resources/aircraft_helicopter.png
new file mode 100644
index 0000000000000000000000000000000000000000..62d4f7629d3be08479f203c109eac88d0e76847e
GIT binary patch
literal 779
zcmV+m1N8ifP)<h;3K|Lk000e1NJLTq001xm001ut1^@s6rGiPx00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY4c7nw4c7reD4Tcy000McNliru<O&WB87JTRt=|9u0+>le
zK~!ko?U~I>RY4esAA%^m)h$p+BwDnJj6#rFSblUh`jBc-&^l<-qCcQz6b2%+YS%&t
zB7z{7qL~(1*-DEb+O#gHyjRPx)57<_FnQ+A9M3&7rZ3FqoO#drJ?CTQ{msC7td2Mc
zY)p~2A1DF49rNmd=B&hD1R`JzC|Kqk0;VJ{0{#GxfO?DE9l&eJJDCMQGf<WbKC^&0
ztn}C0dl6_7|3><jfqhxMg?0^MYeK&w@Hs(z+#XnpZ_oNa=m08JAZ}F=AAe3q4B{(t
zubM=s0iq80W&scZ_YLB^YCR%#B|x0F6dwU|0<4Ok1CHl4tR7STiRZvJ;I0Ee1e^n2
zDdJ0c&kfyj;|LfBrX2x(D&o6+O>inin)VAg?R%E)0p?SRKNCu+aW)0OL>4#RkP*OG
zikyXz0Ls9kW6qC|02ZZ$aEVVL0RYT6_WuwXz*EQmqoJ9ez49s9j6gF48bg)<S3(rO
z6L@PO{<ozw%Qe)h(x#0YOpzDyv4@=pP6784O6VKFY)BAAtt9SI&P{0mx0kV}ULlIW
zq@g69)BtWO=h~Dv5&MZ;V>|G&iWxBhc!f~KR}4<78UVmi1>!{>5C!qUv3Qe*wE>7B
z%6UK(q-?fbJ+KAPJ$6kXT*bQr==L;Ih%MrtTvyCo0d#vhAxkeSj>~evS$Wme5CGtW
z0&yt|fCgXyXm!j>3lRU<{W8~hi<JO)F*IIc9pHZjXaX9wV+VlEtKp$s0KO&|nRh8h
zv)p1A@YvE)_5qth5PeN~>R)hM8=VGPd;_!sPnHok!qWC^NoiMskNmqrecdNOuOemv
zc*xQ=t7*{a1%|aeuK?eHJGk%0w*Z4ufqIL2?04^zVh?LM{sNs3hPcoxDzpFq002ov
JPDHLkV1fkCNU;C_

literal 0
HcmV?d00001

diff --git a/sdrgui/resources/aircraft_light.png b/sdrgui/resources/aircraft_light.png
new file mode 100644
index 0000000000000000000000000000000000000000..826620e7064fdb88bab44a40156759d178a3ce35
GIT binary patch
literal 541
zcmV+&0^<FNP)<h;3K|Lk000e1NJLTq001xm001Wl1^@s6Nzu!s00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY4c7nw4c7reD4Tcy000McNliru<O&WC3l{ehw*deE0jfzv
zK~z}7?byv~6hRaP;BS%{qETY9k_?K9j%KU46Bj;!K7hoR(tW@eaO={Ax>9hfkcecW
zxbP>&jSg{iksBz&Oe;+HOqcY5Lv>xK?sK}T?(J$CG-yyIR)g8%J|5&M{x&}0Gw$Rj
zegy;k4h|w#I_4@eu!c_3@8C*K2G0FsthNTuM!SX091R@DL-cSN8xboV?J@D?*mUFC
zm4dNwE#CNxWJdbv7L3`)*WhkJI~MEsf?<+9>c(McTpu+9-KtVuiD-q!Zq<8WYWS}V
z3^UUGD_v8ESi%il3|<Oez`~4#{>0m)o@@o5WACVeqFFkVm^w7L{Fg%3!;|RW3IW>%
zV|GUf-I>+OxQp*$atYsXZ<>W{QuJ{W?<0Soh*(wzU@?hp=ak(#ktxy&x*#)rNDO?;
zv5@u0TsH=$Wnib7ff=93+DFoLB`300N%y&l>$n<R8&PBS@fxp!FY&Yv>2h^~6V~ZE
zETOqsK0o^d&3sAU?DG!(gTkrgzI*tAW6>Yr4W8i<9#8tY+^XQEv~k|Suf)w*>%9>E
fE;e(626e$7{M?X+k}%J300000NkvXXu0mjfpjY*<

literal 0
HcmV?d00001

diff --git a/sdrgui/resources/aircraft_space.png b/sdrgui/resources/aircraft_space.png
new file mode 100644
index 0000000000000000000000000000000000000000..d441f75961fabcaa7afe3a1fe49e040d39cc884a
GIT binary patch
literal 735
zcmV<50wDc~P)<h;3K|Lk000e1NJLTq001rk001Hg1^@s6Abaaf00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY4c7nw4c7reD4Tcy000McNliru<O&WC2@ottaJB#d0&Gb{
zK~z}7?bqFlPk9^%@E2pO%q(U-X2sZcE#u)ryCSqjdDv`bv*ku@tNa1$ZZEkR+$fT`
zvlO*95-G*DHEJTI5IZ4{o0ef&>tS4Q^PW0sTIOfQtekh9I(>fUe7>KD_vigNKT4D+
zQKH1Vj6OZ!b28>*9BT0wF5+<Ry9Ir_u>jxUEOuiIF5!2y;VYcReoXzpbnQd@ie}7?
zZ3WI@N8!1CScz-+vA2V+#R;rK)l12Y#Rr|dGcujn(3^qp!+I?1BJDa7{-HO5Zp`70
zIA6iM)Z;pazwN+Jh11RWx<VgKSo1c6o*V_K!eb1m(9b84$}Xc{g$K^UZ+MQ?c!KJ1
zw+8(&Br@5Ke{;3tUct}hP;3-#_4EQ7hE3t-pW$jf>Tnl#^4udlO)}NFhDC91;tH-}
zK?ZzB3ec^AkH#u|i;vKPllTLz(dI{8NPZ~B<Fn9iW){;K?82U|B+(iAV{<CB7Snog
zZmLuLpVP?|Z{loAvacz0=l~uT99M_$_pvm#fsx8K%!{oq1APlK3Z1-&8)zt;I{_E|
zORZj|y<cKm2CL)nx%dgoV;hT4vptu^)(~!Qi_XIrN%$8miEVZU^cWTv&TYk^yi*Yt
zWq`g<WrZ>=m{aJ&MjXfV*s8ESt9?>|b~|x2UydCcbZ@>KN5(ch!+I_qsTfn@{3f>I
zn;zJ96SDsIg-T74({7Q&kJIACX<>U>+M2H1juieK8GIIM)D@~b1S3-2@d^0ze5beI
zAdb9_LcPf!iBXuC0O~O~!41lNO*ZO3nURMX;0MwB%el_yw-O~vlqm5Y;ROu)gJ$vo
RZ@>Tm002ovPDHLkV1fe*R)+up

literal 0
HcmV?d00001

diff --git a/sdrgui/resources/map.qml b/sdrgui/resources/map.qml
new file mode 100644
index 000000000..096fcb337
--- /dev/null
+++ b/sdrgui/resources/map.qml
@@ -0,0 +1,85 @@
+import QtQuick 2.4
+import QtQuick.Window 2.4
+import QtLocation 5.6
+import QtPositioning 5.6
+
+Item {
+    id: qmlMap
+    property int aircraftZoomLevel: 11
+
+    Plugin {
+        id: mapPlugin
+        name: "osm"
+    }
+
+    Map {
+        id: map
+        objectName: "map"
+        anchors.fill: parent
+        plugin: mapPlugin
+        center: QtPositioning.coordinate(51.5, 0.125) // London
+        zoomLevel: 10
+
+        MapStation {
+            id: station
+            objectName: "station"
+            stationName: "Home"
+            coordinate:  QtPositioning.coordinate(51.5, 0.125)
+        }
+
+        MapItemView{
+            model: aircraftModel
+            delegate: aircraftComponent
+        }
+
+        onZoomLevelChanged: {
+            if (zoomLevel > 11) {
+                station.zoomLevel = zoomLevel
+                aircraftZoomLevel = zoomLevel
+            } else {
+                station.zoomLevel = 11
+                aircraftZoomLevel = 11
+            }
+        }
+
+    }
+
+    Component {
+        id: aircraftComponent
+        MapQuickItem {
+            id: aircraft
+            anchorPoint.x: image.width/2
+            anchorPoint.y: image.height/2
+            coordinate: position
+            zoomLevel: aircraftZoomLevel
+
+            sourceItem: Grid {
+                columns: 1
+                Grid {
+                    horizontalItemAlignment: Grid.AlignHCenter
+                    Image {
+                        id: image
+                        rotation: heading
+                        source: aircraftImage
+                    }
+                    Rectangle {
+                        id: bubble
+                        color: bubbleColour
+                        border.width: 1
+                        width: text.width * 1.1
+                        height: text.height * 1.1
+                        radius: 5
+                        Text {
+                            id: text
+                            anchors.centerIn: parent
+                            text: adsbData
+                        }
+                    }
+                }
+            }
+
+
+        }
+    }
+
+}
diff --git a/sdrgui/resources/map_antenna.png b/sdrgui/resources/map_antenna.png
new file mode 100644
index 0000000000000000000000000000000000000000..f13c9188161f77915ca18139b8b4884b60be5511
GIT binary patch
literal 1328
zcmV-01<(44P)<h;3K|Lk000e1NJLTq001xm001!v1^@s6oL(v-00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY4c7nw4c7reD4Tcy000McNliru<O&WBG68#s)k^>X1ieW_
zK~!ko?V3$&RYerXe|=O+MLxy0kf^jOh7A@gARp=mn;4U#prS+*AYnlwYzWar(UtO<
zE=&w53tb2ZA`QV60n|j$HjO5N8WSis0;N!dmMS3Hj*I>$oKEh0l=j}|CE+AD@8&-<
zXXebD&$$n7aVm(JUolV(Oa&$Y<AJL{D{vY(2>bxJv~9#RU^noW7MJV!9oPtrOT!7=
ztHr!zc%1|G0lxufgpCI(bUG!%I)U}TCg7j{W7lT^ZDwcp0&{>&jxj@kCx9=^xG#Y*
z`Cj}2>9zxoYf(2#PXW#1@hfnDz83$e(e-bPN`$Iep%a;-_b7F}TZZj`pMjA{FTO<H
z!~utZqM*GDs0B`DG2U9BG#FC^99Eyt6Yz|E=tE7^60!43fiAP)BeILVz)^#D0gHpN
zr4rBq^OIWqB;cARnHRLZEBs$zGcYk?d^u33J`PwDVOI|LNyZ*KePC3_(jv37&-8=O
zv%sG~53n$>n{UNyK@t($AF-Wur2KwQ#HmaLR_dt?+Md^#v%rXm&G;k<&*Ol<fl&ru
zEqrH?PJ9|+#M^*jrr$2%s|+?;YT6#R8oioDeZCVu%V1lCwF4Uzsm}}BZ2HX>b~xba
z)#$-E1$aYDw;L>@-Rd;aw+!eOR&M%M0GDLIrDlAmPSv{39h$3O!7<ZM0q)Uno598b
zcL1lP&q&uZz<%XIo=ylGBHKV?P6I=O#IDtBMr;CHGC{}FRsCAM?lciLD(V7s7;IR;
z%VJmJRH0=$*7^YVDlptk-lpAM90WP1?9^|<T^f5a;JHVAAB$6fr%k?Msb2Vt275&U
zI3;T*^d9>Cg(iKl^o#JaI0YzH@Cm)cd|^KZZm-689;f#j(_U!Oi{}jffQiPjQ+<Tr
zE&!T@ZwmUi7y(*>wp!thfd}$&WkV7I%oFogqw@d{OOLx1h<pX+fMco`oN8p0CpnFo
zWcUo1jr2rB?%3#%CVx93QZEfs1qW<Z1h%S@0bU2H0v>DBZ&%V~WVZs?lR5gW(_&UA
z7jnSb8&qf4^h{2=sCiQhItSdBrO(&uGYy!o_ph?_ogiKgSe~!4@*_>SBunAmr9d=P
z(fYEySYbr}m&L0tpGAEJn2{x8tc*y~e1i5!7G6~Y%|0^&6re{gusfpdas4(JtRZL%
zd3~RSS7HL>q8a*aG+1NM7ON^GC4f!FF6TIbRMBXuf>WYb1xx`hn0#nVngyuVLVezJ
zR*%K1)2u>Xeco5~R-$LSu-NS&ZUJWM_n6WPPt#3>mRdU~Fe$W8;P&aU*!iTd4+nE|
zXRlEjRCV1+?<KHpdnk<pyhh)9(Xpm&6xTm3IbGAF&IYV;Zk6k_weyaMXq_r*3e==d
z1$>d-ZCg{?7GG>GxoS+{YBGXdP+N!k7N<!7e@(dG6z9!m$D4(rK2Bp&V*@iy)>#0&
zK;Lg(<+@wS(0iYnIy>+;&5P*$UhI_2Et7Zh-_#DO2y(z@X%fJHJNUx{t;(RtIc{zv
z{5P{$qUS(q1Ta@V{$qo;18>py4%BC=?{WR27@bB3a6rjkUg;ff{I`PsKI;d%h{8b#
muuZOTuz8KsCBbdFCFwsJE06r64B5H>0000<MNUMnLSTZ5SY7u3

literal 0
HcmV?d00001

diff --git a/sdrgui/resources/map_truck.png b/sdrgui/resources/map_truck.png
new file mode 100644
index 0000000000000000000000000000000000000000..cd0a2e91a0f8b403175e6e76d5ef97510533e779
GIT binary patch
literal 619
zcmV-x0+juUP)<h;3K|Lk000e1NJLTq001xm001Ef1^@s6pNJ^A00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY4c7nw4c7reD4Tcy000McNliru<O&WC1216CwE+MC0r*Ko
zK~z}7?buC-PGJ-W@ZXHrBnuytl#kRPMU)ImDMd<+d}bpH5@9h-v9MqxL|L#_QWiGK
z#>!XuEIU&&5*ky4e2v76udz9c+wC>C*L!=tZ|=Wt_j#Uk&vVcJo^zh_JeL9m3KaO4
zXsS|w5w_RR-YyK}IpJmu)$kgVHlVrDL#UJ?pBrH^vW)C)y%X4mQ+S*hYeie4zoT9~
z(~5UkmKq<Oipibznga)L3pY~ZUm76?+OP{t8X<|xdEglCp}UN1Y`uG69yUe1J&Su1
z<LaHjs;JIQsnw=oLTGBE7qSr*>OaJx8rnOUMc{LV6HY=$4GA32BG8SiiT-O`zza-|
z%DW;VACLCGH0Cmn;z1Os^*ETZP-O0&Cxk)mn25zu%s$~hHsVMQmH0Gf;SxUL5%ypX
zJ`AHbDvLlzJUEEu5mMi97yThyi=HY7yu#%0>QHQ1zDK(gdxz0&$s#ZfKXC;oLTOFN
zX2xOSIu2Js;0$&r+Rd@+9Y8N;45M4h%7MPvz<tHO7`qeqC-L>B;3O_aj;yRO_It54
z+Sl+a^59J@3Vm4k2i+f)yr?r+pT%tKPxPzB>X@qs>k{6+ndg$#g4-z<J`WG%f%B=k
z-(!B>hx!t>U;&=S*YD5qhr$LdjnF)Ym&JdU0tNmv{08j>+{~uD{;vQ4002ovPDHLk
FV1gZ(6Y~H7

literal 0
HcmV?d00001

diff --git a/sdrgui/resources/res.qrc b/sdrgui/resources/res.qrc
index d9c770161..8480b58bf 100644
--- a/sdrgui/resources/res.qrc
+++ b/sdrgui/resources/res.qrc
@@ -1,5 +1,16 @@
 <RCC>
   <qresource prefix="/">
+    <file>map.qml</file>
+    <file>MapStation.qml</file>
+    <file>aircraft_2engine.png</file>
+    <file>aircraft_2enginesmall.png</file>
+    <file>aircraft_4engine.png</file>
+    <file>aircraft_helicopter.png</file>
+    <file>aircraft_light.png</file>
+    <file>aircraft_space.png</file>
+    <file>aircraft_drone.png</file>
+    <file>map_antenna.png</file>
+    <file>map_truck.png</file>
     <file>star.png</file>
     <file>swap.png</file>
     <file>gridpolar.png</file>
diff --git a/swagger/sdrangel/api/swagger/include/ADSBDemod.yaml b/swagger/sdrangel/api/swagger/include/ADSBDemod.yaml
new file mode 100644
index 000000000..4476535cd
--- /dev/null
+++ b/swagger/sdrangel/api/swagger/include/ADSBDemod.yaml
@@ -0,0 +1,58 @@
+ADSBDemodSettings:
+  description: ADSBDemod
+  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
+    correlationThreshold:
+      type: number
+      format: float
+    samplesPerBit:
+      type: integer
+    removeTimeout:
+      type: integer
+    beastEnabled:
+      type: integer
+    beastHost:
+      type: string
+    beastPort:
+      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
+
+ADSBDemodReport:
+  description: ADSBDemod
+  properties:
+    channelPowerDB:
+      description: power received in channel (dB)
+      type: number
+      format: float
+    channelSampleRate:
+      type: integer
+    targetAzimuth:
+      type: number
+      format: float
+    targetElevation:
+      type: number
+      format: float
diff --git a/swagger/sdrangel/api/swagger/include/ChannelReport.yaml b/swagger/sdrangel/api/swagger/include/ChannelReport.yaml
index 21e76944b..9c658daac 100644
--- a/swagger/sdrangel/api/swagger/include/ChannelReport.yaml
+++ b/swagger/sdrangel/api/swagger/include/ChannelReport.yaml
@@ -11,6 +11,8 @@ ChannelReport:
     direction:
       description: 0 for Rx only, 1 for Tx only or 2 for any number and direction (default 0)
       type: integer
+    ADSBDemodReport:
+      $ref: "http://swgserver:8081/api/swagger/include/ADSBDemod.yaml#/ADSBDemodReport"
     AMDemodReport:
       $ref: "http://swgserver:8081/api/swagger/include/AMDemod.yaml#/AMDemodReport"
     AMModReport:
diff --git a/swagger/sdrangel/api/swagger/include/ChannelSettings.yaml b/swagger/sdrangel/api/swagger/include/ChannelSettings.yaml
index e92e02d8f..c89eace66 100644
--- a/swagger/sdrangel/api/swagger/include/ChannelSettings.yaml
+++ b/swagger/sdrangel/api/swagger/include/ChannelSettings.yaml
@@ -17,6 +17,8 @@ ChannelSettings:
     originatorChannelIndex:
       description: Optional for reverse API. This is the channel index from where the message comes from.
       type: integer
+    ADSBDemodSettings:
+      $ref: "http://swgserver:8081/api/swagger/include/ADSBDemod.yaml#/ADSBDemodSettings"
     AMDemodSettings:
       $ref: "http://swgserver:8081/api/swagger/include/AMDemod.yaml#/AMDemodSettings"
     AMModSettings:
diff --git a/swagger/sdrangel/api/swagger/include/FeatureSettings.yaml b/swagger/sdrangel/api/swagger/include/FeatureSettings.yaml
index d673f7e0d..621cbfada 100644
--- a/swagger/sdrangel/api/swagger/include/FeatureSettings.yaml
+++ b/swagger/sdrangel/api/swagger/include/FeatureSettings.yaml
@@ -13,6 +13,8 @@ FeatureSettings:
     originatorFeatureIndex:
       description: Optional for reverse API. This is the feature index from where the message comes from.
       type: integer
+    GS232ControllerSettings:
+      $ref: "http://swgserver:8081/api/swagger/include/GS232Controller.yaml#/GS232ControllerSettings"
     SimplePTTSettings:
       $ref: "http://swgserver:8081/api/swagger/include/SimplePTT.yaml#/SimplePTTSettings"
     RigCtlServerSettings:
diff --git a/swagger/sdrangel/api/swagger/include/GS232Controller.yaml b/swagger/sdrangel/api/swagger/include/GS232Controller.yaml
new file mode 100644
index 000000000..7c8b2ed12
--- /dev/null
+++ b/swagger/sdrangel/api/swagger/include/GS232Controller.yaml
@@ -0,0 +1,36 @@
+GS232ControllerSettings:
+  description: "GS-232 Controller settings"
+  properties:
+    azimuth:
+      description: Target azimuth in degrees (0-450)
+      type: integer
+    elevation:
+      description: Target elevation in degrees (0-180)
+      type: integer
+    serialPort:
+      description: The serial port the GS-232 controller is connected to
+      type: string
+    baudRate:
+      description: The baud rate to use for the serial connection to the GS-232 controller
+      type: integer
+    track:
+      type: integer
+    title:
+      type: string
+    rgbColor:
+      type: integer
+    deviceIndex:
+      type: integer
+    channelIndex:
+      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 2dd81cdeb..abbdba250 100644
--- a/swagger/sdrangel/code/html2/index.html
+++ b/swagger/sdrangel/code/html2/index.html
@@ -696,6 +696,87 @@ margin-bottom: 20px;
   <script>
     // Script section to load models into a JS Var
     var defs = {}
+            defs.ADSBDemodReport = {
+  "properties" : {
+    "channelPowerDB" : {
+      "type" : "number",
+      "format" : "float",
+      "description" : "power received in channel (dB)"
+    },
+    "channelSampleRate" : {
+      "type" : "integer"
+    },
+    "targetAzimuth" : {
+      "type" : "number",
+      "format" : "float"
+    },
+    "targetElevation" : {
+      "type" : "number",
+      "format" : "float"
+    }
+  },
+  "description" : "ADSBDemod"
+};
+            defs.ADSBDemodSettings = {
+  "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"
+    },
+    "correlationThreshold" : {
+      "type" : "number",
+      "format" : "float"
+    },
+    "samplesPerBit" : {
+      "type" : "integer"
+    },
+    "removeTimeout" : {
+      "type" : "integer"
+    },
+    "beastEnabled" : {
+      "type" : "integer"
+    },
+    "beastHost" : {
+      "type" : "string"
+    },
+    "beastPort" : {
+      "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" : "ADSBDemod"
+};
             defs.AMBEDevice = {
   "properties" : {
     "deviceRef" : {
@@ -2163,6 +2244,9 @@ margin-bottom: 20px;
       "type" : "integer",
       "description" : "0 for Rx only, 1 for Tx only or 2 for any number and direction (default 0)"
     },
+    "ADSBDemodReport" : {
+      "$ref" : "#/definitions/ADSBDemodReport"
+    },
     "AMDemodReport" : {
       "$ref" : "#/definitions/AMDemodReport"
     },
@@ -2249,6 +2333,9 @@ margin-bottom: 20px;
       "type" : "integer",
       "description" : "Optional for reverse API. This is the channel index from where the message comes from."
     },
+    "ADSBDemodSettings" : {
+      "$ref" : "#/definitions/ADSBDemodSettings"
+    },
     "AMDemodSettings" : {
       "$ref" : "#/definitions/AMDemodSettings"
     },
@@ -3300,6 +3387,9 @@ margin-bottom: 20px;
       "type" : "integer",
       "description" : "Optional for reverse API. This is the feature index from where the message comes from."
     },
+    "GS232ControllerSettings" : {
+      "$ref" : "#/definitions/GS232ControllerSettings"
+    },
     "SimplePTTSettings" : {
       "$ref" : "#/definitions/SimplePTTSettings"
     },
@@ -4001,6 +4091,58 @@ margin-bottom: 20px;
     }
   },
   "description" : "GLSpectrumGUI settings"
+};
+            defs.GS232ControllerSettings = {
+  "properties" : {
+    "azimuth" : {
+      "type" : "integer",
+      "description" : "Target azimuth in degrees (0-450)"
+    },
+    "elevation" : {
+      "type" : "integer",
+      "description" : "Target elevation in degrees (0-180)"
+    },
+    "serialPort" : {
+      "type" : "string",
+      "description" : "The serial port the GS-232 controller is connected to"
+    },
+    "baudRate" : {
+      "type" : "integer",
+      "description" : "The baud rate to use for the serial connection to the GS-232 controller"
+    },
+    "track" : {
+      "type" : "integer"
+    },
+    "title" : {
+      "type" : "string"
+    },
+    "rgbColor" : {
+      "type" : "integer"
+    },
+    "deviceIndex" : {
+      "type" : "integer"
+    },
+    "channelIndex" : {
+      "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" : "GS-232 Controller settings"
 };
             defs.Gain = {
   "properties" : {
@@ -39969,7 +40111,7 @@ except ApiException as e:
           </div>
           <div id="generator">
             <div class="content">
-              Generated 2020-10-11T08:49:12.690+02:00
+              Generated 2020-10-27T16:45:08.746+01:00
             </div>
           </div>
       </div>
diff --git a/swagger/sdrangel/code/qt5/client/SWGADSBDemodReport.cpp b/swagger/sdrangel/code/qt5/client/SWGADSBDemodReport.cpp
new file mode 100644
index 000000000..92bece173
--- /dev/null
+++ b/swagger/sdrangel/code/qt5/client/SWGADSBDemodReport.cpp
@@ -0,0 +1,177 @@
+/**
+ * SDRangel
+ * This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1, USRP and FunCube    ---   Limitations and specifcities:    * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method.   * Preset import and export from/to file is a server only feature.   * Device set focus is a GUI only feature.   * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator   * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time   * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time    --- 
+ *
+ * OpenAPI spec version: 4.15.0
+ * Contact: f4exb06@gmail.com
+ *
+ * NOTE: This class is auto generated by the swagger code generator program.
+ * https://github.com/swagger-api/swagger-codegen.git
+ * Do not edit the class manually.
+ */
+
+
+#include "SWGADSBDemodReport.h"
+
+#include "SWGHelpers.h"
+
+#include <QJsonDocument>
+#include <QJsonArray>
+#include <QObject>
+#include <QDebug>
+
+namespace SWGSDRangel {
+
+SWGADSBDemodReport::SWGADSBDemodReport(QString* json) {
+    init();
+    this->fromJson(*json);
+}
+
+SWGADSBDemodReport::SWGADSBDemodReport() {
+    channel_power_db = 0.0f;
+    m_channel_power_db_isSet = false;
+    channel_sample_rate = 0;
+    m_channel_sample_rate_isSet = false;
+    target_azimuth = 0.0f;
+    m_target_azimuth_isSet = false;
+    target_elevation = 0.0f;
+    m_target_elevation_isSet = false;
+}
+
+SWGADSBDemodReport::~SWGADSBDemodReport() {
+    this->cleanup();
+}
+
+void
+SWGADSBDemodReport::init() {
+    channel_power_db = 0.0f;
+    m_channel_power_db_isSet = false;
+    channel_sample_rate = 0;
+    m_channel_sample_rate_isSet = false;
+    target_azimuth = 0.0f;
+    m_target_azimuth_isSet = false;
+    target_elevation = 0.0f;
+    m_target_elevation_isSet = false;
+}
+
+void
+SWGADSBDemodReport::cleanup() {
+
+
+
+
+}
+
+SWGADSBDemodReport*
+SWGADSBDemodReport::fromJson(QString &json) {
+    QByteArray array (json.toStdString().c_str());
+    QJsonDocument doc = QJsonDocument::fromJson(array);
+    QJsonObject jsonObject = doc.object();
+    this->fromJsonObject(jsonObject);
+    return this;
+}
+
+void
+SWGADSBDemodReport::fromJsonObject(QJsonObject &pJson) {
+    ::SWGSDRangel::setValue(&channel_power_db, pJson["channelPowerDB"], "float", "");
+    
+    ::SWGSDRangel::setValue(&channel_sample_rate, pJson["channelSampleRate"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&target_azimuth, pJson["targetAzimuth"], "float", "");
+    
+    ::SWGSDRangel::setValue(&target_elevation, pJson["targetElevation"], "float", "");
+    
+}
+
+QString
+SWGADSBDemodReport::asJson ()
+{
+    QJsonObject* obj = this->asJsonObject();
+
+    QJsonDocument doc(*obj);
+    QByteArray bytes = doc.toJson();
+    delete obj;
+    return QString(bytes);
+}
+
+QJsonObject*
+SWGADSBDemodReport::asJsonObject() {
+    QJsonObject* obj = new QJsonObject();
+    if(m_channel_power_db_isSet){
+        obj->insert("channelPowerDB", QJsonValue(channel_power_db));
+    }
+    if(m_channel_sample_rate_isSet){
+        obj->insert("channelSampleRate", QJsonValue(channel_sample_rate));
+    }
+    if(m_target_azimuth_isSet){
+        obj->insert("targetAzimuth", QJsonValue(target_azimuth));
+    }
+    if(m_target_elevation_isSet){
+        obj->insert("targetElevation", QJsonValue(target_elevation));
+    }
+
+    return obj;
+}
+
+float
+SWGADSBDemodReport::getChannelPowerDb() {
+    return channel_power_db;
+}
+void
+SWGADSBDemodReport::setChannelPowerDb(float channel_power_db) {
+    this->channel_power_db = channel_power_db;
+    this->m_channel_power_db_isSet = true;
+}
+
+qint32
+SWGADSBDemodReport::getChannelSampleRate() {
+    return channel_sample_rate;
+}
+void
+SWGADSBDemodReport::setChannelSampleRate(qint32 channel_sample_rate) {
+    this->channel_sample_rate = channel_sample_rate;
+    this->m_channel_sample_rate_isSet = true;
+}
+
+float
+SWGADSBDemodReport::getTargetAzimuth() {
+    return target_azimuth;
+}
+void
+SWGADSBDemodReport::setTargetAzimuth(float target_azimuth) {
+    this->target_azimuth = target_azimuth;
+    this->m_target_azimuth_isSet = true;
+}
+
+float
+SWGADSBDemodReport::getTargetElevation() {
+    return target_elevation;
+}
+void
+SWGADSBDemodReport::setTargetElevation(float target_elevation) {
+    this->target_elevation = target_elevation;
+    this->m_target_elevation_isSet = true;
+}
+
+
+bool
+SWGADSBDemodReport::isSet(){
+    bool isObjectUpdated = false;
+    do{
+        if(m_channel_power_db_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_channel_sample_rate_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_target_azimuth_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_target_elevation_isSet){
+            isObjectUpdated = true; break;
+        }
+    }while(false);
+    return isObjectUpdated;
+}
+}
+
diff --git a/swagger/sdrangel/code/qt5/client/SWGADSBDemodReport.h b/swagger/sdrangel/code/qt5/client/SWGADSBDemodReport.h
new file mode 100644
index 000000000..f0bf18b30
--- /dev/null
+++ b/swagger/sdrangel/code/qt5/client/SWGADSBDemodReport.h
@@ -0,0 +1,76 @@
+/**
+ * SDRangel
+ * This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1, USRP and FunCube    ---   Limitations and specifcities:    * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method.   * Preset import and export from/to file is a server only feature.   * Device set focus is a GUI only feature.   * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator   * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time   * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time    --- 
+ *
+ * OpenAPI spec version: 4.15.0
+ * Contact: f4exb06@gmail.com
+ *
+ * NOTE: This class is auto generated by the swagger code generator program.
+ * https://github.com/swagger-api/swagger-codegen.git
+ * Do not edit the class manually.
+ */
+
+/*
+ * SWGADSBDemodReport.h
+ *
+ * ADSBDemod
+ */
+
+#ifndef SWGADSBDemodReport_H_
+#define SWGADSBDemodReport_H_
+
+#include <QJsonObject>
+
+
+
+#include "SWGObject.h"
+#include "export.h"
+
+namespace SWGSDRangel {
+
+class SWG_API SWGADSBDemodReport: public SWGObject {
+public:
+    SWGADSBDemodReport();
+    SWGADSBDemodReport(QString* json);
+    virtual ~SWGADSBDemodReport();
+    void init();
+    void cleanup();
+
+    virtual QString asJson () override;
+    virtual QJsonObject* asJsonObject() override;
+    virtual void fromJsonObject(QJsonObject &json) override;
+    virtual SWGADSBDemodReport* fromJson(QString &jsonString) override;
+
+    float getChannelPowerDb();
+    void setChannelPowerDb(float channel_power_db);
+
+    qint32 getChannelSampleRate();
+    void setChannelSampleRate(qint32 channel_sample_rate);
+
+    float getTargetAzimuth();
+    void setTargetAzimuth(float target_azimuth);
+
+    float getTargetElevation();
+    void setTargetElevation(float target_elevation);
+
+
+    virtual bool isSet() override;
+
+private:
+    float channel_power_db;
+    bool m_channel_power_db_isSet;
+
+    qint32 channel_sample_rate;
+    bool m_channel_sample_rate_isSet;
+
+    float target_azimuth;
+    bool m_target_azimuth_isSet;
+
+    float target_elevation;
+    bool m_target_elevation_isSet;
+
+};
+
+}
+
+#endif /* SWGADSBDemodReport_H_ */
diff --git a/swagger/sdrangel/code/qt5/client/SWGADSBDemodSettings.cpp b/swagger/sdrangel/code/qt5/client/SWGADSBDemodSettings.cpp
new file mode 100644
index 000000000..e01362ced
--- /dev/null
+++ b/swagger/sdrangel/code/qt5/client/SWGADSBDemodSettings.cpp
@@ -0,0 +1,459 @@
+/**
+ * SDRangel
+ * This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1, USRP and FunCube    ---   Limitations and specifcities:    * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method.   * Preset import and export from/to file is a server only feature.   * Device set focus is a GUI only feature.   * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator   * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time   * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time    --- 
+ *
+ * OpenAPI spec version: 4.15.0
+ * Contact: f4exb06@gmail.com
+ *
+ * NOTE: This class is auto generated by the swagger code generator program.
+ * https://github.com/swagger-api/swagger-codegen.git
+ * Do not edit the class manually.
+ */
+
+
+#include "SWGADSBDemodSettings.h"
+
+#include "SWGHelpers.h"
+
+#include <QJsonDocument>
+#include <QJsonArray>
+#include <QObject>
+#include <QDebug>
+
+namespace SWGSDRangel {
+
+SWGADSBDemodSettings::SWGADSBDemodSettings(QString* json) {
+    init();
+    this->fromJson(*json);
+}
+
+SWGADSBDemodSettings::SWGADSBDemodSettings() {
+    input_frequency_offset = 0L;
+    m_input_frequency_offset_isSet = false;
+    rf_bandwidth = 0.0f;
+    m_rf_bandwidth_isSet = false;
+    correlation_threshold = 0.0f;
+    m_correlation_threshold_isSet = false;
+    samples_per_bit = 0;
+    m_samples_per_bit_isSet = false;
+    remove_timeout = 0;
+    m_remove_timeout_isSet = false;
+    beast_enabled = 0;
+    m_beast_enabled_isSet = false;
+    beast_host = nullptr;
+    m_beast_host_isSet = false;
+    beast_port = 0;
+    m_beast_port_isSet = false;
+    rgb_color = 0;
+    m_rgb_color_isSet = false;
+    title = nullptr;
+    m_title_isSet = false;
+    stream_index = 0;
+    m_stream_index_isSet = false;
+    use_reverse_api = 0;
+    m_use_reverse_api_isSet = false;
+    reverse_api_address = nullptr;
+    m_reverse_api_address_isSet = false;
+    reverse_api_port = 0;
+    m_reverse_api_port_isSet = false;
+    reverse_api_device_index = 0;
+    m_reverse_api_device_index_isSet = false;
+    reverse_api_channel_index = 0;
+    m_reverse_api_channel_index_isSet = false;
+}
+
+SWGADSBDemodSettings::~SWGADSBDemodSettings() {
+    this->cleanup();
+}
+
+void
+SWGADSBDemodSettings::init() {
+    input_frequency_offset = 0L;
+    m_input_frequency_offset_isSet = false;
+    rf_bandwidth = 0.0f;
+    m_rf_bandwidth_isSet = false;
+    correlation_threshold = 0.0f;
+    m_correlation_threshold_isSet = false;
+    samples_per_bit = 0;
+    m_samples_per_bit_isSet = false;
+    remove_timeout = 0;
+    m_remove_timeout_isSet = false;
+    beast_enabled = 0;
+    m_beast_enabled_isSet = false;
+    beast_host = new QString("");
+    m_beast_host_isSet = false;
+    beast_port = 0;
+    m_beast_port_isSet = false;
+    rgb_color = 0;
+    m_rgb_color_isSet = false;
+    title = new QString("");
+    m_title_isSet = false;
+    stream_index = 0;
+    m_stream_index_isSet = false;
+    use_reverse_api = 0;
+    m_use_reverse_api_isSet = false;
+    reverse_api_address = new QString("");
+    m_reverse_api_address_isSet = false;
+    reverse_api_port = 0;
+    m_reverse_api_port_isSet = false;
+    reverse_api_device_index = 0;
+    m_reverse_api_device_index_isSet = false;
+    reverse_api_channel_index = 0;
+    m_reverse_api_channel_index_isSet = false;
+}
+
+void
+SWGADSBDemodSettings::cleanup() {
+
+
+
+
+
+
+    if(beast_host != nullptr) { 
+        delete beast_host;
+    }
+
+
+    if(title != nullptr) { 
+        delete title;
+    }
+
+
+    if(reverse_api_address != nullptr) { 
+        delete reverse_api_address;
+    }
+
+
+
+}
+
+SWGADSBDemodSettings*
+SWGADSBDemodSettings::fromJson(QString &json) {
+    QByteArray array (json.toStdString().c_str());
+    QJsonDocument doc = QJsonDocument::fromJson(array);
+    QJsonObject jsonObject = doc.object();
+    this->fromJsonObject(jsonObject);
+    return this;
+}
+
+void
+SWGADSBDemodSettings::fromJsonObject(QJsonObject &pJson) {
+    ::SWGSDRangel::setValue(&input_frequency_offset, pJson["inputFrequencyOffset"], "qint64", "");
+    
+    ::SWGSDRangel::setValue(&rf_bandwidth, pJson["rfBandwidth"], "float", "");
+    
+    ::SWGSDRangel::setValue(&correlation_threshold, pJson["correlationThreshold"], "float", "");
+    
+    ::SWGSDRangel::setValue(&samples_per_bit, pJson["samplesPerBit"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&remove_timeout, pJson["removeTimeout"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&beast_enabled, pJson["beastEnabled"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&beast_host, pJson["beastHost"], "QString", "QString");
+    
+    ::SWGSDRangel::setValue(&beast_port, pJson["beastPort"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&rgb_color, pJson["rgbColor"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&title, pJson["title"], "QString", "QString");
+    
+    ::SWGSDRangel::setValue(&stream_index, pJson["streamIndex"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&use_reverse_api, pJson["useReverseAPI"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&reverse_api_address, pJson["reverseAPIAddress"], "QString", "QString");
+    
+    ::SWGSDRangel::setValue(&reverse_api_port, pJson["reverseAPIPort"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&reverse_api_device_index, pJson["reverseAPIDeviceIndex"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&reverse_api_channel_index, pJson["reverseAPIChannelIndex"], "qint32", "");
+    
+}
+
+QString
+SWGADSBDemodSettings::asJson ()
+{
+    QJsonObject* obj = this->asJsonObject();
+
+    QJsonDocument doc(*obj);
+    QByteArray bytes = doc.toJson();
+    delete obj;
+    return QString(bytes);
+}
+
+QJsonObject*
+SWGADSBDemodSettings::asJsonObject() {
+    QJsonObject* obj = new QJsonObject();
+    if(m_input_frequency_offset_isSet){
+        obj->insert("inputFrequencyOffset", QJsonValue(input_frequency_offset));
+    }
+    if(m_rf_bandwidth_isSet){
+        obj->insert("rfBandwidth", QJsonValue(rf_bandwidth));
+    }
+    if(m_correlation_threshold_isSet){
+        obj->insert("correlationThreshold", QJsonValue(correlation_threshold));
+    }
+    if(m_samples_per_bit_isSet){
+        obj->insert("samplesPerBit", QJsonValue(samples_per_bit));
+    }
+    if(m_remove_timeout_isSet){
+        obj->insert("removeTimeout", QJsonValue(remove_timeout));
+    }
+    if(m_beast_enabled_isSet){
+        obj->insert("beastEnabled", QJsonValue(beast_enabled));
+    }
+    if(beast_host != nullptr && *beast_host != QString("")){
+        toJsonValue(QString("beastHost"), beast_host, obj, QString("QString"));
+    }
+    if(m_beast_port_isSet){
+        obj->insert("beastPort", QJsonValue(beast_port));
+    }
+    if(m_rgb_color_isSet){
+        obj->insert("rgbColor", QJsonValue(rgb_color));
+    }
+    if(title != nullptr && *title != QString("")){
+        toJsonValue(QString("title"), title, obj, QString("QString"));
+    }
+    if(m_stream_index_isSet){
+        obj->insert("streamIndex", QJsonValue(stream_index));
+    }
+    if(m_use_reverse_api_isSet){
+        obj->insert("useReverseAPI", QJsonValue(use_reverse_api));
+    }
+    if(reverse_api_address != nullptr && *reverse_api_address != QString("")){
+        toJsonValue(QString("reverseAPIAddress"), reverse_api_address, obj, QString("QString"));
+    }
+    if(m_reverse_api_port_isSet){
+        obj->insert("reverseAPIPort", QJsonValue(reverse_api_port));
+    }
+    if(m_reverse_api_device_index_isSet){
+        obj->insert("reverseAPIDeviceIndex", QJsonValue(reverse_api_device_index));
+    }
+    if(m_reverse_api_channel_index_isSet){
+        obj->insert("reverseAPIChannelIndex", QJsonValue(reverse_api_channel_index));
+    }
+
+    return obj;
+}
+
+qint64
+SWGADSBDemodSettings::getInputFrequencyOffset() {
+    return input_frequency_offset;
+}
+void
+SWGADSBDemodSettings::setInputFrequencyOffset(qint64 input_frequency_offset) {
+    this->input_frequency_offset = input_frequency_offset;
+    this->m_input_frequency_offset_isSet = true;
+}
+
+float
+SWGADSBDemodSettings::getRfBandwidth() {
+    return rf_bandwidth;
+}
+void
+SWGADSBDemodSettings::setRfBandwidth(float rf_bandwidth) {
+    this->rf_bandwidth = rf_bandwidth;
+    this->m_rf_bandwidth_isSet = true;
+}
+
+float
+SWGADSBDemodSettings::getCorrelationThreshold() {
+    return correlation_threshold;
+}
+void
+SWGADSBDemodSettings::setCorrelationThreshold(float correlation_threshold) {
+    this->correlation_threshold = correlation_threshold;
+    this->m_correlation_threshold_isSet = true;
+}
+
+qint32
+SWGADSBDemodSettings::getSamplesPerBit() {
+    return samples_per_bit;
+}
+void
+SWGADSBDemodSettings::setSamplesPerBit(qint32 samples_per_bit) {
+    this->samples_per_bit = samples_per_bit;
+    this->m_samples_per_bit_isSet = true;
+}
+
+qint32
+SWGADSBDemodSettings::getRemoveTimeout() {
+    return remove_timeout;
+}
+void
+SWGADSBDemodSettings::setRemoveTimeout(qint32 remove_timeout) {
+    this->remove_timeout = remove_timeout;
+    this->m_remove_timeout_isSet = true;
+}
+
+qint32
+SWGADSBDemodSettings::getBeastEnabled() {
+    return beast_enabled;
+}
+void
+SWGADSBDemodSettings::setBeastEnabled(qint32 beast_enabled) {
+    this->beast_enabled = beast_enabled;
+    this->m_beast_enabled_isSet = true;
+}
+
+QString*
+SWGADSBDemodSettings::getBeastHost() {
+    return beast_host;
+}
+void
+SWGADSBDemodSettings::setBeastHost(QString* beast_host) {
+    this->beast_host = beast_host;
+    this->m_beast_host_isSet = true;
+}
+
+qint32
+SWGADSBDemodSettings::getBeastPort() {
+    return beast_port;
+}
+void
+SWGADSBDemodSettings::setBeastPort(qint32 beast_port) {
+    this->beast_port = beast_port;
+    this->m_beast_port_isSet = true;
+}
+
+qint32
+SWGADSBDemodSettings::getRgbColor() {
+    return rgb_color;
+}
+void
+SWGADSBDemodSettings::setRgbColor(qint32 rgb_color) {
+    this->rgb_color = rgb_color;
+    this->m_rgb_color_isSet = true;
+}
+
+QString*
+SWGADSBDemodSettings::getTitle() {
+    return title;
+}
+void
+SWGADSBDemodSettings::setTitle(QString* title) {
+    this->title = title;
+    this->m_title_isSet = true;
+}
+
+qint32
+SWGADSBDemodSettings::getStreamIndex() {
+    return stream_index;
+}
+void
+SWGADSBDemodSettings::setStreamIndex(qint32 stream_index) {
+    this->stream_index = stream_index;
+    this->m_stream_index_isSet = true;
+}
+
+qint32
+SWGADSBDemodSettings::getUseReverseApi() {
+    return use_reverse_api;
+}
+void
+SWGADSBDemodSettings::setUseReverseApi(qint32 use_reverse_api) {
+    this->use_reverse_api = use_reverse_api;
+    this->m_use_reverse_api_isSet = true;
+}
+
+QString*
+SWGADSBDemodSettings::getReverseApiAddress() {
+    return reverse_api_address;
+}
+void
+SWGADSBDemodSettings::setReverseApiAddress(QString* reverse_api_address) {
+    this->reverse_api_address = reverse_api_address;
+    this->m_reverse_api_address_isSet = true;
+}
+
+qint32
+SWGADSBDemodSettings::getReverseApiPort() {
+    return reverse_api_port;
+}
+void
+SWGADSBDemodSettings::setReverseApiPort(qint32 reverse_api_port) {
+    this->reverse_api_port = reverse_api_port;
+    this->m_reverse_api_port_isSet = true;
+}
+
+qint32
+SWGADSBDemodSettings::getReverseApiDeviceIndex() {
+    return reverse_api_device_index;
+}
+void
+SWGADSBDemodSettings::setReverseApiDeviceIndex(qint32 reverse_api_device_index) {
+    this->reverse_api_device_index = reverse_api_device_index;
+    this->m_reverse_api_device_index_isSet = true;
+}
+
+qint32
+SWGADSBDemodSettings::getReverseApiChannelIndex() {
+    return reverse_api_channel_index;
+}
+void
+SWGADSBDemodSettings::setReverseApiChannelIndex(qint32 reverse_api_channel_index) {
+    this->reverse_api_channel_index = reverse_api_channel_index;
+    this->m_reverse_api_channel_index_isSet = true;
+}
+
+
+bool
+SWGADSBDemodSettings::isSet(){
+    bool isObjectUpdated = false;
+    do{
+        if(m_input_frequency_offset_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_rf_bandwidth_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_correlation_threshold_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_samples_per_bit_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_remove_timeout_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_beast_enabled_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(beast_host && *beast_host != QString("")){
+            isObjectUpdated = true; break;
+        }
+        if(m_beast_port_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_rgb_color_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(title && *title != QString("")){
+            isObjectUpdated = true; break;
+        }
+        if(m_stream_index_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_use_reverse_api_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(reverse_api_address && *reverse_api_address != QString("")){
+            isObjectUpdated = true; break;
+        }
+        if(m_reverse_api_port_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_reverse_api_device_index_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_reverse_api_channel_index_isSet){
+            isObjectUpdated = true; break;
+        }
+    }while(false);
+    return isObjectUpdated;
+}
+}
+
diff --git a/swagger/sdrangel/code/qt5/client/SWGADSBDemodSettings.h b/swagger/sdrangel/code/qt5/client/SWGADSBDemodSettings.h
new file mode 100644
index 000000000..87ec98472
--- /dev/null
+++ b/swagger/sdrangel/code/qt5/client/SWGADSBDemodSettings.h
@@ -0,0 +1,149 @@
+/**
+ * SDRangel
+ * This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1, USRP and FunCube    ---   Limitations and specifcities:    * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method.   * Preset import and export from/to file is a server only feature.   * Device set focus is a GUI only feature.   * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator   * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time   * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time    --- 
+ *
+ * OpenAPI spec version: 4.15.0
+ * Contact: f4exb06@gmail.com
+ *
+ * NOTE: This class is auto generated by the swagger code generator program.
+ * https://github.com/swagger-api/swagger-codegen.git
+ * Do not edit the class manually.
+ */
+
+/*
+ * SWGADSBDemodSettings.h
+ *
+ * ADSBDemod
+ */
+
+#ifndef SWGADSBDemodSettings_H_
+#define SWGADSBDemodSettings_H_
+
+#include <QJsonObject>
+
+
+#include <QString>
+
+#include "SWGObject.h"
+#include "export.h"
+
+namespace SWGSDRangel {
+
+class SWG_API SWGADSBDemodSettings: public SWGObject {
+public:
+    SWGADSBDemodSettings();
+    SWGADSBDemodSettings(QString* json);
+    virtual ~SWGADSBDemodSettings();
+    void init();
+    void cleanup();
+
+    virtual QString asJson () override;
+    virtual QJsonObject* asJsonObject() override;
+    virtual void fromJsonObject(QJsonObject &json) override;
+    virtual SWGADSBDemodSettings* fromJson(QString &jsonString) override;
+
+    qint64 getInputFrequencyOffset();
+    void setInputFrequencyOffset(qint64 input_frequency_offset);
+
+    float getRfBandwidth();
+    void setRfBandwidth(float rf_bandwidth);
+
+    float getCorrelationThreshold();
+    void setCorrelationThreshold(float correlation_threshold);
+
+    qint32 getSamplesPerBit();
+    void setSamplesPerBit(qint32 samples_per_bit);
+
+    qint32 getRemoveTimeout();
+    void setRemoveTimeout(qint32 remove_timeout);
+
+    qint32 getBeastEnabled();
+    void setBeastEnabled(qint32 beast_enabled);
+
+    QString* getBeastHost();
+    void setBeastHost(QString* beast_host);
+
+    qint32 getBeastPort();
+    void setBeastPort(qint32 beast_port);
+
+    qint32 getRgbColor();
+    void setRgbColor(qint32 rgb_color);
+
+    QString* getTitle();
+    void setTitle(QString* title);
+
+    qint32 getStreamIndex();
+    void setStreamIndex(qint32 stream_index);
+
+    qint32 getUseReverseApi();
+    void setUseReverseApi(qint32 use_reverse_api);
+
+    QString* getReverseApiAddress();
+    void setReverseApiAddress(QString* reverse_api_address);
+
+    qint32 getReverseApiPort();
+    void setReverseApiPort(qint32 reverse_api_port);
+
+    qint32 getReverseApiDeviceIndex();
+    void setReverseApiDeviceIndex(qint32 reverse_api_device_index);
+
+    qint32 getReverseApiChannelIndex();
+    void setReverseApiChannelIndex(qint32 reverse_api_channel_index);
+
+
+    virtual bool isSet() override;
+
+private:
+    qint64 input_frequency_offset;
+    bool m_input_frequency_offset_isSet;
+
+    float rf_bandwidth;
+    bool m_rf_bandwidth_isSet;
+
+    float correlation_threshold;
+    bool m_correlation_threshold_isSet;
+
+    qint32 samples_per_bit;
+    bool m_samples_per_bit_isSet;
+
+    qint32 remove_timeout;
+    bool m_remove_timeout_isSet;
+
+    qint32 beast_enabled;
+    bool m_beast_enabled_isSet;
+
+    QString* beast_host;
+    bool m_beast_host_isSet;
+
+    qint32 beast_port;
+    bool m_beast_port_isSet;
+
+    qint32 rgb_color;
+    bool m_rgb_color_isSet;
+
+    QString* title;
+    bool m_title_isSet;
+
+    qint32 stream_index;
+    bool m_stream_index_isSet;
+
+    qint32 use_reverse_api;
+    bool m_use_reverse_api_isSet;
+
+    QString* reverse_api_address;
+    bool m_reverse_api_address_isSet;
+
+    qint32 reverse_api_port;
+    bool m_reverse_api_port_isSet;
+
+    qint32 reverse_api_device_index;
+    bool m_reverse_api_device_index_isSet;
+
+    qint32 reverse_api_channel_index;
+    bool m_reverse_api_channel_index_isSet;
+
+};
+
+}
+
+#endif /* SWGADSBDemodSettings_H_ */
diff --git a/swagger/sdrangel/code/qt5/client/SWGChannelReport.cpp b/swagger/sdrangel/code/qt5/client/SWGChannelReport.cpp
index 0afdca202..f2584d3ab 100644
--- a/swagger/sdrangel/code/qt5/client/SWGChannelReport.cpp
+++ b/swagger/sdrangel/code/qt5/client/SWGChannelReport.cpp
@@ -32,6 +32,8 @@ SWGChannelReport::SWGChannelReport() {
     m_channel_type_isSet = false;
     direction = 0;
     m_direction_isSet = false;
+    adsb_demod_report = nullptr;
+    m_adsb_demod_report_isSet = false;
     am_demod_report = nullptr;
     m_am_demod_report_isSet = false;
     am_mod_report = nullptr;
@@ -86,6 +88,8 @@ SWGChannelReport::init() {
     m_channel_type_isSet = false;
     direction = 0;
     m_direction_isSet = false;
+    adsb_demod_report = new SWGADSBDemodReport();
+    m_adsb_demod_report_isSet = false;
     am_demod_report = new SWGAMDemodReport();
     m_am_demod_report_isSet = false;
     am_mod_report = new SWGAMModReport();
@@ -136,6 +140,9 @@ SWGChannelReport::cleanup() {
         delete channel_type;
     }
 
+    if(adsb_demod_report != nullptr) { 
+        delete adsb_demod_report;
+    }
     if(am_demod_report != nullptr) { 
         delete am_demod_report;
     }
@@ -216,6 +223,8 @@ SWGChannelReport::fromJsonObject(QJsonObject &pJson) {
     
     ::SWGSDRangel::setValue(&direction, pJson["direction"], "qint32", "");
     
+    ::SWGSDRangel::setValue(&adsb_demod_report, pJson["ADSBDemodReport"], "SWGADSBDemodReport", "SWGADSBDemodReport");
+    
     ::SWGSDRangel::setValue(&am_demod_report, pJson["AMDemodReport"], "SWGAMDemodReport", "SWGAMDemodReport");
     
     ::SWGSDRangel::setValue(&am_mod_report, pJson["AMModReport"], "SWGAMModReport", "SWGAMModReport");
@@ -280,6 +289,9 @@ SWGChannelReport::asJsonObject() {
     if(m_direction_isSet){
         obj->insert("direction", QJsonValue(direction));
     }
+    if((adsb_demod_report != nullptr) && (adsb_demod_report->isSet())){
+        toJsonValue(QString("ADSBDemodReport"), adsb_demod_report, obj, QString("SWGADSBDemodReport"));
+    }
     if((am_demod_report != nullptr) && (am_demod_report->isSet())){
         toJsonValue(QString("AMDemodReport"), am_demod_report, obj, QString("SWGAMDemodReport"));
     }
@@ -367,6 +379,16 @@ SWGChannelReport::setDirection(qint32 direction) {
     this->m_direction_isSet = true;
 }
 
+SWGADSBDemodReport*
+SWGChannelReport::getAdsbDemodReport() {
+    return adsb_demod_report;
+}
+void
+SWGChannelReport::setAdsbDemodReport(SWGADSBDemodReport* adsb_demod_report) {
+    this->adsb_demod_report = adsb_demod_report;
+    this->m_adsb_demod_report_isSet = true;
+}
+
 SWGAMDemodReport*
 SWGChannelReport::getAmDemodReport() {
     return am_demod_report;
@@ -588,6 +610,9 @@ SWGChannelReport::isSet(){
         if(m_direction_isSet){
             isObjectUpdated = true; break;
         }
+        if(adsb_demod_report && adsb_demod_report->isSet()){
+            isObjectUpdated = true; break;
+        }
         if(am_demod_report && am_demod_report->isSet()){
             isObjectUpdated = true; break;
         }
diff --git a/swagger/sdrangel/code/qt5/client/SWGChannelReport.h b/swagger/sdrangel/code/qt5/client/SWGChannelReport.h
index 46ad8c44e..bb89c5cc5 100644
--- a/swagger/sdrangel/code/qt5/client/SWGChannelReport.h
+++ b/swagger/sdrangel/code/qt5/client/SWGChannelReport.h
@@ -22,6 +22,7 @@
 #include <QJsonObject>
 
 
+#include "SWGADSBDemodReport.h"
 #include "SWGAMDemodReport.h"
 #include "SWGAMModReport.h"
 #include "SWGATVModReport.h"
@@ -69,6 +70,9 @@ public:
     qint32 getDirection();
     void setDirection(qint32 direction);
 
+    SWGADSBDemodReport* getAdsbDemodReport();
+    void setAdsbDemodReport(SWGADSBDemodReport* adsb_demod_report);
+
     SWGAMDemodReport* getAmDemodReport();
     void setAmDemodReport(SWGAMDemodReport* am_demod_report);
 
@@ -142,6 +146,9 @@ private:
     qint32 direction;
     bool m_direction_isSet;
 
+    SWGADSBDemodReport* adsb_demod_report;
+    bool m_adsb_demod_report_isSet;
+
     SWGAMDemodReport* am_demod_report;
     bool m_am_demod_report_isSet;
 
diff --git a/swagger/sdrangel/code/qt5/client/SWGChannelSettings.cpp b/swagger/sdrangel/code/qt5/client/SWGChannelSettings.cpp
index e0519f71c..49a6803ec 100644
--- a/swagger/sdrangel/code/qt5/client/SWGChannelSettings.cpp
+++ b/swagger/sdrangel/code/qt5/client/SWGChannelSettings.cpp
@@ -36,6 +36,8 @@ SWGChannelSettings::SWGChannelSettings() {
     m_originator_device_set_index_isSet = false;
     originator_channel_index = 0;
     m_originator_channel_index_isSet = false;
+    adsb_demod_settings = nullptr;
+    m_adsb_demod_settings_isSet = false;
     am_demod_settings = nullptr;
     m_am_demod_settings_isSet = false;
     am_mod_settings = nullptr;
@@ -106,6 +108,8 @@ SWGChannelSettings::init() {
     m_originator_device_set_index_isSet = false;
     originator_channel_index = 0;
     m_originator_channel_index_isSet = false;
+    adsb_demod_settings = new SWGADSBDemodSettings();
+    m_adsb_demod_settings_isSet = false;
     am_demod_settings = new SWGAMDemodSettings();
     m_am_demod_settings_isSet = false;
     am_mod_settings = new SWGAMModSettings();
@@ -170,6 +174,9 @@ SWGChannelSettings::cleanup() {
 
 
 
+    if(adsb_demod_settings != nullptr) { 
+        delete adsb_demod_settings;
+    }
     if(am_demod_settings != nullptr) { 
         delete am_demod_settings;
     }
@@ -272,6 +279,8 @@ SWGChannelSettings::fromJsonObject(QJsonObject &pJson) {
     
     ::SWGSDRangel::setValue(&originator_channel_index, pJson["originatorChannelIndex"], "qint32", "");
     
+    ::SWGSDRangel::setValue(&adsb_demod_settings, pJson["ADSBDemodSettings"], "SWGADSBDemodSettings", "SWGADSBDemodSettings");
+    
     ::SWGSDRangel::setValue(&am_demod_settings, pJson["AMDemodSettings"], "SWGAMDemodSettings", "SWGAMDemodSettings");
     
     ::SWGSDRangel::setValue(&am_mod_settings, pJson["AMModSettings"], "SWGAMModSettings", "SWGAMModSettings");
@@ -354,6 +363,9 @@ SWGChannelSettings::asJsonObject() {
     if(m_originator_channel_index_isSet){
         obj->insert("originatorChannelIndex", QJsonValue(originator_channel_index));
     }
+    if((adsb_demod_settings != nullptr) && (adsb_demod_settings->isSet())){
+        toJsonValue(QString("ADSBDemodSettings"), adsb_demod_settings, obj, QString("SWGADSBDemodSettings"));
+    }
     if((am_demod_settings != nullptr) && (am_demod_settings->isSet())){
         toJsonValue(QString("AMDemodSettings"), am_demod_settings, obj, QString("SWGAMDemodSettings"));
     }
@@ -479,6 +491,16 @@ SWGChannelSettings::setOriginatorChannelIndex(qint32 originator_channel_index) {
     this->m_originator_channel_index_isSet = true;
 }
 
+SWGADSBDemodSettings*
+SWGChannelSettings::getAdsbDemodSettings() {
+    return adsb_demod_settings;
+}
+void
+SWGChannelSettings::setAdsbDemodSettings(SWGADSBDemodSettings* adsb_demod_settings) {
+    this->adsb_demod_settings = adsb_demod_settings;
+    this->m_adsb_demod_settings_isSet = true;
+}
+
 SWGAMDemodSettings*
 SWGChannelSettings::getAmDemodSettings() {
     return am_demod_settings;
@@ -766,6 +788,9 @@ SWGChannelSettings::isSet(){
         if(m_originator_channel_index_isSet){
             isObjectUpdated = true; break;
         }
+        if(adsb_demod_settings && adsb_demod_settings->isSet()){
+            isObjectUpdated = true; break;
+        }
         if(am_demod_settings && am_demod_settings->isSet()){
             isObjectUpdated = true; break;
         }
diff --git a/swagger/sdrangel/code/qt5/client/SWGChannelSettings.h b/swagger/sdrangel/code/qt5/client/SWGChannelSettings.h
index 990208b03..a6f4dc5cb 100644
--- a/swagger/sdrangel/code/qt5/client/SWGChannelSettings.h
+++ b/swagger/sdrangel/code/qt5/client/SWGChannelSettings.h
@@ -22,6 +22,7 @@
 #include <QJsonObject>
 
 
+#include "SWGADSBDemodSettings.h"
 #include "SWGAMDemodSettings.h"
 #include "SWGAMModSettings.h"
 #include "SWGATVDemodSettings.h"
@@ -81,6 +82,9 @@ public:
     qint32 getOriginatorChannelIndex();
     void setOriginatorChannelIndex(qint32 originator_channel_index);
 
+    SWGADSBDemodSettings* getAdsbDemodSettings();
+    void setAdsbDemodSettings(SWGADSBDemodSettings* adsb_demod_settings);
+
     SWGAMDemodSettings* getAmDemodSettings();
     void setAmDemodSettings(SWGAMDemodSettings* am_demod_settings);
 
@@ -178,6 +182,9 @@ private:
     qint32 originator_channel_index;
     bool m_originator_channel_index_isSet;
 
+    SWGADSBDemodSettings* adsb_demod_settings;
+    bool m_adsb_demod_settings_isSet;
+
     SWGAMDemodSettings* am_demod_settings;
     bool m_am_demod_settings_isSet;
 
diff --git a/swagger/sdrangel/code/qt5/client/SWGFeatureSettings.cpp b/swagger/sdrangel/code/qt5/client/SWGFeatureSettings.cpp
index dbe340b7c..11580d15c 100644
--- a/swagger/sdrangel/code/qt5/client/SWGFeatureSettings.cpp
+++ b/swagger/sdrangel/code/qt5/client/SWGFeatureSettings.cpp
@@ -34,6 +34,8 @@ SWGFeatureSettings::SWGFeatureSettings() {
     m_originator_feature_set_index_isSet = false;
     originator_feature_index = 0;
     m_originator_feature_index_isSet = false;
+    gs232_controller_settings = nullptr;
+    m_gs232_controller_settings_isSet = false;
     simple_ptt_settings = nullptr;
     m_simple_ptt_settings_isSet = false;
     rig_ctl_server_settings = nullptr;
@@ -52,6 +54,8 @@ SWGFeatureSettings::init() {
     m_originator_feature_set_index_isSet = false;
     originator_feature_index = 0;
     m_originator_feature_index_isSet = false;
+    gs232_controller_settings = new SWGGS232ControllerSettings();
+    m_gs232_controller_settings_isSet = false;
     simple_ptt_settings = new SWGSimplePTTSettings();
     m_simple_ptt_settings_isSet = false;
     rig_ctl_server_settings = new SWGRigCtlServerSettings();
@@ -65,6 +69,9 @@ SWGFeatureSettings::cleanup() {
     }
 
 
+    if(gs232_controller_settings != nullptr) { 
+        delete gs232_controller_settings;
+    }
     if(simple_ptt_settings != nullptr) { 
         delete simple_ptt_settings;
     }
@@ -90,6 +97,8 @@ SWGFeatureSettings::fromJsonObject(QJsonObject &pJson) {
     
     ::SWGSDRangel::setValue(&originator_feature_index, pJson["originatorFeatureIndex"], "qint32", "");
     
+    ::SWGSDRangel::setValue(&gs232_controller_settings, pJson["GS232ControllerSettings"], "SWGGS232ControllerSettings", "SWGGS232ControllerSettings");
+    
     ::SWGSDRangel::setValue(&simple_ptt_settings, pJson["SimplePTTSettings"], "SWGSimplePTTSettings", "SWGSimplePTTSettings");
     
     ::SWGSDRangel::setValue(&rig_ctl_server_settings, pJson["RigCtlServerSettings"], "SWGRigCtlServerSettings", "SWGRigCtlServerSettings");
@@ -119,6 +128,9 @@ SWGFeatureSettings::asJsonObject() {
     if(m_originator_feature_index_isSet){
         obj->insert("originatorFeatureIndex", QJsonValue(originator_feature_index));
     }
+    if((gs232_controller_settings != nullptr) && (gs232_controller_settings->isSet())){
+        toJsonValue(QString("GS232ControllerSettings"), gs232_controller_settings, obj, QString("SWGGS232ControllerSettings"));
+    }
     if((simple_ptt_settings != nullptr) && (simple_ptt_settings->isSet())){
         toJsonValue(QString("SimplePTTSettings"), simple_ptt_settings, obj, QString("SWGSimplePTTSettings"));
     }
@@ -159,6 +171,16 @@ SWGFeatureSettings::setOriginatorFeatureIndex(qint32 originator_feature_index) {
     this->m_originator_feature_index_isSet = true;
 }
 
+SWGGS232ControllerSettings*
+SWGFeatureSettings::getGs232ControllerSettings() {
+    return gs232_controller_settings;
+}
+void
+SWGFeatureSettings::setGs232ControllerSettings(SWGGS232ControllerSettings* gs232_controller_settings) {
+    this->gs232_controller_settings = gs232_controller_settings;
+    this->m_gs232_controller_settings_isSet = true;
+}
+
 SWGSimplePTTSettings*
 SWGFeatureSettings::getSimplePttSettings() {
     return simple_ptt_settings;
@@ -193,6 +215,9 @@ SWGFeatureSettings::isSet(){
         if(m_originator_feature_index_isSet){
             isObjectUpdated = true; break;
         }
+        if(gs232_controller_settings && gs232_controller_settings->isSet()){
+            isObjectUpdated = true; break;
+        }
         if(simple_ptt_settings && simple_ptt_settings->isSet()){
             isObjectUpdated = true; break;
         }
diff --git a/swagger/sdrangel/code/qt5/client/SWGFeatureSettings.h b/swagger/sdrangel/code/qt5/client/SWGFeatureSettings.h
index 21480f57a..9bc2b8cd5 100644
--- a/swagger/sdrangel/code/qt5/client/SWGFeatureSettings.h
+++ b/swagger/sdrangel/code/qt5/client/SWGFeatureSettings.h
@@ -22,6 +22,7 @@
 #include <QJsonObject>
 
 
+#include "SWGGS232ControllerSettings.h"
 #include "SWGRigCtlServerSettings.h"
 #include "SWGSimplePTTSettings.h"
 #include <QString>
@@ -53,6 +54,9 @@ public:
     qint32 getOriginatorFeatureIndex();
     void setOriginatorFeatureIndex(qint32 originator_feature_index);
 
+    SWGGS232ControllerSettings* getGs232ControllerSettings();
+    void setGs232ControllerSettings(SWGGS232ControllerSettings* gs232_controller_settings);
+
     SWGSimplePTTSettings* getSimplePttSettings();
     void setSimplePttSettings(SWGSimplePTTSettings* simple_ptt_settings);
 
@@ -72,6 +76,9 @@ private:
     qint32 originator_feature_index;
     bool m_originator_feature_index_isSet;
 
+    SWGGS232ControllerSettings* gs232_controller_settings;
+    bool m_gs232_controller_settings_isSet;
+
     SWGSimplePTTSettings* simple_ptt_settings;
     bool m_simple_ptt_settings_isSet;
 
diff --git a/swagger/sdrangel/code/qt5/client/SWGGS232ControllerSettings.cpp b/swagger/sdrangel/code/qt5/client/SWGGS232ControllerSettings.cpp
new file mode 100644
index 000000000..cd3923b65
--- /dev/null
+++ b/swagger/sdrangel/code/qt5/client/SWGGS232ControllerSettings.cpp
@@ -0,0 +1,413 @@
+/**
+ * SDRangel
+ * This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1, USRP and FunCube    ---   Limitations and specifcities:    * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method.   * Preset import and export from/to file is a server only feature.   * Device set focus is a GUI only feature.   * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator   * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time   * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time    --- 
+ *
+ * OpenAPI spec version: 4.15.0
+ * Contact: f4exb06@gmail.com
+ *
+ * NOTE: This class is auto generated by the swagger code generator program.
+ * https://github.com/swagger-api/swagger-codegen.git
+ * Do not edit the class manually.
+ */
+
+
+#include "SWGGS232ControllerSettings.h"
+
+#include "SWGHelpers.h"
+
+#include <QJsonDocument>
+#include <QJsonArray>
+#include <QObject>
+#include <QDebug>
+
+namespace SWGSDRangel {
+
+SWGGS232ControllerSettings::SWGGS232ControllerSettings(QString* json) {
+    init();
+    this->fromJson(*json);
+}
+
+SWGGS232ControllerSettings::SWGGS232ControllerSettings() {
+    azimuth = 0;
+    m_azimuth_isSet = false;
+    elevation = 0;
+    m_elevation_isSet = false;
+    serial_port = nullptr;
+    m_serial_port_isSet = false;
+    baud_rate = 0;
+    m_baud_rate_isSet = false;
+    track = 0;
+    m_track_isSet = false;
+    title = nullptr;
+    m_title_isSet = false;
+    rgb_color = 0;
+    m_rgb_color_isSet = false;
+    device_index = 0;
+    m_device_index_isSet = false;
+    channel_index = 0;
+    m_channel_index_isSet = false;
+    use_reverse_api = 0;
+    m_use_reverse_api_isSet = false;
+    reverse_api_address = nullptr;
+    m_reverse_api_address_isSet = false;
+    reverse_api_port = 0;
+    m_reverse_api_port_isSet = false;
+    reverse_api_device_index = 0;
+    m_reverse_api_device_index_isSet = false;
+    reverse_api_channel_index = 0;
+    m_reverse_api_channel_index_isSet = false;
+}
+
+SWGGS232ControllerSettings::~SWGGS232ControllerSettings() {
+    this->cleanup();
+}
+
+void
+SWGGS232ControllerSettings::init() {
+    azimuth = 0;
+    m_azimuth_isSet = false;
+    elevation = 0;
+    m_elevation_isSet = false;
+    serial_port = new QString("");
+    m_serial_port_isSet = false;
+    baud_rate = 0;
+    m_baud_rate_isSet = false;
+    track = 0;
+    m_track_isSet = false;
+    title = new QString("");
+    m_title_isSet = false;
+    rgb_color = 0;
+    m_rgb_color_isSet = false;
+    device_index = 0;
+    m_device_index_isSet = false;
+    channel_index = 0;
+    m_channel_index_isSet = false;
+    use_reverse_api = 0;
+    m_use_reverse_api_isSet = false;
+    reverse_api_address = new QString("");
+    m_reverse_api_address_isSet = false;
+    reverse_api_port = 0;
+    m_reverse_api_port_isSet = false;
+    reverse_api_device_index = 0;
+    m_reverse_api_device_index_isSet = false;
+    reverse_api_channel_index = 0;
+    m_reverse_api_channel_index_isSet = false;
+}
+
+void
+SWGGS232ControllerSettings::cleanup() {
+
+
+    if(serial_port != nullptr) { 
+        delete serial_port;
+    }
+
+
+    if(title != nullptr) { 
+        delete title;
+    }
+
+
+
+
+    if(reverse_api_address != nullptr) { 
+        delete reverse_api_address;
+    }
+
+
+
+}
+
+SWGGS232ControllerSettings*
+SWGGS232ControllerSettings::fromJson(QString &json) {
+    QByteArray array (json.toStdString().c_str());
+    QJsonDocument doc = QJsonDocument::fromJson(array);
+    QJsonObject jsonObject = doc.object();
+    this->fromJsonObject(jsonObject);
+    return this;
+}
+
+void
+SWGGS232ControllerSettings::fromJsonObject(QJsonObject &pJson) {
+    ::SWGSDRangel::setValue(&azimuth, pJson["azimuth"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&elevation, pJson["elevation"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&serial_port, pJson["serialPort"], "QString", "QString");
+    
+    ::SWGSDRangel::setValue(&baud_rate, pJson["baudRate"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&track, pJson["track"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&title, pJson["title"], "QString", "QString");
+    
+    ::SWGSDRangel::setValue(&rgb_color, pJson["rgbColor"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&device_index, pJson["deviceIndex"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&channel_index, pJson["channelIndex"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&use_reverse_api, pJson["useReverseAPI"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&reverse_api_address, pJson["reverseAPIAddress"], "QString", "QString");
+    
+    ::SWGSDRangel::setValue(&reverse_api_port, pJson["reverseAPIPort"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&reverse_api_device_index, pJson["reverseAPIDeviceIndex"], "qint32", "");
+    
+    ::SWGSDRangel::setValue(&reverse_api_channel_index, pJson["reverseAPIChannelIndex"], "qint32", "");
+    
+}
+
+QString
+SWGGS232ControllerSettings::asJson ()
+{
+    QJsonObject* obj = this->asJsonObject();
+
+    QJsonDocument doc(*obj);
+    QByteArray bytes = doc.toJson();
+    delete obj;
+    return QString(bytes);
+}
+
+QJsonObject*
+SWGGS232ControllerSettings::asJsonObject() {
+    QJsonObject* obj = new QJsonObject();
+    if(m_azimuth_isSet){
+        obj->insert("azimuth", QJsonValue(azimuth));
+    }
+    if(m_elevation_isSet){
+        obj->insert("elevation", QJsonValue(elevation));
+    }
+    if(serial_port != nullptr && *serial_port != QString("")){
+        toJsonValue(QString("serialPort"), serial_port, obj, QString("QString"));
+    }
+    if(m_baud_rate_isSet){
+        obj->insert("baudRate", QJsonValue(baud_rate));
+    }
+    if(m_track_isSet){
+        obj->insert("track", QJsonValue(track));
+    }
+    if(title != nullptr && *title != QString("")){
+        toJsonValue(QString("title"), title, obj, QString("QString"));
+    }
+    if(m_rgb_color_isSet){
+        obj->insert("rgbColor", QJsonValue(rgb_color));
+    }
+    if(m_device_index_isSet){
+        obj->insert("deviceIndex", QJsonValue(device_index));
+    }
+    if(m_channel_index_isSet){
+        obj->insert("channelIndex", QJsonValue(channel_index));
+    }
+    if(m_use_reverse_api_isSet){
+        obj->insert("useReverseAPI", QJsonValue(use_reverse_api));
+    }
+    if(reverse_api_address != nullptr && *reverse_api_address != QString("")){
+        toJsonValue(QString("reverseAPIAddress"), reverse_api_address, obj, QString("QString"));
+    }
+    if(m_reverse_api_port_isSet){
+        obj->insert("reverseAPIPort", QJsonValue(reverse_api_port));
+    }
+    if(m_reverse_api_device_index_isSet){
+        obj->insert("reverseAPIDeviceIndex", QJsonValue(reverse_api_device_index));
+    }
+    if(m_reverse_api_channel_index_isSet){
+        obj->insert("reverseAPIChannelIndex", QJsonValue(reverse_api_channel_index));
+    }
+
+    return obj;
+}
+
+qint32
+SWGGS232ControllerSettings::getAzimuth() {
+    return azimuth;
+}
+void
+SWGGS232ControllerSettings::setAzimuth(qint32 azimuth) {
+    this->azimuth = azimuth;
+    this->m_azimuth_isSet = true;
+}
+
+qint32
+SWGGS232ControllerSettings::getElevation() {
+    return elevation;
+}
+void
+SWGGS232ControllerSettings::setElevation(qint32 elevation) {
+    this->elevation = elevation;
+    this->m_elevation_isSet = true;
+}
+
+QString*
+SWGGS232ControllerSettings::getSerialPort() {
+    return serial_port;
+}
+void
+SWGGS232ControllerSettings::setSerialPort(QString* serial_port) {
+    this->serial_port = serial_port;
+    this->m_serial_port_isSet = true;
+}
+
+qint32
+SWGGS232ControllerSettings::getBaudRate() {
+    return baud_rate;
+}
+void
+SWGGS232ControllerSettings::setBaudRate(qint32 baud_rate) {
+    this->baud_rate = baud_rate;
+    this->m_baud_rate_isSet = true;
+}
+
+qint32
+SWGGS232ControllerSettings::getTrack() {
+    return track;
+}
+void
+SWGGS232ControllerSettings::setTrack(qint32 track) {
+    this->track = track;
+    this->m_track_isSet = true;
+}
+
+QString*
+SWGGS232ControllerSettings::getTitle() {
+    return title;
+}
+void
+SWGGS232ControllerSettings::setTitle(QString* title) {
+    this->title = title;
+    this->m_title_isSet = true;
+}
+
+qint32
+SWGGS232ControllerSettings::getRgbColor() {
+    return rgb_color;
+}
+void
+SWGGS232ControllerSettings::setRgbColor(qint32 rgb_color) {
+    this->rgb_color = rgb_color;
+    this->m_rgb_color_isSet = true;
+}
+
+qint32
+SWGGS232ControllerSettings::getDeviceIndex() {
+    return device_index;
+}
+void
+SWGGS232ControllerSettings::setDeviceIndex(qint32 device_index) {
+    this->device_index = device_index;
+    this->m_device_index_isSet = true;
+}
+
+qint32
+SWGGS232ControllerSettings::getChannelIndex() {
+    return channel_index;
+}
+void
+SWGGS232ControllerSettings::setChannelIndex(qint32 channel_index) {
+    this->channel_index = channel_index;
+    this->m_channel_index_isSet = true;
+}
+
+qint32
+SWGGS232ControllerSettings::getUseReverseApi() {
+    return use_reverse_api;
+}
+void
+SWGGS232ControllerSettings::setUseReverseApi(qint32 use_reverse_api) {
+    this->use_reverse_api = use_reverse_api;
+    this->m_use_reverse_api_isSet = true;
+}
+
+QString*
+SWGGS232ControllerSettings::getReverseApiAddress() {
+    return reverse_api_address;
+}
+void
+SWGGS232ControllerSettings::setReverseApiAddress(QString* reverse_api_address) {
+    this->reverse_api_address = reverse_api_address;
+    this->m_reverse_api_address_isSet = true;
+}
+
+qint32
+SWGGS232ControllerSettings::getReverseApiPort() {
+    return reverse_api_port;
+}
+void
+SWGGS232ControllerSettings::setReverseApiPort(qint32 reverse_api_port) {
+    this->reverse_api_port = reverse_api_port;
+    this->m_reverse_api_port_isSet = true;
+}
+
+qint32
+SWGGS232ControllerSettings::getReverseApiDeviceIndex() {
+    return reverse_api_device_index;
+}
+void
+SWGGS232ControllerSettings::setReverseApiDeviceIndex(qint32 reverse_api_device_index) {
+    this->reverse_api_device_index = reverse_api_device_index;
+    this->m_reverse_api_device_index_isSet = true;
+}
+
+qint32
+SWGGS232ControllerSettings::getReverseApiChannelIndex() {
+    return reverse_api_channel_index;
+}
+void
+SWGGS232ControllerSettings::setReverseApiChannelIndex(qint32 reverse_api_channel_index) {
+    this->reverse_api_channel_index = reverse_api_channel_index;
+    this->m_reverse_api_channel_index_isSet = true;
+}
+
+
+bool
+SWGGS232ControllerSettings::isSet(){
+    bool isObjectUpdated = false;
+    do{
+        if(m_azimuth_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_elevation_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(serial_port && *serial_port != QString("")){
+            isObjectUpdated = true; break;
+        }
+        if(m_baud_rate_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_track_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(title && *title != QString("")){
+            isObjectUpdated = true; break;
+        }
+        if(m_rgb_color_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_device_index_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_channel_index_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_use_reverse_api_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(reverse_api_address && *reverse_api_address != QString("")){
+            isObjectUpdated = true; break;
+        }
+        if(m_reverse_api_port_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_reverse_api_device_index_isSet){
+            isObjectUpdated = true; break;
+        }
+        if(m_reverse_api_channel_index_isSet){
+            isObjectUpdated = true; break;
+        }
+    }while(false);
+    return isObjectUpdated;
+}
+}
+
diff --git a/swagger/sdrangel/code/qt5/client/SWGGS232ControllerSettings.h b/swagger/sdrangel/code/qt5/client/SWGGS232ControllerSettings.h
new file mode 100644
index 000000000..d62a535ba
--- /dev/null
+++ b/swagger/sdrangel/code/qt5/client/SWGGS232ControllerSettings.h
@@ -0,0 +1,137 @@
+/**
+ * SDRangel
+ * This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1, USRP and FunCube    ---   Limitations and specifcities:    * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method.   * Preset import and export from/to file is a server only feature.   * Device set focus is a GUI only feature.   * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator   * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time   * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time    --- 
+ *
+ * OpenAPI spec version: 4.15.0
+ * Contact: f4exb06@gmail.com
+ *
+ * NOTE: This class is auto generated by the swagger code generator program.
+ * https://github.com/swagger-api/swagger-codegen.git
+ * Do not edit the class manually.
+ */
+
+/*
+ * SWGGS232ControllerSettings.h
+ *
+ * GS-232 Controller settings
+ */
+
+#ifndef SWGGS232ControllerSettings_H_
+#define SWGGS232ControllerSettings_H_
+
+#include <QJsonObject>
+
+
+#include <QString>
+
+#include "SWGObject.h"
+#include "export.h"
+
+namespace SWGSDRangel {
+
+class SWG_API SWGGS232ControllerSettings: public SWGObject {
+public:
+    SWGGS232ControllerSettings();
+    SWGGS232ControllerSettings(QString* json);
+    virtual ~SWGGS232ControllerSettings();
+    void init();
+    void cleanup();
+
+    virtual QString asJson () override;
+    virtual QJsonObject* asJsonObject() override;
+    virtual void fromJsonObject(QJsonObject &json) override;
+    virtual SWGGS232ControllerSettings* fromJson(QString &jsonString) override;
+
+    qint32 getAzimuth();
+    void setAzimuth(qint32 azimuth);
+
+    qint32 getElevation();
+    void setElevation(qint32 elevation);
+
+    QString* getSerialPort();
+    void setSerialPort(QString* serial_port);
+
+    qint32 getBaudRate();
+    void setBaudRate(qint32 baud_rate);
+
+    qint32 getTrack();
+    void setTrack(qint32 track);
+
+    QString* getTitle();
+    void setTitle(QString* title);
+
+    qint32 getRgbColor();
+    void setRgbColor(qint32 rgb_color);
+
+    qint32 getDeviceIndex();
+    void setDeviceIndex(qint32 device_index);
+
+    qint32 getChannelIndex();
+    void setChannelIndex(qint32 channel_index);
+
+    qint32 getUseReverseApi();
+    void setUseReverseApi(qint32 use_reverse_api);
+
+    QString* getReverseApiAddress();
+    void setReverseApiAddress(QString* reverse_api_address);
+
+    qint32 getReverseApiPort();
+    void setReverseApiPort(qint32 reverse_api_port);
+
+    qint32 getReverseApiDeviceIndex();
+    void setReverseApiDeviceIndex(qint32 reverse_api_device_index);
+
+    qint32 getReverseApiChannelIndex();
+    void setReverseApiChannelIndex(qint32 reverse_api_channel_index);
+
+
+    virtual bool isSet() override;
+
+private:
+    qint32 azimuth;
+    bool m_azimuth_isSet;
+
+    qint32 elevation;
+    bool m_elevation_isSet;
+
+    QString* serial_port;
+    bool m_serial_port_isSet;
+
+    qint32 baud_rate;
+    bool m_baud_rate_isSet;
+
+    qint32 track;
+    bool m_track_isSet;
+
+    QString* title;
+    bool m_title_isSet;
+
+    qint32 rgb_color;
+    bool m_rgb_color_isSet;
+
+    qint32 device_index;
+    bool m_device_index_isSet;
+
+    qint32 channel_index;
+    bool m_channel_index_isSet;
+
+    qint32 use_reverse_api;
+    bool m_use_reverse_api_isSet;
+
+    QString* reverse_api_address;
+    bool m_reverse_api_address_isSet;
+
+    qint32 reverse_api_port;
+    bool m_reverse_api_port_isSet;
+
+    qint32 reverse_api_device_index;
+    bool m_reverse_api_device_index_isSet;
+
+    qint32 reverse_api_channel_index;
+    bool m_reverse_api_channel_index_isSet;
+
+};
+
+}
+
+#endif /* SWGGS232ControllerSettings_H_ */
diff --git a/swagger/sdrangel/code/qt5/client/SWGModelFactory.h b/swagger/sdrangel/code/qt5/client/SWGModelFactory.h
index 867e0913e..420db2ec7 100644
--- a/swagger/sdrangel/code/qt5/client/SWGModelFactory.h
+++ b/swagger/sdrangel/code/qt5/client/SWGModelFactory.h
@@ -14,6 +14,8 @@
 #define ModelFactory_H_
 
 
+#include "SWGADSBDemodReport.h"
+#include "SWGADSBDemodSettings.h"
 #include "SWGAMBEDevice.h"
 #include "SWGAMBEDevices.h"
 #include "SWGAMDemodReport.h"
@@ -96,6 +98,7 @@
 #include "SWGFrequencyRange.h"
 #include "SWGGLScope.h"
 #include "SWGGLSpectrum.h"
+#include "SWGGS232ControllerSettings.h"
 #include "SWGGain.h"
 #include "SWGHackRFInputSettings.h"
 #include "SWGHackRFOutputSettings.h"
@@ -203,6 +206,12 @@
 namespace SWGSDRangel {
 
   inline void* create(QString type) {
+    if(QString("SWGADSBDemodReport").compare(type) == 0) {
+      return new SWGADSBDemodReport();
+    }
+    if(QString("SWGADSBDemodSettings").compare(type) == 0) {
+      return new SWGADSBDemodSettings();
+    }
     if(QString("SWGAMBEDevice").compare(type) == 0) {
       return new SWGAMBEDevice();
     }
@@ -449,6 +458,9 @@ namespace SWGSDRangel {
     if(QString("SWGGLSpectrum").compare(type) == 0) {
       return new SWGGLSpectrum();
     }
+    if(QString("SWGGS232ControllerSettings").compare(type) == 0) {
+      return new SWGGS232ControllerSettings();
+    }
     if(QString("SWGGain").compare(type) == 0) {
       return new SWGGain();
     }