TMF8806 отдаёт гистограмму прилёта фотонов через I²C за $12.50
Дальномер обычно прячется за одним регистром: хост читает расстояние и получает, например, 437 мм. TMF8806 умеет открыть слой под этой цифрой. Его SPAD-матрица регистрирует отдельные фотоны отражённого 940-нм импульса, TDC привязывает события ко времени, а внутренняя логика собирает временную гистограмму. Новый breakout Adafruit делает этот тракт доступным через обычный I²C-разъём на плате за $12.50.
За числом расстояния скрыта статистика света
Физическая сцена здесь гораздо интереснее привычного «лазер измерил дальность». Узкий пик в гистограмме соответствует возвращённому импульсу; солнечный фон поднимает базовый уровень событий; паразитные переотражения способны оставить дополнительные хвосты и пики. TMF8806 уже считает дистанцию сам, но документация и референсные драйверы позволяют запросить distance histogram, её вариант с коррекцией pile-up и суммарный скорректированный кадр. Появляется возможность своими глазами посмотреть, почему одна поверхность измеряется уверенно, а другая превращает оптическую задачу в спорный результат алгоритма.
Диагностический режим требует дисциплины от прошивки. При выдаче гистограммы внутренний автомат измерений останавливается, пока хост не заберёт кадр, после чего работу надо явно продолжить командой. Поэтому это не поток «сырых данных» на полной паспортной частоте и не готовая камера глубины. Зато STM32, RP2040 или ESP32 получают компактный стенд для экспериментов с собственными фильтрами, многолучёвостью, внешней засветкой и отношением сигнал/шум без оптического стола и отдельного счётчика фотонов.
Почему обещанные метры зависят от поверхности
Паспортные метры требуют читать условия рядом с цифрой. Для режима 5 м таблица ams OSRAM приводит белую карту с отражением 90%, освещённость 350 лк и 33 мс накопления; для 18%-ной серой цели там указаны 3.25 м при 33 мс либо 3.75 м при 66 мс. Adafruit также загрузила прошивку для заявленного 10-метрового режима и не получила устойчивого результата дальше 5 м. Причина ими не установлена; документация требует отдельной калибровки для 5- и 10-метровых режимов и привязывает её к конкретному optical stack.
Breakout как оптический измерительный стенд
Сама плата берёт на себя регулятор и преобразование уровней, поэтому работает с 3–5-вольтовым хостом, имеет STEMMA QT/Qwiic и заявленную частоту до 30 Гц. Малый предел дистанции тоже зависит от механики перед датчиком: защитное стекло и воздушный зазор меняют ближнюю слепую зону, после чего нужна калибровка. В корпусе 2.2 × 3.6 × 1.0 мм TMF8806 остаётся однозонным сенсором, зато его можно использовать как маленький прибор, который показывает статистику отражённого света, а не только готовый ответ о расстоянии.