Jim White, WD0E
Introduction
This document provides some detail about the RUDCOEFX file and how telemetry (TLM) is sent by the RUDAK experiment. The RUDCOEFX file contains the telemetry point definitions for P3d RUDAK originated telemetry and the coefficients used to calculate the engineering values from the raw counts sent on the downlink.
Discussion
The RUDCOEFX file contains the coefficients for all telemetry channels that originate in the RUDAK A and B processors as well as the two CAN temperature nodes. It is organized into sections headed by a line indicating which processor the data following applies to. Data for the RUDAK A processor is first, followed by the data for the CAN temperature nodes as read by RUDAK A. The next section is data sent by the RUDAK B processor. This is followed by the same CAN temperature information (included for software convenience). The last section is notes about the organization of the file.
In the sections for the RUDAK data the columns are as follows, starting on the left:
Channel number in hex
Channel name
c, b and a coefficients in the formula ax2 + bx + c, where x is the counts sent on the downlink
Units.
In the CAN temperature sections the columns are:
Channel number in hex
Channel name
a, b, c, d, e, f in ax5 + bx4 + cx3 + dx2 + ex + f, and x is counts
Units.
There are two processors in the RUDAK experiment, called A and B. Each can read some voltage and current TLM from the other. Only the A processor reads the TLM from the DSP board. That data is only valid when the DSP board power is turned on. In order to conserve power the DSP board will only be on when in use.
Telemetry value discussion
Looking first at the RUDAKA points:
- The ‘5V Reg Temp’ point reads the temperature of the 5V regulator that supplies power to the A processor. The RUDAK experiment is fed from the 10V rails in the satellite and produces its own 5V supply.
- The ‘Mem Temp’ point provides the temperature of the EDAC memory on the RUDAK A processor board.
- ‘10V Sw V’ is the voltage on the 10V rail feeding RUDAK A.
- ‘10V Sw V B’ is the voltage on the 10V rail feeding RUDAK B.
- ‘5V V B’ is the 5V regulator output on the B processor.
- ‘VCC I B’ is the current being drawn by the B processor on the 5 V line.
- ‘VCC I’ is the current drawn by the A processor on the 5 V line.
- ‘5V V’ is the voltage provided by the 5V regulator on the A board.
- The ‘DSP I’ A side and B side point measures the current drawn by the DSP board. These data are only valid when the DSP board power is on but they are in the TLM stream all the time. The DSP board contains hardware for both processors. Components are arranged with those serving the A processor on one side and those serving B on the other.
- The DSP temperatures are labeled according to the component they are next to or attached to.
- The ‘Top sideA Tmp’ reads a thermistor attached to the top cover of the RUDAK box above the A DSP board side.
- ‘Vreg A Temp’ is the temperature of the regulator that supplies power to the A side of the DSP board.
Other points are similarly labeled.
The accelerometer attached to the outside of the RUDAK module box is reported on channels 1A through 1C as the raw counts from the device. Calibration remains TBD on orbit.
Channels 1D through 2E report software values and flags.
- ‘WODF state’ reports the state of the Whole Orbit Data function. 0 is not running, 1 is starting to collect WOD, 2 is collecting and 3 is stopping.
- ‘Digi Status’ reports the state of the digipeater. 1 is on, 0 is off. This is also reported in the LSTAT line as the d: parameter.
- ‘PHT Time’ is the rate in seconds at which the housekeeping task (PHT) is cycling through the routine functions. Normally this is the rate at which the TLM, LSTAT and TIME packets will appear in the downlink, although that can be adjusted so TLM can be gathered and stored faster than it is sent on the downlink.
- ‘DSP RX select’ indicates the uplink receiver that is switched to the DSP input.
- ‘153k6 RX sel’ indicates the uplink receiver switched to the 153k6 demod. This value and ‘DSP RX select’ will only be valid after a command has been sent to set them.
- ‘IHU pass stat’ indicates the status of the function that repeats IHU frames on the RUDAK downlink. 1 = on, 0 = off. At times IHU frames will be repeated by RUDAK. The telemetry frames (A blocks) are broken into three packets, the text portion, the analog portion, and the digital points. Other frames are also broken into three packets with about the same number of lines in each packet.
- ‘TLM Ratio’ indicates the ratio of the number of TLM packets gathered for every frame sent on the downlink. For example if this value is 5 every fifth TLM data set will be sent on the downlink. Initially this will be 1, but later it may be set higher to allow TLM to be gathered and stored as WOD at a faster rate than it is sent on the downlink. For example if PHT time is 10, TLM Ratio is 6, and WODF state is 2, TLM is being gathered and stored to the file system every 10 seconds but only sent on the downlink every 60 seconds. This might be done to reduce the loading on the downlink.
- "Msg 2 Ratio’ is unused at this time.
- ‘Text Msg Ratio’ indicates how often the general text broadcast message is sent on the downlink. This is a multiple of PHT Time. For example if PHT Time is 10 and the Text Msg Ratio is 6 the text broadcast will be sent every 60 seconds.
- ‘9k6 0 out lvl’ is a value that indicates the setting of the output level adjustment on the first hardware modulator, mod 0. This level can be set to balance the amount of transmitter power RUDAK uses with that available for other signals.
- ‘9k6 1 out lvl’ is the output level of the second hardware 9k6 modulator.
- ‘153k6 out lvl’ is the output level of the 153k6 PSK modulator.
- ‘IHU A cnt’ is the count of the number of IHU telemetry frames repeated by RUDAK. This count is reset only when it wraps or when a new PHTX software task is loaded.
- ‘IHU othcnt’ is the count of the number of other types of frames repeated by RUDAK. This count resets only on wrap or when a new PHTX software task is loaded.
- ‘CANsrvstat’ indicates the state of the CAN session in the housekeeping (PHTX) task. 1 = session established, 0 = no session.
- ‘CANst40/50’ indicates the status of the last attempt to read data from the CAN temperature nodes. 0 = no error.
In the Can temperature section the name of the value indicates where the thermistor is placed. The references are to locations on the heat pipes in various modules or the heat sinks of transmitters or experiments. Refer to the diagram of the P3d equipment bays for further detail.
Frames
Telemetry frames are sent to the callsign ‘TLMI’. The A processor callsign is ‘RUDAKA’, the B processor is ‘RUDAKB’. The telemetry frames from each processor can be two lengths. If a CAN session is not active only the local RUDAK values are sent. CAN temperatures will be included in the packet if a CAN session is active. RUDAK A sends the data points from the DSP board in every frame but they are valid only if power is on to that board.
TLM Data format:
TLMI packets are AX.25 UI frames. The data portion consists of a 4 byte time stamp followed by the data points.
The time stamp is in DOS time format; the number of seconds since January 1, 1970. RUDAK time is always UTC.
Each data point is three bytes. The first byte is the channel number as a hex value matching that in RUDCOEFX. The next two bytes contain the counts as read by the A to D converter. They are sent high order byte first ( C int format).
There will be as many data points as there are channels in the appropriate section of RUDCOEFX.