UWB-ключі для дверей та авто: мобільний додаток

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

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

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

UWB-ключі для дверей та авто: мобільний додаток

Інтеграція з пристроями (BLE, NFC, IoT, HomeKit)Складнийвід 2 тижнів до 3 місяців
Часті запитання

UWB-ключі для дверей та автомобілів: як це працює та що потрібно знати

Уявіть: ви підходите до дверей з повними руками сумок, і вони автоматично відчиняються — без жестів, без діставання телефона. Це не магія, а UWB-ranging на чипі U1 або NXP SR150. Ми розробляємо такі системи понад 5 років і знаємо всі підводні камені: від relay-атак до MFi-сертифікації. Гарантуємо якість та безпеку наших рішень.

UWB (Ultra-Wideband) — не Bluetooth з точним позиціонуванням. Це IEEE 802.15.4z, імпульсний радіозв'язок з точністю вимірювання дистанції ±10 см та кута ±5°. iPhone 11+ та сучасні Android-флагмани з чипом Qorvo DWM3000 або NXP SR150 вміють визначати точне положення UWB-пристрою в просторі. На цьому будуються Hands-Free ключі: телефон у кишені → двері відчиняються при наближенні на 0.5–1.5 м. Без натискання. Без NFC.

UWB перевершує Bluetooth за точністю позиціонування в 10 разів, що робить relay-атаки фізично неможливими. Детальніше про технологію — UWB (Ultra-Wideband).

Як працює UWB Ranging

UWB використовує Two-Way Ranging (TWR): пристрій надсилає імпульс, аксесуар відповідає, за часом прольоту (Time-of-Flight) обчислюється дистанція з сантиметровою точністю. На відміну від RSSI у Bluetooth — жодних перешкод від багатопроменевого поширення, стін, тіла людини.

Архітектура Hands-Free unlock:

  1. Смартфон починає BLE-advertise при розблокуванні
  2. UWB-модуль у замку виявляє телефон через BLE
  3. Ініціюється UWB-сесія для точного вимірювання дистанції
  4. При дистанції < 1.5 м + кут у секторі «перед дверима» → замок відчиняється
  5. При віддаленні > 5 м → замок зачиняється

Чому UWB безпечніший за Bluetooth для ключів?

Головна вразливість ключів на основі радіо — relay attack: зловмисник ретранслює BLE/UWB-сигнал, імітуючи близькість телефона до замка, коли реальний телефон далеко. UWB робить relay-атаку фізично неможливою: швидкість світла обмежує, і додаткова затримка ретрансляції (>1 мкс) детектується TWR як аномалія. Додатково: токени ключів мають бути ephemeral (короткоживучі, оновлюватись через BLE перед кожним ranging), підписані ECDSA-256 закритим ключем, що зберігається в Secure Enclave (iOS) або Android Keystore. Такий підхід забезпечує безпековий доступ без компромісів.

Що потрібно для реалізації UWB-ключа на iOS?

Apple відкрила UWB-доступ через NearbyInteraction (iOS 14+). Працює лише на iPhone 11+ з чипом U1. Аксесуар має підтримувати MFi UWB протокол.

import NearbyInteraction

class UWBKeyManager: NSObject, NISessionDelegate {
    private var session: NISession?

    func startRanging(accessoryToken: Data) {
        session = NISession()
        session?.delegate = self
        session?.delegateQueue = DispatchQueue.main
        guard let config = NINearbyAccessoryConfiguration(accessoryData: accessoryToken, bluetoothPeerIdentifier: peerBLEId) else { return }
        session?.run(config)
    }

    func session(_ session: NISession, didUpdate nearbyObjects: [NINearbyObject]) {
        guard let object = nearbyObjects.first else { return }
        if let distance = object.distance {
            // distance в метрах, точність ±10 см
            if distance < 1.5 {
                triggerUnlock()
            }
        }
        if let direction = object.direction {
            // SIMD3<Float> — вектор напрямку на об'єкт
            let isInFront = direction.z < 0 // об'єкт перед телефоном
        }
    }

    func session(_ session: NISession, didInvalidateWith error: Error) {
        // NIErrorCode.invalidConfiguration — невірний токен аксесуара
        // NIErrorCode.userDidNotAllow — користувач відмовив у Nearby Interaction
        restartWithDelay()
    }
}

accessoryToken — криптографічно підписаний токен, який аксесуар передає через BLE при першому виявленні. Apple не розкриває формат токена публічно — він частина MFi UWB Accessory Protocol. Без ліцензії MFi на стороні виробника замка ця схема недоступна. Entitlement для NearbyInteraction з аксесуарами: com.apple.developer.nearby-interaction.allow — стандартний, доступний без MFi. Але NINearbyAccessoryConfiguration вимагає токен від сертифікованого MFi UWB-аксесуара.

Як реалізувати UWB-ключ на Android?

Google відкрив UWB через androidx.core.uwb:uwb (Jetpack). Вимагає пристрій з UWB-чипом: Pixel 6 Pro+, Samsung Galaxy S21 Ultra+, деякі моделі OnePlus та Xiaomi.

implementation("androidx.core.uwb:uwb:1.0.0-alpha08") 
class UWBDigitalKeyManager(context: Context) {
    private val uwbManager = UwbManager.createInstance(context)

    suspend fun startRanging(partnerAddress: UwbAddress) {
        val controllerSession = uwbManager.controllerSessionScope()
        val sessionParameters = UwbRangingParameters(
            uwbConfigType = UwbRangingParameters.CONFIG_MULTICAST_DS_TWR,
            complexChannel = controllerSession.uwbComplexChannel,
            peerDevices = listOf(UwbDevice.createForAddress(partnerAddress)),
            updateRateType = UwbRangingParameters.RANGING_UPDATE_RATE_FREQUENT,
            sessionKeyInfo = generateSessionKey()
        )
        controllerSession.prepareSession(sessionParameters)
            .collect { rangingResult ->
                when (rangingResult) {
                    is RangingResult.RangingResultPosition -> {
                        val distance = rangingResult.position.distance?.value ?: return@collect
                        if (distance < 1.5f) triggerUnlock()
                    }
                    is RangingResult.RangingResultPeerDisconnected -> {
                        restartSession()
                    }
                }
            }
    }
}

CONFIG_MULTICAST_DS_TWR — двосторонній ranging з підтримкою кількох пірів. Для одного замка достатньо CONFIG_UNICAST_DS_TWR.

Порівняння UWB, BLE та NFC для цифрових ключів

Параметр UWB BLE NFC
Точність позиціонування ±10 см 1–5 м (RSSI) Контактний
Стійкість до relay-атак Висока (фізика) Низька Середня
Відстань спрацьовування до 1.5 м (налаштовується) до 10 м < 5 см
Споживання енергії Середнє Низьке Дуже низьке
Підтримка пристроїв iPhone 11+, флагмани Android 12+ Всі смартфони Майже всі

UWB — найкращий вибір для безконтактних автоматичних ключів, де важливі точність та безпека. BLE підходить для ручного підтвердження (натискання кнопки в додатку), NFC — для резерву або налаштування.

Замкове обладнання з підтримкою UWB

Без підтримки UWB на стороні замка все вищесказане не працює. Партнери з готовими UWB-модулями для інтеграції:

  • Allegion (Schlage) — UWB-замки для комерційної нерухомості
  • dormakaba — CCC Digital Key 3.0 сумісні замки
  • NXP SR150 eval kit — для розробки власного обладнання

Що входить в розробку UWB-ключа

  • Аудит вимог та вибір архітектури (iOS/Android/кроссплатформа)
  • Інтеграція UWB-модуля (NearbyInteraction або UWB API)
  • Реалізація логіки Hands-Free unlock
  • Шифрування ключів та зберігання в Secure Enclave / Android Keystore
  • Тестування на реальному обладнанні (тестовий стенд)
  • Документація API для інтеграції із замком
  • Підтримка при публікації в App Store/Google Play

Ми працюємо над проектами будь-якої складності — від MVP до серійного продукту. Замовте консультацію, щоб оцінити ваш проект.

Строки та вартість

  • Мобільний додаток з UWB-ranging та Hands-Free логікою (за наявності готового UWB-аксесуара): 2–4 тижні, вартість розраховується індивідуально.
  • Розробка з нуля включаючи прошивку замка та UWB-модуль на NXP SR150: 2–4 місяці, вартість розраховується індивідуально.
  • Вартість розраховується індивідуально і залежить від платформи, необхідності кастомного обладнання та сертифікації. Надаємо гарантію на всі роботи.

Наш досвід: 5+ років розробки мобільних рішень, 20+ проектів з цифровими ключами. Маємо сертифікати MFi та Google Play Console. Консультуємо з питань безпеки доступу.

Приклад роботи UWB-ключа в реальному часі

При наближенні телефона на 1.2 м з кутом в секторі ±30° замок відчиняється за 200 мс. При віддаленні більше 5 м — зачиняється.

Наші компетенції:

Останні роботи

  • Розробка мобільного додатка для компанії FEEDME
    Розробка мобільного додатка для компанії FEEDME
    1010
  • Розробка мобільного додатку для компанії XOOMER
    Розробка мобільного додатку для компанії XOOMER
    903
  • Розробка мобільного додатку для компанії RHL
    Розробка мобільного додатку для компанії RHL
    1332
  • Розробка мобільного додатку для компанії ZIPPY
    Розробка мобільного додатку для компанії ZIPPY
    1180
  • Розробка мобільного додатку для компанії Affhome
    Розробка мобільного додатку для компанії Affhome
    1107
  • Розробка мобільного додатку для компанії FLAVORS
    Розробка мобільного додатку для компанії FLAVORS
    714