Skip to content
uvsqsat.ksy 9.87 KiB
Newer Older
---
meta:
  id: uvsqsat
  endian: be
doc: |
  : UVSQsat telemtry description file 
  : Version 0.0.1 
  :
  : 
  :
  :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
            # 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:
            0x11: obc_status
            0x12: obc_hk_tm
            0x15: ieps_hk_status_tm
            0x17: imtq_hk_tm 
            0x18: trxvutx_hk_tm 
            
      - id: ax25_info
        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
        type: b11 
      - 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
      - id: toto
        type: u2
      - id: toto2
        type: u1
      - id: sid 
        type: u1


  obc_hk_tm:
    seq:
      - id: dummy
        type: u1
      - id: spi_command_status
        type: u1
      - id: supervisor_enable_status
        type: u4
      - id: supervisor_uptime
        type: u4
      - id: iobc_reset_count
        type: u4
      - id: iobc_measure_temperature
        type: u2
      - id: iobc_measure3v3in
        type: u2
      - id: iobc_measure3v3
        type: u2
      - id: iobc_measure2v_reference
        type: u2
      - id: iobc_measure1v8
        type: u2
      - id: iobc_measure1v0
        type: u2
      - id: iobc_measure_current3v3
        type: u2
      - id: iobc_measure_current1v8
        type: u2
      - id: iobc_measure_current1v0
        type: u2
      - id: iobc_measure_volt_rtc
        type: u2
      - id: iobc_adc_update_flag
        type: u1
      - id: iobc_crc8
        type: u1
      - id: photodiode1
        type: u2
      - id: photodiode2
        type: u2
      - id: photodiode3
        type: u2
      - id: photodiode4
        type: u2
      - id: photodiode5
        type: u2
      - id: photodiode6
        type: u2
      - id: panel_temperature1
        type: u4
      - id: panel_temperature2
        type: u4
      - id: panel_temperature3
        type: u4
      - id: panel_temperature4
        type: u4
      - id: panel_temperature5
        type: u4
      - id: panel_temperature6
        type: u4
    
  ieps_hk_status_tm:
      seq:
      - id: volt_brdsupraw
        type: u4
      - id: temp_raw
        type: u4
      - id: vip_dist_inputraw
        size: 6
      - id: vip_batt_inputraw
        size: 6
      - id: stat_obc_on
        type: u4
      - id: stat_obc_ocf
        type: u4
      - id: bat_stat
        type: u4
      - id: bat_temp2raw
        type: u4
      - id: volt_vd0
        type: u4
      - id: volt_vd1
        type: u4
      - id: volt_vd2
        type: u4
      - id: vip_obc00
        size: 6
      - id: vip_obc01
        size: 6
      - id: vip_obc02
        size: 6
      - id: vip_obc03
        size: 6
      - id: vip_obc05
        size: 6
      - id: vip_obc06
        size: 6
      - id: cc1
        size: 8
      - id: cc2
        size: 8
      - id: cc3
        size: 8
      - 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
        
  obc_status:
    seq:
      - id: dummy
        type: u1
      - id: spi_command_status
        type: u1
      - id: supervisor_index_of_subsystem
        type: u1
      - id: supervisor_major_version
        type: u1
      - id: supervisor_minor_version
        type: u1
      - id: supervisor_patch_version
        type: u1
      - id: supervisor_git_head_version
        type: u4
      - id: supervisor_serial_number
        type: u2
      - id: compilation_information
        size: 19
      - id: clock_speed
        type: u1
      - id: code_type
        type: u1
      - id: crc_8
        type: u1

  trxvutx_hk_tm:
    seq:
      - id: instantaneous_rf_reflected_power_from_transmitter_port
        type : b12
      - id: instantaneous_rf_forward_power_from_transmitter_port
        type : b12
      - id: supply_voltage
        type : b12
      - id: total_supply_current
        type : b12
      - id: transmitter_current
        type : b12
      - id: receiver_current
        type : b12
      - id: power_amplifier_current
        type : b12
      - id: power_amplifier_temperature
        type : b12 
      - id: local_oscillator_temperature
        type : b12
      - id: zero_padding
        type: b4 
    instances:
        instantaneous_rf_reflected_power_from_transmitter_port_mw:
          value: instantaneous_rf_reflected_power_from_transmitter_port * instantaneous_rf_reflected_power_from_transmitter_port * 5.887 * 0.00001
        instantaneous_rf_forward_power_from_transmitter_port_mw:
          value: instantaneous_rf_forward_power_from_transmitter_port * instantaneous_rf_forward_power_from_transmitter_port * 5.887 * 0.00001
        supply_voltage_v:
          value: 0.00488 * supply_voltage   
        total_supply_current_ma: 
          value: 0.16643964 * total_supply_current 
        transmitter_current_ma:
          value: transmitter_current * 0.16643964
        receiver_current_ma:
          value: receiver_current * 0.16643964
        power_amplifier_current_ma:
          value: power_amplifier_current * 0.16643964
        power_amplifier_temperature_t:
          value: power_amplifier_temperature * -0.07669 + 195.6037
        local_oscillator_temperature_t:
          value: local_oscillator_temperature * -0.07669 + 195.6037
  imtq_hk_tm:
    seq:
      - id: digitale_voltage
        type: u2  
      - id: analog_voltage
        type: u2   
      - id: digital_current
        type: u2  
      - id: analog_current
        type: u2  
      - id: measure_coil_x_current
        type: u2  
      - id: measure_coil_y_current
        type: u2  
      - id: measure_coil_z_current
        type: u2  
      - id: measure_coil_x_temperature
        type: u2  
      - id: measure_coil_y_temperature
        type: u2  
      - id: measure_coil_z_temperature
        type: u2  
      - id: mcu_temperature
        type: u2  
    instances:
    #𝐷𝑖𝑔.𝑉𝑜𝑙𝑡.[𝑉]=2×𝐴𝐷𝐶𝑣𝑜𝑙𝑡[𝑉]
        digitale_voltage_v:
          value: 2 *  (2.5/4095) * digitale_voltage   
        analog_voltage_v: 
          value: 2 *  (2.5/4095) * analog_voltage
    # 𝐼𝑥=(𝐴𝐷𝐶𝑣𝑜𝑙𝑡[𝑉]−1.03[𝑉])/(2[𝑉/𝐴])
        measure_coil_x_current_a:
          value:   (( (2.5/4095) * measure_coil_x_current) -1.03)/2.0
 # 𝐼𝑦=(𝐴𝐷𝐶𝑣𝑜𝑙𝑡[𝑉]−1.03[𝑉])/(2[𝑉/𝐴])
        measure_coil_y_current_a:
          value:   (( (2.5/4095) * measure_coil_y_current) -1.03)/2.0
    # 𝐼𝑧=(𝐴𝐷𝐶𝑣𝑜𝑙𝑡[𝑉]−1.03[𝑉])/(0.48[𝑉/𝐴])
        measure_coil_z_current_a:
          value:   (( (2.5/4095) * measure_coil_z_current) -1.03)/0.48
    # 𝑇𝑒𝑚𝑝𝑥𝑦𝑧⁄⁄=−(𝐴𝐷𝐶𝑣𝑜𝑙𝑡[𝑉]−1.567[𝑉])(0.0081[𝑉𝐶      
        measure_coil_x_temperature_t:
          value: (( (2.5/4095) * measure_coil_x_temperature) -1.567) * -1.0 /0.0081
        measure_coil_y_temperature_t:
          value: (( (2.5/4095) * measure_coil_y_temperature) -1.567) * -1.0 /0.0081 
        measure_coil_z_temperature_t:
          value: (( (2.5/4095) * measure_coil_z_temperature) -1.567) * -1.0 /0.0081        
    #𝑇𝑒𝑚𝑝𝑚𝑐𝑢=−(𝐴𝐷𝐶𝑣𝑜𝑙𝑡[𝑉]−0.680[𝑉])(0.0022
        mcu_temperature_t:
          value:  (( (2.5/4095) * mcu_temperature) -0.680) * - 1.0 /0.00225