obsolete
;
;; The purpose of this function is to decommutate housekeeping packets
;Data Should already be in words, not bytes..
function mav_sep_pfdpu_hkp_decom, pkt
data = uint(pkt.data,0,n_elements(pkt.data)/2)
byteorder,data,/swap_if_little_endian

  ; Temperature is given as a 7th order polynomial with the following coefficients
daptemp_conversion_factors = $
  reverse ([0, 0, -5.755E-20,  5.0127E-15,  -1.6784E-10, 2.6907E-06,-0.023287, 93.314]) 
  ; DFE temperature sensors
dfe1_Conversion_factors = $
  reverse ([0.00E+00,  0.00E+00,  -5.76E-20, 5.01E-15,  -1.68E-10, 2.69E-06,  -2.33E-02, 9.33E+01])
dfe2_Conversion_factors = $
  reverse ([0.00E+00,  0.00E+00,  -5.76E-20, 5.01E-15,  -1.68E-10, 2.69E-06,  -2.33E-02, 9.33E+01])
  
dprint,dlevel=3,'APID ', pkt.apid,pkt.seq_cntr,pkt.size,format='(a,z02,i,i)'
 hkp =  {time:pkt.time, $
SEPBiasV : fix(data [0]) *0.002943, $
SEPBiasMon : fix (data [1])*0.000076, $
SEPDAPTemp : total (daptemp_conversion_factors*(1.0*fix(data [2])) ^ findgen (8)), $
SEPP5DV : fix (data [3])*0.000191, $
SEPP5AV : fix (data [4])*0.000191, $
SEPN5AV : fix(data [5])*0.000191, $
SEPDFE1T: total (dfe1_conversion_factors*(1.0*fix(data [6])) ^ findgen (8)), $
SEPDFE2T: total (dfe2_conversion_factors*(1.0*fix(data [7])) ^ findgen (8)), $
SEPMAPID : byte(ishft (data [8],-8)), $                    ; map ID
SEPFPGAREV : byte (ishft(ishft (data [8], 8),-8)), $        ; FPGA revision number
SEPCMDPASS : byte (ishft (data [9],-8)), $                   ; valid command count
SEPCMDFAIL : byte (ishft (ishft (data [9], 8), -8)), $      ; invalid command count
SEPBOARD : byte(ishft (data [10], -15)), $                 ; spare
SEPTPENB : byte(ishft (ishft (data [10], 1), -15)), $      ; test pulse enable
SEPTPFTO : string (ishft (ishft (data [10], 2),-10), $; test pulse FTO pattern
                  format = '(b)'), $
SEPBLRMODE : byte(ishft(ishft (data [10], 8), -14)), $     ; baseline restoration mode
SEPDET6ENB : byte(ishft (ishft (data [10], 10), -15)), $   ; detector 6 enable  
SEPDET5ENB : byte(ishft (ishft (data [10], 11), -15)), $   ; detector 5 enable   
SEPDET4ENB : byte(ishft (ishft (data [10], 12), -15)), $   ; detector 4 enable  
SEPDET3ENB : byte(ishft (ishft (data [10], 13), -15)), $   ; detector 3 enable  
SEPDET2ENB : byte(ishft (ishft (data [10], 14), -15)), $   ; detector 2 enable  
SEPDET1ENB : byte(ishft (ishft (data [10], 15), -15)), $   ; detector 1 enable  
SEPDOOR : byte(ishft (data [11], -12)), $                    ; door monitor  
SEPNOISENB: byte (ishft (ishft (data [11], 4), -15)), $      ; noise measurements enable
SEPNOISERES: byte (ishft (ishft (data [11], 5), -13)), $      ; noise resolution
SEPNOISEPER: byte (ishft (ishft (data [11], 8), -8)), $       ; noise period
SEPMEMFILL: data [12], $                                      ; memory fill address
SEPLUTCHKSM: byte(ishft (data [13], -8)), $                   ; Look Up Table (LUT) checksum
SEPPPSCNT: byte(ishft (ishft (data [13], 8), -8)), $          ; PPS counter, rotate 0-255
SEPEVTCNT: data [14], $                                       ; Events Counter: number of events processed
SEPRCNT1O: data [15], $                                       ;Rate Count from telescope 1, O detector
SEPRCNT1T: data [16], $                                       ;Rate Count from telescope 1, T detector
SEPRCNT1F: data [17], $                                       ;Rate Count from telescope 1, F detector
SEPRCNT2O: data [18], $                                       ;Rate Count from telescope 2, O detector
SEPRCNT2T: data [19], $                                       ;Rate Count from telescope 2, T detector
SEPRCNT2F: data [20], $                                       ;Rate Count from telescope 2, F detector
SEPBTOMF: byte (ishft (data [21], -12)), $                    ;Bus timeout count due to memory fill process
SEPBTOTP: byte (ishft (ishft (data [21], 4), -12)), $         ;Bus timeout count due to telemetry process
SEPBTOEP: byte (ishft (ishft (data [21], 8), -12)), $         ;Bus timeout count due to event process
SEPBTONM: byte (ishft (ishft (data [21], 12), -12)), $        ;Bus timeout count due to noise measurement
SEPDTOCNT: byte (ishft (data [22], -8)), $                    ; detector timeout count
SEPNPCNT: byte(ishft (ishft (data [22], 8), -8)), $           ; no-Peaks count
SEPRESRVD: data [23], $                                       ; reserved
SEP1VER: byte (ishft (data [24], -8)), $                      ; SEP table version
SEP1Opts: byte(ishft (ishft (data [24], 8), -8)), $           ; "Options [ xxxxNNCC ]: CC=Compression Type for SCI data; NN=Compression Type for NOI data."
SEP1RTAVG: byte (ishft (data [25], -8)), $                    ;SEP RT Spectra Avg Interval 2^N, N=[0..5]
SEP1ARCAVG: byte(ishft (ishft (data [25], 8), -8)), $         ;SEP Arc Spectra Avg Interval 2^N, N=[0..5]  
SEP1LUTADR:byte (ishft (data [26], -8)), $                    ;Lookup Table Directory Index 
SEP1LUTCSM:byte(ishft (ishft (data [26], 8), -8)), $          ;Lookup Table Checksum Expected
SEP1CSMLMT:byte (ishft (data [27], -8)), $                    ;CSM Failure Limit
SEP1CSMCTR: byte(ishft (ishft (data [27], 8), -8)), $         ;CSM Failure Count
SEP1RSTLMT:byte (ishft (data [28], -8)), $                    ;Reset if No Messages in Seconds
SEP1RSTSEC:byte(ishft (ishft (data [28], 8), -8)), $          ;Reset Seconds Since Last Message
SEP1BINMAX:byte (ishft (data [29], -8)), $                    ; Spectra Bins Maximum
SEP1ATTPER: byte(ishft (ishft (data [29], 8), -8)), $         ; Attenuator Movement Period =2^N
SEP1ATTIN: data [30], $                                       ;Attenuator In Threshold
SEP1ATTOUT: data [31], $                                      ;Attenuator Out Threshold
SEP1T1ODT: data [32], $                                       ;Telescope 1, O Detector Threshold
SEP1T1TDT: data [33], $                                       ;Telescope 1, T Detector Threshold
SEP1T1FDT: data [34], $                                       ;Telescope 1, F Detector Threshold
SEP1T1AUX: data [35], $                                       ;telescope 1 auxiliary
SEP1T2ODT: data [36], $                                       ;Telescope 2, O Detector Threshold
SEP1T2TDT: data [37], $                                       ;Telescope 2, T Detector Threshold
SEP1T2FDT: data [38], $                                       ;Telescope 2, F Detector Thresholdv
SEP1T2AUX: data [39], $                                       ;Telescope 2 auxiliary
SEP1TPH0: data [40], $                                       ;pulse height O
SEP1TPHT: data [41], $                                       ;pulse height T
SEP1TPHF: data [42], $                                       ;pulse height F
SEP1BIAS: data [43] $                                       ;Bias voltage
}                                       ;
Return,hkp
end