idea.md: updated to thin client + server architecture

This commit is contained in:
“Naeel”
2026-05-25 09:30:26 +04:00
parent 58d8639da4
commit f3c3195715
+55 -23
View File
@@ -1,28 +1,60 @@
замысел - сделать сервис по анализу ошибок электроники автомобиля
# obdai.ru — AI-диагностика автомобиля через ELM327
lfyyst - jn Cканер для диагностики автомобилей ELM327 OBD2
Bluetooth v1.5 чип PIC18F25K80 - это моя модель
Сервис анализа ошибок электроники автомобиля с помощью ИИ (DeepSeek).
Пользователь вводит в произвольной форме симптомы жалобы и тд и тп
## Как работает
Приложение на андроиде устанавливает соединение и запрашивает параметры у ЭБУ
сначала - ВИН номер, он уникален и по нему дальнгейшая идентификация
затем - список ошибок
Приложение дополнительно опрашивает ЭБУ по данным необходимых параметров
затем Приложение отсылает сформированный запрос на Сервер
Сервер формирует запрос к ЛЛМ (какая модель, как авторизоваться и оплачивать - отдельный вопрос)
ЛЛМ отвечает, сервер анализирует, задаёт ещё вопросы ЛЛМ если надо
Пересылает сообщение Приложению, к котором
либо диагноз,
либо команда Приложенгию считать и переслать ещё какие то параметры,
либо - задание Пользователю произвести необходимые действия (прогазовать и держать обороты какие то время, проехать расстояние, дожать до кикдауна и тд и тп)
И так - пока не будут считаны все нужные параметры в нужных режимах
```
ELM327 ←Bluetooth→ Телефон (тонкий клиент) ←HTTP→ Сервер ←API→ DeepSeek
↑
вся логика здесь
```
То есть в итоге - надо разработать
Приложение на андроиде, версия наиболее стабильная, пользователю неохота устанавливать/обновлять
Сервер - на ВМ или кубере в дальнейшем
## Железо пользователя
Предполагается - ноутбук с выходом в интернет, на неём копилот (ТЫ)
ноут по блютус соединяется с ELM
Ты имеешь возможность считывать данные с ЭБУ двигателя, анализируешь
и сочиняешь Приложение и Сервер
- ELM327 Bluetooth (клон PIC18F25K80 — дешёвый, массовый)
- Android-телефон (7+)
## Тонкий клиент (Android)
Только транспорт, никакой логики:
- Bluetooth SPP → ELM327
- Читает сырые OBD-ответы
- Отправляет HTTP POST на сервер
- Показывает ответ от сервера
Открытый исходный код на GitHub → доверие пользователей.
Публикация в RuStore.
## Сервер (вся логика)
1. Принимает сырые данные от клиента (`/api/v1/raw-obd`)
2. Парсит: VIN, коды ошибок, параметры ЭБУ
3. Формирует промпт → DeepSeek API
4. LLM отвечает → сервер анализирует → может запросить ещё данные
5. Итеративный цикл:
- диагноз
- или команда «считай ещё параметр X»
- или задание водителю («прогазуй до 3000 об/мин», «проедь 5 км», «дожми до кикдауна»)
6. Финальный ответ: диагноз + степень уверенности + пояснения + что делать
## Десктоп (для тестирования)
Ноутбук → Bluetooth → ELM327 → локальный Flask → DeepSeek.
Браузерный UI. Без Android.
## Домен
**obdai.ru** (обыгрывается: «обдай грязью» + OBD + AI)
## LLM
DeepSeek (через OpenAI-совместимый API). Дёшево, справляется с анализом логов.
## Компоненты
| Компонент | Где | Технологии |
|---|---|---|
| Сервер | obdai.ru | Python, Flask → gunicorn, PostgreSQL |
| Клиент Android | GitHub + RuStore | Kotlin, AndrOBD library (GPLv2), OkHttp |
| Десктоп | Локально | Python, Flask, pyserial, браузер |