Описание возможностей

Вашему вниманию представлена альфа-версия приложения MQTT IoT, которое предназначено для управления устройствами на базе SoC ESP8266 с прошивкой Homes-Smart, подключенными к сервису FlyMon DMS.

MQTT IoT поддерживает работу прошивок Homes-Smart Free в режиме отображения данных с сенсоров. При использовании прошивки Homes-Smart Pro и включённой опции MQTT в конструкторе, возможно практически полное управление устройством ESP8266.

Для работы приложения требуется Android 4.4.2 и выше (возможно, в будущем требования будут снижены до 4.0.3). Работа приложения проверена на версиях Android (список обновляем): 4.4.2, 5.0, 5.1.1. Так-же в настройках телефона необходимо разрешить устанавливать программы из неизвестных источников.

Приложение написано на языке C# в среде Xamarin Android. Его автором является разработчик, скрывающийся под ником Dolfik. Я выполняю промоутерские функции и занимаюсь организацией стыковки между Homes-Smart, FlyMon DMS и MQTT IoT. Отдельное спасибо пользователю с ником ZyyyRu за предоставленные скриншоты.

По всем вопросам, связанным с работой приложения, пишите на форуме.

Примерно так выглядит оформленный Dashboard.


Установка приложения и История версий

В настоящее время приложение можно скачать с файлового архива блога ZFT Lab..

В ближашем будущем, приложение будет доступно в Google маркете. В Yandex маркете оно доступно уже сейчас для устройств с Android 5.0 и выше.

Баги и планы развития вынесены на форум Homes-Smart. FAQ находится внизу данной страницы.

При обновлении, полностью удаляйте старое приложение и только потом ставьте новую версию !


MQTT_IoT_FlyMon_v.0.1.11_20151208.apk

  • теперь нет надобности в обязательно включенном WiFi (приложение работает и по GPRS/CDMA каналу)
  • реализована отправка статистической информации о работе приложения на сервер FlyMon (см. вкладку About)
  • разобрались с получением данных о статусе GPIO в приложении (нужен ActiveSend режим для GPIO-out на модуле ESP)

MQTT_IoT_FlyMon_v.0.1.11_20151207.apk

  • исправлена работа с PWM (в предидущей версии вне зависимости от введенных значений было 0-100)
  • тестовая идентификация и классификация Android устройств
  • использована новая нумерация версий

MQTT_IoT_FlyMon_20150806.apk

  • рефакторинг контролов
  • убраны дублирующиеся иконки
  • добавлена возможность указания в топиках “+” и “#”

MQTT_IoT_FlyMon_20150802.apk

  • исправлена проблема закрытия приложения при смене ориентации Dashboard
  • исправлена ошибка с неработающим Disconnect сессии
  • исправлена ошибка с неработающим Exit в приложении
  • добавлена возможность установки тематических иконок на каждый контрол
  • добавлена авто-подстановка логина в начало набираемого топика

MQTT_IoT_FlyMon_20150801.apk

  • глобальная оптимизация кода, рефакторинг
  • исправлены ошибки при подключении к серверу
  • изменена нумерация версий приложения
  • добавлена информация в раздел About
  • исправлена проблема с пропаданием контролов в Dashboard
  • добавлен новый тип контрола для отправки текстовых сообщений на LCD/OLED

MQTT_IoT_FlyMon_20150731.apk

  • переделан алгоритм подключения к MQTT серверу

MQTT_IoT_FlyMon_20150730.apk

  • изменён алгоритм подключения к MQTT серверу
  • снижено требование к Android до 4.2.2

MQTT_IoT_FlyMon_20150727.apk

  • первая публичная доступная версия

Базовая настройка приложения

После установки, запустите приложение MQTT IoT.


Выберите в свойствах раздел Settings.


Заполните поля, согласно скриншота и подсказки. Нажимите кнопку Add.

  • Name – название сервиса, можно написать произвольное имя
  • Host – сервер мониторинга esp8266.flymon.net (фиксирован)
  • Port – 1883, оставляем по-умолчанию
  • Login – demo@flymon.net для теста или E-mail в случае использования своего аккаунта
  • Pass – demo для теста или ваш пароль в случае использования полноценного аккаунта
  • Client ID – оставляем значение по-умолчанию, созданное автоматически
  • Protocol – меняем на версию MQTT 3.1

Нажмите кнопку Connect.


Убедитесь, что соединение установлено (вверху, на иконке приложения зелёная галочка).


Установите галочку Remember me.


Работа приложения в упрощённом режиме FlyMon proxy

В Free версии прошивки Homes-Smart работа по протоколу MQTT не активирована. Однако, включив на модуле передачу данных на сервис FlyMon DMS, можно воспользоваться режимом proxy и получать данные с ESP8266 в любой точке мира.

Выберите в свойствах раздел Dashboard.


Нажмите +. Откроется окно ввода данных.


Заполните поля, согласно скриншота и подсказки. Нажимите кнопку Add.

  • Name – название сенсора или его местоположение
  • Type – выберите readonly value
  • Topic – путь в сенсору (demo@flymon.net/mac_устройства/название_метрики)
  • Unit – обозначение единицы измерения (C, %, mmHg и т.д.)

При создании MQTT топика используйте Список отслеживаемых метрик ESP8266 HomesSmart


Теперь каждые 5 мин. обновлённые данные с ESP8266 будут видны на экране.


Работа приложения в полноценном режиме MQTT

При использовании Pro версии прошивки Homes-Smart не забудьте активировать для работы по протоколу MQTT соответствующий раздел в конструкторе.

Выберите в свойствах раздел Dashboard. Нажмите значок “+”.


Для получения данных с сенсоров выберите правильный Type.


Заполните поля, согласно скриншота и подсказки. Нажимите кнопку Add.

  • Name – название сенсора или его местоположение
  • Type – выберите readonly value
  • Topic – путь в сенсору по иерархии MQTT (ваш@email/hostname_устройства/тип_метрики/название_метрики)
  • Unit – обозначение единицы измерения (C, %, mmHg и т.д.)

При создании MQTT топика используйте Рабочие примеры MQTT топиков Homes-Smart ESP8266


Пример добавления темературы с датчика DHT22.


Пример добавления темературы с датчика DHT22 (второй).


Пример добавления темературы с датчика AM2321.


Пример добавления темературы с датчика BMP180.


Пример добавления темературы с датчика SHT21.


Пример добавления влажности с датчика DHT22.


Пример добавления влажности с датчика DHT22 (второй).


Пример добавления влажности с датчика AM2321.


Пример добавления влажности с датчика SHT21.


Пример добавления атмосферного давления с датчика BMP180.


Пример добавления освещённости с датчика BH1750.


Пример добавления размера свободной памяти модуля ESP8266.


Пример добавления времени работы модуля ESP8266.


Для различного рода переключателей необходимо выбрать тип данных “on-off switch”.


Пример добавления включения подсветки LCD дисплея.


Пример добавления включения реле на gpio5.


Примерно так выглядит оформленный Dashboard.



Часто задаваемые вопросы (FAQ)

Ответы на вопросы будут оформлены на днях…

Как правильно составить MQTT топик для ESP8266 ?

Случайно стер Client ID в приложении. Что теперь там писать ?

Как получить аккаунт на MQTT сервере FlyMon ?

При включении приложения, данные в Dashboard появляются не сразу. Это нормально ?


Внутренние ссылки



Published

27 July 2015

Tags