You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This repository holds the source code to start a basic Yamcs application that monitors a simulated spacecraft in low earth orbit.
3
+
This branch / repository holds the source code of the integration between Yamcs and SATLINK's Ground and Space segments.
4
4
5
-
You may find it useful as a starting point for your own project.
5
+
The integration implements encryption of TCs comming from Yamcs using SATLINK's Ground segment.
6
+
These TCs are decrypted in OBS using Space segment.
6
7
8
+
OBS sends TM, which is encrypted using Space segment, and later decrypted on Yamcs side using Ground segment.
9
+
10
+
SATLINK files were minimaly customized by selecting which functionalities will be utilized, and for providing additional debugging options.
11
+
Two custom Yamcs classes were made to be able to encrypt/decrypt TC/TM Frames before sending them to OBS.
7
12
8
13
## Prerequisites
9
14
@@ -12,10 +17,27 @@ You may find it useful as a starting point for your own project.
12
17
13
18
A copy of Maven is also required, however this gets automatically downloaded an installed by using the `./mvnw` shell script as detailed below.
14
19
20
+
## Running the integration
21
+
22
+
1. Run Ground segment
23
+
2. Run Yamcs
24
+
3. Run OBS script
25
+
4. Send TCs through Yamcs Web and track TM updates
26
+
27
+
## Running Ground segment
28
+
29
+
Inside _ground_ folder:
30
+
31
+
docker compose up
32
+
33
+
If running the project again:
15
34
16
-
## Running Yamcs
35
+
docker compose down -v
36
+
docker compose up
17
37
18
-
Here are some commands to get things started:
38
+
## Running Yamcs (same as QuickStart)
39
+
40
+
Inside root folder:
19
41
20
42
Compile this project:
21
43
@@ -24,41 +46,15 @@ Compile this project:
24
46
Start Yamcs on localhost:
25
47
26
48
./mvnw yamcs:run
27
-
28
-
Same as yamcs:run, but allows a debugger to attach at port 7896:
29
-
30
-
./mvnw yamcs:debug
31
49
32
50
Delete all generated outputs and start over:
33
51
34
52
./mvnw clean
35
53
36
54
This will also delete Yamcs data. Change the `dataDir` property in `yamcs.yaml` to another location on your file system if you don't want that.
37
55
56
+
## Running OBS script
38
57
39
-
## Telemetry
40
-
41
-
To start pushing CCSDS packets into Yamcs, run the included Python script:
42
-
43
-
python simulator.py
44
-
45
-
This script will send packets at 1 Hz over UDP to Yamcs. There is enough test data to run for a full calendar day.
46
-
47
-
The packets are a bit artificial and include a mixture of HK and accessory data.
48
-
49
-
## Other useful generation of simulated data
50
-
51
-
Generate test images in a Yamcs bucket (image number and image url are available as Yamcs parameters):
52
-
53
-
python simulator/images/generate_images.py
54
-
55
-
## Telecommanding
56
-
57
-
This project defines a few example CCSDS telecommands. They are sent to UDP port 10025. The simulator.py script listens to this port. Commands have no side effects. The script will only count them.
58
-
59
-
60
-
## Bundling
61
-
62
-
Running through Maven is useful during development, but it is not recommended for production environments. Instead bundle up your Yamcs application in a tar.gz file:
0 commit comments