• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Общие вопросы по Arduino IDE для ESP8266

sherr

New member
У меня тогда вопрос - как правильно собрать среду под Linux 32 bit -- если пакета собранного компилятора в сети нет, а если соберу сам (кстати какой - в пакете собранном из репозитория
jcmvbkbc, - отсутствует g++), то как его подсунуть при сборке Arduino ?
 
Последнее редактирование:

mischaka

New member
Как воспользоватся командой ESP.wdtDisable(). Компилер пишет что не знает объекта "ESP" .
в каком include описан объект "ESP". Я не нашол, подскажите пожалуйсто.
 

jcmvbkbc

New member
как правильно собрать среду под Linux
https://github.com/pfalcon/esp-open-sdk
в пакете собранном из репозитория jcmvbkbc, - отсутствует g++)
Как интересно, а это что: https://github.com/jcmvbkbc/crossto...samples/xtensa-lx106-elf/crosstool.config#L13
как его подсунуть при сборке Arduino ?
Добавить в PATH путь к xtensa-lx106-elf-* ?
 
Последнее редактирование:

sherr

New member
Ну нету именно xtensa-lx106-elf-g++ в папке /opt/Espressif/crosstool-NG/builds/xtensa-lx106-elf/bin
 

sherr

New member
1.Собирал с репозитория по шпаргалке. Ничего не правил .
2,Попробую, только освобожу место на диске(3 Gb осталось),
в прошлый раз собирал Standalone, так он не нашел архив
с ExpressifSDK, и недоустановился - но там xtensa-lx106-elf-g++
собралась, вот только не работает как надо с Arduino, с чего и начался разговор ...
 

Ivizil

New member
Загрузил версию для mac os а когда её запускаю пишет "Unable to load a Java 7 Runtime Environment."
Стоит 10.8.5
Как побороть недуг?
 

Inspector

New member
Гуру, не подскажите, почему может возникать такая ошибка?
Код:
undefined reference to `makeWord(unsigned short)'
 

A.V

New member
Что-то у меня Ticker не хочет работать - падает с exception до рестарта watchdog.

Внутри читаются данные с DHT22 и BMP085. Если _ту_же_ функцию вызывать из loop(), то всё нормально... То ли там запрещены прерывания, то ли ещё что. От периода вызова (вроде) не зависит.

Код для DHT из ссылок, для BMP с Adafruit, сама функция:

Код:
void tick_upd_sensors(void) {
//  ESP.wdtFeed();
  boardValues[0] = bmp.readTemperature() + bmToffs;
  boardValues[1] = (bmp.readPressure() / 133.33) + bmPoffs;
  boardValues[2] = dht.readTemperature() + dhToffs;
  boardValues[3] = dht.readHumidity() + dhHoffs;
}
Исключение:
Код:
Fatal exception (2):
epc1=0x3fffdcb0, epc2=0x00000000, epc3=0x00000000, excvaddr=0x3fffdcb0, depc=0x00000000
bcn 0
del if1
usl
sul 0 0
 

Telek

New member
A.V, плохой ход в прерываниях выполнять долгий код. Может watchdog срабатывает.
 

A.V

New member
A.V, плохой ход в прерываниях выполнять долгий код. Может watchdog срабатывает.
Так мне и непонятно, это таки прерывание или "под-процесс". Если прерывание, то всё законно – обязано виснуть...

ЗЫ: На самом деле (вот только что) всё сделал. Без тикера, просто с задержкой. 2 "встроенных" датчика, 1 выход и шина 1-wire замечательно общаются с MQTT сервером через расшаренный с телефона wifi. То, что отказалось работать с Lua, здесь вполне себе зажило!
 

jcmvbkbc

New member
Код:
Fatal exception (2):
epc1=0x3fffdcb0, epc2=0x00000000, epc3=0x00000000, excvaddr=0x3fffdcb0, depc=0x00000000
Попытался выполнить код по адресу 0x3fffdcb0, в памяти данных. Похоже на переполнение стека, но может быть и вызов метода в объекте с поломанной таблицей виртуальных функций.
 

A.V

New member
@jcmvbkbc, и вот какого, оно тогда нормально работает при вызове из loop() :( Чую, это или "типа прерывание", или нельзя туда передавать глобальные переменные...

По поводу остального текста - это "гадит" wifi. Причём в готовой сборке IDE, вроде, мусор от wifi не сыпался, а тут собрал из исходников и где-то что-то включилось...
 

Inspector

New member
Гуру, не подскажите, почему может возникать такая ошибка?
Код:
undefined reference to `makeWord(unsigned short)'
Добавил в файл WMath.cpp, так, ради эксперимента
Код:
unsigned int makeWord(unsigned short w) { return w; }
Скетч скомпилировался, залился, даже почти все заработало :), но когда в коде встречается while, ESP8266 уходит в REBOOT.:(
Чего можно сделать?
 
Последнее редактирование:

sherr

New member
Блиннн,,,,, наконец-то собрал под Linux 32bit (Debian 6 если интересно) - всем помогавшим спасибо ! Blink уже мигает . Если кому надо собранный - могу куда-нибудь выложить, но он немаленький(183 Мб), впрочем, если убрать AVR + ARM GCC - ужмётся раза в три :)
 
Сверху Снизу