Как сейчас обстоит дело с доступом к TSF счётчику у ESP8266. Судя по этой теме (ссылка) нужно было что-то патчить, и прошивка 2017 года была неоптимальна в плане выполнения прерываний. В той теме pvvx показал пример, где есть необходимые данные для синхронизации по TFS:
Поиск по github по ключевому слову TSF выдал только следующее:
1) В версии 2.26 Wi-Fi пофиксили "an issue that TSF is not accurate in softAP mode." Но это явно не то.
2) Нашёл фнукцию int64_t esp_wifi_get_tsf_time(wifi_interface_t interface) (здесь), но это для esp32
Очень заинтересовала фраза pvvx:
Если кто пробовал работать TSF, каких минимальных значений удалось достичь.
Код:
volatile uint64_t recv_tsf; // принятый TSF от внешней AP
volatile uint32_t recv_tsf_time; // время приема TSF
1) В версии 2.26 Wi-Fi пофиксили "an issue that TSF is not accurate in softAP mode." Но это явно не то.
2) Нашёл фнукцию int64_t esp_wifi_get_tsf_time(wifi_interface_t interface) (здесь), но это для esp32
Очень заинтересовала фраза pvvx:
Меня интересует синхронизация по радиоканалу порядка нескольких микросекунд, можно с разбросом.Т.е. за 580 секунд расхождение часов ESP от AP роутера на 11010 us.
11010/580=18.982759 us в секунду. При следовании beacon в 0.1 сек получим предел расхождения в 1.9 us,
Если кто пробовал работать TSF, каких минимальных значений удалось достичь.