Skip to content

Commit

Permalink
testing stuff (#594)
Browse files Browse the repository at this point in the history
* 2.5.0-beta2 (#590)

* BIG pull (a lot of new features and improvements) (#587)

* 1) transparent openhd settings panel 2) add stats per card using newer wb

* 1) add UI element to change keyframe / fec percentage
2) automatically remove stbc warning after 10seconds

* 1) add UI element to change keyframe / fec percentage
2) automatically remove stbc warning after 10seconds

* recording - send recording status in regular intervals, such that auto on arm can be made visible reliably on air

* document param wb v bandw perc

* update mavlink

* update mavlink

* update mavlink

* update mavlink

* update mavlink

* update mavlink

* update mavlink

* update mavlink

* update mavlink

* update mavlink

* update mavlink

* add option to hide identity
use the new openhd stats

* add passive mode in UI

* add passive mode in UI

* finally make record video widget functional

* finally make record video widget functional

* finally make record video widget functional

* finally make record video widget functional

* simplify card model

* log when things go wrong

* log when things go wrong

* log when things go wrong

* connect to the air unit directly, too

* document, add GIMBAL_DEVICE_ATTITUDE_STATUS

* argh, now i know why (only android) crashed on overwrite home (function returns bool but no ret statement)

* log changed tx power & disconnected card

* we do not need to tell the user to reduce bitrate anymore

* we do not need to tell the user to reduce bitrate anymore

* we do not need to tell the user to reduce bitrate anymore

* improve rate widget

* easy select video resolution

* easy select video resolution

* easy select video resolution

* easy select video resolution

* easy select video resolution

* easy select video resolution

* new feature - switch primary and secondary video at run time in qopenhd
mostly for android, where we have no pip video yet

* new feature - switch primary and secondary video at run time in qopenhd
mostly for android, where we have no pip video yet

* new feature - switch primary and secondary video at run time in qopenhd
mostly for android, where we have no pip video yet

* new feature - switch primary and secondary video at run time in qopenhd
mostly for android, where we have no pip video yet

* notify user of dualcam

* show quickselect only if specific cameras

* show quickselect only if specific cameras

* automatically set switch to false on start

* add widgets for distance sensor and (GPS) time

* add widgets for distance sensor and (GPS) time

* air battery multiple sensor crap

* air battery multiple sensor crap

* gracefully log if fc sys id mismatch instead of crash

* annoying fc stuff

* show stbc, lpdc, short gi enabled / disabled

* improve fc discovery

* small fixes

* fix stride

* fix stride

* typo

* get rid of the non external video decode service mmal renderer

* get rid of the non external video decode service mmal renderer

* adjust widget size

* unused

* update mavlink

* update mavlink

* mark as v2.4.2 - beta

* fix bitrate

* fix stbc bitfield

* external decode service(s) for ubuntu

* external decode service(s) for ubuntu

* external decode service(s) for ubuntu

* external decode service(s) for ubuntu

* document

* improve rate control widget, add batt id 0 & 1 differentiation

* decode service, TODO swap

* add channel width easy select

* add channel width easy select

* add channel width easy select

* default show volts and amps

* automatically log warning when FC is quiet, autmatically request data stream rate(s)

* automatically log warning when FC is quiet, autmatically request data stream rate(s)

* small improvements

* message interval

* add tele in pps stat calculated in qopenhd

* add tele in pps stat calculated in qopenhd

* we now don't need that much smoothing anymore

* A bit more customization for some widgets

* vertical speed - differentiate into 2 widgets (gauge and non-gauge), gauge off default, simple on default

* add no sync feature

* add no sync feature

* improve (style) of widgets

* improve (style) of widgets

* improve mission support

* improve rc controls widget

* a bit more documentation, stbc warn on broadcast message, improve control widget

* timeouts on message(s) for easier navigation

* improve flight distance and efficiency (more accurate)

* ladders - finalize unit(s)
hud messages - up to 5 simultaneously
log info when cam is restarting

* ladders - finalize unit(s)
hud messages - up to 5 simultaneously
log info when cam is restarting
vertical speed - add imperial support

* ladders - finalize unit(s)
hud messages - up to 5 simultaneously
log info when cam is restarting
vertical speed - add imperial support

* add big "disarmed" text

* ladders - finalize unit(s)
hud messages - up to 5 simultaneously
log info when cam is restarting
vertical speed - add imperial support

* improve hide identity

* improve hide identity

* show message

* add dbm low warning feature

* add dbm low warning feature

* add dbm low warning feature

* add dbm low warning feature

* update mavsdk

* add signal quality percent

* add signal quality percent

* add signal quality percent

* add signal quality percent

* fix android

* fix android

* bank angle - off by default and rename property settings

* slightly reposition elements, shorten stbc message

* add XDecimalSpinBox.qml -> hide lat, lon now accepts float values

* // In case the message is removed automatically after 1 or less seconds, don't show the okay button

* rename

* add foreign packets percentage, vertical speed - add imperial (feet per second), add option to set screen scale as low as 0.3

* various small ui improvements, name 2.5.0-beta2

* various small ui improvements, name 2.5.0-beta2, don't show pllution by default

* enable building in the right branch

* add sensor type

* exp android - what about tcp

* exp android - what about tcp

* android - show connect view first

* android - show connect view first

* android - show connect view first

* android - show connect view first

* 2 small changes (#591)

* add sensor type

* exp android - what about tcp

* exp android - what about tcp

* android - show connect view first

* android - show connect view first

* android - show connect view first

* android - show connect view first

* name 2.5.0-beta3

* remove git from dependencies

* Better error output (#592)

* small logging improvements

* small logging improvements

* improve the Mavlink frequency param panel & synchronized settings

* improve the Mavlink frequency param panel & synchronized settings

* add progress for channel scan, add analyze channels

* add progress for channel scan, add analyze channels

* rename credits and make them visible

* cleanup

* improve

* add progress for channel scan, add analyze channels, improve WB link idget, add undervolt rpi

* add undervolt (rpi)

* add undervolt (rpi)

* add undervolt (rpi)

* generate the HUD messages from status mavlink messages, not the log

* generate the HUD messages from status mavlink messages, not the log

* qml refactor - configpopup

* hint user at a system that is not alive

* UI improvements

* update prebuilts

* fix mavsdk

* update mavsdk

* update mavlink

* exp api 33

* improve UI

* improve UI

* improve UI

* rename to WBLinkSettingsHelper

* rename to openhd system ground / air settings

* update documentation

* tx error document

* fix comp telemetry (mavsdk) disabled

* disable adsb - even qgroundcontrol doesn't maintain this code anymore (opensky)

* actually, I am sorry, but remove adsb alltogether. I cannot maintain the code, and in it's current state it is not functional anyways.

* improve connect panel

* make it legally binding

* credits

* rename, refactor Q_INVOCABLE out of the models

* rename, refactor Q_INVOCABLE out of the models

* rename, refactor Q_INVOCABLE out of the models

* rename, refactor Q_INVOCABLE out of the models

* rename, refactor Q_INVOCABLE out of the models

* rename, refactor Q_INVOCABLE out of the models

* rename, refactor Q_INVOCABLE out of the models

* remove mavsdk::mission dependency

* remove mavsdk::mission dependency

* refactor code to finally get rid of mavsdk

* remove mavsdk::mission dependency

* remove mavsdk::mission dependency

* use CmdSender in FCMessageIntervalHandler

* use CmdSender in FCMessageIntervalHandler

* we are only interested in (primary) mission

* Make power action prettier, use generic buttons

* improve UI

* improve UI

* improve UI

* delete unused

* improve UI

* add new param class, replacing mavsdk

* add new param class, replacing mavsdk

* add new param class, replacing mavsdk

* add new param class, replacing mavsdk

* add new param class, replacing mavsdk

* add new param class, replacing mavsdk

* add new param class, replacing mavsdk

* add new param class, replacing mavsdk

* works, ready to completely remove mavsdk

* yeah, remove mavsdk dependency ;)

* improve UI

* improve UI

* improve UI

* improve UI

* udp / tcp connection

* udp / tcp connection

* udp / tcp connection

* udp / tcp connection

* make it compile on windows

* fix windows msvc

* simple buildtest

* include macosx test

* Update build_windows.yml

* Update macos.yml

* Update build_windows.yml

* Update macos.yml

* Update macos.yml

* Update build_windows.yml

* Update build_windows.yml

* Update macos.yml

* Update macos.yml

* Update build_windows.yml

* Update macos.yml

* Update build_windows.yml

* Update macos.yml

* Update macos.yml

* zip whole folder

* Update build_windows.yml

* Update build_windows.yml

* Update build_windows.yml

* Update build_windows.yml

* Update build_windows.yml

* Update build_windows.yml

* Update build_windows.yml

* Update build_windows.yml

* Update build_windows.yml

* Update build_install_mavsdk_static.sh

* Update build_windows.yml

* Update build_windows.yml

* fix qmlpath

* cleanup

* fix duplicate

* fix duplicate

* improve UI

* add dialoque do you want to change frequency / channel width though armed

* improve UI

* improve UI

* delete unused

* improve channels UI

* improve channels UI

* remove custom qt and increase version

* remove custom qt linker

* Update package.sh

* Update before-install.sh

remove old QT version in x86

* works better without

* improve UI

* Update rock5_qopenhd.service

* finish rock5 low latency decode

* delete unused, add some type of keyboard / joystick navigation

* delete unused, add some type of keyboard / joystick navigation

* delete unused, add some type of keyboard / joystick navigation

* delete unused, add some type of keyboard / joystick navigation

* update mavlink

* update mavlink

* ui improvements, including toast card

* delete obsolete mavsdk

* add version mismatch button(s)

* remove custom qt in build-test

* add qml-module-qt-labs-platform

* merge,document

* merge,document

---------

Co-authored-by: Consti10 <[email protected]>
Co-authored-by: Roman Buldygin <[email protected]>
Co-authored-by: ru26kif <[email protected]>
  • Loading branch information
4 people authored Sep 24, 2023
1 parent 50561c0 commit 734c60d
Show file tree
Hide file tree
Showing 222 changed files with 9,034 additions and 10,045 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/build_package_Rock5.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: build_package_rock5_debian

on:
push:
branches: [ "2.4-evo" ]
branches: [ "2.5-evo" ]
pull_request:
branches: [ "2.4-evo" ]
branches: [ "2.5-evo" ]

jobs:
build:
Expand Down Expand Up @@ -36,7 +36,7 @@ jobs:
- name: Build Package
run: |
git clone https://github.com/OpenHD/ChrootCompilationTest /opt/ChrootCompilationTest
git clone -b 2.4-evo https://github.com/OpenHD/QOpenHD --recursive /opt/ChrootCompilationTest/additionalFiles
git clone -b 2.5-evo https://github.com/OpenHD/QOpenHD --recursive /opt/ChrootCompilationTest/additionalFiles
echo $CLOUDSMITH_API_KEY > /opt/ChrootCompilationTest/additionalFiles/cloudsmith_api_key.txt
cd /opt/ChrootCompilationTest/
sudo apt update
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build_package_rpi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: build_package_rpi

on:
push:
branches: [ "2.4-evo" ]
branches: [ "2.5-evo" ]
pull_request:
branches: [ "2.4-evo" ]
branches: [ "2.5-evo" ]

env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
Expand Down
17 changes: 3 additions & 14 deletions .github/workflows/build_package_x86_jammy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: build_package_x86_22

on:
push:
branches: [ "2.4-evo" ]
branches: [ "2.5-evo" ]
pull_request:
branches: [ "2.4-evo" ]
branches: [ "2.5-evo" ]

env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
Expand Down Expand Up @@ -33,21 +33,10 @@ jobs:
sudo rm -rf /var/lib/apt/lists/*
sudo apt upgrade -y
sudo add-apt-repository universe
sudo ./install_build_dep.sh ubuntu-x86 custom
sudo ./install_build_dep.sh ubuntu-x86
- name: Build with make
run: |
sudo rm -f /etc/ld.so.conf.d/qt.conf
sudo touch /etc/ld.so.conf.d/qt.conf
sudo sh -c 'echo "/opt/Qt5.15.7/lib/" >/etc/ld.so.conf.d/qt.conf'
sudo ldconfig
export PATH="$PATH:/opt/Qt5.15.7/bin/"
sudo rm -f /usr/bin/qmake
sudo ln -s /opt/Qt5.15.7/bin/qmake /usr/bin/qmake
echo "QT successfully linked"
sudo ./package.sh x86_64 ubuntu jammy
- name: Push
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build_package_x86_usb_release.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: build_package_x86_23.04
name: build_package_LUNAR

on:
push:
Expand Down
125 changes: 125 additions & 0 deletions .github/workflows/build_windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
name: Windows Release

on: [push]

defaults:
run:
shell: cmd

env:
SOURCE_DIR: ${{ github.workspace }}
ARTIFACT: QOpenHD-Evo.zip

jobs:
build:
runs-on: windows-2019

steps:
- name: Checkout repo
uses: actions/checkout@v3
with:
submodules: recursive

- name: Install Qt
uses: jurplel/install-qt-action@v3
with:
aqtversion: '==2.1.*'
version: '5.15.2'
host: 'windows'
target: 'desktop'
arch: 'win64_msvc2019_64'
tools: 'tools_ifw tools_qtcreator,qt.tools.qtcreator'
setup-python: false

- name: Download JOM
uses: suisei-cn/actions-download-file@v1
with:
url: http://download.qt.io/official_releases/jom/jom.zip

- name: Unzip JOM
run: |
7z x jom.zip -ojom
- uses: ilammy/msvc-dev-cmd@v1
- name: Build
run: |
ls D:\a\QOpenHD\Qt\5.15.2\msvc2019_64\bin\
rm -rf build
mkdir build
cd build
qmake CONFIG+=release ..\QOpenHD.pro
..\jom\jom -j2
ls -a
cd release
cd
cd D:\a\QOpenHD\Qt\5.15.2\msvc2019_64\bin\
cp *.dll D:\a\QOpenHD\QOpenHD\build\release\
cd D:\a\QOpenHD\QOpenHD\build\release\
mkdir platforms
cd D:\a\QOpenHD\Qt\5.15.2\msvc2019_64\plugins\platforms\
cp *.dll D:\a\QOpenHD\QOpenHD\build\release\platforms\
cd D:\a\QOpenHD\Qt\5.15.2\msvc2019_64\qml\
cp -r * D:\a\QOpenHD\QOpenHD\build\release\
cd D:\a\QOpenHD\QOpenHD\build\release\
rm -Rf Qt3D
rm -Rf QtBluetooth
rm -Rf QtDataVisualization
rm -Rf QtGamepad
rm -Rf QtNfc
rm -Rf QtPurchasing
rm -Rf QtQuick3D
rm -Rf QtRemoteObjects
rm -Rf QtScxml
rm -Rf QtSensors
rm -Rf QtWebChannel
rm -Rf QtWebEngine
rm -Rf QtWebSockets
rm -Rf QtWebView
rm -Rf QtWinExtras
rm Qt5Bluetooth.dll
rm Qt5Bluetoothd.dll
rm QtGamepad.dll
rm QtGamepadd.dll
rm QtWebChannel.dll
rm QtWebChanneld.dll
rm Qt5WebSockets.dll
rm Qt5WebSocketsd.dll
rm Qt5WebView.dll
rm Qt5WebViewd.dll
rm Qt53DAnimation.dll
rm Qt53DAnimationd.dll
rm Qt53DACore.dll
rm Qt53DACored.dll
rm Qt53DExtras.dll
rm Qt53DExtrasd.dll
rm Qt53DInput.dll
rm Qt53DInputd.dll
rm Qt53DLogic.dll
rm Qt53DLogicd.dll
rm Qt53DQuick.dll
rm Qt53DQuickd.dll
rm Qt53DQuickAnimation.dll
rm Qt53DQuickAnimationd.dll
rm Qt53DQuickExtras.dll
rm Qt53DQuickExtrasd.dll
rm Qt53DQuickInput.dll
rm Qt53DQuickInputd.dll
rm Qt53DQuickRender.dll
rm Qt53DQuickRenderd.dll
rm Qt53DQuickScene2D.dll
rm Qt53DQuickScene2Dd.dll
rm Qt53DRender.dll
rm Qt53DRenderd.dll
ls -a
cd
- name: Upload to Github
uses: 'actions/upload-artifact@v2'
with:
name: "QOpenHD"
path: |
D:\a\QOpenHD\QOpenHD\build\release\
3 changes: 1 addition & 2 deletions .github/workflows/ios.yml.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,7 @@ jobs:

- name: Install Dependencies
run: |

sudo ./build_install_mavsdk_static.sh
# TODO ?

- name: Build with make
run: |
Expand Down
41 changes: 41 additions & 0 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Build MacOS

on:
push:

env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release

jobs:
build:
runs-on: macos-latest

steps:
- uses: actions/checkout@v3

- name: Checkout repo
uses: actions/checkout@v3
with:
submodules: recursive


- name: Install Qt
uses: jurplel/install-qt-action@v3

# - name: Install create-dmg
# run: brew install create-dmg


- name: Build
# Build your program with the given configuration
run: |
qmake CONFIG+=release QOpenHD.pro
- name: Upload to Github
uses: 'actions/upload-artifact@v3'
with:
name: "OpenHD Image Writer"
path: |
*.app
2 changes: 1 addition & 1 deletion .github/workflows/ubuntu22_build_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
sudo apt upgrade -y
sudo apt remove libunwind-13-dev
sudo apt install -y libunwind-dev libgstreamer-plugins-base1.0-dev
sudo ./install_build_dep.sh ubuntu-x86 custom
sudo ./install_build_dep.sh ubuntu-x86
qmake --version
- name: Build with make
run: |
Expand Down
9 changes: 3 additions & 6 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@

[submodule "lib/MAVSDK"]
path = lib/MAVSDK
url = https://github.com/OpenHD/MAVSDK.git
[submodule "lib/mavsdk_prebuilts"]
path = lib/mavsdk_prebuilts
url = https://github.com/OpenHD/mavsdk_prebuilts.git
[submodule "lib/mavlink-headers"]
path = lib/mavlink-headers
url = https://github.com/OpenHD/mavlink-headers.git
4 changes: 4 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,10 @@ terms of section 4, provided that you also meet all of these conditions:
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.

e) The "Credits" section of this App is subject to the following terms in addition to the GNU General Public License (GPL) version 3:
The content presented in the "Credits" section of this App is considered a copyrighted declaration. Unauthorized modifications, suppression, or removal of this content are strictly prohibited without explicit consent from the OpenHD development team.


A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
Expand Down
21 changes: 2 additions & 19 deletions QOpenHD.pro
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,6 @@ LinuxBuild {
# (aka all these really should come with pretty much any qt install)
# In general, parts of QOpenHD that need additional libraries should have their code in a subdirectory with a .pri where those
# dependencies are added such that you can easily compile the project even on systems that might lack some of those qt functionalities
# see app/adsb/adsb_lib.pri for an example
QT +=core quick qml gui \
widgets
QT += opengl
Expand All @@ -77,7 +76,7 @@ INCLUDEPATH += $$PWD/lib
INCLUDEPATH += $$PWD/app
INCLUDEPATH += $$PWD/app/exp

# QOpenHD telemetry (mavlink, partially based on MAVSDK) features
# QOpenHD telemetry (mavlink)
# REQUIRED - without it QOpenHD will compile, but be pretty much non functional
include(app/telemetry/telemetry.pri)

Expand All @@ -99,12 +98,6 @@ LinuxBuild {
include(app/videostreaming/gstreamer/gst_video.pri)
}

# adsb library
# Only tested on linux so far, but might work on other platforms already / with minimal effort, too
LinuxBuild {
include(app/adsb/adsb_lib.pri)
}

# All Generic files / files that literally have 0!! dependencies other than qt
SOURCES += \
app/logging/hudlogmessagesmodel.cpp \
Expand Down Expand Up @@ -139,7 +132,6 @@ SOURCES += \
app/osd/horizonladder.cpp \
app/osd/speedladder.cpp \
app/osd/altitudeladder.cpp \
app/osd/drawingcanvas.cpp \
app/osd/flightpathvector.cpp \
app/osd/aoagauge.cpp \
app/osd/performancehorizonladder.cpp \
Expand All @@ -149,7 +141,6 @@ HEADERS += \
app/osd/horizonladder.h \
app/osd/speedladder.h \
app/osd/altitudeladder.h \
app/osd/drawingcanvas.h \
app/osd/flightpathvector.h \
app/osd/debug_overdraw.hpp \
app/osd/aoagauge.h \
Expand Down Expand Up @@ -182,15 +173,7 @@ DISTFILES += \
android/src/org/freedesktop/gstreamer/androidmedia/GstAmcOnFrameAvailableListener.java \
android/src/org/openhd/IsConnected.java \
android/src/org/openhd/LiveVideoPlayerWrapper.java \
app/adsb/adsb_lib.pri \
app/logging/README.txt \
app/openhd_systems/README.md \
app/osd_extra/Readme.txt \
app/platform/README.md \
app/telemetry/telemetry.pri \
app/util/README.md \
app/videostreaming/README.md \
app/videostreaming/README.txt \
app/videostreaming/gst_qmlglsink/gst_video.pri \
app/videostreaming/vscommon/vscommon.pri \
app/vs_android/videostreamingandroid.pri \
Expand Down Expand Up @@ -248,7 +231,7 @@ JetsonBuild {
}

WindowsBuild {
# This aparently makes qt use absolute paths, otherwise we get problems with mavsdk
# This aparently makes qt use absolute paths, otherwise we get compile issues ?
QMAKE_PROJECT_DEPTH = 0
}

Expand Down
Loading

0 comments on commit 734c60d

Please sign in to comment.