Установка платы ESP32 в Arduino IDE

Контроллеры на основе ESP32
Anydy

Установка платы ESP32 в Arduino IDE

Сообщение Anydy »

Как включить поддержку плат ESP32 в Arduino IDE.

Для Arduino IDE есть надстройка, которая позволяет вам программировать ESP32 с помощью Arduino IDE и его языка программирования.
Важно: перед началом этой процедуры установки желательно установите ​​последнюю версия IDE Arduino.
Чтобы установить плату ESP32 в вашу среду разработки Arduino, выполните следующие инструкции:
1) Откройте окно настроек из IDE Arduino. Перейдите в меню « Файл» > « Настройки».
2) Введите https://dl.espressif.com/dl/package_esp32_index.json в поле «Дополнительные адреса для менеджера плат».
Примечание. Если у вас уже есть URL-адрес для плат ESP8266, вы можете разделить URL-адреса запятой следующим образом:
https://dl.espressif.com/dl/package_esp32_index.json, http://arduino.esp8266.com/stable/packa ... index.json
3) Откройте меню « Инструменты» > « Плата» > « Менеджер плат» ...
4) Найдите в поиске ESP32 и нажмите кнопку установки для « ESP32 от Espressif Systems »
5) Дождитесь скачивания и установки. Все должно быть установлено через некоторое время.
Вам станут доступны различные платы с ESP32 на борту.
Есть еще один способ с использованием Git, если надо скину ссылку...

Теперь можно подключать плату с ESP32 по USB и программировать ее через Arduino IDE.

Так же можно ее программировать из FLProg, чуть позже проверю....
Аватара пользователя
Psix_anp
Рядовой
Сообщения: 50
Зарегистрирован: 03 ноя 2017, 17:56
Откуда: Анапа
Имя: Сергей

Установка платы ESP32 в Arduino IDE

Сообщение Psix_anp »

Надо бы попробовать, ну тогда еще бы блоки лоры))) у меня как раз гибрид
Аватара пользователя
o_l_e_g64
Рядовой
Сообщения: 12
Зарегистрирован: 04 янв 2018, 16:58

Установка платы ESP32 в Arduino IDE

Сообщение o_l_e_g64 »

а кто нибудь занимался такими esp? Изображение
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Anydy

Установка платы ESP32 в Arduino IDE

Сообщение Anydy »

av писал(а): 24 янв 2019, 13:23как там насчет программирования ЕСП32 на FLProg ? Есть ли продвижение по теме ?
Этот вопрос скорее Автору программы нужно задавать.....
У вас что то не получается?
ESP32 можно программировать как и ESP8266 с небольшими "костылями" в коде...
В общем мне ESP32 понравилась, нужно добавлять в FLProg!
aidar_i
Полковник
Сообщения: 3360
Зарегистрирован: 24 дек 2016, 16:55
Откуда: Уфа
Имя: Айдар
Благодарил (а): 13 раз
Поблагодарили: 100 раз
Контактная информация:

Установка платы ESP32 в Arduino IDE

Сообщение aidar_i »

Да, я тоже за. Тем более,что модуль на подходе.
starmos
Сержант
Сообщения: 142
Зарегистрирован: 11 апр 2016, 15:46
Откуда: Челябинск

Установка платы ESP32 в Arduino IDE

Сообщение starmos »

Я уже открывал тему по новому функционалу в FLProg, по ESP32. У меня уж контроллер лежит спаянный, несколько месяцев - не могу выбрать на чем его программировать, из под Arduino IDE попробовал и все.
Andropa
Рядовой
Сообщения: 54
Зарегистрирован: 13 дек 2018, 14:22
Имя: Andron

Установка платы ESP32 в Arduino IDE

Сообщение Andropa »

Anydy писал(а): 24 янв 2019, 13:49
av писал(а): 24 янв 2019, 13:23как там насчет программирования ЕСП32 на FLProg ? Есть ли продвижение по теме ?
Этот вопрос скорее Автору программы нужно задавать.....
У вас что то не получается?
ESP32 можно программировать как и ESP8266 с небольшими "костылями" в коде...
В общем мне ESP32 понравилась, нужно добавлять в FLProg!
День добрый пробую данные платы пришла с Китая пачка модулей , заказывал вемосы , киты потошибке положили три платы с названием wemos d1 r 32 , подключение к точки доступа не проходит при помощи блоков для есп , не могли бы вы уточнить какие " костыли " использовали. Делаю в данный момент проэкт автоматизации теплиц со всеми вытекающими последствиями( использую датчики дс 18 б20 дхт 22 , мхз 19 люкс метры , tds ,ec , ph ,кислородные углекислотные контролееры , помпы высокого давления ,перестальтические насосы , iot ,мониторинг, планирую добавить дачик окислительно восстановительного потенциала и будет фарш полный !!,код не маленткий вышел , и хотелось бы задействовать чип помощнее .в данный момент использую плату меги с распаяным модулем есп и внешней антенной
aidar_i
Полковник
Сообщения: 3360
Зарегистрирован: 24 дек 2016, 16:55
Откуда: Уфа
Имя: Айдар
Благодарил (а): 13 раз
Поблагодарили: 100 раз
Контактная информация:

Установка платы ESP32 в Arduino IDE

Сообщение aidar_i »

Сперва нужно поменять библиотеки.
[spoiler]
# include < ESP8266WiFi.h >
на
# include < WiFi.h >

# include < ESP8266WebServer.h >
на
# include < WebServer.h >

https://github.com/zhouhan0126/WebServer-esp32
[/spoiler]

И это добавить https://github.com/zhouhan0126/DNSServer---esp32
Блоки WiFiManager тоже работают после замены.
Аватара пользователя
AVGN
Капитан
Сообщения: 727
Зарегистрирован: 03 фев 2017, 12:23

Установка платы ESP32 в Arduino IDE

Сообщение AVGN »

Вовремя сегодня подняли тему, по рекомендации [ref=#aa0000]Anydy[/ref], все встало для ID 1.8.1
Если вы не можете объяснить это просто – значит, вы сами не понимаете этого до конца.
☆Альберт Эйнштейн
Аватара пользователя
dimonsustr
Рядовой
Сообщения: 39
Зарегистрирован: 15 мар 2018, 14:39
Имя: Dima

Установка платы ESP32 в Arduino IDE

Сообщение dimonsustr »

Пока ESP32 официально не присутствует в FLProg, пытаюсь запустить с костылями. Подскажите гуру IDE, на что менять библиотеки, фото прилагаю. ESP8266WiFi.h и ESP8266WebServer.h понятно на что, а остальные? Как это вообще правильно сделать?
[spoiler]Изображение[/spoiler]
aidar_i
Полковник
Сообщения: 3360
Зарегистрирован: 24 дек 2016, 16:55
Откуда: Уфа
Имя: Айдар
Благодарил (а): 13 раз
Поблагодарили: 100 раз
Контактная информация:

Установка платы ESP32 в Arduino IDE

Сообщение aidar_i »

Попробуйте поменять на
ESP8266mDNS.h -> ESPmDNS.h
ESP8266HTTPUpdateSerwer.h -> HTTPUpdate.h
Остальные вроде имеют одинаковые названия или одну и ту же библиотеку.
Ничего качать и устанавливать не надо. Всё уже у Вас установлено.
Попробуйте скомпилировать, гарантии 100% что заработает - нет. Внутри библиотек не копался. Лучше выложите скетч и ошибки при компиляции.
Последний раз редактировалось aidar_i 02 авг 2019, 22:13, всего редактировалось 1 раз.
Аватара пользователя
dimonsustr
Рядовой
Сообщения: 39
Зарегистрирован: 15 мар 2018, 14:39
Имя: Dima

Установка платы ESP32 в Arduino IDE

Сообщение dimonsustr »

aidar_i писал(а): 02 авг 2019, 19:26 Лучше выложите скетч и ошибки при компиляции.
[spoiler]
#include <WiFi.h>
extern "C" {
#include "user_interface.h";
}
extern "C" {
#include "user_interface.h"
}
os_timer_t watchDogTimer;
int _PWDC = 0;
bool ESP8266ControllerWifiClient_HRD = 0;
bool ESP8266ControllerWifiClient_status = 1;
bool ESP8266ControllerWifiClient_isDHCP = 1;
bool ESP8266ControllerWifiClient_IsNeedReconect = 0;
bool ESP8266ControllerWifiClient_workStatus = 1;
char ESP8266ControllerWifiClient_SSID[40] = "";
char ESP8266ControllerWifiClient_password[40] = "";
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 _gen1I = 0;
bool _gen1O = 0;
unsigned long _gen1P = 0UL;
void setup()
{
WiFi.mode(WIFI_STA);
_esp8266WifiModuleClientReconnect();
satrtWachDogTimer();
pinMode(2, OUTPUT); 

}
void loop()
{_PWDC = 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 (1) { if (! _gen1I) { _gen1I = 1; _gen1O = 1; _gen1P = millis(); } } else { _gen1I = 0 ; _gen1O= 0;}
 if (_gen1I) {  if ( _isTimer ( _gen1P , 500 )) { _gen1P = millis(); _gen1O = ! _gen1O;}}
digitalWrite(2, _gen1O);




}
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 _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]
[spoiler]Изображение[/spoiler]
User_interface.h не находит :smile37:
проект простейший:
[spoiler]Изображение[/spoiler]
aidar_i
Полковник
Сообщения: 3360
Зарегистрирован: 24 дек 2016, 16:55
Откуда: Уфа
Имя: Айдар
Благодарил (а): 13 раз
Поблагодарили: 100 раз
Контактная информация:

Установка платы ESP32 в Arduino IDE

Сообщение aidar_i »

Удалите эти строки.
extern "C" {
#include "user_interface.h";
}
Аватара пользователя
dimonsustr
Рядовой
Сообщения: 39
Зарегистрирован: 15 мар 2018, 14:39
Имя: Dima

Установка платы ESP32 в Arduino IDE

Сообщение dimonsustr »

aidar_i писал(а): 02 авг 2019, 22:07 Удалите эти строки.
extern "C" {
#include "user_interface.h";
}
пока не помогает:
[spoiler]
#include <WiFi.h>
bool ESP8266ControllerWifiClient_HRD = 0;
bool ESP8266ControllerWifiClient_status = 1;
bool ESP8266ControllerWifiClient_isDHCP = 1;
bool ESP8266ControllerWifiClient_IsNeedReconect = 0;
bool ESP8266ControllerWifiClient_workStatus = 0;
char ESP8266ControllerWifiClient_SSID[40] = "";
char ESP8266ControllerWifiClient_password[40] = "";
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 _gen1I = 0;
bool _gen1O = 0;
unsigned long _gen1P = 0UL;
void setup()
{
WiFi.mode(WIFI_STA);
_esp8266WifiModuleClientReconnect();
pinMode(2, OUTPUT); 

}
void loop()
{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 (1) { if (! _gen1I) { _gen1I = 1; _gen1O = 1; _gen1P = millis(); } } else { _gen1I = 0 ; _gen1O= 0;}
 if (_gen1I) {  if ( _isTimer ( _gen1P , 500 )) { _gen1P = millis(); _gen1O = ! _gen1O;}}
digitalWrite(2, _gen1O);




}
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));}
  }
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 _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]
ошибки, конец:
[spoiler]
Arduino: 1.8.9 (Windows 10), Плата:"ESP32 Dev Module, Disabled, Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS), 240MHz (WiFi/BT), QIO, 80MHz, 4MB (32Mb), 921600, None"

"C:\\Users\\dimon\\AppData\\Local\\Temp\\arduino_build_932192\\sketch\\pr8.ino.cpp" -o "C:\\Users\\dimon\\AppData\\Local\\Temp\\arduino_build_932192\\sketch\\pr8.ino.cpp.o"
C:\Users\dimon\AppData\Local\Temp\flprog\pr8\pr8.ino: In function 'void _esp8266WifiModuleClientReconnect()':

pr8:72:90: error: 'uint8' does not name a type

  if( _checkMacAddres(ESP8266ControllerWifiClient_mac)) {  wifi_set_macaddr(0, const_cast<uint8*>(ESP8266ControllerWifiClient_mac));}

                                                                                          ^

pr8:72:95: error: expected '>' before '*' token

  if( _checkMacAddres(ESP8266ControllerWifiClient_mac)) {  wifi_set_macaddr(0, const_cast<uint8*>(ESP8266ControllerWifiClient_mac));}

                                                                                               ^

pr8:72:95: error: expected '(' before '*' token

pr8:72:96: error: expected primary-expression before '>' token

  if( _checkMacAddres(ESP8266ControllerWifiClient_mac)) {  wifi_set_macaddr(0, const_cast<uint8*>(ESP8266ControllerWifiClient_mac));}

                                                                                                ^

Несколько библиотек найдено для "WiFi.h"
 Используется: c:\FLProg_5-3_Win64\ideV3\portable\packages\esp32\hardware\esp32\1.0.2\libraries\WiFi
Не используется: c:\FLProg_5-3_Win64\ideV3\libraries\WiFi
Используем библиотеку WiFi версии 1.0 из папки: c:\FLProg_5-3_Win64\ideV3\portable\packages\esp32\hardware\esp32\1.0.2\libraries\WiFi 
exit status 1
'uint8' does not name a type
[/spoiler]
aidar_i
Полковник
Сообщения: 3360
Зарегистрирован: 24 дек 2016, 16:55
Откуда: Уфа
Имя: Айдар
Благодарил (а): 13 раз
Поблагодарили: 100 раз
Контактная информация:

Установка платы ESP32 в Arduino IDE

Сообщение aidar_i »

Попробуйте удалить if( _checkMacAddres(ESP8266ControllerWifiClient_mac)) { wifi_set_macaddr(0, const_cast<uint8*>(ESP8266ControllerWifiClient_mac));}
Аватара пользователя
dimonsustr
Рядовой
Сообщения: 39
Зарегистрирован: 15 мар 2018, 14:39
Имя: Dima

Установка платы ESP32 в Arduino IDE

Сообщение dimonsustr »

aidar_i писал(а): 02 авг 2019, 23:39 Попробуйте удалить if( _checkMacAddres(ESP8266ControllerWifiClient_mac)) { wifi_set_macaddr(0, const_cast<uint8*>(ESP8266ControllerWifiClient_mac));}
Спасибо, это помогло. Жду с нетерпением поддержку ESP32 в FLProg!
[spoiler]Изображение[/spoiler]
Аватара пользователя
Rovki
Полковник
Сообщения: 5726
Зарегистрирован: 22 апр 2016, 17:25
Откуда: Чехов
Имя: Анатолий
Благодарил (а): 68 раз
Поблагодарили: 222 раза
Контактная информация:

Установка платы ESP32 в Arduino IDE

Сообщение Rovki »

Может кто знает как из ФЛпрог работать по Bluetooth c есп32???
Электронщик до мозга костей и не только
Аватара пользователя
slavas
Лейтенант
Сообщения: 596
Зарегистрирован: 14 сен 2015, 22:29
Откуда: Санкт-Петербург

Установка платы ESP32 в Arduino IDE

Сообщение slavas »

Добрый день всем, на днях получил ESP32 CAM. Запустил плату без проблем к точке доступа подключается в лёт, работает устойчиво но питать придётся от хорошего блока питания. К стати детектор лица работает надёжно и достаточно быстро, узнаёт быстро и ошибок не заметил.
Сейчас пользовательский блок делаю

Отправлено спустя 21 минуту 20 секунд:
Надыбал секретную прошивку для работы по RTSP теперь платка сможет выдавать потоковое видео которое смогут обрабатывать видеорегистраторы.
Anydy

Установка платы ESP32 в Arduino IDE

Сообщение Anydy »

slavas писал(а): 27 июл 2020, 19:13 Надыбал секретную прошивку для работы по RTSP теперь платка сможет выдавать потоковое видео которое смогут обрабатывать видеорегистраторы.
Чего там секретного? в соседней теме же размещал! viewtopic.php?f=156&t=5723&start=40#p91930
Аватара пользователя
slavas
Лейтенант
Сообщения: 596
Зарегистрирован: 14 сен 2015, 22:29
Откуда: Санкт-Петербург

Установка платы ESP32 в Arduino IDE

Сообщение slavas »

Это я шучу, чёта блок не пишется.
Ответить

Вернуться в «ESP32»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя