1

Topic: ESP32

плата ESP32 Dev Module, управляет шаговым двигателем заслонки твёрдотопливного котла, два концевика на заслонке, два терморезистора, две термопары, драйвер шагового двигателя Dir, Step, Enable. Без встраивания в скетч блока управления remotexy, с отслеживанием через порт, работает без проблем. сгенерированная панель управления работает без проблем. при встраивании в скетч панели управления и загрузке в ESP32, постоянная перезагрузка, отслеживается через порт. убрал аналоговые входы на ADC1, не помогло, какие могут быть ещё ограничения на использование выводов ESP32?

2

Re: ESP32

Насколько мне известно часть пинов ESP32 используются внутрисхемно, например для доступа к флеш памяти. Если вы в скетче попробуете переопределить эти пины то это будет приводить к постоянной перезагрузке. На разных модификациях эти внутренние пины могут отличаться. Правило простое, используйте только те пины которые присутствуют на контактах вашей платы контроллера.
Если скетч вашей задачи успешно работает, тогда в редакторе интерфейсов не выбирайте пины для элементов графического интерфейса. Привязывайте переменные элементов графического интерфейса из структуры RemoteXY к функциям кода вашей задачи самостоятельно так как это нужно вам.

3

Re: ESP32

если оставить объявление переменных в цикле struct {, то скетч не видит их и ругается что они не определены.
пытаюсь вырезая итоговый скетч частями понять какие пины виновны.

4

Re: ESP32

'waterTempRunPrint' was not declared in this scope пишет при компиляции.

/*
   -- rector --
   
   This source code of graphical user interface
   has been generated automatically by RemoteXY editor.
   To compile this code using RemoteXY library 3.1.13 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.15.01 or later version;
     - for iOS 1.12.1 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          //
//////////////////////////////////////////////

// можете включить вывод отладочной информации в Serial на 115200
#define REMOTEXY__DEBUGLOG   

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

#include <BLEDevice.h>

// настройки соединения
#define REMOTEXY_BLUETOOTH_NAME "reactor"
#define REMOTEXY_ACCESS_PASSWORD "Baza2025"

#include <RemoteXY.h>

// конфигурация интерфейса RemoteXY 
#pragma pack(push, 1) 
uint8_t RemoteXY_CONF[] =   // 300 bytes
  { 255,4,0,16,0,37,1,19,0,0,0,114,101,97,99,116,111,114,0,30,
  1,106,200,1,1,5,0,71,3,46,49,49,56,2,2,24,75,0,0,0,
  0,0,0,150,67,0,0,200,66,0,0,32,65,0,0,0,0,24,208,186,
  208,190,209,130,209,145,208,187,0,135,0,0,0,0,0,0,122,67,37,0,
  0,122,67,0,0,150,67,71,52,47,49,49,56,2,2,24,75,0,0,0,
  0,0,0,200,67,0,0,200,66,0,0,32,65,0,0,0,0,24,209,130,
  209,128,209,131,208,177,208,176,0,135,0,0,0,0,0,0,150,67,51,0,
  0,150,67,0,0,200,67,7,8,12,89,18,45,64,2,26,2,1,71,0,
  89,53,53,56,3,178,24,135,0,0,0,0,0,0,200,66,0,0,160,65,
  0,0,32,65,0,0,0,64,24,208,178,209,139,209,133,208,190,208,180,0,
  135,0,0,0,0,0,0,112,66,94,0,0,112,66,0,0,160,66,36,0,
  0,160,66,0,0,200,66,71,53,89,53,53,56,3,178,24,135,0,0,0,
  0,0,0,200,66,0,0,160,65,0,0,32,65,0,0,0,64,24,208,190,
  208,177,209,128,208,176,209,130,208,186,208,176,0,135,0,0,0,0,0,0,
  112,66,94,0,0,112,66,0,0,160,66,36,0,0,160,66,0,0,200,66 };
 
// структура определяет все переменные и события вашего интерфейса управления
struct {
    // input variables
  float waterTempRunPrint;
    // output variables
  float tReactorPrint; // oт 0 до 300
  float tSmokePrint; // oт 0 до 400
  float tempOutPrint; // oт 0 до 100
  float tempInPrint; // oт 0 до 100
    // 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 ();
  Serial.print("waterTempRunPrint = ");
  Serial.print(waterTempRunPrint,1);
  Serial.println("*C");
  RemoteXY_delay(500);
  // TODO you loop code
  // используйте структуру RemoteXY для передачи данных
  // не используйте функцию delay(), вместо нее используйте RemoteXY_delay()
}

5

Re: ESP32

выходит что структура НЕ определяет все переменные и события вашего интерфейса управления, и куда они делись не ясно.

6

Re: ESP32

ssergey74 wrote:

если оставить объявление переменных в цикле struct {, то скетч не видит их и ругается что они не определены.
пытаюсь вырезая итоговый скетч частями понять какие пины виновны.

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

7

Re: ESP32

ssergey74 wrote:

'waterTempRunPrint' was not declared in this scope пишет при компиляции.

Вы что то делаете не так.
1. Если вы обращаетесь к переменным интерфейса из структуры RemoteXY то так и надо писать

Serial.print(RemoteXY.waterTempRunPrint,1);

8

Re: ESP32

при работе Bluetooth  контакты ADC_1 на аналоговый вход работают не корректно.
к переменным интерфейса из структуры RemoteXY надо обращаться RemoteXY.
всё заработало, спасибо.

9

Re: ESP32

Добрый день. Ещё два вопроса, появилась ли возможность рисовать не фоне линии, круги? не смог найти. и как к значению прибавить значок градуса, млм пройентов?

10

Re: ESP32

ssergey74 wrote:

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

У элемента Рамка есть возможность отобразить ее круглой. С помощью этого же элемента можно отобразить некоторые вертикальные и горизонтальные линии.

ssergey74 wrote:

и как к значению прибавить значок градуса, млм пройентов?

Два варианта.
1. Вы можете значок процента разместить на экране при помощи элемента  Метка, разместив его справа от поля Значение в котором у вас отображается значение.
2. Устанавливаете для поля Значение тип Строка и помещаете в строку произвольный текст при помощи кода в контроллере. Вы можете в этот текст поместить представление значения и знак процента.