Three Hex Snapshots and a Confident Technician
A 12-bit two's-complement temperature channel uses an LSB of 0.0625 C and is specified for minus 55.0 C to plus 125.0 C. The raw 12-bit field can be read only as hexadecimal on the maintenance laptop. Three snapshots are recorded during a ground run: (a) 0xF3A, (b) 0x0C4, (c) 0x800. The flight deck display, which is known to be serviceable, shows minus 12.4 C, plus 12.3 C and minus 128.0 C respectively. The technician concludes that two out of three readings look sensible and that the middle reading is probably just a rounding difference, so the sensor is likely fine.
1. Decode all three hexadecimal values and check the displayed values against your decodes. Is any display reading in error?
Read the worked answer
0xF3A = (15 x 256) + (3 x 16) + 10 = 3898 unsigned. Sign bit set: 3898 - 4096 = -198. -198 x 0.0625 = -12.375 C -> displayed -12.4 C. Correct.
0x0C4 = (12 x 16) + 4 = 196. Positive. 196 x 0.0625 = 12.25 C -> displayed 12.3 C. Correct for a 0.1 C display rounding half up. If the display were specified to 0.0625 C resolution, 12.3 would itself be a display fault, so the specification matters here.
0x800 = 2048 unsigned; 2048 - 4096 = -2048; -2048 x 0.0625 = -128.0 C -> displayed -128.0 C. Decode correct.
Conclusion: all three displays are faithful to the data. There is no decode or rounding error anywhere, so the technician's "rounding difference" explanation is answering a question that does not exist. The real problem lies upstream of the display.
2. Which snapshot proves a fault, and what kind of fault is it - overflow, or something else? What check detects it?
Read the worked answer
0x800 is the fault.
- It is not an overflow or a wrap: it is the most negative code in the 12-bit two's-complement range and it decodes cleanly to -128.0 C.
- -128.0 C lies 73 C below the bottom of the specified -55.0 to +125.0 C range. A physically valid sensor on this aircraft cannot produce it, so the channel is failed regardless of how plausible the other two readings look.
- Such extreme codes are frequently defined by the interface control document as a hard fault or open-circuit flag rather than a temperature. Read the ICD before condemning the sensor.
Detecting check: a range and validity test on the decoded value. Neither the built-in test nor an eyeball comparison of two good snapshots will catch it. Two valid samples tell you the decode path works below the failure; they say nothing about the sample that is out of limits.
3. State the actions you would take before releasing the aircraft, and explain why the two 'sensible' readings are not evidence of serviceability.
Read the worked answer
Do not release on the strength of the two good readings. They demonstrate only that the conversion chain works at ordinary temperatures; the failure is a single, reproducible out-of-limits event that will recur.
Actions
- Check the sensor excitation/reference supply and the harness between sensor and interface; a lost reference will drive the converter to a rail code.
- Look up the ICD definition of 0x800 and of any other reserved codes for this channel.
- Substitute a known-good sensor, or inject a known value at the interface connector, to split sensor versus interface card.
- Confirm the display resolution. At 0.1 C, 12.25 -> 12.3 is acceptable; at 0.0625 C, anything other than 12.25 is a separate display defect.
- Record the findings in the technical log; do not sign off a channel whose validity check is tripping.