Делается в свободное время для тестирования идей и изучения новых подходов.
Идеология проекта заключается в самостоятельной разработке всего с нуля, без использования готовых модулей с приминением системного подхода к разработке: unit тестирование, статический анализ, CI/CD, потенциально функциональное тестирование.
Устройство предстовляет из себя датчик температуры и влажности, работающий по протоколу modbus rtu с фунций выдачи управляющего сигнала через open-drain выход.
<br><br>
## [ссылка на прошивку](http://boriskovkb.ru/admin_dev/temp_contoller_firmware)
## [ссылка на железо](http://boriskovkb.ru/admin_dev/temp_contoller_hardware)
<br><br>
***Уже сделанно:***
### Прошивка:
- Написана полностью с нуля "на регистрах"
- modbus драйвер с поддержкой чтения и записи всех типов регистров
- хранение настроек в eeprom памяти
- измерение температуры и влажности i2c mems сенсором
- управление open-drain выходом
- структура прошивки с простым временным параллелизмом с возможностью наращивания логики
- проверка кода статическим анализатором по стандарту misraC
- Развёрнут личный сервер содержащий:
- GIT сервер
- Jenkins с возможностью автоматически запускать все этапы сборки в изолированном контейнере
- [Создан стенд на базе однолатника с возможностью удалённой отладки устройства](http://boriskovkb.ru/admin_dev/pet_project/src/branch/main/images/%D1%83%D0%B4%D0%B0%D0%BB%D1%91%D0%BD%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D0%B1%D0%BE%D1%87%D0%B5%D0%B5_%D0%BC%D0%B5%D1%81%D0%B0%D1%82%D0%BE.jpg)
- [Монтаж и наладка](http://boriskovkb.ru/admin_dev/pet_project/src/branch/main/images/%D0%BF%D0%BB%D0%B0%D1%82%D0%B0%20%D0%B2%20%D0%BA%D0%BE%D1%80%D0%BF%D1%83%D1%81%D0%B5.jpg)
Дописать прошивку. Реализовать поддержку 3х типов сенсоров (аппаратная уже есть). Реализваить различные фичи, например автоматическая выдача сигнала при достижении определённой температуры. Реализовать [fastmodbus](https://wirenboard.com/wiki/Fast_Modbus). Написать загрузчик. Реализвать функцианальное тестирование. Подробней разобраться в unit тестировании и CI-CD.