Skip to content

Rorchive/JSTDS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java Satellite Telemetry Decoding System (JSTDS)

Static Badge GitHub Issues GitHub Pull Requests GitHub contributors

OverviewRepository OrganizationUsage & OperationAcknowledgmentsLicense

Overview

This repository contains the software architecture for a LoRa Ground Station developed for the Object-Oriented Programming course at Inatel. Built with Java 17 and Maven, the project interfaces with LoRa radio hardware via serial communication to receive, decode, and display live satellite telemetry. The codebase implements advanced Object-Oriented concepts including MVC architecture, dynamic polymorphism, and the Factory design pattern, ensuring a decoupled and scalable system. It also features a real-time JavaFX dashboard, automated JUnit testing, and CI/CD pipelines via GitHub Actions.

JSTDS Logo

Repository Organization

  • src/main/java: Core Java application containing the hardware serial connection, the factory pattern decoders, data models, and the JavaFX user interface.
  • src/test/java: JUnit 5 test suite validating the integrity of the mission data extraction and telemetry decoding logic.
  • .github/workflows: Continuous Integration and Deployment scripts for automated Maven testing and JavaDoc generation.
  • pom.xml: Maven configuration file managing dependencies such as JavaFX, JUnit, and jSerialComm.

Usage & Operation

The application requires Java 17 and Maven. To run the software locally, connect the LoRa hardware to the designated COM port, clone the repository, and execute the application using the Maven command line:

git clone https://github.com/Rorchive/JSTDS.git
cd JSTDS
mvn clean compile
mvn javafx:run

To execute the automated unit testing suite:

mvn test

Acknowledgments

  • Special thanks to Prof. Flávio Henrique Madureira Bergamini from Inatel for his guidance in software architecture and object-oriented programming best practices.

License

This software project is licensed under the MIT License. Please note that included third-party dependencies, libraries, or APIs may be subject to their own respective licenses. All materials are provided "as is" without warranty of any kind, and the authors assume no liability for any direct or indirect damages, claims, or issues arising from their compilation, use, or implementation.


Rorchive Logo
📜 This project is part of Rorchive, my personal archive of activities and courses developed during my studies at Inatel.

Built with ❤️ by Rodrigo de Carvalho Andrade

About

Java Satellite Telemetry Decoding System

Topics

Resources

License

Stars

Watchers

Forks

Contributors