1

Тема: Получение данных с машины с помощью ELM327 нужна помощь в декодировани

Приветствую. Не знал, в какую тему поместить, пишу здесь.
Задача такая: получать данные от автомобиля (пробег, остаток заряда, температура и т.д.) когда машина паркуется в гараж для умного дома (Home Assistant). Получается такая связка: Nissan Leaf -> ELM327 -> BT адаптер HC-05 -> ESP32 Kincony KC868 (на ESPhome) -> Home Assistant.
Я сейчас пишу прошивку для ESP32, которая шлёт запросы в ELM327, получает ответы, декодирует их и отправляет показания в умный дом. Идея такая: мониторить состояние машины (остаток пробега, заряд 12В аккумулятора и т.д.) и в зависимости от полученных данных реализовывать различные сценарии от простого уведомления, до отключения розеток, если что-то не так.
Да, есть проект nissan-leaf-obd-ble, но там все команды выполняются на самом Home Assistant, а я делаю Standalone версию, которая может работать автономно даже без участия Home Assistant.
На данный момент мне удалось получить в виде датчиков показания soc soh ahr и hv, они теперь отображаются в веб. Маленькая победа.
Проект разместил на github.
Сейчас интересует, как вытащить показания температуры ячеек батареи (LeafSpy показывает аж 4 температуры) из запроса к контроллеру батареи "79B", "022101".
Ответ выглядит примерно так:
7BB10296101FFFFFC77
7BB210289FFFFFCB0FF
7BB22FFFFFF02A82AF8
7BB23983132E4038400
7BB245C0DF7000CBE7C
7BB250005B8FB800001
Также буду признателен за любую помощь в расшифровке протокола обмена. Можно в личку. Возможно, можно как-то получить данные о состоянии автомобиля в выключенном состоянии? LeafSpy подключается к выключенному автомобилю, в это время постоянно клацает релюха, что неприятно.

LEAF ZE0 G 2011

2

Re: Получение данных с машины с помощью ELM327 нужна помощь в декодировани

рекомендую начать с отказа от елмки.
во-1, это большая дыра в безопасности:
https://www.drive2.ru/b/578990179876865428/
во-2, это источник глюков:
https://www.drive2.ru/l/556503242943497018/
это первые попавшиеся примеры, их уже много.

сам решил развивать родное ТСУ, как раз по вышеописанным причинам (включая выключенное состояние авто). начал так:
https://www.drive2.ru/l/705882342937343017/

сейчас почитываю про докер и питон, хочется поднять опенкарвингс на домашнем компе, правда пока уперся в провайдера, не могу добыть белый ип. ну и магнитолу всё еще не добили(

обмен по кану всех леафов кроме последнего ze2 вроде уже весь отснифал и положил в базу товарищ дала:
https://github.com/dalathegreat/

с протоколом обмена и его расшифровкой можно ознакомиться в топике товарища турбо3 (автор лифспая):
https://mynissanleaf.com/threads/bms-details.17470/

Листок-самолет LEAF ZE0 G 2011 перепак CATL 114ач
Спасибо сказали: Sonya1

3

Re: Получение данных с машины с помощью ELM327 нужна помощь в декодировани

Благодарю за ссылки, теперь информации для анализа с избытком.


LKA пишет:

рекомендую начать с отказа от елмки.
во-1, это большая дыра в безопасности:
https://www.drive2.ru/b/578990179876865428/

Да, у меня была такая мысль. Пока решил сменить заводской MAC и PIN в ELM327.
И подумываю переделать разводку на разъёме OBD2, чтобы при отключении зажигания адаптер отключался, но так не хочется терять мониторинг за 12В аккумулятором (уже несколько раз доходило до полного разряда, что аккум умер).



во-2, это источник глюков:
https://www.drive2.ru/l/556503242943497018/
это первые попавшиеся примеры, их уже много.

Х-мм, уж не из-за этого ли мой лиф недозаряжается и пробег уменьшился? Буквально вчера обнаружил, что после полной зарядки SoC 80%, хотя в таймере стоит заряжать до 100%

сам решил развивать родное ТСУ, как раз по вышеописанным причинам (включая выключенное состояние авто). начал так:
https://www.drive2.ru/l/705882342937343017/

сейчас почитываю про докер и питон, хочется поднять опенкарвингс на домашнем компе, правда пока уперся в провайдера, не могу добыть белый ип. ну и магнитолу всё еще не добили(

Находил вашу тему, читал. На мой взгляд, это слишком сложно и накладно.

обмен по кану всех леафов кроме последнего ze2 вроде уже весь отснифал и положил в базу товарищ дала:
https://github.com/dalathegreat/

О, я уже находил репозиторий этого человека в бабочке, но искал тогда ныне удалённый проект nissan_leaf_code, не нашёл, а остальное переводить не стал.

с протоколом обмена и его расшифровкой можно ознакомиться в топике товарища турбо3 (автор лифспая):
https://mynissanleaf.com/threads/bms-details.17470/

К сожалению, у меня этот сайт не открывается, что-то пров перестарался с блокировками. Но и остального должно хватить.

LEAF ZE0 G 2011

4

Re: Получение данных с машины с помощью ELM327 нужна помощь в декодировани

Sonya⇓ пишет:

К сожалению, у меня этот сайт не открывается, что-то пров перестарался с блокировками. Но и остального должно хватить.

тогда начните с этого
https://github.com/bol-van/zapret/blob/ … /readme.md

Листок-самолет LEAF ZE0 G 2011 перепак CATL 114ач

5

Re: Получение данных с машины с помощью ELM327 нужна помощь в декодировани

Удалось получить почти все нужные сенсоры. Обновил проект на гитхабе, желающие могут попробовать.
Осталась одна невыясненная вещь: в выключенном состоянии Leaf тем не менее продолжает питать ELM327 в разъёме OBD, при этом при запросе к разным блокам в машине щёлкают релюшки, значит что-то там всё же запитано. Отсюда вопрос: если что-то запитано, что это за блоки и какие запросы к ним можно отправить? У меня задача простая, выяснить, включена или выключена машина или находится на зарядке.

LEAF ZE0 G 2011

6 (2025-08-02 08:08:03 отредактировано LKA)

Re: Получение данных с машины с помощью ELM327 нужна помощь в декодировани

Sonya⇓ пишет:

У меня задача простая, выяснить, включена или выключена машина или находится на зарядке.

я подозреваю, что это можно выяснить просто читая напряжение в бортсети командой atrv.
если напряжение ниже 13 вольт, то машина выключена, если выше, то включена или заряжается (или подзаряжает свинец от лития).
а так-то в вашей же табличке есть состояния леаф повер свич, леаф чардж моде и леаф плюг стэйт...

Листок-самолет LEAF ZE0 G 2011 перепак CATL 114ач

7

Re: Получение данных с машины с помощью ELM327 нужна помощь в декодировани

LKA пишет:

если напряжение ниже 13 вольт, то машина выключена, если выше, то включена или заряжается (или подзаряжает свинец от лития).

Так сейчас и сделано, но как оказалось, метод весьма ненадёжен: если просто включить машину без нажатой педали, то 12В аккум не подзаряжается (напряжение на нём 12В), а также если машина на таймере и включилась зарядка ВВБ, то 12В тоже не заряжается.

а так-то в вашей же табличке есть состояния леаф повер свич, леаф чардж моде и леаф плюг стэйт...

К сожалению, в выключенном состоянии все запросы к ECU 797 дают одинаковый ответ NO DATA.

LEAF ZE0 G 2011

8 (2025-08-02 11:03:43 отредактировано LKA)

Re: Получение данных с машины с помощью ELM327 нужна помощь в декодировани

Sonya⇓ пишет:

если просто включить машину без нажатой педали, то 12В аккум не подзаряжается (напряжение на нём 12В), а также если машина на таймере и включилась зарядка ВВБ, то 12В тоже не заряжается.

часто пользуетесь этим режимом и нужно отлавливать это состояние?
смотреть леаф повер свич в этом случае не помогает?

Sonya⇓ пишет:

К сожалению, в выключенном состоянии все запросы к ECU 797 дают одинаковый ответ NO DATA.

ну так если но дата, то выключен, при зарядке или при включении без тормоза данные есть, чем не триггера для вычисления состояния?

из неспящих блоков можно потыкать
BCM (бодик) ATSH745 atcra765
TCU ATSH746
запросы и ответы тсу, если не выдран, можно почитать в исходниках опенкарвингса
https://github.com/developerfromjokela/opencarwings
https://github.com/developerfromjokela/nissan-leaf-tcu/

Листок-самолет LEAF ZE0 G 2011 перепак CATL 114ач