Main UoS³ telemetry application
Purpose: Parse received packets from CubeSat, and upload onto server.
- Interface to read data from table in SQL db and display row-by-row on screen. (Done)
- Add buttons to navigate the rows. (Done)
- Add basic graphing functionality. (TBC)
- Integrate with data server. (Partially done)
- Receive new upstream data from decoder-end. (Partially done)
- Be able to add timestamps to fresh data and push to db. (Done)
Currently:
- cereal (1.2.2)
- For simplicity, the source code of cereal is included in the repo, in
app/cereal
.
- For simplicity, the source code of cereal is included in the repo, in
Building the application has been tested on Windows and Ubuntu.
- Clone or download the repo.
- Download and install Qt Creator.
- (To use database functionality) Download and install SQLite.
- (To use database functionality) Create a SQLite database from
sql/createtables.sql
, and either move it to the output binary folder or point the application at it. - Create a
secrets
file, as discussed below. - Launch Qt Creator, and import the project by pointing it to
C:\Path\to\the\repo\app\app.pro
. - Build -> Build project "app" (or press
Ctrl+B
).
You have two options:
(for minimal dependency downloads, and on servers without X)
- Clone the repo.
- Create a
secrets
file, as discussed below. - Install qt:
$ sudo apt install qt5-default
. - (For database functionality) install sqlite, and the database driver
$ sudo apt install sqlite3 libqt5sql5-sqlite
- (To use database functionality) Create a SQLite database from
sql/createtables.sql
, and either move it to the output binary folder or point the application at it. $ cd /path/to/the/repo/app/
$ qmake
$ make
(if you want to develop the application, or if 'just build' isn't working on its own)
- Clone the repo.
- Create a
secrets
file, as discussed below. - Install qt creator:
$ sudo apt install qtcreator
. - (For database functionality) install sqlite, and the database driver
$ sudo apt install sqlite3 libqt5sql5-sqlite
- (To use database functionality) Create a SQLite database from
sql/createtables.sql
, and either move it to the output binary folder or point the application at it. - Launch Qt Creator, and import the project by pointing it to
/path/to/the/repo/app/app.pro
. - Build -> Build project "app" (or press
Ctrl+B
).
Information on connecting to the server/local database is currently stored in
the app/secrets/secrets.h
file. This file is not included in the repo.
However, there is an example file, secrets.exmaple.h
, to show you the basic
structure:
#include <string>
namespace secrets {
// for the upload server.
static const std::string address = "localhost:8080";
static const std::string app_key = "my super cool app key";
// for the local database.
static const std::string username = "root";
static const std::string password = "hunter2";
}
To make a secrets file, simply fill in the correct values, and save the file as
app/secrets/secrets.h
.
Charlie West-Taylor
Hubert Khoo Hui Boo
James Robert Brown
Mohammed Nawabuddin