Thanks for the quick answer. ‘dmesg -n 5’ does the job, too. I’m also seeing this with the default android setup the board came with.
I made some more tests, just to see if the temperature values somewhat correlate to the CPU heat. When all cores are at 100% load, some of the values show a tendency to increase, but there are still false ones, besides, they are likely way too high, as if they were in °F. The occasionally occuring value of -1000 is confusing…
Not high priority for me, but I just wanted to know if a sensor is broken, or my dts flaky.
I added to my kernel (branch S905X) this patch to correct the output temperature. Checked (TV box S905 not VIM), don’t see negative values. But sometimes it skips in the total flow is clearly overstated values. For example the overall flow of 46-47 Degrees and 1 line 62 Degrees.
IMHO (i’m does not impose, only expressing my point of view). You think if you just delete used variable (data) from the code, it’s better than to delete only the incorrect value ? Just for your information (experience with many platforms) the appearance of erroneous values is not so often and the temperature does not take off instantly, so using the previous value, it is better than having the wrong value. I think, until a complete solution of this error, the patch Marca, preferable to the exception variable.
The patch I implemented is indeed not a definitive measure. It is a tmp workaround. But, on my box -1000 is every now and then set by get_cpu_temp drivers/amlogic/thermal/aml_thermal_hw.c. This is some kind of error.
The unfortunate side effect is that it triggers trip code and throttles CPU down for no good reason.
So the fix is a hack and one must rather figure out why, every now and then we get the error temp value. On the other hand, my system runs much smoother now. Note that the -1000 could occurr in sequences of cold temperatures around 40deg. But code treats -1000 as hot.
Perhaps a comment in the code would not hurt to indicate the workaround nature.
Thanks for kind help. I am not u-boot expert.
I run s905 minimx-g gentoo and use aml_autoscript s905_autoscript in /boot kindly provided by balbes.
I have no clue which one to change and how. Perhaps balbes can help,
If the change can be done in s905_autoscript.cmd then I can try (if I know exactly what to write there). Sorry for noobism …
here is all I see about saradc
% fw_printenv | grep -i saradc
upgrade_key=saradc open 0; if saradc get_in_range 0x0 0x50; then echo detect upgrade key; run update;fi;
As you can see, there are three ADC channels on S905X, and the one(channel 0) you figure out is for upgrade button(Function button on VIM), but I guess the temp sensor of S905X locate at channel 1.
For Armbian, you can have a try with following by editing autoscript: