Nuri-5 Yonsei satellites — beacon format, orbit and downlinks
This page gives the orbit, the radio links and the byte layout of the housekeeping beacons of the three Yonsei satellites launched on KSLV-II Nuri flight 5 (2026-10-07 03:25 UTC), so that SatNOGS and other community stations can track them, tell the frames apart and decode them. The Kaitai Struct decoders below were checked against all 31 frames of SatNOGS observation 15144789 and against beacons recorded by the Yonsei ground station on the first pass.
1. Orbit and identification
Launch 2026-10-07 03:25 UTC, KSLV-II Nuri flight 5, Naro Space Center. Separation about 17 minutes after lift-off into a sun-synchronous orbit of about 570 km (local time of descending node about 12:30). The objects of launch 2026-229 were identified by matching Yonsei pass timings against every candidate TLE (2026-10-11):
| Satellite | COSPAR designation | NORAD catalogue number | TLE line 1 shows |
|---|---|---|---|
| BEE-1012 | 2026-229F | 100960 | A0960 |
| UEL-Y-Sys | 2026-229C | 100957 | A0957 |
| SD-1 SAT | 2026-229L | 100965 | A0965 |
Catalogue numbers above 99999 are written in Alpha-5 form (100960 → A0960); current tracking software (SatNOGS, Gpredict 2.3, satellite.js 4) accepts it. Current elements are available as a three-line TLE set at https://hyvrid.yonsei.ac.kr/tle/nuri5 (names as above, refreshed from Space-Track every three hours; /tle/nuri5.json says when) and from CelesTrak (gp.php?CATNR=100960) and Space-Track. The table below is filled from that set when the page loads; the derived values are two-body approximations.
Current orbital elements
| Satellite | COSPAR | NORAD | Epoch (UTC) | Age | Inclination | Period | Perigee × apogee | Mean altitude | RAAN | LTAN / LTDN (approx.) | Rev. no. |
|---|
—
2. Radio links (common to all three)
UHF is common to all three satellites; S-band exists on BEE-1012 and UEL-Y-Sys only. The rest of this page describes the UHF beacon.
| Item | UHF beacon and telemetry | S-band payload downlink |
|---|---|---|
| Frequency | 436.500 MHz, same for all three | 2403.500 MHz; SD-1 SAT has no S-band |
| Transceiver | GomSpace NanoCom AX100, 1 W | EnduroSat S-Band Transmitter, transmit only, 1.0 W (licensed emission 2M00G3DM) |
| Modulation | GFSK, 4800 baud, h = 0.667 (±1600 Hz) | digital phase modulation in 2 MHz; symbol rate and coding to be confirmed after on-orbit commissioning (planned late October to early November 2026) |
| Framing | AX100 "mode 5": preamble 0xAA, ASM 0x930B51DE, Golay(24,12) length, CCSDS scrambler, RS(255,223), CRC-32C | not published |
| Spacecraft antenna | turnstile | patch, 8.3 dBi (BEE-1012; UEL-Y-Sys to be confirmed) |
| When it transmits | beacon bursts: BEE-1012 and UEL-Y-Sys 2–4 frames about every 40 s, SD-1 SAT 1 frame about every 10 s (first-pass value, to be confirmed); plus replies to Yonsei telecommands | only while the Yonsei station commands a file download during a pass; no periodic S-band beacon, so community stations will not hear it unless a session is arranged with Yonsei |
| gr-satellites | framing: AX100 ASM+Golay, telemetry: csp |
— |
3. Frame as delivered by the AX100 deframer
After ASM detection, de-randomisation, Reed-Solomon correction and CRC-32C check, the frame that reaches the decoder (and that SatNOGS stores) is
[CSP header 4 B][beacon body N B][CSP CRC-32 4 B, only if CSP CRC flag = 1]
The CSP header is CSP 1.x in network byte order (big endian 32-bit word): priority (2 bits), source (5), destination (5), destination port (6), source port (6), reserved (4), HMAC, XTEA, RDP, CRC (1 bit each).
| Satellite | Identifier (first bytes of body) | Body length | CSP CRC flag | Frame length |
|---|---|---|---|---|
| BEE-1012 | BEE1012 (7 B ASCII) |
210 B | 1 | 4 + 210 + 4 = 218 B |
| UEL-Y-Sys | UELYSYS (7 B ASCII) |
211 B | 1 | 4 + 211 + 4 = 219 B |
| SD-1 SAT | SD1 + 0x00 (4 B) |
91 B | 0 | 4 + 91 = 95 B |
The identifier is sufficient to tell the three satellites apart. Other frames occur on the same frequency (replies to Yonsei telecommands, payload reports) and do not start with these identifiers; the decoders reject them.
Byte offsets below count from the start of the frame, so the CSP header occupies bytes 0–3 and the identifier starts at byte 4. Multi-byte fields are little endian unless marked BE. u1/u2/u4 are unsigned, s1/s2/s4 signed, f4 IEEE-754 single.

4. BEE-1012 beacon (body 210 B)
| Offset | Size | Type | Field | Unit / notes |
|---|---|---|---|---|
| 0 | 4 | u4 BE | CSP header | |
| 4 | 7 | ASCII | identifier | BEE1012 |
| 11 | 2 | u2 BE | CCSDS stream ID | 0x081A |
| 13 | 2 | u2 BE | CCSDS sequence | count = low 14 bits |
| 15 | 2 | u2 BE | CCSDS length | 0x00C4 = 196 → packet 203 B |
| 17 | 4 | u4 BE | time code, seconds | epoch 2026-01-01 00:00:00 UTC once the clock is set; free-running until then |
| 21 | 2 | u2 BE | time code, sub-seconds | |
| 23 | 2 | u2 | obc_boot_count | |
| 25 | 4 | u4 | obc_sequence | beacon counter |
| 29 | 1 | u1 | obc_reset_cause | |
| 30 | 1 | u1 | ax100_active_conf | |
| 31 | 2 | u2 | ax100_boot_count | |
| 33 | 4 | u4 | ax100_boot_cause | |
| 37 | 2 | s2 | ax100_temp_board | 0.1 °C |
| 39 | 2 | s2 | ltrx_temp | 0.1 °C (ANT61 Beacon S L-band unit) |
| 41 | 1 | s1 | ltrx_connection_quality | 0–5 |
| 42 | 2 | u2 | ltrx_battery_capacity | 0.1 % |
| 44 | 36 | — | EPS PMU block | see §7 |
| 80 | 39 | — | EPS PDU block | see §7 |
| 119 | 25 | — | EPS ACU 0 block | see §7 |
| 144 | 25 | — | EPS ACU 1 block | see §7 |
| 169 | 22 | — | Battery BP8 block | see §7 |
| 191 | 1 | u1 | gpio_status | bit mask |
| 192 | 1 | u1 | padding | |
| 193 | 1 | u1 | sp_deploy_status | 0 solar panels stowed, 1 deployed |
| 194 | 20 | — | ADCS block | see §7 |
| 214 | 4 | — | CSP CRC-32 | trailer |

5. UEL-Y-Sys beacon (body 211 B)
| Offset | Size | Type | Field | Unit / notes |
|---|---|---|---|---|
| 0 | 4 | u4 BE | CSP header | |
| 4 | 7 | ASCII | identifier | UELYSYS |
| 11 | 2 | u2 BE | CCSDS stream ID | 0x081A |
| 13 | 2 | u2 BE | CCSDS sequence | count = low 14 bits |
| 15 | 2 | u2 BE | CCSDS length | 0x00CC = 204 → packet 211 B |
| 17 | 4 | u4 BE | time code, seconds | as BEE-1012 |
| 21 | 2 | u2 BE | time code, sub-seconds | |
| 23 | 2 | u2 | obc_boot_count | |
| 25 | 4 | u4 | obc_sequence | beacon counter |
| 29 | 1 | u1 | obc_reset_cause | |
| 30 | 4 | u1 ×4 | i2c_switch_status[4] | |
| 34 | 1 | u1 | ax100_active_conf | |
| 35 | 2 | u2 | ax100_boot_count | |
| 37 | 4 | u4 | ax100_boot_cause | |
| 41 | 2 | s2 | ax100_temp_board | 0.1 °C |
| 43 | 36 | — | EPS PMU block | see §7 |
| 79 | 39 | — | EPS PDU block | see §7 |
| 118 | 25 | — | EPS ACU 0 block | see §7 |
| 143 | 25 | — | EPS ACU 1 block | see §7 |
| 168 | 22 | — | Battery BP8 block | see §7 |
| 190 | 4 | u1 ×4 | dsp_i2c_status[4] | deployment panel |
| 194 | 1 | u1 | dsp_gpio_status | |
| 195 | 20 | — | ADCS block | see §7 |
| 215 | 4 | — | CSP CRC-32 | trailer |

6. SD-1 SAT beacon (body 91 B)
Different bus (GomSpace P60 Dock EPS with BPX battery, ISIS antenna). No CCSDS header.
| Offset | Size | Type | Field | Unit / notes |
|---|---|---|---|---|
| 0 | 4 | u4 BE | CSP header | CRC flag 0 |
| 4 | 4 | ASCII | identifier | SD1 + 0x00 |
| 8 | 4 | u4 | ops_restored_timestamp | s; 0 until a time value has been restored |
| 12 | 4 | u4 | ops_seconds_since_first_boot | s |
| 16 | 2 | u2 | ops_boot_count | |
| 18 | 2 | u2 | ops_warning_flags | bit mask |
| 20 | 4 | u4 | utrx_boot_cause | AX100 |
| 24 | 2 | u2 | utrx_boot_count | |
| 26 | 2 | s2 | utrx_board_temp | 0.1 °C |
| 28 | 1 | u1 | utrx_active_conf | |
| 29 | 2 | u2 | dock_out_en_mask | bit mask |
| 31 | 2 | u2 | pdu_out_en_mask | bit mask |
| 33 | 2 | u2 | pdu_conv_en_mask | bit mask |
| 35 | 12 | s2 ×6 | acu_cin[6] | mA |
| 47 | 12 | u2 ×6 | acu_vin[6] | mV |
| 59 | 2 | u2 | vbatt | mV (4S pack, about 15.7 V) |
| 61 | 2 | s2 | vcc | raw |
| 63 | 2 | u2 | batt_v | mV |
| 65 | 2 | s2 | batt_c | mA |
| 67 | 2 | s2 | batt_chrg | mA |
| 69 | 2 | s2 | batt_dischrg | mA |
| 71 | 2 | s2 | batt_temp | not used (reads 0) |
| 73 | 2 | s2 | dock_temp | 0.1 °C |
| 75 | 2 | u2 | dock_boot_count | |
| 77 | 2 | u2 | gnd_wdt_cnt | |
| 79 | 2 | u2 | can_wdt_cnt | |
| 81 | 4 | u4 | gnd_wdt_left | s |
| 85 | 4 | u4 | can_wdt_left | s |
| 89 | 4 | u4 | dock_reset_cause | |
| 93 | 1 | u1 | uant_door_states | bit mask |
| 94 | 1 | u1 | uant_feedback_switches | bit mask |
7. Common blocks (BEE-1012 and UEL-Y-Sys)
Offsets inside each block. The blocks are GomSpace NanoPower P80 (PMU, PDU, ACU), NanoPower BP8 battery and CubeSpace CubeADCS.
EPS PMU block, 36 B
| Offset | Size | Type | Field | Unit |
|---|---|---|---|---|
| 0 | 4 | u4 | bootcause | |
| 4 | 2 | u2 | resetcause | |
| 6 | 2 | u2 | bootcount | |
| 8 | 6 | u1 ×6 | out_en[6] | 0/1 |
| 14 | 4 | s2 ×2 | temp[2] | 0.1 °C |
| 18 | 1 | u1 | batt_mode | |
| 19 | 2 | s2 | batt_i | mA |
| 21 | 2 | u2 | batt_v | mV (8S pack, about 31.7 V) |
| 23 | 1 | u1 | sm_en | |
| 24 | 2 | u2 | gnd_wdt_cnt | |
| 26 | 2 | u2 | bus_wdt_cnt | |
| 28 | 4 | u4 | gnd_wdt_left | s |
| 32 | 4 | u4 | bus_wdt_left | s |
EPS PDU block, 39 B
| Offset | Size | Type | Field | Unit |
|---|---|---|---|---|
| 0 | 26 | s2 ×13 | out_i[13] | mA, output current per channel |
| 26 | 13 | u1 ×13 | out_en[13] | 0/1 |
EPS ACU block, 25 B (one per solar-array controller)
| Offset | Size | Type | Field | Unit |
|---|---|---|---|---|
| 0 | 12 | s2 ×6 | input_i[6] | mA |
| 12 | 12 | u2 ×6 | input_v[6] | mV |
| 24 | 1 | u1 | mppt_mode |
Battery BP8 block, 22 B
| Offset | Size | Type | Field | Unit |
|---|---|---|---|---|
| 0 | 2 | u2 | bootcount | |
| 2 | 2 | u2 | bootcause | |
| 4 | 2 | u2 | resetcause | |
| 6 | 4 | f4 | soc | 0.0–1.0 |
| 10 | 4 | f4 | bat_avr_temp | °C |
| 14 | 2 | u2 | vbat | mV |
| 16 | 4 | f4 | i | A, + discharge / − charge |
| 20 | 2 | u2 | heater_i | mA |
ADCS block, 20 B
| Offset | Size | Type | Field | Unit |
|---|---|---|---|---|
| 0 | 1 | u1 | power_state | bit mask of powered sensors/actuators |
| 1 | 1 | u1 | control_mode | 0 none, 1 detumbling |
| 2 | 12 | f4 ×3 | gyro rate x, y, z | deg/s |
| 14 | 6 | u1 ×6 | css[6] | coarse sun sensors, raw |
8. Sample frames (SatNOGS observation 15144789, 2026-10-07)
Frames exactly as stored by SatNOGS (CSP header first).
BEE-1012, 218 bytes, 06:44:35 UTC
94 84 66 01 42 45 45 31 30 31 32 08 1a d5 52 00 c4 00 0f 70 d2 ee 17 01 00 3c 00 00 00 21 01 8b
00 01 00 00 00 cc 00 be 00 00 d4 03 02 00 00 00 64 00 77 00 01 01 00 00 00 00 9b 00 9f 00 03 65
00 e9 7b 07 00 00 04 00 07 8b 02 00 0f 01 00 00 94 ff 27 00 64 ff f8 ff 63 01 04 00 04 00 02 00
04 00 02 00 03 00 03 00 e3 00 00 01 00 00 01 00 00 01 00 00 01 00 01 51 00 56 00 28 00 1f 00 55
00 05 00 25 01 43 00 6c 00 51 00 51 00 51 00 01 d8 01 da 01 ab 00 ae 00 01 00 05 00 fc 1a c2 1a
8a 1a 27 1b 36 00 44 00 01 79 00 01 00 00 00 de 9b 3a 3f 00 00 78 41 fd 7b 00 00 00 be 02 00 18
00 00 04 00 5c 8f 62 bf 0a d7 83 3e 8f c2 9d bf 03 03 03 03 21 14 07 ba fc 1e
UEL-Y-Sys, 219 bytes, 06:44:08 UTC
94 83 38 01 55 45 4c 59 53 59 53 08 1a c4 43 00 cc 00 0f 71 d2 a0 ec 05 00 2b 02 00 00 21 01 01
01 01 01 ed 01 01 00 00 00 64 00 02 00 00 00 64 00 27 01 01 01 00 00 00 00 19 00 1e 00 03 33 00
bf 7b 07 01 00 06 00 1c 44 02 00 0f 01 00 00 2f 00 8e fe ba ff 28 01 01 00 00 00 01 00 03 00 04
00 02 00 05 00 02 00 02 00 01 00 00 01 00 00 00 00 00 00 00 00 00 2d 00 33 00 33 00 38 00 3d 00
40 00 2c 29 5f 28 0d 29 a7 23 9f 28 50 29 01 3d 00 34 00 c7 01 3f 00 31 00 00 00 d2 0a 65 0a 39
0b 74 0a 92 0a 44 00 01 2d 01 01 00 00 00 bb e8 3a 3f 00 00 28 41 c9 7b 6f 12 83 bd 01 00 01 01
01 01 0f 0c 00 29 5c 3f 3f 33 33 d3 3e 28 5c cf 3f 75 1a 3e 05 0f 05 2e f4 cb f1
SD-1 SAT, 95 bytes, 06:48:27 UTC
94 85 80 00 53 44 31 00 00 00 00 00 a1 2b 00 00 01 00 01 00 00 00 00 01 be 00 6c 00 02 33 07 00
00 00 00 35 00 0f 01 3a 00 27 01 13 00 11 00 52 40 9c 40 65 3a c3 3a 07 01 07 01 c8 3d 77 ff c6
3d c5 01 4c 02 87 00 00 00 78 00 af 00 00 00 02 00 58 69 02 00 2c 01 00 00 00 03 00 00 f0 ff
Downloads
- Kaitai Struct decoders for SatNOGS: bee1012.ksy · uelysys.ksy · sd1sat.ksy
- gr-satellites SatYAML: BEE-1012.yml · UEL-Y-Sys.yml · SD-1_SAT.yml
- Sample frames: SatNOGS observation 15144789, 31 frames · Yonsei ground station first pass, body only
- Current TLE set of the three satellites: /tle/nuri5 (plain text, refreshed every 3 h)
- All of the above as one archive: Nuri5_Yonsei_beacon_decoders_v0.1.zip
- This page as Markdown: Nuri5_Yonsei_Beacon_Format_v0.1.md
Kaitai Struct is the binary-format description language SatNOGS uses for its telemetry decoders; the .ksy files can be submitted to the satnogs-decoders repository as they are. gr-satellites reads the SatYAML files directly (gr_satellites BEE-1012.yml --wavfile pass.wav --samp_rate 48000 --hexdump).