Asystent AI
Powiadomienia
Wyczyść wszystko

GPIO 14 jak je pogmerać ?

9 Wpisów
2 Użytkownicy
0 Reactions
2,742 Wyświetleń
Wpisów: 162
Zasłużony dla Forum Donator 2K19, Donator 2K18, Donator 2K17
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
(@tomaszraszowski)
Pomocny
Dołączył: 9 lat temu
[#75]

Adrianie help !

Czemu mi to nie działa ?

/* Set relay to ON */
void SonoffRelay::on() {
  digitalWrite(GPIO_14, HIGH);
  if (get()==RELAY_OFF) digitalWrite(RELAY, HIGH);
  if (Configuration.interface == 1) publish();
  if (Configuration.debugger) Serial << endl << "INFO: Relay set to ON";
  Eeprom.saveRelayState(RELAY_ON);
  Led.blink();
  
}

/* Set relay to OFF */
void SonoffRelay::off() {
  digitalWrite(GPIO_14, LOW);
  if (get()==RELAY_ON) digitalWrite(RELAY, LOW);
  if (Configuration.interface == 1) publish();
  if (Configuration.debugger) Serial << endl << "INFO: Relay set to OFF";
  Eeprom.saveRelayState(RELAY_OFF); 
  Led.blink();
}

8 Odpowiedzi
1 odpowiedź
adrian
Admin Zasłużony dla Forum, Patron Strony
(@adrian)
Dołączył: 12 lat temu

Szefu
Wpisów: 4083
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian

2 opcje

  • albo w pliku sonoff-realy.h zmienisz nr GPIO w stałej RELAY z 12 na 14 i wtedy nie dotykasz pliku sonff-relay.ino w sensie zostawiasz jak było RELAY wszędzie
  • albo dodatkowo zamień RELAY w tych dwóch metodach na GPIO_14, bo chyba nie zauważyłeś digitalWrite(RELAY, HIGH) oraz digitalWrite(RELAY, LOW)

Odpowiedz
Wpisów: 162
Zasłużony dla Forum Donator 2K19, Donator 2K18, Donator 2K17
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
(@tomaszraszowski)
Pomocny
Dołączył: 9 lat temu

Ale 12 to GPIO relayki, jak to zmienię to prekaźnik przestanie działać na pinie 12, a ja chcę aby przy ON,OFF przekaźnika czyli pinu 12 dodatkowo zmieniał mi stan pinu 14 do którego mam podpięty switch z diodą.

No chyba że coś źle myślę...


Odpowiedz
1 odpowiedź
adrian
Admin Zasłużony dla Forum, Patron Strony
(@adrian)
Dołączył: 12 lat temu

Szefu
Wpisów: 4083
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian

ok, nie wiedzialem co chcesz zrobić, to dodaj  w konstruktorze tej klasy Relay sonoff-relay.ino

 SonoffRelaySonoffRelay() {
  pinMode(RELAY, OUTPUT);
pinMode(GPIO_14,OUTPUT);
....

 

powinno zadziałać - tak mi się wydaje 

Chyba zadziała. 


Odpowiedz
Wpisów: 162
Zasłużony dla Forum Donator 2K19, Donator 2K18, Donator 2K17
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
(@tomaszraszowski)
Pomocny
Dołączył: 9 lat temu

Niestety, jakby ignorował te moje komendy, poza SERIALEM bo tu mi wypisuje jak mu każę 🙂

EDIT: wgralem sketch blinka na pin 14 zeby sie upewnic czy czasem esp nie zdechło, ale smiga.

A może to ma jakis związek z tym że w ustawieniach mam ten przełącznik na 14 pinie i gdzies coś blokuje ?


Odpowiedz
1 odpowiedź
adrian
Admin Zasłużony dla Forum, Patron Strony
(@adrian)
Dołączył: 12 lat temu

Szefu
Wpisów: 4083
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian

jak wróce do chałupy to się zastanowię - muszę spojrzeć w kod.

Może masz w konfiguracji włączony czujnik temperatury na 14stce?


Odpowiedz
Wpisów: 162
Zasłużony dla Forum Donator 2K19, Donator 2K18, Donator 2K17
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
(@tomaszraszowski)
Pomocny
Dołączył: 9 lat temu

Nie, czujniki są wyłączone.

Teraz robiłem eksperymenty i jak w switch.ino zmienilem _gpio na OUTPUT (co skutkowało brakiem możliwości działania przełącznika) ale za to 14 mrygnęła i zawiesiła SO 😀

 

EDIT: wezmę pod koniec tygodnia z 5 SO od Ciebie 🙂 Jeden miał bliskie spotkanie ze ścianą :/ czas odpocząć od kompa i jechać na działkę, poganiać się z mrówkami albo rybę jakąś złapać 🙂


Odpowiedz
adrian
Wpisów: 4083
Admin Zasłużony dla Forum, Patron Strony
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
(@adrian)
Szefu
Dołączył: 12 lat temu

i co rozwiązałeś ten problem ze świeceniem diody na gpio14?


Odpowiedz
Strona 1 / 2
Udostępnij: