NodeMCU V3 + RemoteXY + FLProg
NodeMCU V3 + RemoteXY + FLProg
Здравствуйте
воюю уже много часов, постепенно отсоединяя и упрощая то, что мне изначально было необходимо.
Теперь требуется самое простое: включать встроенный в ESP светодиод с кнопки на телефоне (remotexy)
вот схема в Flprog вот экран телефона в remoteXY вот скетч, генерируемый flprog По факту - связь по wifi устанавливается, приложение соединяется. Что интересно, обратная связь при изменении состояния выключателя включает виртуальный индикатор на экране смартфона, но на плате ESP ничего не включается (равно как не работает все что подключал, ни адресная лента ни светодиоды).
з.ы. схема в FLprog такая многовыходная, потому что я грешил на китайскую распиновку и "бил по площадям".
Платки в наличии 4 штуки, 2 от одного китайца, две от другого. По всем всё одинаково.
Куда копать, уважаемые?
воюю уже много часов, постепенно отсоединяя и упрощая то, что мне изначально было необходимо.
Теперь требуется самое простое: включать встроенный в ESP светодиод с кнопки на телефоне (remotexy)
вот схема в Flprog вот экран телефона в remoteXY вот скетч, генерируемый flprog По факту - связь по wifi устанавливается, приложение соединяется. Что интересно, обратная связь при изменении состояния выключателя включает виртуальный индикатор на экране смартфона, но на плате ESP ничего не включается (равно как не работает все что подключал, ни адресная лента ни светодиоды).
з.ы. схема в FLprog такая многовыходная, потому что я грешил на китайскую распиновку и "бил по площадям".
Платки в наличии 4 штуки, 2 от одного китайца, две от другого. По всем всё одинаково.
Куда копать, уважаемые?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Рядовой
- Сообщения: 16
- Зарегистрирован: 08 дек 2016, 16:56
- Откуда: Назарово
- Имя: Сергей
- Благодарил (а): 6 раз
- Поблагодарили: 2 раза
NodeMCU V3 + RemoteXY + FLProg
Привет! Выкинь пока лишние вывода особенно GPIO16. Почитай про вывода https://codedevice.ru/archives/1328
- SergeyShikal
- Лейтенант
- Сообщения: 593
- Зарегистрирован: 30 авг 2018, 17:15
- Откуда: Иркутская область
- Имя: Сергей
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
NodeMCU V3 + RemoteXY + FLProg
Попробуй от сюда и пока без облака[spoiler] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
NodeMCU V3 + RemoteXY + FLProg
[ref]SergeyShikal[/ref], ё-моё, низкий поклон, добрый человек! Сначала попробовал с точкой доступа - работает! Потом в вашей же программе поменял на облако и о чудо! состояние светодиода меняется! Похоже я тупо не разобрался с пинами..
Теперь дело за подключением WS2812b. На какую ногу лучше вешать?
Теперь дело за подключением WS2812b. На какую ногу лучше вешать?
- SergeyShikal
- Лейтенант
- Сообщения: 593
- Зарегистрирован: 30 авг 2018, 17:15
- Откуда: Иркутская область
- Имя: Сергей
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
NodeMCU V3 + RemoteXY + FLProg
GPIO-4 (D2)Mozgoklui писал(а): 25 окт 2019, 19:58 [ref]SergeyShikal[/ref], ё-моё, низкий поклон, добрый человек! Сначала попробовал с точкой доступа - работает! Потом в вашей же программе поменял на облако и о чудо! состояние светодиода меняется! Похоже я тупо не разобрался с пинами..
Теперь дело за подключением WS2812b. На какую ногу лучше вешать?
NodeMCU V3 + RemoteXY + FLProg
именно так вчера и сделал, но опять затык... Насколько хватило ума добавил пользовательские блоки для WS2812b (раньше с ними всё делал - без проблем). Теперь вот простенькая схема в FLprog, а ЕСП дурит. Встроенный диод напрочь перестал реагировать на свич, а лента (один диод) светит при каждом включении рандомным цветом, чаще зеленым. Чудесным образом пару включений начинала нормально реагировать на RGB ползунки в телефоне, но недолго, секунд 10 и ЕСП опять падала в перезагрузку. Опять в упор не вижу свою ошибку. Прошу прощения за дилетантские вопросы.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- SergeyShikal
- Лейтенант
- Сообщения: 593
- Зарегистрирован: 30 авг 2018, 17:15
- Откуда: Иркутская область
- Имя: Сергей
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
NodeMCU V3 + RemoteXY + FLProg
Скинь свой проектMozgoklui писал(а): 26 окт 2019, 09:44именно так вчера и сделал, но опять затык... Насколько хватило ума добавил пользовательские блоки для WS2812b (раньше с ними всё делал - без проблем). Теперь вот простенькая схема в FLprog, а ЕСП дурит. Встроенный диод напрочь перестал реагировать на свич, а лента (один диод) светит при каждом включении рандомным цветом, чаще зеленым. Чудесным образом пару включений начинала нормально реагировать на RGB ползунки в телефоне, но недолго, секунд 10 и ЕСП опять падала в перезагрузку. Опять в упор не вижу свою ошибку. Прошу прощения за дилетантские вопросы.
flp2.jpg
NodeMCU V3 + RemoteXY + FLProg
то есть сгенерированный код для IDE? вот он
[spoiler]#define REMOTEXY_MODE__ESP8266WIFI_LIB_CLOUD
#include <ESP8266WiFi.h>
#include <RemoteXY.h>
#include <Adafruit_NeoPixel.h>
extern "C" {
#include "user_interface.h";
}
#define REMOTEXY_WIFI_SSID "VitaliNadin"
#define REMOTEXY_WIFI_PASSWORD "27072017"
#define REMOTEXY_CLOUD_SERVER "cloud.remotexy.com"
#define REMOTEXY_CLOUD_PORT 6376
#define REMOTEXY_CLOUD_TOKEN "мой токен"
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] = {4, 1, 34, 0, 8, 24, 1, 2, 0, 5, 83, 28, 13, 2, 26, 31, 16, 79, 78, 0, 79, 70, 70, 0, 65, 4, 45, 83, 12, 12, 6, 0, 3, 5, 57, 57, 2, 26};
struct {
unsigned char switch_1;
unsigned char rgb_1_r;
unsigned char rgb_1_g;
unsigned char rgb_1_b;
unsigned char led_1_r;
unsigned char connect_flag;
} RemoteXY;
#pragma pack(pop)
// NEO_KHZ800 800 KHz bitstream (most NeoPixel products w/WS2812 LEDs)
// NEO_KHZ400 400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers)
// NEO_GRB Pixels are wired for GRB bitstream (most NeoPixel products)
// NEO_RGB Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2)
// NEO_RGBW Pixels are wired for RGBW bitstream (NeoPixel RGBW products)
Adafruit_NeoPixel strip= Adafruit_NeoPixel(64, D4, NEO_GRB + NEO_KHZ800);
bool En_26897752_2;
int Num_Led_26897752_2;
byte Brightness_26897752_2;
byte Led_R_26897752_2;
byte Led_G_26897752_2;
byte Led_B_26897752_2;
byte Led_W_26897752_2;
extern "C" {
#include "user_interface.h"
}
os_timer_t watchDogTimer;
int _PWDC = 0;
bool ESP8266ControllerWifiClient_HRD = 0;
bool ESP8266ControllerWifiClient_status = 1;
char ESP8266ControllerWifiAP_SSID[40] = "raz";
char ESP8266ControllerWifiAP_password[40] = "";
bool ESP8266ControllerWifiAP_IsNeedReconect = 0;
bool ESP8266ControllerWifiAP_workStatus = 1;
IPAddress ESP8266ControllerWifiAP_ip(0, 0, 0, 0);
IPAddress ESP8266ControllerWifiAP_dns (0, 0, 0, 1);
IPAddress ESP8266ControllerWifiAP_gateway (0, 0, 0, 1);
IPAddress ESP8266ControllerWifiAP_subnet (255, 255, 255, 0);
uint8_t ESP8266ControllerWifiAP_mac[6] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0};
bool ESP8266ControllerWifiClient_isDHCP = 1;
bool ESP8266ControllerWifiClient_IsNeedReconect = 0;
bool ESP8266ControllerWifiClient_workStatus = 1;
char ESP8266ControllerWifiClient_SSID[40] = "VitaliNadin";
char ESP8266ControllerWifiClient_password[40] = "27072017";
IPAddress ESP8266ControllerWifiClient_ip(0, 0, 0, 0);
IPAddress ESP8266ControllerWifiClient_dns (0, 0, 0, 1);
IPAddress ESP8266ControllerWifiClient_gateway (0, 0, 0, 1);
IPAddress ESP8266ControllerWifiClient_subnet (255, 255, 255, 0);
uint8_t ESP8266ControllerWifiClient_mac[6] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0};
bool _gtv1;
int _gtv2;
int _gtv3;
int _gtv4;
int _swi1;
void setup()
{
RemoteXY_Init ();
WiFi.mode(WIFI_AP_STA);
_esp8266WifiModuleClientReconnect();
_esp8266WifiModuleApReconnect();
satrtWachDogTimer();
pinMode(2, OUTPUT);
strip.begin(); // Инициализация NeoPixel library.
strip.show(); // Устанавливаем все светодиоды в состояние "Выключено"
}
void loop()
{RemoteXY_Handler ();
_PWDC = 0;
if(ESP8266ControllerWifiAP_IsNeedReconect) {_esp8266WifiModuleApReconnect(); ESP8266ControllerWifiAP_IsNeedReconect = 0; }
if(ESP8266ControllerWifiClient_IsNeedReconect) {_esp8266WifiModuleClientReconnect(); ESP8266ControllerWifiClient_IsNeedReconect = 0; }
ESP8266ControllerWifiClient_status = WiFi.status() == WL_CONNECTED;
if (ESP8266ControllerWifiClient_status) { if ( ! ESP8266ControllerWifiClient_HRD) { ESP8266ControllerWifiClient_ip = WiFi.localIP();
ESP8266ControllerWifiClient_subnet = WiFi.subnetMask();
ESP8266ControllerWifiClient_gateway = WiFi.gatewayIP();
ESP8266ControllerWifiClient_dns = WiFi.dnsIP();
WiFi.macAddress(ESP8266ControllerWifiClient_mac);
ESP8266ControllerWifiClient_HRD = 1;
}} else {ESP8266ControllerWifiClient_HRD = 0;}
//Плата:1
if(_gtv1)
{_swi1=255;}
else
{_swi1=0;}
RemoteXY.led_1_r = _swi1;
_gtv4 = (RemoteXY.rgb_1_b);
_gtv3 = (RemoteXY.rgb_1_g);
_gtv2 = (RemoteXY.rgb_1_r);
En_26897752_2 = (RemoteXY.switch_1);
Num_Led_26897752_2 = 0;
Brightness_26897752_2 = 100;
Led_R_26897752_2 = (byte(_gtv2));
Led_G_26897752_2 = (byte(_gtv3));
Led_B_26897752_2 = (byte(_gtv4));
Led_W_26897752_2 = 0;
if ( En_26897752_2 == 1)
{
strip.setBrightness(Brightness_26897752_2);
strip.setPixelColor(Num_Led_26897752_2, strip.Color(Led_R_26897752_2, Led_G_26897752_2, Led_B_26897752_2, Led_W_26897752_2 ) );
strip.show();
}
else
{
strip.setPixelColor(Num_Led_26897752_2, strip.Color(0, 0, 0, 0 ) );
strip.show();
};
_gtv1 = (RemoteXY.switch_1);
digitalWrite(2, !((RemoteXY.switch_1)));
}
bool _isTimer(unsigned long startTime, unsigned long period )
{
unsigned long currentTime;
currentTime = millis();
if (currentTime>= startTime) {return (currentTime>=(startTime + period));} else {return (currentTime >=(4294967295-startTime+period));}
}
void wachDogTimerTick(void *pArg) {
if (_PWDC >= 100){ ESP.reset(); }else{_PWDC = _PWDC+1;}
}
void satrtWachDogTimer(void ) {
os_timer_setfn(&watchDogTimer, wachDogTimerTick, NULL);
os_timer_arm(&watchDogTimer, 100, true);
}
int hexStrToInt(String instring)
{
byte len = instring.length();
if (len == 0) return 0;
int result = 0;
for (byte i = 0; i < 8; i++) // только первые 8 цыфар влезуть в uint32
{
char ch = instring;
if (ch == 0) break;
result <<= 4;
if (isdigit(ch))
result = result | (ch - '0');
else result = result | (ch - 'A' + 10);
}
return result;
}
void _esp8266WifiModuleApReconnect()
{
if ( _checkMacAddres(ESP8266ControllerWifiAP_mac)) {
wifi_set_macaddr(1, const_cast<uint8*>(ESP8266ControllerWifiAP_mac));
}
WiFi.softAPConfig(ESP8266ControllerWifiAP_ip, ESP8266ControllerWifiAP_gateway, ESP8266ControllerWifiAP_subnet);
WiFi.softAP(ESP8266ControllerWifiAP_SSID, ESP8266ControllerWifiAP_password);
if ( ! (_checkMacAddres(ESP8266ControllerWifiAP_mac))) {
WiFi.softAPmacAddress(ESP8266ControllerWifiAP_mac);
}
}
void _esp8266WifiModuleClientReconnect()
{
if( _checkMacAddres(ESP8266ControllerWifiClient_mac)) { wifi_set_macaddr(0, const_cast<uint8*>(ESP8266ControllerWifiClient_mac));}
if( ESP8266ControllerWifiClient_isDHCP) { WiFi.config(0U, 0U, 0U, 0U, 0U); } else {
WiFi.config(ESP8266ControllerWifiClient_ip, ESP8266ControllerWifiClient_gateway, ESP8266ControllerWifiClient_subnet, ESP8266ControllerWifiClient_dns , ESP8266ControllerWifiClient_dns );
}
WiFi.begin(ESP8266ControllerWifiClient_SSID, ESP8266ControllerWifiClient_password);
}
bool _checkMacAddres(byte array[])
{
bool result = 0;
for (byte i = 0; i < 6; i++)
{
if (array == 255) {
return 0;
}
if (array > 0 ) {
result = 1;
}
}
return result;
}[/spoiler]
NodeMCU V3 + RemoteXY + FLProg
Вы сам то понимаете этот код? Это форум FlProg и проект логично выкладывать flp


NodeMCU V3 + RemoteXY + FLProg
Сорри, я подтупливаю)))EgorKa писал(а): 27 окт 2019, 14:52 Вы сам то понимаете этот код? Это форум FlProg и проект логично выкладывать flp если бы знали как делать в IDE то здесь бы не присутствовали так же как и Вы
В общем я устал возиться с RemoteXY и попробовал Blynk. Вот где вещь! Блоков с данного форума хватило на все мои хотелки. Всё работает четко и как надо!
- SergeyShikal
- Лейтенант
- Сообщения: 593
- Зарегистрирован: 30 авг 2018, 17:15
- Откуда: Иркутская область
- Имя: Сергей
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
NodeMCU V3 + RemoteXY + FLProg
С чем бороться, в флпрог штатные блоки соединить, кроме как от ленты ws2812Mozgoklui писал(а): 27 окт 2019, 15:01 Сорри, я подтупливаю)))
В общем я устал возиться с RemoteXY и попробовал Blynk. Вот где вещь! Блоков с данного форума хватило на все мои хотелки. Всё работает четко и как надо!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Подполковник
- Сообщения: 1202
- Зарегистрирован: 14 фев 2016, 14:16
- Откуда: kazahstan
- Благодарил (а): 32 раза
- Поблагодарили: 6 раз
NodeMCU V3 + RemoteXY + FLProg
я из разных веток насобирал, лучше все выложу сюда: Отправлено спустя 3 минуты 17 секунд:
Да я понимаю, очень просто всё звучит, но у меня почему-то не работало (скорее всего мои руки и виноваты). А в блынке сходу все работает.SergeyShikal писал(а): 27 окт 2019, 15:18 С чем бороться, в флпрог штатные блоки соединить, кроме как от ленты ws2812
Немного не по теме, подскажите пожалуйста из каких блоков флпрог соорудить логику включения/выключения одной лампочки с двух кнопок, при том что одна из кнопок с обратной связью (индикатор состояния)?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- SergeyShikal
- Лейтенант
- Сообщения: 593
- Зарегистрирован: 30 авг 2018, 17:15
- Откуда: Иркутская область
- Имя: Сергей
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
NodeMCU V3 + RemoteXY + FLProg
[spoiler] [/spoiler]Mozgoklui писал(а): 27 окт 2019, 16:53 Да я понимаю, очень просто всё звучит, но у меня почему-то не работало (скорее всего мои руки и виноваты). А в блынке сходу все работает.
Немного не по теме, подскажите пожалуйста из каких блоков флпрог соорудить логику включения/выключения одной лампочки с двух кнопок, при том что одна из кнопок с обратной связью (индикатор состояния)?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
NodeMCU V3 + RemoteXY + FLProg
[ref]SergeyShikal[/ref], неужто всё так просто.. а если обратная связь это отдельный блок? (отправка int в blynk)
я уже такие небоскрёбы городил из триггеров, компараторов и прочего, но логика неправильная, то кнопка не отображает состояние светодиода, то физическая кнопка не влияет на состояние...
я уже такие небоскрёбы городил из триггеров, компараторов и прочего, но логика неправильная, то кнопка не отображает состояние светодиода, то физическая кнопка не влияет на состояние...
- SergeyShikal
- Лейтенант
- Сообщения: 593
- Зарегистрирован: 30 авг 2018, 17:15
- Откуда: Иркутская область
- Имя: Сергей
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
NodeMCU V3 + RemoteXY + FLProg
Используй переменныеMozgoklui писал(а): 27 окт 2019, 17:15 [ref]SergeyShikal[/ref], неужто всё так просто.. а если обратная связь это отдельный блок?
-
- Подполковник
- Сообщения: 1202
- Зарегистрирован: 14 фев 2016, 14:16
- Откуда: kazahstan
- Благодарил (а): 32 раза
- Поблагодарили: 6 раз
NodeMCU V3 + RemoteXY + FLProg
хотел попробовать сделал проект два реле на ноде мсу ,не подключается к моей сети и я ее не вижу как подключеной, тот же проект но сделанный в ремоте ху через облако все пашет подключается к моей сетиMozgoklui писал(а): 27 окт 2019, 16:53я из разных веток насобирал, лучше все выложу сюда:
Blynk_ESP_BASE_(CODE).ubiOTA_Blynk_(CODE).ubiИз_Blynk_boolean_(CODE).ubiИз_Blynk_Integer_(CODE).ubiоповещение_о_подключение_(CODE).ubiОтправка_float_в__Blynk_(CODE).ubiОтправка_integer_в_Blunk_(CODE).ubiОтправка_string_в__Blynk_(CODE).ubi
Отправлено спустя 3 минуты 17 секунд:Да я понимаю, очень просто всё звучит, но у меня почему-то не работало (скорее всего мои руки и виноваты). А в блынке сходу все работает.SergeyShikal писал(а): 27 окт 2019, 15:18 С чем бороться, в флпрог штатные блоки соединить, кроме как от ленты ws2812
Немного не по теме, подскажите пожалуйста из каких блоков флпрог соорудить логику включения/выключения одной лампочки с двух кнопок, при том что одна из кнопок с обратной связью (индикатор состояния)?

перекачал блок подключения и все заработало

на мой взгляд ремоте ху скоростней блинка да и проще .
Последний раз редактировалось vovka1973 27 окт 2019, 18:36, всего редактировалось 2 раза.
NodeMCU V3 + RemoteXY + FLProg
вот, такая схема работает неправильно. Точнее правильно только с сенсорной кнопки (и правильно меняется состояние виртуальной в блинке), а вот вкл/выкл с виртуальной кнопки не работает. К сожалению я хоть убей не могу врубиться как работает "инвертировать", ставлю методом тыка..
[spoiler] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- belyx
- Сержант
- Сообщения: 251
- Зарегистрирован: 24 июл 2016, 20:38
- Откуда: Витебск Беларусь
- Благодарил (а): 7 раз
NodeMCU V3 + RemoteXY + FLProg
немножко не по теме но сейчас попробовал управление RGB светодиодами с ремоте.
у меня всё работаетУ вас нет необходимых прав для просмотра вложений в этом сообщении.
NodeMCU V3 + RemoteXY + FLProg
везет. у меня не пошло, да и потом посмотрел что у блинка есть больше всяких фичей чем у ремоте. Лучше сразу все поделки собирать в одном приложении.
За сегодня так и не смог сделать логику двух кнопок правильной..
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя