Space-Enterprise-at-Berkeley / Ground-Station

Read data packets from sensors, and decode. Send command packets and interface with ground station switches.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ground-Station

Setup:

The ground station will likely be a laptop or a Raspberry pi, therefore most of this will be in python.

Windows users:

  1. Make sure git is installed with symlink support

During the install of git on Windows, enable symbolic links:

  1. Tell Bash to create hardlinks instead of symlinks

Edit: (git folder)/etc/bash.bashrc and add to bottom: MSYS=winsymlinks:nativestrict

  1. Set git config to use symlinks
git config core.symlinks true

or

git clone -c core.symlinks=true <URL>

NOTE: I have tried adding this to the global git config and at the moment it is not working for me so I recommend adding this to each repo...

  1. Pull the repo

NOTE: Unless you have enabled developer mode in the latest version of Windows 10, you need to run bash as administrator to create symlinks.

  1. Reset all Symlinks (optional) If you have an existing repo, or are using submodules you may find that the symlinks are not being created correctly so to refresh all the symlinks in the repo you can run these commands.
find -type l -delete
git reset --hard

NOTE: This will reset any changes since last commit so make sure you have committed first.

Decode:

Decode data packets streaming wirelessly into the ground station.

Data packets are of format (NNxxxxx).

NN is the integer ID of the sensor. Guaranteed to be 2 characters. For example, sensor ID 1 will be 0 padded to 01.

xxxxx is the sensor reading, in arbitary units mapped to the sensor ID. Guaranteed to be 5 characters. For example, a reading of 1 will be 0 padded to 00001.

'(' and ')' are determined packet start and termination packets.

TO-DO: Command send from ground station.

TO-DO: Read switch states.

TO-DO: Send data to computer.

About

Read data packets from sensors, and decode. Send command packets and interface with ground station switches.

License:GNU General Public License v3.0


Languages

Language:Python 65.9%Language:Jupyter Notebook 29.7%Language:C++ 4.4%