Перейти до вмісту
BigTree108

Послуги з розробки прошивок

Послуги з розробки прошивок для мікроконтролерів: прошивки без операційної системи (bare-metal) та на RTOS на C, C++ і Rust, драйвери, стеки Bluetooth і бездротових протоколів, завантажувачі та оновлення пристроїв в експлуатації, прошивки автомобільних ECU, керування двигунами й системи керування батареями, а також проєктування з низьким енергоспоживанням для носимих пристроїв, датчиків, лічильників, побутової техніки, транспортних засобів і медичних пристроїв. Виділені firmware-інженери для вашої команди або проєкти під ключ.

Прошивки, які ми розробляємо

  • Прошивки для мікроконтролерів

    Прошивки без ОС (bare-metal) або на Zephyr, FreeRTOS чи Eclipse ThreadX для чипів STM32, Nordic nRF52, nRF53 і nRF54, ESP32, NXP, Renesas, Infineon, Microchip та Silicon Labs. Ми використовуємо SDK виробника там, де це економить час, і обгортаємо його там, де він прив'язав би вас до одного чипа.

  • Драйвери периферії та датчиків

    Драйвери I2C, I3C, SPI, UART, CAN, ADC і DMA для датчиків, дисплеїв, двигунів і радіомодулів, кожен із яких тестується на симульованому або записаному пристрої ще до зустрічі з реальним.

  • Прошивки для бездротових протоколів

    Стеки Bluetooth Low Energy і LE Audio, Wi-Fi, Thread, Matter, Zigbee та LoRaWAN, налаштовані й розширені на чипі, а також стільникові модеми, якими керують через AT-команди або LwM2M, з підготовкою до кваліфікації Bluetooth SIG і сертифікації Matter.

  • Завантажувачі та оновлення в експлуатації

    MCUboot або спеціально створений завантажувач із підписаними образами, двома слотами та відкатом, тож оновлення, перерване розрядженою батареєю, залишає пристрій на останній робочій версії.

  • Енергоефективні прошивки та прошивки для носимих пристроїв

    Фітнес-браслети, пластирі для моніторингу здоров'я, навушники-вкладиші та датчики, що місяцями працюють від невеликої батареї: режими сну, джерела пробудження та робочі цикли радіомодуля налаштовуються за записом профілювальника енергоспоживання, тож час роботи від батареї, указаний на коробці, є результатом вимірювання, а не оцінкою.

  • Прошивки для керування двигунами, живлення та батарей

    Векторне керування (field-oriented control) для BLDC і кроківних двигунів, керування батареями з балансуванням комірок і оцінкою рівня заряду, а також прошивки керування для зарядних пристроїв, сонячних інверторів та накопичувачів енергії. Контури керування налаштовуються в симуляції ще до того, як почнуть керувати реальним обладнанням.

  • Прошивки автомобільних ECU

    Базове ПЗ та прикладні компоненти Classic AUTOSAR на контролерах Infineon AURIX, NXP S32K і Renesas RH850, обмін даними через CAN FD, LIN та автомобільний Ethernet, діагностика UDS. Код пишеться за MISRA C і з урахуванням рівня безпеки за ISO 26262, якого потребує ваш об'єкт.

  • Аудіо, DSP і машинне навчання на пристрої

    Обробка аудіо- та сенсорних сигналів за допомогою CMSIS-DSP або на ядрах Cadence Tensilica й Analog Devices SHARC, а також моделі розпізнавання ключових слів, жестів і аномалій, що працюють на мікроконтролері через LiteRT for Microcontrollers або Edge Impulse.

  • Критично важливі для безпеки та відмовостійкі прошивки

    Прошивки для медичних пристроїв, побутової техніки та промислових функцій безпеки, написані за MISRA C і вимогами IEC 62304, IEC 60730 або IEC 61508. До них входять сторожові таймери (watchdog), обробники збоїв, що зберігають запис про аварію після перезавантаження, і покриття коду, виміряне до рівня, якого вимагає стандарт.

Наші firmware-інженери для вашої команди

  • Виділені firmware-інженери

    Firmware-інженери, які приєднуються до вашої команди на повний робочий день, працюють у ваших інструментах і за вашим процесом і звітують вашому керівнику. Співбесіду проводите ви, а український договір, зарплата, рахунки й відпустки на нас.

  • Розробка прошивок як окремий проєкт

    Окремий проєкт (напрям: розробка прошивок) з визначеним обсягом, фіксованим планом і призначеним керівником з нашого боку, який відповідає за результат і звітує про хід роботи у ваших каналах.

  • Постійна співпраця: розробка прошивок

    Розробка прошивок як постійна послуга: ті самі люди щомісяця, беклог, пріоритети в якому визначаєте ви, і години, які видно в нашому порталі та в рахунку.

На сторінці виділеної команди пояснено, як фахівці приєднуються до вашої команди, а на сторінці аутсорсингу описано реалізацію проєктів, прийняття систем від інших команд і те, як ми беремо оплату.

Хто працює над вашим проєктом (напрям: розробка прошивок)

  • Firmware-інженери

    C, C++ і Rust на мікроконтролерах

  • Автомобільні firmware-інженери

    Classic AUTOSAR, CAN і діагностика UDS

  • Hardware-інженери

    Схеми й перший запуск плати, на якій працює прошивка

  • Embedded QA-інженери

    Тести hardware-in-the-loop та оснастка

  • Мобільні розробники

    Супровідні застосунки на iOS, .NET MAUI та React Native

Як ми пишемо прошивки

Більшу частину прошивки можна протестувати без плати, тож ми пишемо її саме так: доступ до апаратури сховано за тонкими інтерфейсами, логіка над ними виконується як модульні тести на збиральній машині в Unity, Ceedling або GoogleTest, а Renode проганяє весь образ на емульованому обладнанні в пайплайні. Статичний аналіз перевіряє правила MISRA C або CERT C там, де цього потребує ваш продукт, попередження компілятора вважаються помилками, а кожен релізний образ збирається пайплайном із коміту з тегом і підписується там же.

Обладнання потрапляє до інженера одним із двох способів: йому надсилають набори розробника та прототипні плати, або він працює зі стійкою у вашій лабораторії через віддалене керування живленням, зонд для налагодження та послідовну консоль через ваш VPN. У будь-якому разі збірка виконується у вашому пайплайні, а код зберігається у ваших репозиторіях.

Інші послуги з вбудованих систем і апаратури

Вбудовані системи і залізо: огляд

Запитання про розробку прошивок

Чи можна почати роботу над прошивкою, поки наша апаратна частина не готова?

Так. Робота починається на наборі розробника для обраного мікроконтролера та в Renode, а драйвери пишуться за документацією (datasheet) компонентів зі схеми, тож перші прототипні плати запускаються з уже наявною прошивкою, а не з нуля.

C, C++ чи Rust для нашої прошивки?

C, коли SDK виробника, наявний код або ваші матеріали для сертифікації вже на C. C++ для більших прошивок, яким допомагають типи й шаблони без динамічного виділення пам'яті. Rust, з Embassy та embedded-hal, для нової прошивки, де важлива безпека роботи з пам'яттю, а мікроконтролер добре підтримується; Rust уже є мовою наших власних десктопних застосунків. Ми рекомендуємо одну мову на продукт ще до того, як написано перший рядок.

У яких галузях працюють ваші firmware-інженери?

Побутова електроніка та носимі пристрої: фітнес-браслети, навушники-вкладиші, побутова техніка й датчики розумного дому; промислове та енергетичне обладнання: приводи двигунів, системи керування батареями, лічильники та зарядні пристрої; автомобільна галузь: ECU кузова, комфорту й силового агрегату, а також контролери електровелосипедів і електросамокатів; медичні пристрої та пристрої для здоров'я: монітори глюкози, інфузійні насоси та слухові апарати; охоронні продукти: датчики сигналізації, розумні замки й зчитувачі доступу; телеком: модеми та радіомодулі.

Як швидко можуть стати до роботи firmware-інженери?

Якщо відповідний firmware-інженер вільний, старт залежить лише від вашої співбесіди, NDA і передачі прав на інтелектуальну власність. Інакше ми проводимо пошук, який зазвичай дає профілі кандидатів за два-три тижні, і ніхто не починає роботу, доки ви не скажете «так».

Як найняти фахівців через BigTree108, якщо вам потрібні firmware-інженери?

Розкажіть про роботу, рівень і години, які вам потрібні. Ми пропонуємо одну-двох людей з їхніми профілями, ви проводите з ними співбесіду так, як зі своїм власним кандидатом, підписуєте один договір із ТОВ «БІГ ТРІ 108» і отримуєте один рахунок на місяць.

Кому належать результати їхньої роботи?

Вам. Кожен фахівець має підписаний із BigTree108 договір, за яким усі результати роботи передаються компанії, а наш договір із вами передає їх далі. Код, дизайн-макети та документи постачаються у ваші власні репозиторії та інструменти, а не зберігаються там, де змінити їх можемо лише ми.

Потрібно написати або виправити прошивку?

Розкажіть, який у вас мікроконтролер і тулчейн та що має робити пристрій. Відповідь ви отримаєте протягом одного робочого дня: план розробки прошивки, профілі кандидатів або огляд наявного коду.