ESP i I2C

User avatar
shimano73
Posts: 2174
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze
Been thanked: 1 time

Post

Witam, udało mi się uruchomić I2C pod moją siódemkę. Niestety nie potrafię tego połączyć z suplą.
Myślałem że zadziała gdy użyję coś w rodzaju wirtualnych wyjść , niestety nie :(

byte numer=48 ;
pinMode(numer,OUTPUT);
SuplaDevice.addRelay(numer);

if (digitalRead(numer)==1) {
pcf8574.write(1,LOW );
}
else
pcf8574.write(1,HIGH );

działa tylko przy fizycznych gpio
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

Wykorzystaj
setDigitalWriteFuncImpl(_impl_arduino_digitalWrite impl_arduino_digitalWrite);

i w callbacku dodaj własną obsługę
SUPLA.... Nareszcie w domu.
User avatar
shimano73
Posts: 2174
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze
Been thanked: 1 time

Post

Jako ze nie jestem za bardzo obeznany , rozumiem ze ma to wyglądać podobnie jak obsługą temperatury i get_temperature ?
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

Programujesz to przez Arduino IDE ?
SUPLA.... Nareszcie w domu.
User avatar
shimano73
Posts: 2174
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze
Been thanked: 1 time

Post

Tak , po przez arduino
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

To wpinasz się w funkcję digitalWrite za pomocą setDigitalWriteFuncImpl

tam sprawdzasz do jakiego portu wywołanie się odwołuje i jeżeli dotyczy tego po i2c to robisz własną obsługę
SUPLA.... Nareszcie w domu.
User avatar
shimano73
Posts: 2174
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze
Been thanked: 1 time

Post

pzygmunt wrote:To wpinasz się w funkcję digitalWrite za pomocą setDigitalWriteFuncImpl

tam sprawdzasz do jakiego portu wywołanie się odwołuje i jeżeli dotyczy tego po i2c to robisz własną obsługę
podpowiedź nie do końca rozwiała mój problem za mało wiedzy, ale od czego jest opcja szukaj na forum i znalazłem to co potrzebowałem
i zrobiłem tak:

void suplaDigitalWrite(int channelNumber, uint8_t pin, uint8_t val) {
pcf8574.write(pin,val );

void setup() {
SuplaDevice.setDigitalWriteFuncImpl(&suplaDigitalWrite);
....


No i zadziałało :D , co prawda pojawił się inny problem ale to już w innym poscie :(
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
User avatar
shimano73
Posts: 2174
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze
Been thanked: 1 time

Post

witam, problemy z układem ftdi jest , nie zaprzeczam ale nie do końca. Zauważyłem, że układ nie działa gdy przypisuje pewne nr pinów , tzn nr pinów (gpio) jakich nie ma w esp-07.
Konkretnie - układ działa gdy ustawię :
SuplaDevice.addRollerShutterRelays(2,3);
SuplaDevice.addRollerShutterRelays(4, 5);
SuplaDevice.addRollerShutterRelays(12,13) - w tym przypadku układ się loguje do sieci ale z oczywistych względów żaden pin pcf'a nie działa

a nie działa gdy ustawię :
SuplaDevice.addRollerShutterRelays(6, 7);
SuplaDevice.addRollerShutterRelays(0,1);

w czym może być problem, w załączniku cały program
You do not have the required permissions to view the files attached to this post.
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
User avatar
shimano73
Posts: 2174
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze
Been thanked: 1 time

Post

Niestety cp2102 na pokładzie a supla nie pracuje.
Tak jak pisałem wyżej supla nie działa gdy ustawię :
SuplaDevice.addRollerShutterRelays(6, 7);
SuplaDevice.addRollerShutterRelays(0,1);
Supla nie działa ,ale działa migajaca dioda wstawiona w pętli loop, :(
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
User avatar
shimano73
Posts: 2174
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze
Been thanked: 1 time

Post

Niestety cp2102 na pokładzie a supla nie pracuje.
Nie ma błedu zapisu.
Tak jak pisałem wyżej supla nie działa gdy ustawię :
SuplaDevice.addRollerShutterRelays(6, 7);
SuplaDevice.addRollerShutterRelays(0,1);
Supla nie działa ,ale działa migajaca dioda wstawiona w pętli loop, :(
Dziwne jest to że w ESP właczył się AP :? , ale pod adresem 192.168.4.1 nic sie nie wyswietla - strona nie dostępna
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)

Return to “Pomoc”