A project coordinated by the Italian Space Agency
Launch opportunity provided by the European Space Agency
GreenCube transmits in UHF at frequency 435.310 MHz using GMSK modulation at 300, 600, 1200, 2400, 4800 or 9600 baud. The bauds change dinamically during passes over Rome depending on the SNR. Any tool used for receiving 1KUNS-PF can be used to receive GreenCube as well, since they use the same transceiver – the AX100 from GomSpace. This transceiver is common among CubeSats and several tools exist to receive and interpret the packets.
Data Link Layer
The data link layer uses an Attached Sync Marker (ASM) to determine the beginning of a packet. The marker is C9D08A7B (MSB).
The next field after the ASM is the Golay-encoded length. This is a 3-byte length field with FEC provided by the Golay 24,12 code.
The rest of the packet is scrambled with the typical G3RUH scrambler.
Network Link Layer
The packet uses the Cubesat Space Protocol (CSP). The header contains information on the source and destination of the packet; the end of the packet is composed of a CRC32, which provides a checksum of the data, and a Reed Solomon (223, 255) field.
Tools to receive the satellite
The satellite can be received using a Software Defined Radio (SDR) and GNURadio. To aid in this, one can use the Out-Of-Tree module gr-satellites developed by Daniel Estevez.
Several branches are made to support the different GNURadio versions. An example script that can receive the satellite with an SDR is shown here.
SoundModem is a popular tool to receive Packet Radio, developed by UZ7HO. A version of SoundModem, made to receive 1KUNS-PF, can also be used to receive GreenCube.
This version can be found in the other_versions.zip file on the webpage of UZ7HO
The telemetry is sent either via a Beacon, which is sent periodically every 45 seconds, or by request from the ground station. The request can be of either the current status of the satelite, or of past telemetry.
The telemetry packets are identified by CSP Destination Port 8 and have length of 97 bytes (data only, no CRC).
Detailed information on the telemetry can be found in this spreadsheet.
In particular, each telemetry begins with two bytes indicating its ID, either 0x3612, 0x3611 or 0x3610.
The spreadsheet also contains a simple telemetry decoder with some examples.