Устройство измеряло данные с частотой 100 Гц, но я на графиках обнаруживал, что фактически значения изменялись с частотой только 5 Гц. Это меня, в принципе, устраивало. Я мог заняться поиском причины, но этот косяк выглядел очень бесперспективно.
Потому что сначала надо выяснить, сколько пакетов отправляется и сколько приходит. Выяснять, скорее всего, пришлось бы с осциллографом. Потом сравнивать работу со штатной утилитой и с моей.
Однажды я листал код в поисках другого косяка с этим же устройством и решил вспомнить, какой же конкретно запрос устройству я посылаю. И увидел, что я прошу устройство прислать сразу 20 значений.
Одно значение должно приходить 100 раз в секунду, т.е. каждые 0.01 сек. ЕСТЕСТВЕННО, ожидание 20 значений затянется на 0.01*20=0.2 сек. А это и есть 5 Гц.