Since there are two tuners and, I assume, decoders in the Humax
Hmm. I'm into "best guesses" here, but the output of each tuner is a data stream containing multiple services (each of which is a container for multiple individual data streams... so the tuner output is a "super-container" maybe?). Each super-stream has to come into the SoC separately and demuxed into services separately, and then up to three services selected and passed on for further processing (all of this going on in hardware).
However, at that point the service streams are M2TS - ready for dumping to disk for recording or TSR. No further decoding is required until presentation (output by HDMI or SCART/Phono).
So no, I think there is only one decoder (ie module which decodes the M2TS into separate PCM video and audio streams).
Recordings are also blank at the start in the same way.
It appears the data is therefore faulty before it gets to the disk, and therefore before it gets to a decoder. Therefore my statement
then we're down to the decoder (within the SoC)
was a bit lax. What I meant was "somewhere within the datapath after the signal extraction and before the HDMI output".
As the signal detection reports OK (even during the fault symptoms), there's clearly a physical fault - and as the fault ceases to manifest after a "warm up" period the most likely explanation is that it is in some way related to heat and the work-around (for the time being) is not to let it cool down. But that is only a work-around, and it could cease to be effective at any time.
Can we pin this fault down any further, and is there any point? I believe so (this is how I used to earn my living in the development labs, but I had access to circuit diagrams!).
The signal strength figure has to come from the tuner front-end, so there has to be a live feed of that value from the tuner module to the SoC. Is that an analogue voltage on a wire (one for each tuner), or a response to a query on a data bus such as I²C or JTAG? I don't know, but the tuners have to be sent commands for tuning, so my guess is that would be done by serial bus, and status is probably reported the same way. The quality figure is a measure of how much error correction is going on after the demodulator. Where is the error correction? It could be in the SoC, but my guess is that the tuner modules also do this and are therefore also the source of the quality stats.
The typical heat-related fault is an intermittent circuit break which opens when the parts expand or contract. If I can pin this fault down to a PCB pad, it might be possible to repair by resoldering a pin. It seems to me the only hope of this is if the fault is on the input to the SoC from one tuner only, in which case we should see differences in performance between the two tuners (and the fault could be in the tuner itself). Otherwise the fault is
within the SoC, and therefore irreparable.
Things to test (for more data):
- Individual tuner tests available from the hidden menu - see Things Every... (click) section 9.
- Record two programmes (from different muxes) at the same time.
If the individual tuner tests show no difference between the tuners, or the fault manifests on both simultaneous recordings despite them coming from separate multiplexes, I think we're stuffed.
Meanwhile, I strongly advise not subjecting the unit to physical shock. If the problem
is something come adrift, shock could make it better... or permanent.