Newer
Older
---
meta:
id: uvsqsat
endian: be
doc: |
: reference documentation
: UVSQsat-Beacon description for web site
:
: This ksy file is used for different automatic code generation
: - ksy file to programming language thanks o ksy compiler
- ksy file to graphwiz document thnaks to ksy compiler
- Ksy file to java textual display files thanks to JOSAST GeneratePOJOfromKSY tool (experimental)
- Ksy file to FXML files and associated java files file thanks to JOSAST GeneratePOJOfromKSY tool (experimental)
: Writing rules should be respected (see JOSAST project)
: - for interpreted value, variable should finish with
: _raw if no interpretation is done
: _c, _ma _v _dbm _mw according to the interpreted value
: - the name of the interpreted value should be close to the displaed name (to limit rework)
: _c, _ma _v _dbm _mw are automaticaly converted to (C) (mA) (dbm) (mW)
:
:field dest_callsign: ax25_frame.ax25_header.dest_callsign_raw.callsign_ror.callsign
:field src_callsign: ax25_frame.ax25_header.src_callsign_raw.callsign_ror.callsign
:field src_ssid: ax25_frame.ax25_header.src_ssid_raw.ssid
:field dest_ssid: ax25_frame.ax25_header.dest_ssid_raw.ssid
:field ctl: ax25_frame.ax25_header.ctl
:field pid: ax25_frame.payload.pid
seq:
- id: ax25_frame
type: ax25_frame
doc-ref: 'https://www.tapr.org/pub_ax25.html'
types:
ax25_frame:
seq:
- id: ax25_header
type: ax25_header
- id: payload
type:
switch-on: ax25_header.ctl & 0x13
cases:
0x03: ui_frame
0x13: ui_frame
0x00: i_frame
0x02: i_frame
0x10: i_frame
0x12: i_frame
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# 0x11: s_frame
ax25_header:
seq:
- id: dest_callsign_raw
type: callsign_raw
- id: dest_ssid_raw
type: ssid_mask
- id: src_callsign_raw
type: callsign_raw
- id: src_ssid_raw
type: ssid_mask
- id: ctl
type: u1
callsign_raw:
seq:
- id: callsign_ror
process: ror(1)
size: 6
type: callsign
callsign:
seq:
- id: callsign
type: str
encoding: ASCII
size: 6
ssid_mask:
seq:
- id: ssid_mask
type: u1
instances:
ssid:
value: (ssid_mask & 0x0f) >> 1
i_frame:
seq:
- id: pid
type: u1
- id: ax25_info
size-eos: true
ui_frame:
seq:
- id: pid
type: u1
- id: packet_primary_header
type: packet_primary_header
- id: packet_secondary_header
type: packet_secondary_header
- id: tlm
type:
switch-on: packet_secondary_header.sid
cases:
0x0E: amsat_ascii
0x0F: beacon
0x10: ants_hk
0x13: mainboard_all_science
0x14: mainboard_hk
- id: ax25_info
size-eos: true
# for command status and other message not recognised
msg_or_unknow:
seq:
- id: data
size-eos: true
packet_primary_header:
seq:
- id: packet_version_number
type: b3
- id: packet_id_packet_type
type: b1
- id: packet_id_secondary_header_flag
type: b1
- id: packet_id_application_process_id
- id: packet_sequence_control_secquence_flag
type: b2
- id: packet_sequence_control_count_or_name
type: b14
- id: packet_data_length
type: u2
packet_secondary_header:
seq:
- id: tm_packet_pus_version_number
type: b4
- id: spacecraft_time_reference_status
type: b4
- id: service_type_id
type: u1
- id: message_subtype_id
type: u1
- id: message_type_counter
type: u2
- id: destination_id
type: u2
- id: time
type: u4
################################################################################
#
# Ants Hk
#
################################################################################
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
ants_hk:
seq:
- id: side_a_ants_temperature
type: u2
- id: side_a_ants_deployment_status
type: u2
- id: side_a_ants_uptime
type: u4
- id: side_a_deployment_count_antenna_1
type: u1
- id: side_a_deployment_count_antenna_2
type: u1
- id: side_a_deployment_count_antenna_3
type: u1
- id: side_a_deployment_count_antenna_4
type: u1
- id: side_a_deployment_time_antenna_1
type: u2
- id: side_a_deployment_time_antenna_2
type: u2
- id: side_a_deployment_time_antenna_3
type: u2
- id: side_a_deployment_time_antenna_4
type: u2
- id: side_b_ants_temperature
type: u2
- id: side_b_ants_deployment_status
type: u2
- id: side_b_ants_uptime
type: u2
- id: side_b_deployment_count_antenna_1
type: u1
- id: side_b_deployment_count_antenna_2
type: u1
- id: side_b_deployment_count_antenna_3
type: u1
- id: side_b_deployment_count_antenna_4
type: u1
- id: side_b_deployment_time_antenna_1
type: u2
- id: side_b_deployment_time_antenna_2
type: u2
- id: side_b_deployment_time_antenna_3
type: u2
- id: side_b_deployment_time_antenna_4
type: u2
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
instances:
side_a_ants_temperature_raw:
value: side_a_ants_temperature
side_a_ants_deployment_status_raw:
value: side_a_ants_deployment_status
side_a_ants_uptime_raw:
value: side_a_ants_uptime
side_a_deployment_count_antenna_1_raw:
value: side_a_deployment_count_antenna_1
side_a_deployment_count_antenna_2_raw:
value: side_a_deployment_count_antenna_2
side_a_deployment_count_antenna_3_raw:
value: side_a_deployment_count_antenna_3
side_a_deployment_count_antenna_4_raw:
value: side_a_deployment_count_antenna_4
side_a_deployment_time_antenna_1_raw:
value: side_a_deployment_time_antenna_1
side_a_deployment_time_antenna_2_raw:
value: side_a_deployment_time_antenna_2
side_a_deployment_time_antenna_3_raw:
value: side_a_deployment_time_antenna_3
side_a_deployment_time_antenna_4_raw:
value: side_a_deployment_time_antenna_4
side_b_ants_temperature_raw:
value: side_b_ants_temperature
side_b_ants_deployment_status_raw:
value: side_b_ants_deployment_status
side_b_ants_uptime_raw:
value: side_b_ants_uptime
side_b_deployment_count_antenna_1_raw:
value: side_b_deployment_count_antenna_1
side_b_deployment_count_antenna_2_raw:
value: side_b_deployment_count_antenna_2
side_b_deployment_count_antenna_3_raw:
value: side_b_deployment_count_antenna_3
side_b_deployment_count_antenna_4_raw:
value: side_b_deployment_count_antenna_4
side_b_deployment_time_antenna_1_raw:
value: side_b_deployment_time_antenna_1
side_b_deployment_time_antenna_2_raw:
value: side_b_deployment_time_antenna_2
side_b_deployment_time_antenna_3_raw:
value: side_b_deployment_time_antenna_3
side_b_deployment_time_antenna_4_raw:
value: side_b_deployment_time_antenna_4
################################################################################
#
# Mainboard All Science
#
################################################################################
mainboard_all_science:
seq:
- id: mainboard_science_time
type: u4
type: u1
- id: frequence_of_acquisitions
type: u2
- id: hk_plus_5v
type: u4
- id: hk_minus_5v
type: u4
- id: hk_minus_5v_polar
type: u4
- id: hk_temp_adc
type: u4
- id: hk_fee_plus_x_vref
type: u4
- id: hk_fee_minus_x_vref
type: u4
- id: hk_fee_plus_y_vref
type: u4
- id: hk_fee_minus_y_vref
type: u4
type: u4
- id: fee_plus_x_uvs_signal
type: u4
type: u4
- id: fee_minus_x_uvs_signal
type: u4
type: u4
- id: fee_plus_y_uvs_signal
type: u4
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
type: u4
- id: fee_minus_y_uvs_signal
type: u4
- id: teachwear_acc_x
type: u2
- id: teachwear_acc_y
type: u2
- id: teachwear_acc_z
type: u2
- id: teachwear_deg_c
type: u2
- id: teachwear_gyro_x
type: u2
- id: teachwear_gyro_y
type: u2
- id: teachwear_gyro_z
type: u2
- id: teachwear_magn_x
type: u2
- id: teachwear_magn_y
type: u2
- id: teachwear_magn_z
type: u2
- id: teachwear_state
type: u1
- id: teachwear_reset_reason
type: u1
type: u2
- id: nb_tm_since_first_start
type: u4
instances:
mainboard_science_time_raw:
value: mainboard_science_time
teach_wear_on_raw:
value: teach_wear_on
frequence_of_acquisitions_raw:
value: frequence_of_acquisitions
gain_raw:
value: gain
number_of_acquisition_commanded_raw:
value: number_of_acquisition_commanded
number_of_real_acquisition_raw:
value: number_of_real_acquisition
hk_plus_5v_raw:
value: hk_plus_5v
hk_minus_5v_raw:
value: hk_minus_5v
hk_minus_5v_polar_raw:
value: hk_minus_5v_polar
hk_temp_adc_raw:
value: hk_temp_adc
hk_fee_plus_x_vref_raw:
value: hk_fee_plus_x_vref
hk_fee_minus_x_vref_raw:
value: hk_fee_minus_x_vref
hk_fee_plus_y_vref_raw:
value: hk_fee_plus_y_vref
hk_fee_minus_y_vref_raw:
value: hk_fee_minus_y_vref
fee_plus_x_ers_1_signal_raw:
value: fee_plus_x_ers_1_signal
fee_plus_x_ers_1_temperature_raw:
value: fee_plus_x_ers_1_temperature
fee_plus_x_ers_2_signal_raw:
value: fee_plus_x_ers_2_signal
fee_plus_x_ers_2_temperature_raw:
value: fee_plus_x_ers_2_temperature
fee_plus_x_ers_3_signal_raw:
value: fee_plus_x_ers_3_signal
fee_plus_x_ers_3_temperature_raw:
value: fee_plus_x_ers_3_temperature
fee_plus_x_uvs_signal_raw:
value: fee_plus_x_uvs_signal
fee_minus_x_ers_1_signal_raw:
value: fee_minus_x_ers_1_signal
fee_minus_x_ers_1_temperature_raw:
value: fee_minus_x_ers_1_temperature
fee_minus_x_ers_2_signal_raw:
value: fee_minus_x_ers_2_signal
fee_minus_x_ers_2_temperature_raw:
value: fee_minus_x_ers_2_temperature
fee_minus_x_ers_3_signal_raw:
value: fee_minus_x_ers_3_signal
fee_minus_x_ers_3_temperature_raw:
value: fee_minus_x_ers_3_temperature
fee_minus_x_uvs_signal_raw:
value: fee_minus_x_uvs_signal
fee_plus_y_ers_1_signal_raw:
value: fee_plus_y_ers_1_signal
fee_plus_y_ers_1_temperature_raw:
value: fee_plus_y_ers_1_temperature
fee_plus_y_ers_2_signal_raw:
value: fee_plus_y_ers_2_signal
fee_plus_y_ers_2_temperature_raw:
value: fee_plus_y_ers_2_temperature
fee_plus_y_ers_3_signal_raw:
value: fee_plus_y_ers_3_signal
fee_plus_y_ers_3_temperature_raw:
value: fee_plus_y_ers_3_temperature
fee_plus_y_uvs_signal_raw:
value: fee_plus_y_uvs_signal
fee_minus_y_ers_1_signal_raw:
value: fee_minus_y_ers_1_signal
fee_minus_y_ers_1_temperature_raw:
value: fee_minus_y_ers_1_temperature
fee_minus_y_ers_2_signal_raw:
value: fee_minus_y_ers_2_signal
fee_minus_y_ers_2_temperature_raw:
value: fee_minus_y_ers_2_temperature
fee_minus_y_ers_3_signal_raw:
value: fee_minus_y_ers_3_signal
fee_minus_y_ers_3_temperature_raw:
value: fee_minus_y_ers_3_temperature
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
fee_minus_y_uvs_signal_raw:
value: fee_minus_y_uvs_signal
teachwear_acc_x_raw:
value: teachwear_acc_x
teachwear_acc_y_raw:
value: teachwear_acc_y
teachwear_acc_z_raw:
value: teachwear_acc_z
teachwear_deg_c_raw:
value: teachwear_deg_c
teachwear_gyro_x_raw:
value: teachwear_gyro_x
teachwear_gyro_y_raw:
value: teachwear_gyro_y
teachwear_gyro_z_raw:
value: teachwear_gyro_z
teachwear_magn_x_raw:
value: teachwear_magn_x
teachwear_magn_y_raw:
value: teachwear_magn_y
teachwear_magn_z_raw:
value: teachwear_magn_z
teachwear_state_raw:
value: teachwear_state
teachwear_reset_reason_raw:
value: teachwear_reset_reason
teachwear_c_r_c_raw:
value: teachwear_crc
nb_tm_since_first_start_raw:
value: nb_tm_since_first_start
################################################################################
#
# AMSAT ASCII
#
################################################################################
- id: message
type: str
size-eos: true
encoding: UTF-8
mainboard_hk:
seq:
value: mainboard_hk_time
hk_plus_5_v_raw:
value: hk_plus_5_v
hk_minus_5_v_raw:
value: hk_minus_5_v
hk_minus_polar_raw:
value: hk_minus_polar
hk_temp_a_d_c_raw:
value: hk_temp_a_d_c
hk_fee_plus_x_vref_raw:
value: hk_fee_plus_x_vref
hk_fee_minus_x_vref_raw:
value: hk_fee_minus_x_vref
hk_fee_plus_y_vref_raw:
value: hk_fee_plus_y_vref
hk_fee_minus_y_vref_raw:
value: hk_fee_minus_y_vref
################################################################################
#
# trxvurx HK
#
################################################################################
- id: trxvurx_instantaneous_received_signal_doppler_offset_at_the_receiver_port
- id: trxvurx_instantaneous_received_signal_strength_at_the_receiver_port
type: b4
- id: trxvu_rx_uptime
type: u4
# référence table 7.5.1 TRXVU interface control document
instances:
trxvurx_instantaneous_received_signal_doppler_hz:
value: (trxvurx_instantaneous_received_signal_doppler_offset_at_the_receiver_port * 13.552) - 22300
trxvurx_instantaneous_received_signal_strength_dbm:
value: trxvurx_instantaneous_received_signal_strength_at_the_receiver_port*0.03-152
trxvurx_supply_voltage_v:
value: trxvurx_supply_voltage*0.00488
trxvurx_total_supply_current_ma:
value: trxvurx_total_supply_current*0.16643964
trxvurx_transmitter_current_ma:
value: trxvurx_transmitter_current*0.16643964
trxvurx_receiver_current_ma:
value: trxvurx_receiver_current*0.16643964
trxvurx_power_amplifier_current_ma:
value: 1000.0 * trxvurx_power_amplifier_current*0.16643964
trxvurx_power_amplifier_temperature_c:
value: (trxvurx_power_amplifier_temperature)*-0.07669+195.6037
trxvurx_local_oscillator_temperature_c:
value: (trxvurx_local_oscillator_temperature)*-0.07669+195.6037
trxvurx_zero_padding_raw:
value: trxvurx_zero_padding
################################################################################
#
# OBC HK
#
################################################################################
obc_hk:
seq:
- id: dummy
type: u1
- id: spi_command_status
type: u1
- id: supervisor_enable_status
- id: iobc_reset_count
type: u4
- id: iobc_measure_temperature
type: u2
type: u2
- id: iobc_measure_volt_rtc
type: u2
- id: iobc_adc_update_flag
type: u1
- id: iobc_crc8
type: u1
spi_command_status_raw:
value: spi_command_status
supervisor_enable_status_raw:
value: supervisor_enable_status
supervisor_uptime_raw:
value: supervisor_uptime
iobc_reset_count_raw:
value: iobc_reset_count
iobc_measure_temperature_raw:
value: iobc_measure_temperature
iobc_measure_3v3_in_raw:
value: iobc_measure_3v3_in
iobc_measure_3v3_raw:
value: iobc_measure_3v3
iobc_measure_2v_reference_raw:
value: iobc_measure_2v_reference
iobc_measure_1v8_raw:
value: iobc_measure_1v8
iobc_measure_1v0_raw:
value: iobc_measure_1v0
iobc_measure_current_3v3_raw:
value: iobc_measure_current_3v3
iobc_measure_current_1v8_raw:
value: iobc_measure_current_1v8
iobc_measure_current_1v0_raw:
value: iobc_measure_current_1v0
iobc_measure_volt_rtc_raw:
value: iobc_measure_volt_rtc
iobc_adc_update_flag_raw:
value: iobc_adc_update_flag
iobc_crc8_raw:
value: iobc_crc8
photodiode1_raw:
value: photodiode_6
panel_temperature_1_c:
value: panel_temperature_1 / 1024.0
panel_temperature_2_c:
value: panel_temperature_2 / 1024.0
panel_temperature_3_c:
value: panel_temperature_3 / 1024.0
panel_temperature_4_c:
value: panel_temperature_4 / 1024.0
panel_temperature_5_c:
value: panel_temperature_5 / 1024.0
panel_temperature_6_c:
value: panel_temperature_6 / 1024.0
################################################################################
#
# ieps HK status
#
################################################################################
ieps_hk_status:
- id: h_k_stid
type: u1
- id: h_k_ivid
type: u1
- id: h_k_rc
type: u1
- id: h_k_bid
type: u1
- id: h_k_cmderr
type: b4
- id: h_k_stat
type: b4
- id: volt_brd_sup_raw
type: u2
- id: cc1
size: 8
- id: cc2
size: 8
- id: cc3
size: 8
- id: status_stid
type: u1
- id: status_ivid
type: u1
- id: status_rc
type: u1
- id: status_bid
type: u1
- id: status_cmderr
type: b4
- id: status_stat
type: b4
- id: mode
type: u1
- id: conf
type: u1
- id: reset_cause
type: u1
- id: uptime
type: u4
- id: error
type: u2
- id: rc_cnt_pwron
type: u2
- id: rc_cnt_wdg
type: u2
- id: rc_cnt_cmd
type: u2
- id: rc_cnt_mcu
type: u2
- id: rc_cnt_emlopo
type: u2
- id: prevcmd_elapsed
type: u2
h_k_stid_raw:
value: h_k_stid
h_k_ivid_raw:
value: h_k_ivid
h_k_rc_raw:
value: h_k_rc
h_k_bid_raw:
value: h_k_bid
h_k_cmderr_raw:
value: h_k_cmderr
h_k_stat_raw:
value: h_k_stat
volt_brd_sup_raw_v:
value: volt_brd_sup_raw * 1000.0 / 819.0
# ?? To be check - not coherent
temp_raw_t:
value: ((temp_raw -1168)*220.0/9.0 )/ 100.0
v_dist_input_raw_v:
value: (v_dist_input_raw * 125.0/128.0)/ 1000.0
i_dist_input_raw_ma:
value: i_dist_input_raw * 3125.0/10240.0
value: (v_batt_input_raw * 125.0/128.0)/ 1000.0
i_batt_input_raw_ma:
p_batt_input_raw_mw:
value: p_batt_input_raw *3125.0 / 3200.0
stat_obc_on_raw:
value: stat_obc_on
stat_obc_ocf_raw:
value: stat_obc_ocf
bat_stat_raw:
value: bat_stat
bat_temp_2_raw_t:
value: bat_temp_2_raw * -0.047715407918 +98.38261483
volt_vd0_raw:
value: volt_vd0
volt_vd1_raw:
value: volt_vd1
volt_vd2_raw:
value: volt_vd2
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
v_obc_00_v:
value: (v_obc_00 *125.0/128.0)/ 1000.0
i_obc_00_ma:
value: i_obc_00 *3125.0/20480.0
p_obc_00_mw:
value: p_obc_00 *3125.0 / 6400.0
v_obc_01_v:
value: ( v_obc_01 *125.0/128.0)/ 1000.0
i_obc_01_ma:
value: i_obc_01 *3125.0/20480.0
p_obc_01_mw:
value: p_obc_01 *3125.0 / 6400.0
v_obc_02_v:
value: (v_obc_02 *125.0/128.0)/ 1000.0
i_obc_02_ma:
value: i_obc_02 *3125.0/20480.0
p_obc_02_mw:
value: p_obc_02 *3125.0 / 6400.0
v_obc_03_v:
value: (v_obc_03 *125.0/128.0)/ 1000.0
i_obc_03_ma:
value: i_obc_03 *3125.0/20480.0
p_obc_03_mw:
value: p_obc_03 *3125.0 / 6400.0
v_obc_05_v:
value: (v_obc_05 *125.0/128.0)/ 1000.0
i_obc_05_ma:
value: i_obc_05 *3125.0/20480.0
p_obc_05_mw:
value: p_obc_05 *3125.0 / 6400.0
v_obc_06_v:
value: (v_obc_06 *125.0/128.0)/ 1000.0
i_obc_06_ma:
value: i_obc_06 *3125.0/20480.0
p_obc_06_mw :
value: p_obc_06 *3125.0 / 6400.0
cc1_byte:
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
value: cc3
status_stid_raw:
value: status_stid
status_ivid_raw:
value: status_ivid
status_rc_raw:
value: status_rc
status_bid_raw:
value: status_bid
status_cmderr_raw:
value: status_cmderr
status_stat_raw:
value: status_stat
mode_raw:
value: mode
conf_raw:
value: conf
reset_cause_raw:
value: reset_cause
uptime_raw:
value: uptime
error_raw:
value: error
rc_cnt_pwron_raw:
value: rc_cnt_pwron
rc_cnt_wdg_raw:
value: rc_cnt_wdg
rc_cnt_cmd_raw:
value: rc_cnt_cmd
rc_cnt_mcu_raw:
value: rc_cnt_mcu
rc_cnt_emlopo_raw:
value: rc_cnt_emlopo
prevcmd_elapsed_raw:
value: prevcmd_elapsed
################################################################################
#
# OBC Status
#
################################################################################