Система учета прихода/ухода сотрудников

Я начал свой путь hardware разработки с микроконтроллера ESP32
Купил в amazon вышло все в 20 евро

Думал что можно на нем сделать, включать выключать лампочки не интересно и пришла в голову идея а что если сделать систему учета прихода ухода сотрудников
Задачи следующие:
Определить что сотрудник пришел в офис
Определить что он ушел
В голову пришла идея сканирования сети WIFI так как в большинстве случаев сотрудник в офисе всегда подключается к сети и будет подключен до ухода
Определить что сотрудник пришел в офис
ESP32 умеет подключатся к WIFI сети и я сделал ARP сканирование сети так как она работает на FreeRTOS и большинство привычных функций типа выдергивания ARP таблицы уже было вместе с проектами

Бизнес логика
Изначально у сотрудника состояние “в офисе“ стоит 0
Сканирование делается раз в минуту
Как только сотрудник подключается к системе состояние “в офисе“ становится 1
Если сотрудник уходит я даю ему шанс подключиться к сети в 15 минут
Если прошло более 15 минут после того как он был в сети то я его считаю ушедшим в то время когда я его видел
Но сотрудник может продолжить свое рабочее время если успеет “покурить“ в течении 15 минут
В итоге вышло примерно так
Приход в офис

Уход с офиса

Запартнерился с другом кто делал параллельный проект и решили внедрить эту систему ему в проект. Но к сожалению эта реализация не сработала так как у него работники работали в большом объекте где нету 100% покрытия вайфай сети и система показывала только косвенные данные
