Colorado Inner Radiation Belt Experiment (CIRBE) #423
Replies: 2 comments 1 reply
-
Thank you so much for the detailed information! Regarding the problem you have with the CI pipeline, the tests give a very unhelpful message due to the way that the Python module is imported, which suppresses/masks the underlying error. Maybe this is something we could improve. A way to get the actual error is to build locally, and from the
The problem is the Other than this, I've taken a quick look at your fork and I think that it will be easy to get the modifications merged upstream. You can submit them in a pull request when they are ready for review. Do you plan to be working on other features that might be applicable to this mission, such as defragmentation of CCSDS Space Packets or decoding of the OQPSK S-band signal? For defragmentation of Space Packets I'm not sure if we already have a block in gr-satellites, but it would be easy to add one. There isn't an OQPSK demodulator in gr-satellites, but it might be interesting to add one. Lately I've been working with OQPSK because of the Artemis I mission. |
Beta Was this translation helpful? Give feedback.
-
Introduction
The CIRBE (Colorado Inner Radiation Belt Experiment) satellite is a 3U (10cm x 10cm x 30cm) CubeSat with the mission of allowing scientists to gain a better understanding of the formation of the inner radiation belt electrons as well as determine where these particles come from and how they behave. The proposed goal of the CIRBE mission is to provide state-of-the-art measurements of .3-3.5 MeV electrons (and 6-35 MeV protons) in the Earth’s radiation belt in a highly inclined Low Earth Orbit.
Spacecraft Radios
The CIRBE spacecraft contains two radios: one, the UHF radio, for commanding and telemetry, and another, the S-Band radio, for science downlink.
UHF/70 cm
Framing (AX.25)
All data send by the CIRBE spacecraft over the 70 cm, 437.25 Hz link are contained in AX.25 unnumbered information (UI) frames:
_0x7E
'CIRBE '
0x60
'BCT '
0x00
0xFF
0xF0
0x7E
Note that the control field is set to
0x03
to indicate unnumbered format, and the PID is set to0xF0
to indicate no layer 3 protocol being used.Source/Destination Callsigns
The AX.25 frames contain the following source and destination callsigns:
'C'
0x43
0x86
'B'
0x42
0x84
'I'
0x49
0x92
'C'
0x43
0x86
'R'
0x52
0xA4
'T'
0x54
0xA8
'B'
0x42
0x84
' '
0x20
0x40
'E'
0x45
0x8A
' '
0x20
0x40
' '
0x20
0x40
' '
0x20
0x40
Note that the 'shifted' column shows the numeric value corresponding to the ASCII character displayed in the 'char' column before it is bit shifted to obtain said character.
Info Segment
The info segment of every AX.25 frame transmitted by the CIRBE spacecraft begins with a CCSDS header:
Interpretation of the following fields is provided:
0
.1
if the frame contains stored data, and it is set to0
if the frame contains real-time data.1
for the first frame, it is set to0
for the middle frames, and it is set to2
for the final frame. If the packet spans only a single frame, this flag is set to3
.0
to indicate 0ms,1
to indicate 200ms,2
to indicate 400ms, and so on.APIDs
Although the full list is subject to change, the following APIDs are valid:
0x000-0x1FC
0x050
0x1FD
0x1FE
0x1FF
Beaconing
The UHF transceiver is configured to beacon at a rate of once every 16 seconds, though this rate is subject to change in the future.
Each beacon consists of a state of health (SOH) packet, which fits in a single AX.25 frame. These packets have their CCSDS packet length field set to 210 (corresponding to 205 bytes of data following the CCSDS secondary header), their APIDs are set to
0x050
, and their grouping flags are set to3
.Progress So Far
I've created a YAML file and SOH packet parser for CIRBE, and I have pushed my work to this fork of gr-satellites.
To-Do
My commit is failing the test "Run daniestevez/[email protected]". Each of the failures are ModuleNotFoundError and don't seem to have to do with my changes. I'm unsure how to look into the issue because of this.
Each failure looks similar to this:
Beta Was this translation helpful? Give feedback.
All reactions