[Модуль] Xiaomi miIO (xiaomimiio)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1754 раза
Контактная информация:

Re: [Модуль] Xiaomi miIO (xiaomimiio)

Сообщение skysilver » Пн сен 23, 2019 11:54 am

Stor писал(а):
Вс сен 22, 2019 5:35 pm
2. Есть метрика command, нигде не описано как с ней работать.
Здесь немного есть viewtopic.php?f=5&t=4863#p65808 По факту нужна только для управления пылесосами и wifi-радио.
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
pruwait
Сообщения: 42
Зарегистрирован: Ср ноя 07, 2018 3:05 pm
Благодарил (а): 2 раза
Поблагодарили: 0

Re: [Модуль] Xiaomi miIO (xiaomimiio)

Сообщение pruwait » Ср сен 25, 2019 11:57 am

sergey.b писал(а):
Вт апр 30, 2019 10:03 am
При отправке с шайбы кондиционер на эти коды никак не реагирует.
Кондер нашелся в стандартных устройствах шайбы приложения Михом и через через приложение управлять им все таки можно.
Очень хочется через mjdm управлять кондером.
Точно такая ситуация.
Отправляю команду из miHome, вижу в камеру телефона мигание ИК светодиодов по бокам шайбы. Наблюдаю реакцию кондиционера.

Захожу в Можордомо -> Панель управления / xiaomimiio -> моя шайба - Общие - Обучить - Старт
Получаю строку:

Код: Выделить всё

mk0mUwlk0mkxmEsms0mEsmM2moBCzUAdgEIAZ+WTWbAMeAgwHXgMSBj4EPgyeBV4BHgeeAz4EXgD+B14bngleBV4JfgL+Av4LXgEeAR4BDAYHMpmNKYCRTSZzgIjwNfD28HLwk/BL8DHoAA=
Создал свойство ir_code у объекта ThisComputer.
Отправляю через консоль:

Код: Выделить всё

setGlobal('ThisComputer.ir_code', mk0mUwlk0mkxmEsms0mEsmM2moBCzUAdgEIAZ+WTWbAMeAgwHXgMSBj4EPgyeBV4BHgeeAz4EXgD+B14bngleBV4JfgL+Av4LXgEeAR4BDAYHMpmNKYCRTSZzgIjwNfD28HLwk/BL8DHoAA=');
При этом в камеру не вижу моргающего ИК-светодиода шайбы.
Захожу в Можордомо -> Панель управления / xiaomimiio -> моя шайба - Данные и вижу, что значение ir_play приобрело считанный ранее код.

Вопрос1: Почему выбрана частота 38400? В моем пульте кондиционера кварц на 433кГц.
Вопрос2: Какие логи посмотреть, чтоб понять, почему не моргает ИК-светодиод шайбы?
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1754 раза
Контактная информация:

Re: [Модуль] Xiaomi miIO (xiaomimiio)

Сообщение skysilver » Ср сен 25, 2019 12:05 pm

pruwait писал(а):
Ср сен 25, 2019 11:57 am
Отправляю команду из miHome, вижу в камеру телефона мигание ИК светодиодов по бокам шайбы. Наблюдаю реакцию кондиционера.
В Михом пульт кондея из базы приложения или через обучение кнопок физического пульта? Если первый вариант, то пробовать обучать в Михом эту же кнопку и проверять, управляется или нет. По результатам отпишись.
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
pruwait
Сообщения: 42
Зарегистрирован: Ср ноя 07, 2018 3:05 pm
Благодарил (а): 2 раза
Поблагодарили: 0

Re: [Модуль] Xiaomi miIO (xiaomimiio)

Сообщение pruwait » Ср сен 25, 2019 12:08 pm

С Вопросом2 разобрался: забыл включить команду в кавычки.
Команда отправляется, вижу моргание ИК светодиода. А вот реакции от кондиционера нет.
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1754 раза
Контактная информация:

Re: [Модуль] Xiaomi miIO (xiaomimiio)

Сообщение skysilver » Ср сен 25, 2019 12:09 pm

pruwait писал(а):
Ср сен 25, 2019 11:57 am
Почему выбрана частота 38400?
Такая была во всех API-командах, которые восстановлены через реверс-инжиниринг протокола miIO шайбы.
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1754 раза
Контактная информация:

Re: [Модуль] Xiaomi miIO (xiaomimiio)

Сообщение skysilver » Ср сен 25, 2019 12:11 pm

pruwait писал(а):
Ср сен 25, 2019 12:08 pm
С Вопросом2 разобрался: забыл включить команду в кавычки.
Команда отправляется, вижу моргание ИК светодиода. А вот реакции от кондиционера нет.
Обучай пульт в Михом и проверяй. Вероятность 99% что не заработает.

Предвосхищая следующий вопрос, сразу отвечаю - как достать зашитые ИК-коды в базу пультов приложения Михом я не знаю. :)
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
pruwait
Сообщения: 42
Зарегистрирован: Ср ноя 07, 2018 3:05 pm
Благодарил (а): 2 раза
Поблагодарили: 0

Re: [Модуль] Xiaomi miIO (xiaomimiio)

Сообщение pruwait » Ср сен 25, 2019 12:12 pm

В Михом пульт кондея из базы приложения.

Если выбираю предустановленный пульт - все управляется.
Если выбираю пульт Custom, обучить кнопку POWER - этот пульт не работает.
pruwait
Сообщения: 42
Зарегистрирован: Ср ноя 07, 2018 3:05 pm
Благодарил (а): 2 раза
Поблагодарили: 0

Re: [Модуль] Xiaomi miIO (xiaomimiio)

Сообщение pruwait » Ср сен 25, 2019 12:17 pm

skysilver писал(а):
Ср сен 25, 2019 12:11 pm

как достать зашитые ИК-коды в базу пультов приложения Михом
Вот это - правильный вопрос.
А кто-нибудь пытался подать правильную команду с шайбы (как с пульта) и считать ее другой шайбой? Может, там будет разница? :?
pruwait
Сообщения: 42
Зарегистрирован: Ср ноя 07, 2018 3:05 pm
Благодарил (а): 2 раза
Поблагодарили: 0

Re: [Модуль] Xiaomi miIO (xiaomimiio)

Сообщение pruwait » Ср сен 25, 2019 12:29 pm

Вроде нашел в сети следующую информацию.
"Что касается кондиционера, то тут все сложнее, в его коде сразу содержится и команда включить, и температура, и режим работы, и направление потока воздуха. Зачастую такую команду нельзя считать из-за недостаточно длинного буфера.

НО это увеличение буфера до 255, может не помочь. Дело в том что в коде может быть длинная пауза (в моем случае ~10мс ) и библиотека считает ее окончанием кодировки, а также код может быть длиннее чем 255 (у меня 439)..."

Дальше приводится ссылка на вариант для ардуино, который может считывать длинные коды с помощью прерываний.

Возможно, это наш случай и мы просто не умеем считывать родной пульт?
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1754 раза
Контактная информация:

Re: [Модуль] Xiaomi miIO (xiaomimiio)

Сообщение skysilver » Ср сен 25, 2019 1:38 pm

pruwait писал(а):
Ср сен 25, 2019 12:29 pm
Возможно, это наш случай и мы просто не умеем считывать родной пульт?
Если бы обученные в Михом коды работали, то тогда был бы смысл ковыряться и дорабатывать модуль в этой части. Весьма вероятно, что это вообще ограничение прошивки шайбы, а не внешних приложений, которые используют готовое API-шайбы.
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Ответить