Tanix T6 RTC drift

  • Hi there.

    I recently started to play around with Libreelec because I finally want to retire my 15+ year old vdr hardware.

    So I bought a Taranix TX6 box and put a LibreElec sdcard in it.

    I managed to set it up and so far everything appears to be fine (for now) except one thing:

    It won't wake up in time for scheduled recordings.

    Apparently the RTC has a big time drift - it runs way too slow.

    Real 60 seconds are only around 56,56 RTC seconds.

    Is it a Tanix TX6 issue only or does it affect other H6 devices as well?

    It seems to be hardware related, but do you know if there is any quick fix for this?

    If not I think I have to "fix" it in the setwakeup.sh script somehow.

    Thanks for that great piece of software though.

  • Issue here is presence of external 32 kHz crystal, or in this case, lack of it. When crystal is not present, RTC uses internal RC oscillator, which, as you already noticed, is not accurate at all. It also drifts with temperature quite a lot. There is one possible workaround - implementing RC calibration inside power management firmware. Issue is open: https://github.com/crust-firmware/crust/issues/198 You can post your use case there, so author will have even more reasons to work on it :)

    There are H6 boards with external 32 kHz crystal, but they are all SBCs (Beelink GS1 STB technically has it, but it doesn't work properly on 1/4 boards, so it's disabled).

  • Ouch, I feared something like that.

    Even worse is that it is not a constant drift but drifts with temperature, that means I cannot simply apply a static correction factor to setwakeup.sh.

    Too bad, I was just happy that I found a simple, cheap and powerful dvr solution.

    Do you have any gutt feeling how big the temperature drift is? Maybe it's still possible to put a rough correction.

    Anyway, I will put my comment on the above mentioned issue and maybe it will be solved someday.

    Thanks for your quick response.

  • If you feel adventurous, you can solder crystal yourself :) I believe XC2 pad is meant for it. You can then simply enable it via DT overlay or before that, with devmem for testing purposes.

    EDIT: I never measured RC oscillator drift, so I don't know how unstable it is.