# Сессия 2025-05-25 — первый выезд к Фаэтону ## Цель Подключить ELM327 к ноутбуку (WSL/Windows) и запустить диагностику. ## Результаты ### Что сделано - Установлен Python 3.12 в Windows (winget) - Установлены зависимости: pyserial, pyyaml, requests (Windows Python) - Установлен Flask в WSL (--break-system-packages) - Проект скопирован в C:\Users\super\elmer для доступа из Windows - ELM327 сопряжён с Windows (PIN 1234), созданы COM4/COM5 (Bluetooth SPP) ### Что НЕ работает - **Windows Bluetooth SPP** — COM4/COM5 открываются, но виснут на serial.Serial(). Видимо, Windows не умеет нормально поднимать SPP-сессию к ELM327. COM3 — это Intel AMT SOL, а не ELM327. ### Что работает - **Android + ELM327** — OBD Amy подключается без проблем. ELM327 живой, питание от OBD2 есть (красный горит). - Сервер Flask на http://192.168.18.62:5005 (WSL) ### Исследование Android-клиента - `MainActivity.kt` — готова: ищет спаренный ELM327, запускает сервис - `ElmForwardService.kt` — готов на 80%: - Bluetooth SPP → ELM327: ✅ - Инициализация AT-команд: ✅ - Чтение сырых ответов: ✅ - HTTP-forward на сервер: ✅ - Отправка OBD-команд (VIN/DTC/PID): ❌ (нужно дописать) - `web/raw_endpoint.py` — буферизирует raw-данные, но не парсит ## Архитектура (план) ``` Телефон (Android) Ноутбук (WSL/Flask) ┌──────────────┐ ┌──────────────────┐ │ ElmForward │─HTTP──→ │ /api/v1/raw-obd │ │ Service │ │ ↓ │ │ ↓ BT SPP │ │ парсер + LLM │ │ ELM327 │ │ ↓ │ │ ↓ OBD2 │ │ диагноз │ │ ЭБУ (Фаэтон) │ └──────────────────┘ └──────────────┘ ``` ## Дальнейшие шаги 1. **Дописать ElmForwardService.kt** — отправка OBD-команд после init: - VIN (0902) - DTC stored (03), pending (07) - PID'ы: 0105, 010C, 010D, 0111, 010B, 010F, 011F, 0104, 0106, 0107 2. **Дописать raw_endpoint.py** — парсинг ответов + вызов LLM 3. **Собрать APK** (нужен Android SDK) 4. **Дописать web/templates/index.html** — форма ручного ввода для телефона