Skip to content

Scouting application for FRC Team 4343 using the Django framework

Notifications You must be signed in to change notification settings

AlexanderDefuria/SWISS

Repository files navigation

Welcome to FRC-Scouting

Registering For Use

We are proud to offer SWISS free of charge to all teams. In order to register users need the first 6 characters of their team's internal uuid. This is to prevent users from registering under teams that they are not a part of as we keep all data seperate based on the team that initially collected it. This means all data collected belongs to the team that collected it and them alone. No other team has access to that data. In order to register as the first user of a team, please email defuria.alexander@outlook.com and you will be provided with the information to register you and your team upon verification that you are indeed apart of the team you claim to be.

Timeline

Updates to 2022 version will be occuring until approximately Mid-November. These updates will be mostly visual. Mid-November Dev will be purged of all 2022 specfic references and templated to be ready for 2023 game. Until The start of 2023 most changes will be general and applicable to future versions. Start of 2023 will freeze and release 2022 Version Upon the release of the 2023 FRC season begin creating game specific models and forms in dev.

Raspberry Pi PAN Deployment (Bluetooth Access)

The web server is hosted from a raspberry pi during competition which creates a PAN network, (Bluetooth network) to allow other devices to connect to the web server. Using a wifi network would be much better but would be a violation of rule C05 of the FRC Event Rules Manual, bluetooth setup of this scouting system is not a violation of rule C05 as the wording is specific to WiFi wireless bands and standards. Community interpretation also supports the legality of using bluetooth networks in the stands.

A use tutorial can be found at https://swiss-scouting.ca/entry/tutorial/

Installation

Download the appropriate .deb release from the main repository and run sudo apt install ./FRC-Scouting-xxxxx to proceed with a full production ready installation.

Source Setup Linux

git clone https://github.com/AlexanderDefuria/FRC-Scouting.git
sudo apt-get install $(cat ./debian/dependencies.txt | tr '\n' ' ')
sudo python3 -m venv ./venv
sudo ./venv/bin/pip3 install -r ./requirements.txt

Running The Server

Development To run in Django's development mode ``` python3 manage.py runserver ```. To have it available from other devices record the ip address produced by ``` ipconfig ```. After running ``` sudo python3 manage.py 0.0.0.0:80 ``` navigate to the ip address from the other device. Ensure your firewall allows incoming connections over port 80.
Production To run in production follow this [guide from Digital Ocean](https://www.digitalocean.com/community/tutorials/how-to-set-up-django-with-postgres-nginx-and-gunicorn-on-ubuntu-16-04) to setup basic http access using nginx and gunicorn.

Connecting to Bluetooth

To reach the server running off the raspberry pi one must first connect to to the PAN netwrok named raspberrypi by default. The steps to do so are different on each platform.

Mobile
  • 1. Simply connect as per usual with any other bluetooth device.
  • 2. On android one must change the settings of the connection to enable internet access over bluetooth. Connect to 127.20.1.1/entry.
  • Windows

    Power Reqs

    image image image