RPL GUI for visualizing real-time telemetry data. Client side is built using React and Server side is built in Python. The server handles incoming packets from the board and sends it the client via websockets to be displayed in the GUI.
- Clone the repo
gh repo clone Rutgers-RPL/socket-rocket
- Install the required python packages
pip install requirements.txt
- Navigate to the GUI
cd react-gui
- Install the required node packages
npm install i
- Navigate to react-gui
cd react-gui
- Run the following command
npm start dev
- Plug in the board prior to running the server
- Run the following command
python server.py
- The server will prompt you to select the port by inputting the corresponding number
Note: If the board gets disconnected, you must restart the server.
NOTE: Setting up Sattelite maps will take some time. It's recommended to use pre-downloaded maps here (host it on RPL GDrive)
Download > Extract > paste sattelite and Tiles in react-gui/public/gps-info
-
Download Maperitive
-
Navigate to Open Street Maps
-
Click "Export" and select "Manually select a different area" on the sidebar on the left.
-
Chose the desired area and click export, which will download a .osm file
Note: Sometimes the area might too large/contain too many objects so you may have to re-size until OSM lets you export it
-
Open Maperitive, navigate to the top bar and click Map > Clear Map. Then navigate to File > Open Map Sources and select the downloaded .osm file.
-
Still in Maperitive, navigate to Tools > Generate Tiles. This will generate tiles and place them in the "Tiles" folder, which is in the same directory as Maperitive.exe
-
Copy-paste the "Tiles" folder (found in the same directory as Maperitive) into react-gui/public/gps-info
-
To generate new tiles, navigate to Tools > Clear Web Cache to delete the existing tiles or manually delete them from the "Tiles" folder. Then repeat the steps above.
-
Navigate to USGS Earth Explorer and create an account if you don't have one
-
On "Search Criteria" use either "Polygon" or "Circle" to select the desired area
Polygon: "Use Map" selects the current viewing area, "Add coordinate" allows for manual input of coordinates of each corner
Circle: Enter a center lat/long with a specified radius
-
Click Data Sets > Search for NAIP in the search bar > Select the NAIP check box
-
Proceed to Results, all available maps are displayed in the results area
-
Using the Footprint icon, highlight all maps that cover the selected area
-
For each highlighted map: click Download Options > Download Full Resolution
Note: This may take a while depending on how big the area is
-
Extract the downloaded folders, copy the .tif files in each folder, and paste them in the root directory of the repo (/socket-rocket)
-
Run the following command, which will merge all the .tif files and divide them into xyz tiles (no need to paste them into public/gps-info)
python sat_script.py
Note: This will take some time depending on how many big/how many files there are to merge
-
Repeat to generate a new set of tiles, but ensure that previous .tif images are deleted before running the script