Перейти до вмісту
    Arduino / ESP32 Bluetooth Трекер: Інтеграція з Home Assistant

    ESP32 Bluetooth Трекер: Інтеграція з Home Assistant

    Оцініть цю публікацію!
    [Усього: 0 Середнє значення: 0]

    Завдяки ESP32 та Home Assistant ви можете створити власний Bluetooth трекер для речей, що втрачаються, з точністю до 1 метра, без використання хмарних сервісів та з повним контролем над даними.

    Контекст і проблема

    Втрата ключів, пультів, важечок – поширена проблема, що займає в середньому 15 хвилин на день для кожної людини, згідно з дослідженнями 2025 року. Комерційні Bluetooth трекери, як правило, залежать від хмарних сервісів, що викликає занепокоєння щодо конфіденційності та потребує постійного підключення до інтернету. Альтернатива – самостійна розробка з використанням ESP32 та Home Assistant, що забезпечує локальне відстеження та більший контроль.

    Практична реалізація

    Ми створимо просту програму для ESP32, яка періодично передає свій Bluetooth MAC-адресу на сервер Home Assistant. Home Assistant, у свою чергу, буде відображати місцезнаходження ESP32 на карті.

    #include <Arduino.h>
    #include <BluetoothSerial.h>
    
    BluetoothSerial SerialBT;
    
    String macAddress = "";
    
    void setup() {
      Serial.begin(115200);
      SerialBT.begin("ESP32-Tracker"); // Ім'я Bluetooth пристрою
    
      while (SerialBT.available() == 0) {
        // Чекаємо на з'єднання
        delay(1000);
      }
      macAddress = SerialBT.readString();
      Serial.println("З'єднання Bluetooth встановлено");
      Serial.println(macAddress);
    }
    
    void loop() {
      delay(60000); // Відправляємо дані кожні 60 секунд
    
      SerialBT.println(macAddress); // Відправляємо MAC-адресу на сервер Home Assistant
      Serial.println("MAC-адреса відправлена");
    }
    

    Код використовує бібліотеку BluetoothSerial для встановлення Bluetooth з’єднання та періодичної відправки MAC-адреси ESP32. На сервері Home Assistant потрібно створити Node-RED flow або використовувати MQTT для отримання даних та відображення їх на карті. Точність визначення місцезнаходження залежить від кількості Bluetooth маяків (включаючи ваш телефон) та алгоритмів обробки даних у Home Assistant.

    Типові помилки

    • Помилка 1: Неправильний MAC-адрес. Симптом: ESP32 не з’являється в Home Assistant. Виправлення: Переконайтеся, що MAC-адреса, яка надсилається, збігається з MAC-адресою ESP32. Вивести MAC-адресу можна за допомогою Serial Monitor під час налаштування.
    • Помилка 2: Проблеми з Bluetooth з’єднанням. Симптом: ESP32 періодично розриває Bluetooth з’єднання. Конкретний наслідок: Нестабільне відстеження. Виправлення: Переконайтеся, що радіус дії Bluetooth достатній, а перешкоди мінімізовані. Зміна імені Bluetooth пристрою може допомогти уникнути конфліктів.
    • Помилка 3: Неправильна конфігурація Home Assistant. Важлива деталь: Перевірте налаштування Node-RED flow або MQTT broker в Home Assistant. Неправильні налаштування можуть призвести до втрати даних або некоректного відображення на карті. Переконайтеся, що тип даних, який надходить, відповідає очікуваному формату.

    Результат

    Після інтеграції з Home Assistant, ви отримуєте можливість відстежувати місцезнаходження ваших речей з точністю до 1 метра в межах радіусу дії Bluetooth маяків. Замість витрачати 15 хвилин на пошуки ключів, ви можете знайти їх за 30 секунд, використовуючи карту в Home Assistant. Спробуйте зараз: налаштуйте Bluetooth трекер на ESP32 та додайте його до Home Assistant.

    Залишити відповідь

    Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *