Skip to content
Andrew Demenagas edited this page Dec 29, 2020 · 7 revisions

Home | Protocol

1. Introduction

The intermediate-server project covers the design, implementation, and testing of the new Intermediate server Epic. Moreover, it covers the telemetry communication protocol and translation services for the front-end GUI.

2. What this Repository Covers

The purpose of the intermediate server Repository covers the following points:

  • Re-design the SUFST telemetry communication protocol for easier use for the less experienced members of the team. However, the robustness and integrity of the protocol must be kept.
  • Design, implement and test a new intermediate server based in Python which is responsible for the receiving, translation and sending of the raw telemetry protocol to a JSON protocol for use with the GUI clients.
  • The intermediate server will incorporate both an XBee and socket reception sub-system which will allow for the reception of telemetry protocol frames over both XBee and Ethernet (or any socket-based data link).
  • The intermediate server will be a black-box application which is run on a host system to provide the required network translation services for the front-end GUI application.

3. What are the Deliverables

  • A simplified telemetry communication protocol.
  • A black-box intermediate server which translates the telemetry communication protocol from an Xbee and sockets source to a JSON format destination socket.

4. Known Bugs

  • For anyone trying to clone the repo and run the server code, there is a bug in the digi-xbee libraby that will cause mode.py to not compile with Python3.9.x (and maybe earlier versions)
  • As of December 29th 2020 this has been fixed and merged in the official repo's master branch here but not yet added released.
  • It is suggested to not install digi-xbee with pip and rather manually install the lib files from the master branch

5. Who is Responsible

  • Epic Lead: @Nathanrs97
  • Overseers: @lebedys @maxobrien
Clone this wiki locally