• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Remotexy esp8266

Step7

New member
Всем привет помогите разобраться, esp8266 прошил arduino ide скечь примеры wificlient, она подключается к роутеру пененгуется в сети нормально esp8266 подключена к arduino mini прошита, код брал с сайта remotexy конфигурация (интернет, arduino, esp8266, arduino) пытаюсь подключится с мобильного предварительно установив программу remotexy, выходит ошибка connection refauld, что не так делаю подскажите?
 

Vypra

Member
фух, пока прочитал, мозг сломал.
Давай по полкам разложим. Давай код, схему или что нибудь, что может помочь разобрать все что написано выше.
Зачем esp8266 и arduino mini соединять? Что прошито кодом с сайта remotexy?
Попробуй для начала взять чистый код с сайта remotexy и прошить им esp8266. Потом подключись с телефона к esp8266. Думаю заработает.
А после ковыряй пошагово дальше.
 

Step7

New member
есть esp8266 есть arduino mini на arduino А0,А1,А2,А3 входа, будить приходить 5 в ,мне надо чтоб в локальной сети я включил телефоное приложения Remotexy ,а там 4 идикатора загорались ,я новичок в этом деле не могу понять куда какой код заливать
 

Step7

New member
Arduino пршеваю этим кодом
Код:
/*
   -- Umni Home --
  
   This source code of graphical user interface
   has been generated automatically by RemoteXY editor.
   To compile this code using RemoteXY library 2.4.3 or later version
   download by link http://remotexy.com/en/library/
   To connect using RemoteXY mobile app by link http://remotexy.com/en/download/                  
     - for ANDROID 4.3.1 or later version;
     - for iOS 1.3.5 or later version;
   
   This source code is free software; you can redistribute it and/or
   modify it under the terms of the GNU Lesser General Public
   License as published by the Free Software Foundation; either
   version 2.1 of the License, or (at your option) any later version.   
*/

//////////////////////////////////////////////
//        RemoteXY include library          //
//////////////////////////////////////////////

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

#include <RemoteXY.h>

// настройки соединения
#define REMOTEXY_SERIAL Serial
#define REMOTEXY_SERIAL_SPEED 115200
#define REMOTEXY_WIFI_SSID "House"
#define REMOTEXY_WIFI_PASSWORD "347620step"
#define REMOTEXY_SERVER_PORT 6377


// конфигурация интерфейса 
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] =
  { 255,0,0,4,0,93,0,8,27,1,
  65,2,5,18,9,9,65,2,20,18,
  9,9,65,1,35,18,9,9,65,4,
  50,18,9,9,129,0,4,10,12,6,
  64,50,53,37,0,129,0,20,10,12,
  6,64,53,48,37,0,129,0,35,10,
  12,6,64,55,53,37,0,129,0,49,
  10,15,6,64,49,48,48,37,0,129,
  0,21,2,23,6,24,208,161,209,141,
  208,191,209,130,208,184,208,186,33,0 };
 
// структура определяет все переменные вашего интерфейса управления
struct {

    // output variable
  uint8_t led_1_g; // =0..255 яркость зеленого цвета индикатора
  uint8_t led_2_g; // =0..255 яркость зеленого цвета индикатора
  uint8_t led_3_b; // =0..255 яркость синего цвета индикатора
  uint8_t led_4_r; // =0..255 яркость красного цвета индикатора

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

} RemoteXY;
#pragma pack(pop)

/////////////////////////////////////////////
//           END RemoteXY include          //
/////////////////////////////////////////////



void setup()
{
  RemoteXY_Init ();
 
 
  // TODO you setup code
 
}

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


}
 

Step7

New member
esp8266 прошеваю
Код:
/*
    This sketch sends data via HTTP GET requests to data.sparkfun.com service.

    You need to get streamId and privateKey at data.sparkfun.com and paste them
    below. Or just customize this script to talk to other HTTP servers.

*/

#include <ESP8266WiFi.h>

const char* ssid     = "House";
const char* password = "1234567";

const char* host = "house.com";
const char* streamId   = "admin";
const char* privateKey = "admin";

void setup() {
  Serial.begin(115200);
  delay(10);

  // We start by connecting to a WiFi network

  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);

  /* Explicitly set the ESP8266 to be a WiFi-client, otherwise, it by default,
     would try to act as both a client and an access-point and could cause
     network-issues with your other WiFi-devices on your WiFi-network. */
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  Serial.println("");
  Serial.println("WiFi connected");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());
}

int value = 0;

void loop() {
  delay(5000);
  ++value;

  Serial.print("connecting to ");
  Serial.println(host);

  // Use WiFiClient class to create TCP connections
  WiFiClient client;
  const int httpPort = 80;
  if (!client.connect(host, httpPort)) {
    Serial.println("connection failed");
    return;
  }

  // We now create a URI for the request
  String url = "/input/";
  url += streamId;
  url += "?private_key=";
  url += privateKey;
  url += "&value=";
  url += value;

  Serial.print("Requesting URL: ");
  Serial.println(url);

  // This will send the request to the server
  client.print(String("GET ") + url + " HTTP/1.1\r\n" +
               "Host: " + host + "\r\n" +
               "Connection: close\r\n\r\n");
  unsigned long timeout = millis();
  while (client.available() == 0) {
    if (millis() - timeout > 5000) {
      Serial.println(">>> Client Timeout !");
      client.stop();
      return;
    }
  }

  // Read all the lines of the reply from server and print them to Serial
  while (client.available()) {
    String line = client.readStringUntil('\r');
    Serial.print(line);
  }

  Serial.println();
  Serial.println("closing connection");
}
 

Step7

New member
А в обще хочу этот код реализовать
Код:
#define REMOTEXY_MODE__ETHERNET_LIB
#include <Ethernet.h>
IPAddress ip(192,168,10,15);
//Ethernet shield used pins: 10(SS)
//#include <SPI.h>
//SPI interface used pins: 11(MOSI), 12(MISO), 13(SCK)

#include <RemoteXY.h>

// настройки соединения
//#define REMOTEXY_ETHERNET_MAC "DE:AD:BE:EF:EF:ED"
#define REMOTEXY_SERVER_PORT 6377


// конфигурация интерфейса 
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] =
  { 255,0,0,4,0,100,0,8,27,0,
  65,2,10,13,6,6,65,2,23,13,
  6,6,65,1,36,13,6,6,65,4,
  49,13,6,6,129,0,9,7,8,4,
  93,50,53,37,0,129,0,22,7,8,
  4,93,53,48,37,0,129,0,35,7,
  8,4,93,55,53,37,0,129,0,47,
  7,10,4,93,49,48,48,37,0,129,
  0,25,1,10,4,38,208,145,208,176,
  208,186,32,209,129,209,141,208,191,209,
  130,208,184,208,186,33,0 };
 
// структура определяет все переменные вашего интерфейса управления
struct {

    // output variable
  uint8_t led_1_g; // =0..255 яркость зеленого цвета индикатора
  uint8_t led_2_g; // =0..255 яркость зеленого цвета индикатора
  uint8_t led_3_b; // =0..255 яркость синего цвета индикатора
  uint8_t led_4_r; // =0..255 яркость красного цвета индикатора
 
    // other variable
  uint8_t connect_flag;  // =1 if wire connected, else =0

} RemoteXY;
#pragma pack(pop)

void setup() {
  RemoteXY_Init ();
  Serial.begin(9600);
  pinMode(A0, INPUT);
  pinMode(A1, INPUT);
  pinMode(A2, INPUT);
  pinMode(A3, INPUT);
 
}

void loop() {
  RemoteXY_Handler ();
 
  bool led_1_g = sig(A0);
  bool led_2_g = sig(A1);
  bool led_3_b = sig(A2);
  bool led_4_r = sig(A3); 
  led_1_g = map(led_1_g, 0, 1023, 0, 255);
  led_2_g = map(led_2_g, 0, 1023, 0, 255);
  led_3_b = map(led_3_b, 0, 1023, 0, 255);
  led_4_r = map(led_4_r, 0, 1023, 0, 255);
}
byte sig(byte nomberPin)
{
  byte buton ;
 
  if(analogRead(nomberPin) == 1)
  {
    buton = 1;
  }
  else
  {
    buton = 0;
  }

  return buton;
   }
 

Vypra

Member
Arduino пршеваю этим кодом
Код:
/*
   // определение режима соединения и подключение библиотеки RemoteXY
#define REMOTEXY_MODE__ESP8266_HARDSERIAL

}
Прошиваем Arduino, а MODE__ESP8266_HARDSERIAL.
Прочитай на сайте REMOTEXY мануал. Там он очень хороший. Начни с простого и пошагово. Реализуй проект просто с одной кнопкой. Залей на ESP8266 и попробуй соединиться.
Я все равно не понял сути твоего проекта. Зачем тулить ардуину и ESP8266, если ESP8266 сама по себе все может делать без ардуины.
Или ESP8266 просто как модуль связи WiFi?
 

Step7

New member
Мне на аналоговые 4 входа будит приходить 5 вольт постепенно я датчики поставил в ёмкость, то есть первый датчик сработал 5волт пришло на А0 и так д. У esp8266 нету 4 входа аналогова
 
Сверху Снизу