ESP8266 и RemoteXY для управления с мобильного приложения

Поддержать сайт

Хотите быстро создать интерфейс управления ESP8266 на телефоне Android.

Отличный сайт http://remotexy.com/ru/editor/

Скетч: WiFi-Reley

 

Поддержать сайт

25 мыслей о “ESP8266 и RemoteXY для управления с мобильного приложения”

  1. Бывают ли у вас проблемы с зависанием модуля в уже отлаженной системе, которые решаются только ручным нажатием на кнопку reset? Если вы нашли какой то программный способ решения проблемы, поделитесь пожалуйста)

    1. Пока не встречал. У меня SMART ROOM месяцами работает без сбоев, хотя для этой задачи это не критично.

    2. У меня тоже есть такая проблема, только модуль не может подключится к точке доступа а сам остается в рабочем состоянии.

    1. Конечно можно написать приложение в app inventor! Как то, мне не требуется писать приложения на android. Поэтому я его не использую. То что мне действительно нужно в нем написать не возможно.

        1. Нужно приложение которое будет перехватывать текст после обращения ОК Googl и отправлять GET запрос внутри которого будет весь перехваченный текст.

          1. Есть такое приложение, только работает с Алисой и Blynk, причём наше Домовёнок Кузя (Alexstar), все еспешки включает Алиса.

          2. В ремонте можно отправить GET запрос? Если да, то можно будет управлять устройствами с помощью голоса через Алису, Домовёнок Кузя как раз это и делает.

  2. Подскажите пожалуйста, как можно со страницы не только отправлять сигналы, но и принимать их обратно? что то типо контрольной суммы, чтоб знать что светодиод включен, либо считывать данные с датчика температуры. Можете привести простой пример, как это прописать в коде страницы и в коде esp?

      1. С web страницы SMARTROOM.
        К примеру так это выглядит для отправки значений
        Web страница:

        Люстра
        Arduino:
        // Включаем реле с web страницы /pult.htm
        void handle_Reley() {
        int state = HTTP.arg(“state”).toInt();
        Reley(state);
        Serial.println(state);
        handleFileRead(“/pult.htm”);
        }
        // Включаем реле
        void Reley(int state) {
        switch (state) {
        case 6:
        digitalWrite(rele1, LOW);
        break;
        А как будет выглядеть это для прима значений на web страницу?

    1. Hi, Иван вам Сергей ответил? 😉 возможно вы имели ввиду при управлении с веб-страницы отправлять коды управления портами и также чтобы в веб странице был заложен код считывать и отображать состояние GPIO и выводить данные на веб? В ардуинке для w5100&28j60 я разобрался, а вот с esp8266 интересуюсь.

      1. Как управлять портами с веб страницы было показано в скетче AJAX — ТЕХНОЛОГИЯ ОБРАЩЕНИЯ К СЕРВЕРУ БЕЗ ПЕРЕЗАГРУЗКИ СТРАНИЦЫ.

        1. Просмотрел, спасибо! Но Иван (я так понял) имел ввиду: при первом обращении к странице на ней НЕТ информации о состоянии портов. Только по нажатию кнопки мы потом считываем состояние(и так каждой), а если GPIO уже вкл или выкл? и если это не в прямой видимости, а за несколько км? нужно для контроля использовать сразу считывание состояния порта и затем в каждом цикле проверять и светить на веб:
          s += (val2)?”1″:”0″; – например порт GPIO2

        2. а знаете почему этим AJAX_ксом мало кто занимается….да потому что у этого аякса нету программы написания в виде “графического программирования”..ну типа того(FL_Prog)…..если писать её вручную от руки то на четвёртой строчке забываешь что писал на первой….короче мозги должны быть как у математика……или гения ….к сожалению у большинства людей память “мозговая” очень забывчивая ….если конечно её не тренировать постоянно, а у людей нету времени и желания заниматься — трением(прением)…одного и того-же ….на себе проверенно , целый год занимался этим АЯКСОМ….сейчас спустя год помню то что не помню ни- чего толкового …..а уж куда-то вставлять эту прогу….да ну её в ЖО…..У!

  3. Может быть у кого то имеется пример того, как передавать данные с одного модуля esp8266 на другой или кто то знает где есть такой пример?

    1. смотрите передача данных на esp по UDP протоколу. но у меня он что то заглючил, нестабильно работал, не пойму почему. Был бы лагодарен админу за пускай простой но более менее протестированный пример стабильного обмена данными по UDP между двумя ESP, один из них AP другой Client

  4. привет я новичек и немогу понять как компилятор может ругаться на созданный автоматом код

    // определение режима соединения и подключение библиотеки RemoteXY
    #define REMOTEXY_MODE__ESP8266WIFI_LIB
    #include
    #include

    // настройки соединения
    #define REMOTEXY_WIFI_SSID “HomeNetwork2.4”
    #define REMOTEXY_WIFI_PASSWORD “cmst9300at680”
    #define REMOTEXY_SERVER_PORT 6377

    // конфигурация интерфейса
    #pragma pack(push, 1)
    uint8_t RemoteXY_CONF[] =
    { 255,2,0,0,0,23,0,8,13,0,
    1,0,34,26,12,12,2,31,88,0,
    1,0,49,26,12,12,2,31,88,0 };

    // структура определяет все переменные вашего интерфейса управления
    struct {

    // input variable
    uint8_t button_1; // =1 если кнопка нажата, иначе =0
    uint8_t button_2; // =1 если кнопка нажата, иначе =0

    // other variable
    uint8_t connect_flag; // =1 if wire connected, else =0

    } RemoteXY;
    #pragma pack(pop)
    #define PIN_BUTTON_1 D4
    #define PIN_BUTTON_2 D5

    void setup()
    {
    RemoteXY_Init ();

    pinMode (PIN_BUTTON_1, OUTPUT);
    pinMode (PIN_BUTTON_2, OUTPUT);

    // TODO you setup code

    }

    void loop()
    {
    RemoteXY_Handler ();

    digitalWrite(PIN_BUTTON_1, (RemoteXY.button_1==0)?LOW:HIGH);
    digitalWrite(PIN_BUTTON_2, (RemoteXY.button_2==0)?LOW:HIGH);

    // TODO you loop code
    // используйте структуру RemoteXY для передачи данных

    }

  5. Arduino: 1.8.10 (Windows 8.1), Плата:”Generic ESP8266 Module, 80 MHz, Flash, Legacy (new can return nullptr), All SSL ciphers (most compatible), dtr (aka nodemcu), 26 MHz, 40MHz, DOUT (compatible), 1MB (FS:64KB OTA:~470KB), 2, nonos-sdk 2.2.1+100 (190703), v2 Lower Memory, Disabled, None, Only Sketch, 115200″

    project:25:11: error: expected ‘;’ at end of member declaration

    uint8_t pin button_1; // =1 если кнопка нажата, иначе =0

    ^

    project:25:15: error: ‘button_1’ does not name a type

    uint8_t pin button_1; // =1 если кнопка нажата, иначе =0

    ^

    project:26:11: error: expected ‘;’ at end of member declaration

    uint8_t pin button_2; // =1 если кнопка нажата, иначе =0

    ^

    project:26:11: error: redeclaration of ‘uint8_t ::pin’

    C:\Users\Anton\Downloads\project-2019-12-15-17-20-06\project\project.ino:25:11: note: previous declaration ‘uint8_t ::pin’

    uint8_t pin button_1; // =1 если кнопка нажата, иначе =0

    ^

    project:26:15: error: ‘button_2’ does not name a type

    uint8_t pin button_2; // =1 если кнопка нажата, иначе =0

    ^

    C:\Users\Anton\Downloads\project-2019-12-15-17-20-06\project\project.ino: In function ‘void setup()’:

    project:33:22: error: ‘D4’ was not declared in this scope

    #define PIN_BUTTON_1 D4

    ^

    C:\Users\Anton\Downloads\project-2019-12-15-17-20-06\project\project.ino:41:12: note: in expansion of macro ‘PIN_BUTTON_1’

    pinMode (PIN_BUTTON_1, OUTPUT);

    ^

    project:34:22: error: ‘D5’ was not declared in this scope

    #define PIN_BUTTON_2 D5

    ^

    C:\Users\Anton\Downloads\project-2019-12-15-17-20-06\project\project.ino:42:12: note: in expansion of macro ‘PIN_BUTTON_2’

    pinMode (PIN_BUTTON_2, OUTPUT);

    ^

    C:\Users\Anton\Downloads\project-2019-12-15-17-20-06\project\project.ino: In function ‘void loop()’:

    project:33:22: error: ‘D4’ was not declared in this scope

    #define PIN_BUTTON_1 D4

    ^

    C:\Users\Anton\Downloads\project-2019-12-15-17-20-06\project\project.ino:52:16: note: in expansion of macro ‘PIN_BUTTON_1’

    digitalWrite(PIN_BUTTON_1, (RemoteXY.button_1==0)?LOW:HIGH);

    ^

    project:52:40: error: ‘struct’ has no member named ‘button_1’

    digitalWrite(PIN_BUTTON_1, (RemoteXY.button_1==0)?LOW:HIGH);

    ^

    project:34:22: error: ‘D5’ was not declared in this scope

    #define PIN_BUTTON_2 D5

    ^

    C:\Users\Anton\Downloads\project-2019-12-15-17-20-06\project\project.ino:53:16: note: in expansion of macro ‘PIN_BUTTON_2’

    digitalWrite(PIN_BUTTON_2, (RemoteXY.button_2==0)?LOW:HIGH);

    ^

    project:53:40: error: ‘struct’ has no member named ‘button_2’

    digitalWrite(PIN_BUTTON_2, (RemoteXY.button_2==0)?LOW:HIGH);

    ^

    Несколько библиотек найдено для “RemoteXY.h”
    Используется: C:\Users\Anton\Documents\Arduino\libraries\RemoteXY
    Несколько библиотек найдено для “ESP8266WiFi.h”
    Используется: C:\Users\Anton\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.2\libraries\ESP8266WiFi
    exit status 1
    expected ‘;’ at end of member declaration

    Этот отчёт будет иметь больше информации с
    включенной опцией Файл -> Настройки ->
    “Показать подробный вывод во время компиляции”

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.