Прошу прощения, те кто обновился на _upd9 прошу обновиться на _upd9a, так как в _upd9 были изменения для счетчика с HEX номером 0x56h 0x55h. Всё поправил в _upd9a, протестировано. У кого отображается температура как -127 - это означает что счетчик не обрабатывает отрицательные температуры и передает просто 0xFFh (255 градусов) как в счетчиках в моем населенном пункте, где они установлены. Прошу отписаться тех, у кого выдает правильно отрицательные значения температуры (сам счетчик температуры показывает не совсем верно, закономерность для корректировки математическим способом не найдена). Как показала практика - многие датчики которые приехали в последнее время ко мне с алиэкспресс в корпусе ТО-92 показывают температуру примерно на 8 градусов выше, чем герметичные датчики в металлической гильзе на проводе.
Доброго времени суток, залил код, все хорошо работает , но есть одно но.., почему то на мой счетчик не может подключится ,при этом к соседским к 5 разным подключается, можете подсказать в чем может быть причина.
Да, это возможно когда при переводе номера счетчика в HEX один из байтов становится равен 0x55h или 0x73h, тогда требуется байтстаффинг для отправляемых пакетов. Данный функционал будет реализован позже, пока есть уже обкатанный вариант для такого случая в ручном режиме с жёстко прописанным номером счётчика - написал в ЛС.
Да, это возможно когда при переводе номера счетчика в HEX один из байтов становится равен 0x55h или 0x73h, тогда требуется байтстаффинг для отправляемых пакетов. Данный функционал будет реализован позже, пока есть уже обкатанный вариант для такого случая в ручном режиме с жёстко прописанным номером счётчика - написал в ЛС.
Спасибо SysCat, поправили вместе код и вуаля все заработало, прога рабочая 100%, только в моем случае, номер счетчика подвел, выдавал 0x55, ждем продолжения наших трудов.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Разобрался, залил скеч. Вопрос, у меня номер счетчика 6 значный?
Ответил в ЛС, надо экспериментировать.
Ваш номер получается в НЕХ 0xХХYYZZh 0xXXh 0xYYh 0xZZh осталось понять какой байт куда вставлять, так что комбинация может быть разная но вариантов для перебора не слишком много (в этом и есть эксперимент)
Тогда в коде пробуем 4 байт написать 0хZZ вместо 0x00, а на номер счетчика остается 0xYY 0xXX -> 0xXXYYh указываем в настройках номер счетчика равным 0xXXYYh и transmitt_byte[4] = 0xZZ, и смотрим что выйдет
Если все правильно думаю то должно быть примерно так.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Благодаря пользователю Alex1522 любезно предоставившему удалённый доступ для экспериментов, выяснили, что для счетчиков 6ххххх просто откидываем цифру 6 и в настройках нужно ввести последние 5 цифр которые остались от 6-значного номера. 4-ый байт по прежнему резерв и пока равен 0x00h. Alex1522 спасибо за помощь. Ещё одна тайна раскрыта.
Последний раз редактировалось SysCat Пт фев 02, 2024 23:00:44, всего редактировалось 1 раз.
Да, это возможно когда при переводе номера счетчика в HEX один из байтов становится равен 0x55h или 0x73h, тогда требуется байтстаффинг для отправляемых пакетов. Данный функционал будет реализован позже, пока есть уже обкатанный вариант для такого случая в ручном режиме с жёстко прописанным номером счётчика - написал в ЛС.
Вечер добрый. Собрал девайс, залил последнюю прошивку, все запускается, но тоже приходят битые пакеты. Можете подсказать вариант с жестко прописанным номером?
Я конечно дико извиняюсь, а в чём собственно была тайна ? Что то никак в толк не возьму
Был вопрос в том, что если ввести полностью шестизначный номер (больше чем 65535), то при переводе в HEX он уже занимает 3 байта, а не 2 байта как для номеров меньше 65535 (0xFF 0xFF), в документации вроде не сказано что всегда используются только последние 5 цифр, зачем было на корпус наносить номер длиннее?!
Последний раз редактировалось SysCat Пн фев 05, 2024 15:43:04, всего редактировалось 1 раз.
...в документации вроде не сказано что всегда используются только последние 5 цифр, зачем было на корпус наносить номер длиннее?!...
В описании протокола, как раз таки сказано: "номера счётчиков имеют значения от 1 до 65000" А вот номер на корпусе самого прибора, никак не влияет на это. Если он больше чем 65000 просто откидывают одну старшую цифру. Так делают и в приборах других производителей. Поэтому никаких тайн тут просто нет. Да и сетевой адрес при установке всегда можно изменить. Поэтому не удивляйтесь, ежели прибор откажется читаться по номеру на корпусе. Но учитывая квалификацию работников сетей, их режим работы и прочие факторы...
В описании протокола, как раз таки сказано: "номера счётчиков имеют значения от 1 до 65000" А вот номер на корпусе самого прибора, никак не влияет на это. Если он больше чем 65000 просто откидывают одну старшую цифру. Так делают и в приборах других производителей. Поэтому никаких тайн тут просто нет. Да и сетевой адрес при установке всегда можно изменить. Поэтому не удивляйтесь, ежели прибор откажется читаться по номеру на корпусе. Но учитывая квалификацию работников сетей, их режим работы и прочие факторы...
Согласен, что не очень внимательно прочитал , но как минимум пользователь может посмотреть адрес устройства на выданном пульте то, тем более если он его использует для получения своих показаний Хорошая и простая мысля приходит опосля Просто 6-ти значный номер на корпусе ввёл в заблуждение котиков
... Просто 6-ти значный номер на корпусе ввёл в заблуждение котиков
Дело в том, что сетевой номер при 6-ти знаках маркировки на корпусе, может повторять уже имеющийся в данной сети 5-ти значный номер. В таком случае номер одного из них должны изменить при установке. И узнать его действительно можно прочитав в пульте (если он есть).
Доброе утро, камрады. Подскажите, а никто не научился читать счетчики Нартис?
Пока есть код форумчанина Slacky, он предлагал проект по считыванию через оптопорт, который позволяет с ними работать через оптическую головку, нужно разобраться с ним и его модифицировать для нашей сборки и соответственно протестировать. С тестированием будет посложнее, так не везде они есть.
Но меня смущает следующая строчка из инструкции - В активном состоянии пульт индикации устанавливает соединение с измерительным блоком по радиоканалу. Стандарт связи: RF ISM Bluetooth 5.0. Дальность связи в открытом пространстве не менее 50м. Так что возможно там используется для связи Bluetooth, а не RF 433Mhz (как минимум такая строчка есть для счетчиков Нартис-100).
В ESP32 есть и Bluetooth, так что при желании можно попробовать адоптировать код, но из-за разницы сборок (не нужно будет CC1101), то это выльется в отдельный проект, хотя можно и тут приколхозить, так что надо пробовать. Для начала понять какой канал связи используется, получить хоть какие-то ответные данные от счетчика, а дальше будет проще.
Вот немного дополнили код: 1. Добавили байтстаффинг для отправляемых пакетов (вроде тестировали ), 2. Добавили автоматическое определение 1ф/3ф счетчика (определяется после отработки 1-ой команды), соответственно функции для 1-фазного счетчика будут другие.
В данный момент для 1-фазного счётчика работают только 1 и 2 функции (Запрос даты/времени, тип счётчика и суммарные показания), при определении что счётчик однофазный функции 3 и 4 будут игнорироваться автоматически (включая запрос по таймеру), в дальнейшем добавим 3-ю функцию для 1-фазного счётчика.
Вложения:
Комментарий к файлу: добавлен байтстаффинг для отправляемых пакетов, добавлено автоматическое определение фазности счетчика My_Mirtek_GW_upd10.zip [9.79 KiB]
Скачиваний: 36
Что бы не отслеживать переписку в личке, отвечу тут. Вот запрос в котором нет доп. байтов данных: 11 73 55 20 00 7С 64 0FF 0FF 1C 00 00 00 00 A8 55 - как видим тут стандартная длинна 11 байтов. Вот запрос который меня просили проверить. 11 73 55 21 00 00 00 FE FF 3A 00 00 00 00 00 00 B9 55 - что не так в этом запросе ? В нём прибавилось два байта данных, но указан почему то один, загадка... Отсюда не верная КС и ответ видимо не приходит. Если уж формировать выше приведённый запрос, то выглядеть он должен как то так: 11 73 55 22 00 00 00 FE FF 3A 00 00 00 00 00 00 E9 55 Будьте внимательнее, друзья !
Всем привет! Подскажите, пожалуйста, имея USB приемопередатчик на чипах CP2102 и CC1101, есть ли возможность подключиться к счетчику Миртек-32-ру из Home Assistant?
Сейчас этот форум просматривают: indman и гости: 35
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения