Опис послуги
ПерекладЯ розробляю вбудовані Linux-системи для підключеного обладнання й веду пристрій від «голої» плати до надійної прошивки, готової до серійної експлуатації. Моя робота охоплює весь шар між кремнієм і вашим додатком: я збираю образи на Yocto й Buildroot, піднімаю нові плати, пишу й портую драйвери пристроїв, займаюсь ядром і деревом пристроїв, щоб нестандартна периферія справді працювала як задумано. Коли шлюзу потрібен акуратний механізм оновлення, безпечна завантаження чи read-only коренева система, що переживає несподіване відключення живлення, я закладаю цей фундамент ще до того, як буде написана перша строка продуктового коду.
На практиці проекти приходять до мене в одному з двох станів. Або у вас нова плата й на ній поки що нічого не грузиться, або є вендорський BSP, який працює на демо-кіті, але рассипається, як тільки ваше залізо відрізняється від еталонного. Я беруся і за те, і за інше. Для запуску плати я розбираюсь із завантажувачем, тактуванням, мультиплексуванням виводів і деревом пристроїв, добиваюсь чистої завантаження ядра й коректної роботи шин з вашими датчиками, радіомодулями й накопичувачами. Для існуючого BSP я розпутую вендорські шари, добиваюсь відтворюваної збірки й перетворюю крихкий одноразовий образ на те, що команда зможе пересобирати й випускати за запитом.
Поверх платформи я збираю прикладний шар: систему ініціалізації й управління сервісами, мережу й зв'язок, оновлення по повітрю, журналювання й роботу сторожевого таймера, щоб пристрій у полі відновлювався сам, а не потребував виїзду інженера. Я приділяю увагу нудним деталям надійності, тому що саме вони вирішують, чи буде парк пристроїв роками працювати тихо чи кожного тижня породжувати звернення в підтримку. Ви отримуєте документацію, відтворювану збірку й прошивку, за яку мені не соромно.
— Образи Yocto й Buildroot, власні шари, відтворювані збірки
— Запуск плат: завантажувач, дерево пристроїв, тактування й пін
— Робота з ядром і драйвери для I2C, SPI, USB, MTD й інших шин
— OTA-оновлення, безпечна завантаження, watchdog і надійний rootfs
На практиці проекти приходять до мене в одному з двох станів. Або у вас нова плата й на ній поки що нічого не грузиться, або є вендорський BSP, який працює на демо-кіті, але рассипається, як тільки ваше залізо відрізняється від еталонного. Я беруся і за те, і за інше. Для запуску плати я розбираюсь із завантажувачем, тактуванням, мультиплексуванням виводів і деревом пристроїв, добиваюсь чистої завантаження ядра й коректної роботи шин з вашими датчиками, радіомодулями й накопичувачами. Для існуючого BSP я розпутую вендорські шари, добиваюсь відтворюваної збірки й перетворюю крихкий одноразовий образ на те, що команда зможе пересобирати й випускати за запитом.
Поверх платформи я збираю прикладний шар: систему ініціалізації й управління сервісами, мережу й зв'язок, оновлення по повітрю, журналювання й роботу сторожевого таймера, щоб пристрій у полі відновлювався сам, а не потребував виїзду інженера. Я приділяю увагу нудним деталям надійності, тому що саме вони вирішують, чи буде парк пристроїв роками працювати тихо чи кожного тижня породжувати звернення в підтримку. Ви отримуєте документацію, відтворювану збірку й прошивку, за яку мені не соромно.
— Образи Yocto й Buildroot, власні шари, відтворювані збірки
— Запуск плат: завантажувач, дерево пристроїв, тактування й пін
— Робота з ядром і драйвери для I2C, SPI, USB, MTD й інших шин
— OTA-оновлення, безпечна завантаження, watchdog і надійний rootfs