ESP-1 16 wejść\wyjść

Masz pomysł na funkcjonalność lub koncepcję na rozwój projektu. Opisz wszystko tutaj.
Robi
Posty: 9
Rejestracja: pt sty 05, 2018 8:23 pm

wt paź 23, 2018 11:03 am

Witam,
przeglądając internet trafiłem na ciekawy pomysł którego na forum nie znalazłem. Mianowicie do ESP8266 podpięty jest ekspander PCF8574 dając nam więcej wejść/wyjść.
https://hackaday.io/project/10861-harif ... ifi-remote
https://www.youtube.com/watch?v=_CKY5WcTQQk

Czy ktoś próbował albo myślał żeby tak rozwinąć soft żeby był w stanie obsłużyć ekspandery?
Czy ogólnie jest taka możliwość żeby ten sposób zadziałał z supla?
Awatar użytkownika
wojtas567
Posty: 1992
Rejestracja: ndz kwie 03, 2016 7:16 pm
Lokalizacja: Olsztyn

wt paź 23, 2018 12:32 pm

Może nie na tym ekspanderze ale kolega elmaya coś takiego opracował :)
viewtopic.php?f=10&t=3845#p26225
Pozdrawiam
Wojtek
maly_13
Posty: 62
Rejestracja: pt paź 28, 2016 3:55 am
Lokalizacja: Wlkp.

wt paź 23, 2018 12:37 pm

pewnie i można ale:
esp 12 ma więcej gipo i pamięć więc cofać się a kasa nie wiele mniejsza.
w użyciu: supla, nettemp...
Awatar użytkownika
slawek
Posty: 2234
Rejestracja: pn mar 14, 2016 11:48 pm
Lokalizacja: Biała Podlaska

wt paź 23, 2018 3:14 pm

maly_13 pisze:
wt paź 23, 2018 12:37 pm
pewnie i można ale:
esp 12 ma więcej gipo i pamięć więc cofać się a kasa nie wiele mniejsza.
Więcej :?: :?: :?:
W tamtym projekcie masz 8 przycisków i 8 przekaźników i kilka wolnych GPIO...
Gdy wszystkie możliwe sposoby zawiodą - pozostaje przeczytać instrukcję...
Awatar użytkownika
dawidd
Posty: 452
Rejestracja: wt gru 19, 2017 12:45 pm

wt paź 23, 2018 4:05 pm

wojtas567 pisze:
wt paź 23, 2018 12:32 pm
Może nie na tym ekspanderze ale kolega elmaya coś takiego opracował :)
viewtopic.php?f=10&t=3845#p26225
A gdzie w tym kodzie dopisać swoja nazwę sieci hasło?
Awatar użytkownika
wojtas567
Posty: 1992
Rejestracja: ndz kwie 03, 2016 7:16 pm
Lokalizacja: Olsztyn

wt paź 23, 2018 4:09 pm

Tam jest wifi manager
Pozdrawiam
Wojtek
Awatar użytkownika
dawidd
Posty: 452
Rejestracja: wt gru 19, 2017 12:45 pm

wt paź 23, 2018 6:15 pm

A no to super, a testował ktoś ten sprzęt? Jest to stabilne, i czy przekaźniki po utracie połączenia z netem, cloudem pamiętają swoją poprzednia pozycję?
Awatar użytkownika
wojtas567
Posty: 1992
Rejestracja: ndz kwie 03, 2016 7:16 pm
Lokalizacja: Olsztyn

wt paź 23, 2018 6:20 pm

Nie testowałem tego softu bo nie mam tego scalaka, ale tam kolega właśnie wprowadził pamięć stanu i tą funkcję testowałem na zwykłym sofcie.
Pozdrawiam
Wojtek
Awatar użytkownika
dawidd
Posty: 452
Rejestracja: wt gru 19, 2017 12:45 pm

pt paź 26, 2018 12:32 pm

Próbuje wrzucić ten soft z linku i dostaje taki błąd:
wklejam do jako kod bo jest b długi :)

Kod: Zaznacz cały

Arduino:1.8.7 (Windows Store 1.8.15.0) (Windows 10), Płytka:"WeMos D1(Retired), 80 MHz, 921600, 4M (3M SPIFFS)"

Opcje projektu zmienione, przeładuj całość
UWAGA: biblioteka SuplaDevice działa na architekturze(/architekturach) (avr) i może nie być kompatybilna z obecną płytką która działa na architekturze(/architekturach) (esp8266).
C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp: In member function 'void WiFiManager::setupConfigPortal()':

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:146:71: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)'

   server->on(String(F("/")), std::bind(&WiFiManager::handleRoot, this));

                                                                       ^

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:146:71: note: candidates are:

In file included from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.h:17:0,

                 from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:13:

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, THandlerFunction handler);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note:   no known conversion for argument 1 from 'String' to 'const char*'

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note:   candidate expects 3 arguments, 2 provided

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note:   candidate expects 4 arguments, 2 provided

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:147:81: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(unsigned char), WiFiManager* const, bool>::type)'

   server->on(String(F("/wifi")), std::bind(&WiFiManager::handleWifi, this, true));

                                                                                 ^

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:147:81: note: candidates are:

In file included from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.h:17:0,

                 from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:13:

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, THandlerFunction handler);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note:   no known conversion for argument 1 from 'String' to 'const char*'

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note:   candidate expects 3 arguments, 2 provided

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note:   candidate expects 4 arguments, 2 provided

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:148:83: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(unsigned char), WiFiManager* const, bool>::type)'

   server->on(String(F("/0wifi")), std::bind(&WiFiManager::handleWifi, this, false));

                                                                                   ^

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:148:83: note: candidates are:

In file included from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.h:17:0,

                 from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:13:

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, THandlerFunction handler);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note:   no known conversion for argument 1 from 'String' to 'const char*'

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note:   candidate expects 3 arguments, 2 provided

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note:   candidate expects 4 arguments, 2 provided

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:149:83: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)'

   server->on(String(F("/wifisave")), std::bind(&WiFiManager::handleWifiSave, this));

                                                                                   ^

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:149:83: note: candidates are:

In file included from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.h:17:0,

                 from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:13:

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, THandlerFunction handler);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note:   no known conversion for argument 1 from 'String' to 'const char*'

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note:   candidate expects 3 arguments, 2 provided

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note:   candidate expects 4 arguments, 2 provided

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:150:72: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)'

   server->on(String(F("/i")), std::bind(&WiFiManager::handleInfo, this));

                                                                        ^

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:150:72: note: candidates are:

In file included from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.h:17:0,

                 from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:13:

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, THandlerFunction handler);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note:   no known conversion for argument 1 from 'String' to 'const char*'

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note:   candidate expects 3 arguments, 2 provided

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note:   candidate expects 4 arguments, 2 provided

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:151:73: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)'

   server->on(String(F("/r")), std::bind(&WiFiManager::handleReset, this));

                                                                         ^

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:151:73: note: candidates are:

In file included from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.h:17:0,

                 from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:13:

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, THandlerFunction handler);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note:   no known conversion for argument 1 from 'String' to 'const char*'

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note:   candidate expects 3 arguments, 2 provided

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note:   candidate expects 4 arguments, 2 provided

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:153:77: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)'

   server->on(String(F("/fwlink")), std::bind(&WiFiManager::handleRoot, this));  //Microsoft captive portal. Maybe not needed. Might be handled by notFound handler.

                                                                             ^

C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:153:77: note: candidates are:

In file included from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.h:17:0,

                 from C:\Users\Fujitsu\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp:13:

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, THandlerFunction handler);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:79:8: note:   no known conversion for argument 1 from 'String' to 'const char*'

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:80:8: note:   candidate expects 3 arguments, 2 provided

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)

   void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);

        ^

C:\Users\Fujitsu\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.3.0-rc2\libraries\ESP8266WebServer\src/ESP8266WebServer.h:81:8: note:   candidate expects 4 arguments, 2 provided

exit status 1
Błąd kompilacji dla płytki WeMos D1(Retired).

Ten raport powinien zawierać więcej informacji jeśli w 
File -> Preferencje zostanie włączona opcja "Pokaż
szczegółowe informacje podczas kompilacji"
Ktoś ma pomysł co z tym zrobić?
elmaya
Posty: 960
Rejestracja: śr cze 27, 2018 5:48 pm
Lokalizacja: Sevilla

pt paź 26, 2018 5:20 pm

masz menedżera karty 2.3.0-rc2
zainstaluj 2.4.0 i działa
ODPOWIEDZ

Wróć do „Pomysły i koncepcje”