Возможно ли объединить несколько скетчей?

djtimoha
djtimoha аватар
Offline
Зарегистрирован: 14.03.2018

Задумка простая. Хочу управлять от ESP8266 вытяжкой в ванной комнате.
Хочу задействовать: Реле 5v, Датчик DHT11
Возмоно ли написать скетч чтоб он управляся как от DHT11 (автматически), так и паралельно с браузера (принудителбно) с показанием влажности?

 

Сейчас использую простой скетч для принудителного ВКЛ|ВЫКЛ вентилятора:

#include <ESP8266WiFi.h>

#define ledPin 5

const char* ssid = "Имя";
const char* password = "Пароль";

WiFiServer server(80);

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

  
  pinMode(ledPin, OUTPUT);
  digitalWrite(ledPin, 0);
  
  // Connect to WiFi network
  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);
  
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);
  
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
  
  // Start the server
  server.begin();
  Serial.println("Server started");

  // Print the IP address
  Serial.println(WiFi.localIP());
}

void loop() {
  // Check if a client has connected
  WiFiClient client = server.available();
  if (!client) {
    return;
  }
  
  // Wait until the client sends some data
  //Serial.println("new client");
  while(!client.available()){
    delay(1);
  }
  
  // Read the first line of the request
  String req = client.readStringUntil('\r');
  //Serial.println(req);
  client.flush();
  
  // Match the request
  int ledON;
  if (req.indexOf("/ledPin/0") != -1)
    ledON = 0;
  else if (req.indexOf("/ledPin/1") != -1)
    ledON = 1;
  else if (req.indexOf("/ledPin/2") != -1)
    ledON = 2;
    else {
    Serial.println("invalid request");
    client.stop();
    return;
  }

  
  // Set GPIO2 according to the request
  digitalWrite(ledPin, ledON);
  client.flush();

  // Prepare the response
  String s = "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n";
  s += (ledON)?"ON":"OFF";
  
  if(ledON == 0) {Serial.println("OFF");}
  if(ledON == 1) {Serial.println("ON"); }

  // Send the response to the client
  client.print(s);
  delay(1);
  //Serial.println("Client disonnected");

  // The client will actually be disconnected 
  // when the function returns and 'client' object is detroyed
}

Хочется объединить данный скетч с скетчем на DHT11

gfx125
Offline
Зарегистрирован: 27.05.2017

djtimoha пишет:

Возмоно ли написать скетч чтоб он управляся как от DHT11 (автматически), так и паралельно с браузера (принудителбно) с показанием влажности?

Клапауций вроде бы не запрещал. Значит - можно.

 

bwn
Offline
Зарегистрирован: 25.08.2014

djtimoha пишет:

Сейчас использую простой скетч для принудителного ВКЛ|ВЫКЛ вентилятора:

Хочется объединить данный скетч с скетчем на DHT11

"Простой" скетч, предполагаю, бездумно скопипищенный. Ибо, если вы его написали сами, с DHT11 проблем возникать уже не должно.

svm
Offline
Зарегистрирован: 06.11.2016

djtimoha пишет:

Задумка простая. Хочу управлять от ESP8266 вытяжкой в ванной комнате.
Хочу задействовать: Реле 5v, Датчик DHT11
Возмоно ли написать скетч чтоб он управляся как от DHT11 (автматически), так и паралельно с браузера (принудителбно) с показанием влажности?

Один из вариантов:

1 зайти на сайт 1M Smartphone

2 скачать готовую прошивку Sonoff Basic  http://support.1msmart.com/kb/faq.php?cid=3

3 Залить ее в ESP, подключить к ESP DHT11 и реле

4 скачать приложение для Андроида

и управлять вытяжкой в ручном или автоматическом режиме (по температуре или влажности)

Отлично работает и в МЕШ и в домашней сетях и через облако из любой точки мира.

djtimoha
djtimoha аватар
Offline
Зарегистрирован: 14.03.2018

УВы не выходит. Выдаёт ошибку в чёном экране.

djtimoha
djtimoha аватар
Offline
Зарегистрирован: 14.03.2018

Пробывал совместить два скетча, не показывает в браузере работает ли на данный момент вентилятор. 

sadman41
Онлайн
Зарегистрирован: 19.10.2016

Значит все, бросайте эту херь и займитесь делом - пифка дерните, шашлык пожарьте.

yucan
Offline
Зарегистрирован: 20.04.2015

svm пишет:

djtimoha пишет:

Один из вариантов:

1 зайти на сайт 1M Smartphone

2 скачать готовую прошивку Sonoff Basic  http://support.1msmart.com/kb/faq.php?cid=3

3 Залить ее в ESP, подключить к ESP DHT11 и реле

4 скачать приложение для Андроида

и управлять вытяжкой в ручном или автоматическом режиме (по температуре или влажности)

Отлично работает и в МЕШ и в домашней сетях и через облако из любой точки мира.

Здравствуйте! Заинтересовал проект! 

А где качнуть приложение для смартфона?

svm
Offline
Зарегистрирован: 06.11.2016
yucan
Offline
Зарегистрирован: 20.04.2015

Спасибо, уже нашёл. На 4 PDA!

 

djtimoha
djtimoha аватар
Offline
Зарегистрирован: 14.03.2018

Я не использую смартфон. На браузере ПК нужно всё отобразить

yucan
Offline
Зарегистрирован: 20.04.2015

djtimoha пишет:

Я не использую смартфон. На браузере ПК нужно всё отобразить

Поразбирался немного с 1M Smartphone. Работает только с приложением на смартфоне. Хороший проект. Только не понял как задействовать входы. Прошивка 1MSONOFF4CHESP8266_0.3.0.11_0.8.2.34

svm
Offline
Зарегистрирован: 06.11.2016

yucan пишет:

Поразбирался немного с 1M Smartphone. Работает только с приложением на смартфоне. Хороший проект. Только не понял как задействовать входы. Прошивка 1MSONOFF4CHESP8266_0.3.0.11_0.8.2.34

Прошивка 1М Sоnоff 4CH ESP8266
 
 
OUT1 GPIO12
OUT2 GPIO5
OUT3 GPIO4
OUT4 GPIO15
IN1 GPIO0
IN2 GPIO2
IN3 GPIO13
IN4 GPIO14
Button GPIO0
LED0 GPIO16

Скачать можно по адресу Дампы 1M Smartphone

Я пока экспериментирую на ESP-01. У него выводов совсем кот наплакал. Пришлось с матюгами подпаять три проводочка на GPIO 4, 5 и 12. На первые два подключил часы. 12-выход на реле. А  DHT-11 без проблем на TX для прошивки  http://support.1msmart.com/kb/faq.php?id=21  или на RX для    http://support.1msmart.com/kb/faq.php?id=7   
Подсказка по подключению есть в приложении, в свойствах устройства. Сейчас пока прекратил эксперименты, жду ESP 12 с ними попроще будет. А так, мне понравилосб,работает все четко и в домашней сети и через облако, легко постепнно наращивать систему, добавляя новые кстройства и меняя сценарии.
yucan
Offline
Зарегистрирован: 20.04.2015

Да, прошивка как раз эта.  Я на ESP12 экспериментирую. С выходами всё нормально, работают. Световая индикация ндикация на GPIO16 - тоже, как заявлено. Про входы - нигде в настройках ничего не нашёл. Многие датчики работают по квадратной шине. Как её организовать - тоже не понятно. Единственное, что есть в этой прошивке это подключение монитора энергии PZEM 004. 

 

svm
Offline
Зарегистрирован: 06.11.2016

yucan пишет:

Да, прошивка как раз эта.  Я на ESP12 экспериментирую. С выходами всё нормально, работают. Световая индикация ндикация на GPIO16 - тоже, как заявлено. Про входы - нигде в настройках ничего не нашёл. Многие датчики работают по квадратной шине. Как её организовать - тоже не понятно. Единственное, что есть в этой прошивке это подключение монитора энергии PZEM 004. 

 

Я эту прошивку не заливал, поскольку доступ к портам в ESP 01 достаточно гемморойное занятие.Поэтому ограничился самой простой прошивкой. Дополнительно вывел только порты на часы. В четырехканальном варианте скорее всего входные порты предназначены для концевиков, хотя не факт. У меня все входные порты подтянуты к +5 В через резисторы 10 кОм. и при замыкании их на землю в режиме "стандарт" их состояние на андроиде меняется. В режиме "регулятор" при подключении DHT 11 он определяется автоматом, и появляются показания температуры и влажности. После того как я согласился обновить прошивку на более свежую, устройство перезагрузилось и в свойствах появилась еще куча датчиков (термометры, барометры и т.п.). Выбираешь нужный и в кружочке с буковкой "i" расписано как и на какие порты их подключать.

yucan
Offline
Зарегистрирован: 20.04.2015

Да, там целое не паханое поле для экспериментов. У Вас прошивка Itead Sonoff Socket S20?

svm
Offline
Зарегистрирован: 06.11.2016

На одном эта на втором Itead Sonoff 1 Channel, 

Сейчас пока затормозил с экспириментами, начался полевой сезон и параллельно сыну квартиру без отделки в божеский вид приводим. В принципе на ней и будем разворачивать сеть от 1М. Сын сначала выписал пару штук Sonoff Basic. Работают нормально, но не понравилось, то что без китайского облака система мертвая, поэтому перешили на 1М.

yucan
Offline
Зарегистрирован: 20.04.2015

Понятно! Аналогичные проблемы. На работе только есть время этим заниматься) Раньше с Sonoff дела не имел, но понравилось. Буду продолжать)

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

подпишусь

svm
Offline
Зарегистрирован: 06.11.2016

По хорошему, нужно отдельную тему создавать. Сама система 1М достаточно удачная и на её базе можно создать практически все, добавляя устройства по мере необходимости, но на фоне других ее практически не видно. Форум 1М мало активный и большой пользы от него нет. Найти там нужную информацию достаточно трудно, хотя она есть. Что еще подкупило - на Али можно относительно недорого приобрести устройства Sonoff, выполненные достаточно неплохо.

yucan
Offline
Зарегистрирован: 20.04.2015

Разобрался с прошивкой 1M Sonoff 4CH ESP8266. Всё работает. Может работать в облаке, домашней сети, и в ручном режиме. Нашёл аналогичный товар на Али. Буду делать.

yucan
Offline
Зарегистрирован: 20.04.2015

Сделал под отопление в деревенском доме. Поместил в распред. коробочке 80Х80. 4 канала. На боковую стенку размещу монитор энергии PZEM004. Долго ждал реле с Али. Почта России похоже не работает вообще.