Appendix D Downlink Packets

 

Packet Type 1: GPS Data (1Hz, 74 bytes long, No encoding)

Byte #

GPS Word #

Name

Units

Range

Res.

0

-

Packet Header 0x00

-

-

-)

1

-

Packet Type (1) + No Encoding (0)

-

-

-

2

1000.22

UTC Hours

hours

0 - 23

 

3

1000.23

UTC Minutes

minutes

0 - 59

 

4

1000.24

UTC Seconds

seconds

0 - 59

 

5

1000.10&11

Navigation Solution Validity and Type

(Bits)

1 = True

 

6

1000.12

Number of Measurements Used in Solution

 

0 - 12

# sat?

7

1000.27.B0

Latitude3

radians

+- 0 - PI/2

10e-8

8

1000.27.B1

Latitude2

radians

+- 0 - PI/2

10e-8

9

1000.28.B0

Latitude1

radians

+- 0 - PI/2

10e-8

10

1000.28.B1

Latitude0

radians

+- 0 - PI/2

10e-8

11

1000.29.B0

Longitude3

radians

+- 0 - PI/4

10e-8

12

1000.29.B1

Longitude2

radians

+- 0 - PI/4

10e-8

13

1000.30.B0

Longitude1

radians

+- 0 - PI/4

10e-8

14

1000.30.B1

Longitude0

radians

+- 0 - PI/4

10e-8

15

1000.31.B0

Height3

meters

+- 0 - 40000

10e-2

16

1000.31.B1

Height2

meters

+- 0 - 40000

10e-2

17

1000.32.B0

Height1

meters

+- 0 - 40000

10e-2

18

1000.32.B1

Height0

meters

+- 0 - 40000

10e-2

19

1009.10.B0

ECEF Position - X3

meters

+- 0 - 9000000

10e-2

20

1009.10.B1

ECEF Position - X2

meters

+- 0 - 9000000

10e-2

21

1009.11.B0

ECEF Position - X1

meters

+- 0 - 9000000

10e-2

22

1009.11.B1

ECEF Position - X0

meters

+- 0 - 9000000

10e-2

23

1009.12.B0

ECEF Position - Y3

meters

+- 0 - 9000000

10e-2

24

1009.12.B1

ECEF Position - Y2

meters

+- 0 - 9000000

10e-2

25

1009.13.B0

ECEF Position - Y1

meters

+- 0 - 9000000

10e-2

26

1009.13.B1

ECEF Position - Y0

meters

+- 0 - 9000000

10e-2

27

1009.14.B0

ECEF Position - Z3

meters

+- 0 - 9000000

10e-2

28

1009.14.B1

ECEF Position - Z2

meters

+- 0 - 9000000

10e-2

29

1009.15.B0

ECEF Position - Z1

meters

+- 0 - 9000000

10e-2

30

1009.15.B1

ECEF Position - Z0

meters

+- 0 - 9000000

10e-2

31

1009.16.B0

ECEF Velocity - X3

meters/sec

+- 0 - 1000

10e-2

32

1009.16.B1

ECEF Velocity - X2

meters/sec

+- 0 - 1000

10e-2

33

1009.17.B0

ECEF Velocity - X1

meters/sec

+- 0 - 1000

10e-2

34

1009.17.B1

ECEF Velocity - X0

meters/sec

+- 0 - 1000

10e-2

35

1009.18.B0

ECEF Velocity - Y3

meters/sec

+- 0 - 1000

10e-2

36

1009.18.B1

ECEF Velocity - Y2

meters/sec

+- 0 - 1000

10e-2

37

1009.19.B0

ECEF Velocity - Y1

meters/sec

+- 0 - 1000

10e-2

38

1009.19.B1

ECEF Velocity - Y0

meters/sec

+- 0 - 1000

10e-2

39

1009.20.B0

ECEF Velocity - Z3

meters/sec

+- 0 - 1000

10e-2

40

1009.20.B1

ECEF Velocity - Z2

meters/sec

+- 0 - 1000

10e-2

41

1009.21.B0

ECEF Velocity - Z1

meters/sec

+- 0 - 1000

10e-2

42

1009.21.B1

ECEF Velocity - Z0

meters/sec

+- 0 - 1000

10e-2

43

1000.40

EHPE3

meters

0 - 320000000

10e-2

44

1000.40

EHPE2

meters

0 - 320000000

10e-2

45

1000.41

EHPE1

meters

0 - 320000000

10e-2

46

1000.41

EHPE0

meters

0 - 320000000

10e-2

47

1000.42

EVPE3

meters

0 - 250000

10e-2

48

1000.42

EVPE2

meters

0 - 250000

10e-2

49

1000.43

EVPE1

meters

0 - 250000

10e-2

50

1000.43

EVPE0

meters

0 - 250000

10e-2

51

1000.44

ETE3

meters

0 - 300000000

10e-2

52

1000.44

ETE2

meters

0 - 300000000

10e-2

53

1000.45

ETE1

meters

0 - 300000000

10e-2

54

1000.45

ETE0

meters

0 - 300000000

10e-2

55

1000.46

EHVE1

meters/sec

0 - 10000

10e-2

56

1000.46

EHVE0

meters/sec

0 - 10000

10e-2

57

1000.47

Clock Bias 3

meters

+- 0 - 9000000

10e-2

58

1000.47

Clock Bias 2

meters

+- 0 - 9000000

10e-2

59

1000.48

Clock Bias 1

meters

+- 0 - 9000000

10e-2

60

1000.48

Clock Bias 0

meters

+- 0 - 9000000

10e-2

61

1000.49

Clock Bias SD 3

meters

+- 0 - 9000000

10e-2

62

1000.49

Clock Bias SD 2

meters

+- 0 - 9000000

10e-2

63

1000.50

Clock Bias SD 1

meters

+- 0 - 9000000

10e-2

64

1000.50

Clock Bias SD 0

meters

+- 0 - 9000000

10e-2

65

1000.51

Clock Drift 3

meters/sec

+- 0 - 1000

10e-2

66

1000.51

Clock Drift 2

meters/sec

+- 0 - 1000

10e-2

67

1000.52

Clock Drift 1

meters/sec

+- 0 - 1000

10e-2

68

1000.52

Clock Drift 0

meters/sec

+- 0 - 1000

10e-2

69

1000.53

Clock Drift SD 3

meters/sec

+- 0 - 1000

10e-2

70

1000.53

Clock Drift SD 2

meters/sec

+- 0 - 1000

10e-2

71

1000.54

Clock Drift SD 1

meters/sec

+- 0 - 1000

10e-2

72

1000.54

Clock Drift SD 0

meters/sec

+- 0 - 1000

10e-2

73

 

Packet Footer 0xFF

     

 

 

Packet Type 2: Status (10Hz, 25 bytes long, No Encoding)

Byte #

Name

Value(s), Description & Units

0

Header

0x00

1

Packet Type (2) + No Encoding (0)

0x20

2

FCS (Flight Computer Status)

0x00 = NOT_ARMED

0x01 = ARMED

0x02 = LAUNCH

0x04 = FLIGHT

0x08 = APOGEE

0x16 = RECOVERY

2

Local Clock Hours

00 - 23 (if GPS, it's the GPS' hours)

3

Local Clock Minutes

00 - 60 (if GPS, it's the GPS' minutes)

4

Local Clock seconds

00 - 60 (if GPS, it's the GPS' seconds)

5

Local Clock tenths of seconds

Incremented on 10HzClk

6

FCFlg0

Flight Computer Flag Byte (8 bit flags)

7

FCFlg1

Flight Computer Flag Byte (8 bit flags)

8

FCFlg2

Flight Computer Flag Byte (8 bit flags)

9

FCFlg3

Flight Computer Flag Byte (8 bit flags)

10

FCFlg4

Flight Computer Flag Byte (8 bit flags)

11

FCFlg5

Flight Computer Flag Byte (8 bit flags)

12

FCFlg6

Flight Computer Flag Byte (8 bit flags)

13

FCFlg7

Flight Computer Flag Byte (8 bit flags)

14

FCFlg8

Flight Computer Flag Byte (8 bit flags)

15

FCFlg9

Flight Computer Flag Byte (8 bit flags)

16

Atmospheric Pressure High Byte

0x00 - 0x0F

17

Atmospheric Pressure Low Byte

0x00 - 0xFF in k*kPa

18

External Temperature High Byte

0x00 - 0x03

19

External Temperature Low Byte

0x00 - 0xFF in k*°

20

IMU Temperature High Byte

0x00 - 0x03

21

IMU Temperature Low Byte

0x00 - 0xFF in k*°

22

Separation Igniter Resistance

0x00 - 0xFF: V across the ign. @ 4.88mV/#

23

Shroud Igniter Resistance

0x00 - 0xFF: V across the ign. @ 4.88mV/#

24

Footer

0xFF

 

NOT IMPLEMENTED: Packet Type 3a: INS (1Hz, 39 bytes long, Full data)

Byte #

Name

Value

Units

Range

Res.

0

Header

0x00

-

-

-

1

Packet Type (3) + Full data (0)

0x30

-

-

-

2

X position 3

       

3

X position 2

       

2

X position 1

       

3

X position 0

       

4

Y position 3

       

5

Y position 2

       

6

Y position 1

       

7

Y position 0

       

8

Z position 3

       

9

Z position 2

       

10

Z position 1

       

11

Z position 0

       

12

Phi Attitude 3

       

13

Phi Attitude 2

       

14

Phi Attitude 1

       

15

Phi Attitude 0

       

16

Psy Attitude 3

       

17

Psy Attitude 2

       

18

Psy Attitude 1

       

19

Psy Attitude 0

       

20

Theta Attitude 3

       

21

Theta Attitude 2

       

22

Theta Attitude 1

       

23

Theta Attitude 0

       

24

X Velocity 3

       

25

X Velocity 2

       

26

X Velocity 1

       

27

X Velocity 0

       

28

Y Velocity 3

       

29

Y Velocity 2

       

30

Y Velocity 1

       

31

Y Velocity 0

       

32

Z Velocity 3

       

33

Z Velocity 2

       

34

Z Velocity 1

       

35

Z Velocity 0

       

36

Status?

       

37

Status?

       

38

Footer

0xFF

-

-

-

 

 

NOT IMPLEMENTED: Packet Type 3b: INS (10Hz, 22 bytes long, D encoding)

Byte #

Name

Value

Units

Range

Res.

0

Header

0x00

-

-

-

1

Packet Type (3) + Delta encoding (2)

0x32

-

-

-

2

X position H

       

3

X position L

       

4

Y position H

       

5

Y position L

       

6

Z position H

       

7

Z position L

       

8

Phi Attitude H

       

9

Phi Attitude L

       

10

Psy Attitude H

       

11

Psy Attitude L

       

12

Theta Attitude H

       

13

Theta Attitude L

       

14

X Velocity H

       

15

X Velocity L

       

16

Y Velocity H

       

17

Y Velocity L

       

18

Z Velocity H

       

19

Z Velocity L

       

20

Status?

       

21

Status?

       

22

Footer

0xFF

-

-

-

 

Packet Type 4: Messages (Unknown Frequency, 4 - 19 bytes long, Encoding = # of Messages)

Byte #

Name

Value

Units

Range

Res.

0

Header

0x00

-

-

-

1

Packet Type (4) + # of messages

-

-

0x40 - 0x4F

-

2

Message #00

-

-

0 - 255

-

{3

Message #01 (Optional)

-

-

0 - 255

-}

{4

Message #02 (Optional)

-

-

0 - 255

-}

{5

Message #03 (Optional)

-

-

0 - 255

-}

{6

Message #04 (Optional)

-

-

0 - 255

-}

{7

Message #05 (Optional)

-

-

0 - 255

-}

{8

Message #06 (Optional)

-

-

0 - 255

-}

{9

Message #07 (Optional)

-

-

0 - 255

-}

{10

Message #08 (Optional)

-

-

0 - 255

-}

{11

Message #09 (Optional)

-

-

0 - 255

-}

{12

Message #10 (Optional)

-

-

0 - 255

-}

{13

Message #11 (Optional)

-

-

0 - 255

-}

{14

Message #12 (Optional)

-

-

0 - 255

-}

{15

Message #13 (Optional)

-

-

0 - 255

-}

{16

Message #14 (Optional)

-

-

0 - 255

-}

{17

Message #15 (Optional)

-

-

0 - 255

-}

3 {18}

Footer

0xFF

-

-

-

 

Packet Type 5a IMU (10Hz and as necessary, 17 bytes long, Full data)

Byte #

Name

Value(s), Description & Units

0

Header

0x00

1

Packet Type (5) + Full Data (0)

0x50

2

X axis accelerometer High Byte

0x00 - 0x0F

3

X axis accelerometer Low Byte

0x00 - 0xFF k*g

4

Y axis accelerometer High Byte

0x00 - 0x0F

5

Y axis accelerometer Low Byte

0x00 - 0xFF k*g

6

Z axis accelerometer High Byte

0x00 - 0x0F

7

Z axis accelerometer Low Byte

0x00 - 0xFF k*g

8

Q axis accelerometer High Byte

0x00 - 0x0F

9

Q axis accelerometer Low Byte

0x00 - 0xFF k*g

10

j axis accelerometer High Byte

0x00 - 0x0F

11

j axis accelerometer Low Byte

0x00 - 0xFF k*° /s

12

y axis accelerometer High Byte

0x00 - 0x0F

13

y axis accelerometer Low Byte

0x00 - 0xFF k*° /s

14

q axis accelerometer High Byte

0x00 - 0x0F

15

q axis accelerometer Low Byte

0x00 - 0xFF k*° /s

16

Footer

0xFF

 

 

Packet Type 5b IMU (As fast as possible (100Hz?), 10 bytes long, D encoding)

Byte #

Name

Value(s), Description & Units

0

Header

0x00

1

Packet Type (5) + Delta Encoding (2)

0x52

2

X axis accelerometer D encoding

0x00 - 0xFF: 0x7F (127) to 0x80 (-128) k*g

3

Y axis accelerometer D encoding

0x00 - 0xFF: 0x7F (127) to 0x80 (-128) k*g

4

Z axis accelerometer D encoding

0x00 - 0xFF: 0x7F (127) to 0x80 (-128) k*g

5

Q axis accelerometer D encoding

0x00 - 0xFF: 0x7F (127) to 0x80 (-128) k*g

6

j axis rate gyroscope D encoding

0x00 - 0xFF: 0x7F (127) to 0x80 (-128) k*° /s

7

y axis rate gyroscope D encoding

0x00 - 0xFF: 0x7F (127) to 0x80 (-128) k*° /s

8

q axis rate gyroscope D encoding

0x00 - 0xFF: 0x7F (127) to 0x80 (-128) k*° /s

9

Footer

0xFF

 

Packet Type 6: Null Packet Data (3 bytes long, No encoding)

Byte #

Name

Value

Units

Range

Res.

0

Header

0x00

-

-

-

1

Packet Type + Encoding

0x60

-

-

-

2

Footer

0xFF

-

-

-

 

8/26/00 Other thoughts:

- Number of "Bad packets" (0x00 and 0xFF in wrong place, or invalid packet types) would be nice to know

- FEC will be an external process, but it would be nice to see how many bit errors it found displayed on the fcsview. I don't know the interface or whatnot but we will by Monday/Tuesday.

- I highlighted in yellow the data that's important for the display