Не работает SoftwareSerial

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Добрый день, форумчане. Проблема такова - есть Arduino Uno и модуль ESP8266. На модуле ESP я создал WEB сервер. И по переходе по спец. ссылке пишу в Serial информацию. Информация со стороны ESP пишется точно (проверено). Теперь к самой проблеме. Откуда же я знаю что ESP отсылает данные? При прошивке ESP я использую пины 0 и 1 RX и TX соответственно. Когда я прошил ESP, меняю провода местами (RX->TX , TX->RX) - инфа до ESP доходит. Но если я использую SoftwareSerial и создаю Serial на пинах 2,3 (для Uno это рабочие пины создания Serial (у меня там раньше стоял Radio модуль и тоже по SoftwareSerial)), то извините - с ESP инфа уже не приходит. Танцуя с бубном мне все-таки удалось "Обмануть" ESP, но только раз - включив ESP в порты 0,1 (На старом месте (пин 2,3) у меня стоял тот самый Radio модуль). Не выключая ESP - я вынул провода Radio и ESP и воткнул провода ESP в пины 2,3 и о чудо - заработало ! Но только 1 раз :D. Единственное что я нарыл на других форумах - это то, что ESP имеет 2 UART портов и вроде-бы причина именно в этом (но по своей глупости и малому опыту с Arduino - не могу понять в чем причина такого поведения ESP). Повторяю - что на пинах 0,1 все отрабатывает всегда корректно. Код ниже. P.S извиняюсь за такой огромный код Arduino - думал сначала его обрезать, но потому решил скинуть как есть

ESP


#include <ESP8266WiFi.h>                                // Подключаем библиотеку ESP8266WiFi
#include <ESP8266WebServer.h>                           // Подключаем библиотеку Wire
 
const char* ssid = "MyESP";                             // Название Моей создаваемой WiFi сети

ESP8266WebServer HTTP(80);                              // Указываем порт Web-сервера (80) по дефолту

String command;
String commandAdd="AddPhoneNumber";
String commandDelete="DeletePhoneNumber";
int telnum=520534351;
int flag=1;
void setup() 
{
  Serial.begin(9600);                                   // Скорость передачи 9600 (дефолт) 
  delay(10);                
  WiFi.softAP(ssid);                                    // Создание точки WiFi с названием ssid
  HTTP.begin();                                         // Создание веб сервера на 80 порту

  Serial.println("My ip adress");                       //Вывод ip адреса для подключения по федолту (192.168.4.1)
  Serial.println(WiFi.softAPIP());
  
  HTTP.on("/changeDiodStatus",[](){
    if(flag==1){
      command=commandAdd + telnum;
      flag=2;
      }else{
        command=commandDelete + telnum;
        flag=1;
        }
    Serial.print(command);
    HTTP.send(200,"text/plain","Status changed");
    });              
}
 
void loop() 
{
HTTP.handleClient();
}

Arduino 

 

// ЭТО СКЕТЧ ПРИЁМНИКА (БАЗА)!!!
//--------------------- НАСТРОЙКИ ----------------------
#define CH_NUM 0x60   // номер канала, должен совпадать с передатчиком (датчик)

// УРОВЕНЬ МОЩНОСТИ ПЕРЕДАТЧИКА
#define SIG_POWER RF24_PA_MAX

// СКОРОСТЬ ОБМЕНА ДАННЫМИ
// должна быть одинакова на приёмнике и передатчике!
#define SIG_SPEED RF24_1MBPS
//--------------------- НАСТРОЙКИ ----------------------

//--------------------- БИБЛИОТЕКИ ---------------------
#include "nRF24L01.h"            // библиотеки для радио модуля
#include "RF24.h"
RF24 radio(9, 10);              // создать радио модуль на пинах 9 и 10
#include "SoftwareSerial.h"     //библиотека для создания сериал порта на любом пине
SoftwareSerial SIM800(4,5);     //создать сериал порт для прослушки на пинах 2,3
SoftwareSerial WIFI(2,3); //TX желтый RX зеленый
//--------------------- БИБЛИОТЕКИ ---------------------

//--------------------- ПЕРЕМЕННЫЕ ----------------------
byte address[][6] = {"1Node", "2Node", "3Node", "4Node", "5Node", "6Node"};     //возможные номера труб
byte callbackData[3];                                                           // массив принятых данных (id от кого, type тип датчика, data что передал)
byte Data[4];                                                                   //массив отправляемых данных (id кому , type кому , id новый , type новый)
byte pipeNo;                                                                    //Байтовая переменная хранения номера трубы для отправки
struct Sensor {                                                                 //Переменная типа struct для хранения данных о датчике
  byte id;
  byte type;
  byte data;
};
Sensor cashDataToSend;                                                          // кешевая переменная для отправки данных
String _response = "";                                                          // Переменная для хранения ответа модуля sim800L
//--------------------- ПЕРЕМЕННЫЕ ----------------------

void setup() {
  WIFI.begin(9600);
  Serial.begin(9600);    //открываем порт для связи с ПК
  radioSetup();          //ф-я настройки радио модуля
  simSetup();            //ф-я настройки модуля sim800L
//  sendSMS("+79520534351","hi");

//  for(int i =0; i<200; i++){
////    writeNewSensorSettings(0,1,mySensor);
//    clearSensorById(i);
////    delay(200);
//   Serial.print("Info "); Serial.println(eeprom_read_byte(i));
//   delay(5);
//  }

}

int bustatus;
void loop() {
 
 if(radio.available()){
  Serial.println("Что-то пришло ,читаю");
  radio.read(&callbackData, sizeof(callbackData));
 if(callbackData[0]==0 && callbackData[1]!= 0){
    registerNewSensor();
  }   
}

 if(WIFI.available()){
  Serial.println("Есть инфа с wifi");
  Serial.println(WIFI.readString());
  }

//
//  if(Serial.available()){
//    bustatus=Serial.parseInt();
//    Serial.print(bustatus);
//    switch(bustatus){
//      case 2:
//        Serial.print("Я на лоу");
//        break;
//      case 1:
//        Serial.print("Я на хай");
//        break;
//      }
//    }
}

void radioSetup() {                        // настройка радио модуля
  radio.begin();                           // активировать модуль
  radio.setAutoAck(1);                     // режим подтверждения приёма, 1 вкл 0 выкл
  radio.setRetries(0, 15);                 // (время между попыткой достучаться, число попыток)
  radio.setPayloadSize(32);                // размер пакета, байт
  radio.openReadingPipe(1, address[0]);    // хотим слушать трубу 0
  radio.openWritingPipe(address[1]);       // хотим писать на трубу по первому адресу
  radio.setChannel(CH_NUM);                // выбираем канал
  radio.setPALevel(SIG_POWER);             // задаем уровень мощности передатчика
  radio.setDataRate(SIG_SPEED);            // задаем скорость обмена
                                           // должна быть одинакова на приёмнике и передатчике!
                                           // при самой низкой скорости имеем самую высокую чувствительность и дальность!! (логично)

  radio.powerUp();                         // начать работу
  radio.startListening();                  // начинаем слушать эфир, мы приёмный модуль
} 

void simSetup(){
  SIM800.begin(9600);                      //Скорость порта для связи Arduino с GSM модемом    
  delay(100);
  sendATCommand("AT", true);               //Настраиваем Sim модуль для общения (скорость)
  sendATCommand("AT+CMGF=1", true);        //Включаем функцию отправки сообщений
  }

void sendSMS(String phone, String message)                      //ф-я отправки sms 
{
  sendATCommand("AT+CMGS=\"" + phone + "\"", true);             // Переходим в режим ввода текстового сообщения
  sendATCommand(message + "\r\n" + (String)((char)26), true);   // После текста отправляем перенос строки и Ctrl+Z
}

void registerNewSensor(){
    Serial.println("Новенький");
    radio.stopListening();
    Serial.println("Перестал читать");
    writeNewSensorSettings(callbackData[1],callbackData[2],cashDataToSend);
    Data[0]= callbackData[0];
    Data[1]= callbackData[1];
    Data[2]= cashDataToSend.id;
    Data[3]= cashDataToSend.type;
    Serial.print("Новый id"); Serial.println(Data[2]);
    Serial.print("Новый type"); Serial.println( Data[3]);
    if (waitRadioResponse()){
          Serial.println("Отправил, удачная регистрация");  
          radio.startListening();
          Serial.println("Начинаю слушать");
      }else{
          clearSensorById(Data[2]);
          Serial.println("Нет ответа, освободил id");  
          radio.startListening();
          Serial.println("Начинаю слушать");
        }
  }

bool waitRadioResponse(){
  bool _resp=false;
  long _timeout = millis() + 2000;                                             // Переменная для отслеживания таймаута (10 секунд)
  while (!_resp &&  millis() < _timeout)  {
    _resp = radio.write(Data, sizeof(Data));
    };                                                                         // Ждем ответа или выжидаем таймаут в 2 секунды
  if (_resp) {                                                     // Если есть, что считывать...
    return true;                                                               // ... считываем и запоминаем
  }
  else {                                                                       // Если пришел таймаут, то...
    return false;                                                              // ... оповещаем об этом и...
  }  
}

bool isItFreeCell(int num) {                    //ф-я проверки клетки eeprom на пустоту
  Serial.print("isItFreeCell() <-"); Serial.println(num) ;
  byte cash = eeprom_read_byte((uint8_t*)num);
  Serial.print("Что находится в ячейке num"); Serial.println(cash) ;
  delay(15);
  Serial.print(cash); Serial.print(" = "); Serial.print(cash); Serial.println(" ?") ;
  if (cash == 255) {
    Serial.println(" Да") ;
    return true;
  }
  else {
    Serial.println(" Нет") ;
    return false;
  }
}

void clearSensorById(int id) {                  //ф-я очистки клеток памяти eeprom от сенсора по его id
  for (int i = 10; i < 1000; i= i + 3) 
  {
    if (eeprom_read_byte((uint8_t*)i) == id) 
    {
      delay(10);
      eeprom_write_byte((byte*)i, 255);
      delay(10);
      eeprom_write_byte((byte*)i + 1, 255);
      delay(10);
      eeprom_write_byte((byte*)i + 2, 255);
      delay(10);
      break;
    }
  }
}

void writeNewSensorSettings(byte type, byte data, Sensor& CallbackData) { //ф-я записи нового датчика в память eeprom (дывается id)
  Sensor mySensor;
  mySensor.type = type;
  mySensor.data = data;
  for (int i = 10; i < 1000; i = i + 3) {
    Serial.print("i= "); Serial.println(i) ;
    if (isItFreeCell(i) == true) {
      delay(500);
      if (i==10){
         mySensor.id=1;
        }else {
         mySensor.id = eeprom_read_byte((uint8_t*)i-3)+1;           //Чтение из eeprom 
          }
      Serial.print("Старый id = "); Serial.println(mySensor.id);
        Serial.print("Новый id = "); Serial.println(eeprom_read_byte((uint8_t*)i-3)) ;
      eeprom_write_block((void*)&mySensor, (int*)i, sizeof(mySensor));
      eeprom_read_block((void*)&CallbackData, (int*)i, sizeof(CallbackData)); 
      break;
    }
  }
}

void readSensorSettingsById(int id,Sensor& callbackData){         //ф-я вывода данных о сенсое по id
    for (int i =10;i<1000;i= i+3){
       if (eeprom_read_byte((uint8_t*)i) == id) {
        eeprom_read_block((void*)&callbackData, (int*)i, sizeof(callbackData));
      }
    }
  }
  
void writeMainPhone(long phomeNumber){      //ф-я записи основонго номера телефона long поскольку int(16 бит) -32768 до 32767 и по этим причинам не подходит для номера телефона
  int n=0;
  for(int i=5;i>0;i--){
//    Serial.println(i-n);
//    Serial.println(phomeNumber%100);
    delay(50);
    eeprom_write_byte(n, phomeNumber%100);
    delay(50);
    n++;
    phomeNumber/=100;
//    Serial.println(n);
//    Serial.println(phomeNumber);
    }
  }
void writeAddPhone(long phomeNumber){           //ф-я записи вторичного номера телефона long поскольку int(16 бит) -32768 до 32767 и по этим причинам не подходит для номера телефона
  int n=0;
  for(int i=5;i>0;i--){
//    Serial.println(i-n);
//    Serial.println(phomeNumber%100);
    delay(50);
    eeprom_write_byte(n+5, phomeNumber%100);
    delay(50);
    n++;
    phomeNumber/=100;
//    Serial.println(n);
//    Serial.println(phomeNumber);
    }
  }
    
String waitResponse() {                                           // Функция ожидания ответа и возврата полученного результата
  String _resp = "";                                              // Переменная для хранения результата
  long _timeout = millis() + 10000;                               // Переменная для отслеживания таймаута (10 секунд)
  while (!SIM800.available() &&  millis() < _timeout)  {};        // Ждем ответа или выжидаем таймаут в 10 секунд
  if (SIM800.available()) {                                       // Если есть, что считывать...
    _resp = SIM800.readString();                                  // ... считываем и запоминаем
  }
  else {                                                          // Если пришел таймаут, то...
    Serial.println("Timeout...");                                 // ... оповещаем об этом и...
  }
  return _resp;                                                   // ... возвращаем результат. Пусто, если проблема
}

String sendATCommand(String cmd, bool waiting) {
  String _resp = "";                            // Переменная для хранения результата
  Serial.println(cmd);                          // Дублируем команду в монитор порта
  SIM800.println(cmd);                          // Отправляем команду модулю
  if (waiting) {                                // Если необходимо дождаться ответа...
    _resp = waitResponse();                     // ... ждем, когда будет передан ответ
    if (_resp.startsWith(cmd)) {  // Убираем из ответа дублирующуюся команду
      _resp = _resp.substring(_resp.indexOf("\r", cmd.length()) + 2);
    }
    Serial.println(_resp);                      // Дублируем ответ в монитор порта
  }
  return _resp;                                 // Возвращаем результат. Пусто, если проблема
}

 

sadman41
Offline
Зарегистрирован: 19.10.2016

Даже один софтсериал - это испытание для программиста, а два уж подавно. Мега под рукой есть? Если да - зарытайте с ней, на хардварных сериалах.

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Фото 1. RX->RX TX->TX RST->GND (Для отслеживания - что же нам пишет ESP в свой сериал) Дергаю спец.ссылку 2 раза 

AddPhoneNumber520534351

DeletePhoneNumber520534351

Фото 2. TX->RX RX->TX  Дергаю спец.ссылку 2 раза 
 

Есть инфа с wifi
AddPhoneNumber520534351
Есть инфа с wifi
DeletePhoneNumber520534351
 

P.S код pool Arduino 

 

 if(Serial.available()){
  Serial.println("Есть инфа с wifi");
  Serial.println(Serial.readString());
  }

Фото 3. RX->2 TX->3  Дергаю спец.ссылку 2 раза 

P.S код pool Arduino  + SoftwareSerial WIFI(2,3); так никуда из кода и не уходил

ПУСТО

 

 if(WIFI.available()){
  Serial.println("Есть инфа с wifi");
  Serial.println(WIFI.readString());
  }

 

iconini13ya
Offline
Зарегистрирован: 04.04.2021

К сожалению - меги нет, есть только Uno (я думаю что ее "Потенциала" вполне хватит для моего проекта) - не хотелось бы брать избыточно мощный мк из-за проблемы с Serial (на крайний буду использовать 0,1 пины, но перетыкать их постоянно для прошивки мк и ESP - не очень хочется)

iconini13ya
Offline
Зарегистрирован: 04.04.2021

+ Я уже использую 2 софтсериал - думаю еще 1 не проблема :D 

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Также могу отметить, что создавать сериал на других пинах я пробовал - все тщетно.

sadman41
Offline
Зарегистрирован: 19.10.2016

iconini13ya пишет:

+ Я уже использую 2 софтсериал - думаю еще 1 не проблема :D 


Любители никогда не сомневаются в успехе там, куда профессионал предпочитает не соваться.

nik182
Offline
Зарегистрирован: 04.05.2015

https://doc.arduino.ua/ru/prog/SoftwareSerialListen
Может это поможет заставить работать софтовый сериал?

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Хм, да, спасибо , заработало . Осталось решить проблему с переключением на другие Serial (ведь у меня их 3) как думаете - как решить проблему?

b707
Offline
Зарегистрирован: 26.05.2017

iconini13ya пишет:

+ Я уже использую 2 софтсериал - думаю еще 1 не проблема :D 

а чего не 4 ?

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

 

Если все же захотите чуть научиться - библиотека SOftSerial не может работать больше чем с одним портом за раз. Об этом написано в описании библиотеки - как вы думаете, авторы в куорсе или нет?

rkit
Offline
Зарегистрирован: 23.11.2016

Проводка соплями прямо над антенной - шикарное конструкторское решение.

b707
Offline
Зарегистрирован: 26.05.2017

iconini13ya пишет:

Хм, да, спасибо , заработало . Осталось решить проблему с переключением на другие Serial (ведь у меня их 3) как думаете - как решить проблему?

точно так же.

Только прочитайте внимательно первую строчку по этой ссылке.

Мне кажется вы делаете бредятину. Лучше возьмите Мегу, отговорка "у меня ее нет" - не катит, на свете существуют магазины. Даже если вам придется ждать ее с Али месяц - это будет эффективнее, чем тратить время на решение НЕРЕШАЕМЫХ проблем с кучей СОФТсериалов

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Тогда, возможно сможете предложить иную альтернативу SoftSerial для прослушивания 2 -х и более sERIAL одновременно ?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

iconini13ya пишет:

Тогда, возможно сможете предложить иную альтернативу SoftSerial для прослушивания 2 -х и более sERIAL одновременно ?

Элементарно, Ватсон! - HardwareSerial.

b707
Offline
Зарегистрирован: 26.05.2017

iconini13ya пишет:

Тогда, возможно сможете предложить иную альтернативу SoftSerial для прослушивания 2 -х и более sERIAL одновременно ?

несколько аппаратных сериалов

И я бы, для начала. вообще задумался. нафига мне столько сериалов. У вас в конструкции, насколько я вижу - одновременно WiFi, радио NRF и GPRS SIM800. Нафига столько? - если есть инет, значит не нужен модем. И если есть Вайфай - то не нужен NRF

Не пытайтесь изготовить комбайн, который будет "уметь все". Когда кто-то берется одновременно подметать улицы и выпекать булочки  - в тесте песок на зубах хрустеть будет...

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Спасибо, попробую. Раньше его не использовал ) 

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Это дипломная работа. Что-то по типу умного дома с экономическим обоснованием итд ) Я бы сам рад использовать везде Wifi, но он и стоит в 3-4 раза дороже. В серийном производстве ( до которого дипломной работе как на коленях до китая) - конечно далеко, но я там в общем сложил одно и другое - как итог- дорого выходит + система для слабослышащих. Мне поставили задачу по типу - А знаешь какие телефоны у глухих? - Такие, что дробят кости при звонке, если лежат в кармане штанов (намек на Nokia) и что операционки у них нет - соответcnвенно чтобы их оповещать - нужен GSM модуль коим  и является Sim800. Radio - ля общения с датчиками. WIFI - для настройки "Базы" с помощью WEB интерфейса (помогите, меня мучают тут в вузе)

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Ну и естественно WIFI использует TCP, что намного упростило бы "общение" (все-таки) не по радио передавать. 

b707
Offline
Зарегистрирован: 26.05.2017

Мегу бери

 

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Полностью с вами согласен (про булочки и песок), но мы с вами - люди подневольные. Если заказчик желает - желания надо исполнять в корпусе 1 устройства и без всякие "если" и за пару сотен деревянных 

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Мега длиннее uno + я уже все спаял ( Так не хочется все делать заново + ее еще покупать надо (а мы студенты - люди бедные) + деньжата никто не вернет. Ах, да, еще и покупать макетку и паяться заново на нее. Но спасибо , я помучаюсь еще с Hardware serial - если не получится - перейду . (Надеюсь все получится)

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Хвхавхах ) Спасибо, что есть то есть - разработка Сколково 

sadman41
Offline
Зарегистрирован: 19.10.2016

Забавно, конечно. У нас в пригороде интернат для глухонемых, так периодически я вижу в автобусе их стайками. Никаких 3310 у них давно уж нет, все нормально в Вайбере керогазят.
Вибробраслеты, полагаю, тоже не что-то из ряда вон выходящее. Ещё первые Pebble вполне удачно беззвучной вибрацией будили меня по утрам.

b707
Offline
Зарегистрирован: 26.05.2017

iconini13ya пишет:

я помучаюсь еще с Hardware serial - если не получится - перейду .

Ты что-то не въезжаешь. Hardware serial - это тот Сериал, что у Уно на пинах 0 и 1. Он по определению на Уно один и подключить 4 девайса одновременно ты через него никак не сможешь.

Hardware serial тебе советовали использовать на тех платах, где таких портов несколько - из распространенных это Мега и СТМ32

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Они естественно про пожилых людей ( для молодежи - есть telegram) в который тоже можно отправлять пуш уведомления с ESP

iconini13ya
Offline
Зарегистрирован: 04.04.2021

b707 пишет:

iconini13ya пишет:

я помучаюсь еще с Hardware serial - если не получится - перейду .

Ты что-то не въезжаешь. Hardware serial - это тот Сериал, что у Уно на пинах 0 и 1. Он по определению на Уно один и подключить 4 девайса одновременно ты через него никак не сможешь.

Hardware serial тебе советовали использовать на тех платах, где таких портов несколько - из распространенных это Мега и СТМ32

 

Теперь въехал. Епона мать. Ну что ж за мир то такой. Единственная надежда осталась, попробую ее реализовать - если не сбудется - перехожу, но сами понимаете мою попоболь

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Спрошу у вас, чтобы долго самому не копаться (возможно вы знаете). Библиотека RF24 создает serial на портах ? Или же это что-то другое ? 

sadman41
Offline
Зарегистрирован: 19.10.2016

И пожилая родственница у меня есть. СМС-ки раз в месяц смотрит и то, если напомнить.Какие там оповещения от мониторинга...

Вобщем, тут что-то с "эргономикой" и целевой аудиторией не проработано. Понятно, что в ВКР необходимо просто показать, что ты умеешь. Но в реальном устройстве софтсериалы с гитхаба в доме устроят пожар и потоп одновременно. Экономический эффект покажет отрицательную динамику.

iconini13ya
Offline
Зарегистрирован: 04.04.2021

) Я понял. Ну, как я написал выше - я человек подневольный - мне сказали "Выжми все и потом последнюю каплю - стряхни туда же" - стараемся исполнять ) Кстати, я тут товарищу задал вопрос, возможно вы в курсе дел - RF24 использует сериал порты ? 

sadman41
Offline
Зарегистрирован: 19.10.2016

NRF работает по SPI. Там своя кухня, с сериалами не пересекающаяся.

b707
Offline
Зарегистрирован: 26.05.2017

iconini13ya пишет:

 возможно вы в курсе дел - RF24 использует сериал порты ? 

выше вы спрашивали "создает ли НРФ24 порты", а тут - использует ли?

Не очень понимаю, что вы вообще имеете в виду, но думаю, что на оба вопроса ответ "нет".

НРФ24 и Сериал никак не связаны.

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Уффф, спасибо большое ) Сидел только что читал форумы в таком напряжении) Тогда все просто. Можно использовать 2 Serial в моем случае ( управления по GSM - не наклевывается ( и надеюсь что не будет)). Так что - можно - переключаться на sim800 serial, отправлять смс и уходить обратно на прослушку wifi. Спасибо ) 

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Спасибо большое ) Выше ( в предыдущем комментарии) описал мой умственный релакс после сказанных вами (и не только) слов

iconini13ya
Offline
Зарегистрирован: 04.04.2021

Потом , как устройство будет готово - красиво все "Упакую". Сейчас устройство находится на стадии "Разработки", соответственно провода - наше все (т.к что-то надо постоянно переткнуть, добавить, убрать итд).

b707
Offline
Зарегистрирован: 26.05.2017

iconini13ya - когда вы участвуете в активной переписке, пишите в начале ник собеседника, а то приходится догадыватся, кому вы отвечаете

sadman41
Offline
Зарегистрирован: 19.10.2016

Может так статься, что Uno тут вообще не нужно. На ESP вроде как два сериала, SPI имеется ...

nik182
Offline
Зарегистрирован: 04.05.2015

И WiFi своё, с сериалом не связанное - ещё сериал освобождается. 

iconini13ya
Offline
Зарегистрирован: 04.04.2021

b707 пишет:

iconini13ya - когда вы участвуете в активной переписке, пишите в начале ник собеседника, а то приходится догадыватся, кому вы отвечаете

Спасибо большое, обязательно учту)

iconini13ya
Offline
Зарегистрирован: 04.04.2021

sadman41 пишет:
Может так статься, что Uno тут вообще не нужно. На ESP вроде как два сериала, SPI имеется ...

Возможно .... (если это ирония, то над глупыми смеяться - грешно :D)

iconini13ya
Offline
Зарегистрирован: 04.04.2021

nik182 пишет:

И WiFi своё, с сериалом не связанное - ещё сериал освобождается. 

Мне нужно с него инфу прокидывать на ардуино для принятия управленческих решений так сказать ) Так что думаю сериал тут понадобится (если конечно можно прокидывать данные не через сериал - расскажите как, буду рад узнать что-то новое) 

b707
Offline
Зарегистрирован: 26.05.2017

iconini13ya пишет:

Мне нужно с него инфу прокидывать на ардуино для принятия управленческих решений так сказать )

зачем решения принимать на ардуине? На ЕСП контроллер значительно мощнее и памяти больше

iconini13ya
Offline
Зарегистрирован: 04.04.2021

b707 пишет:

iconini13ya пишет:

Мне нужно с него инфу прокидывать на ардуино для принятия управленческих решений так сказать )

зачем решения принимать на ардуине? На ЕСП контроллер значительно мощнее и памяти больше

Был бы рад принять ваши технические решения и реализовать проект с ними, но до сдачи дипломной (чтобы она была готова не считая документов) - остался месяц, а надо еще написать взаимодействие WIFI и Arduino + все это отладить от багов + сделать датчики и прошивку к ним ( что не маловажно). Но я учту в следующий раз, спасибо )