Jaką płytkę masz? Arduino czy coś na ESP?andrew01 wrote: Sat Dec 14, 2019 9:47 pm To nie jest kwestia samych termometrów ale liczby urządzeń/kanałów, gdy mam 21 to jest ok, dodanie 22 powoduje, że już się nie łączy.
Aktualizacja SuplaDevice
-
klew
- Posts: 13908
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 135 times
- Been thanked: 137 times
Najlepsze suple dla Twojego domu 
-
andrew01
- Posts: 163
- Joined: Fri May 24, 2019 6:49 am
-
andrew01
- Posts: 163
- Joined: Fri May 24, 2019 6:49 am
Poniżej testowy soft, ten działa - trzy ostatnie elementy zakomentowane:
#include <SPI.h>
#include <SuplaDevice.h>
#include <supla/network/ethernet_shield.h>
// Ethernet MAC address
uint8_t mac[6] = {0xA0, 0xB1, 0xC2, 0xD3, 0xE4, 0xF5};
Supla::EthernetShield ethernet(mac);
void setup() {
Serial.begin(9600);
while (!Serial) {}
// Replace the falowing GUID
char GUID[SUPLA_GUID_SIZE] = {};
// Replace the following AUTHKEY with value that you can retrieve from: https://www.supla.org/arduino/get-authkey
char AUTHKEY[SUPLA_AUTHKEY_SIZE] = {};
SuplaDevice.addRelay(22, 23, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(24, 25, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(26, 27, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(28, 29, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(30, 31, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(32, 33, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(34, 35, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(36, 37, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(54, 55, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(56, 57, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(58, 59, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(60, 61, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(62, 63, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(64, 65, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(66, 67, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addRelay(68, 69, false, true, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
SuplaDevice.addDS18B20Thermometer();
SuplaDevice.addDS18B20Thermometer();
SuplaDevice.addDS18B20Thermometer();
SuplaDevice.addDS18B20Thermometer();
SuplaDevice.addDS18B20Thermometer();
//SuplaDevice.addDS18B20Thermometer();
//SuplaDevice.addDS18B20Thermometer();
//SuplaDevice.addDS18B20Thermometer();
SuplaDevice.begin(GUID, // Global Unique Identifier
"svr21.supla.org", // SUPLA server address
"........@......", // Email address used to login to Supla Cloud
AUTHKEY); // Authorization key // Location Password
}
void loop()
{
SuplaDevice.iterate();
}
-
klew
- Posts: 13908
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 135 times
- Been thanked: 137 times
A co masz na Serial? Wrzuciłem ten kod na Wemosa i śmiga. Na Arduino mega tylko skompilowalem i wrzuciłem na urządzenie, ale gdzieś mi się kabel sieciowy zapodział i widzę tylko tyle, że program dochodzi do miejsca połączenia z serwerem i tam utyka.andrew01 wrote: Sat Dec 14, 2019 10:20 pm Poniżej testowy soft, ten działa - trzy ostatnie elementy zakomentowane:
Najlepsze suple dla Twojego domu 
-
klew
- Posts: 13908
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 135 times
- Been thanked: 137 times
U mnie zjade się to pracować poprawnie.lukfud wrote: Sat Dec 14, 2019 8:03 pmWyświetlałem status i aktualizowałem stany przekaźników po utracie połączenia. Mam też kilka sekwencji migania diody w zależności od kodu statusu, dlatego potrzebowałem przypisania do zmiennej.
Teraz z tego co zauważyłem na develop, to nie ma potrzeby aktualizacji stanów w tym miejscu, ale zmienną do migania nadal potrzebuję.
Po kilku testach rezultat jest taki:
Jeśli nie dodamto wyświetlają się statusy w serialu (te zaszyte w bibliotece), ale nie mam swojej zmiennej.Code: Select all
SuplaDevice.setStatusFuncImpl(&status_func);
Jeśli dodam to "wywołanie" i funkcjęto mam swoją zmienną ale nie wyświetlają się statusy w serialu.Code: Select all
void status_func(int status, const char *msg) { sNumber = status; }
A jak wyrzucę statusy na serial w tej funkcji to niestety kończy się tak jak napisałem na początku.
Prześlij proszę cały kod tego prorgamu do mnie
Najlepsze suple dla Twojego domu 
-
andrew01
- Posts: 163
- Joined: Fri May 24, 2019 6:49 am
klew wrote: Sat Dec 14, 2019 11:58 pmA co masz na Serial? Wrzuciłem ten kod na Wemosa i śmiga. Na Arduino mega tylko skompilowalem i wrzuciłem na urządzenie, ale gdzieś mi się kabel sieciowy zapodział i widzę tylko tyle, że program dochodzi do miejsca połączenia z serwerem i tam utyka.andrew01 wrote: Sat Dec 14, 2019 10:20 pm Poniżej testowy soft, ten działa - trzy ostatnie elementy zakomentowane:
Code: Select all
12:41:49.384 -> Connecting to network...
12:41:53.885 -> localIP: 192.168.2.175
12:41:53.920 -> subnetMask: 255.255.255.0
12:41:53.955 -> gatewayIP: 192.168.2.1
12:41:53.990 -> dnsServerIP: 192.168.2.1
12:41:53.990 -> Using protocol version 8
12:41:54.024 -> Current status: SuplaDevice initialized
12:41:54.058 -> Current status: Not connected
12:41:54.093 -> Establishing connection with: svr21.supla.org (port: 2015)
12:42:26.298 -> Connection fail. Server: svr21.supla.org
12:42:28.310 -> Current status: Not connected
12:42:28.345 -> Establishing connection with: svr21.supla.org (port: 2015)
12:42:28.449 -> Connected
12:42:28.449 -> Current status: Register in progress
12:44:28.600 -> Current status: Not connected
12:44:28.636 -> Establishing connection with: svr21.supla.org (port: 2015)
12:44:28.704 -> Connection fail. Server: svr21.supla.org
12:44:30.761 -> Current status: Not connected
12:44:30.795 -> Establishing connection with: svr21.supla.org (port: 2015)
12:44:30.900 -> Connected
12:44:30.900 -> Current status: Register in progress
12:46:30.953 -> Current status: Not connected
12:46:30.987 -> Establishing connection with: svr21.supla.org (port: 2015)
12:46:31.055 -> Connection fail. Server: svr21.supla.org
12:46:33.094 -> Current status: Not connected
12:46:33.129 -> Establishing connection with: svr21.supla.org (port: 2015)
12:46:33.231 -> Connected
12:46:33.267 -> Current status: Register in progress
-
klew
- Posts: 13908
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 135 times
- Been thanked: 137 times
Trochę w ciemno, ale obstawiałbym, że pamięci zaczyna brakować. Podczas ostatnich prac nie pilnowałem tego, ile pamięci jest używane i widzę, że trochę zużycie wzrosło. Przy Arduino Mega jesteśmy mocno ograniczeni przez 8 kBandrew01 wrote: Sun Dec 15, 2019 11:50 am Włączałem jeszcze debugowanie ale na etapie łączenia to chyba nic dodatkowo nie wyrzuca na serial.
Spróbuj dorzucić sobie do programu printowanie ilości wolnej pamięci. Wstaw też w "SuplaDevice.iterate()" - np przed wejściem w rejestrację . tam gdzie jest:
Code: Select all
status(STATUS_REGISTER_IN_PROGRESS, "Register in progress");Najlepsze suple dla Twojego domu 
-
lukfud
- Posts: 2480
- Joined: Thu Nov 23, 2017 11:33 pm
- Location: Warszawa
- Has thanked: 13 times
- Been thanked: 11 times
Jak najszybciej dorzucić wyświetlanie wolnej pamięci?klew wrote: Mon Dec 16, 2019 12:22 pmTrochę w ciemno, ale obstawiałbym, że pamięci zaczyna brakować. Podczas ostatnich prac nie pilnowałem tego, ile pamięci jest używane i widzę, że trochę zużycie wzrosło. Przy Arduino Mega jesteśmy mocno ograniczeni przez 8 kBandrew01 wrote: Sun Dec 15, 2019 11:50 am Włączałem jeszcze debugowanie ale na etapie łączenia to chyba nic dodatkowo nie wyrzuca na serial.. Podczas rejestracji potrzeba tej pamięci najwięcej.
Spróbuj dorzucić sobie do programu printowanie ilości wolnej pamięci. Wstaw też w "SuplaDevice.iterate()" - np przed wejściem w rejestrację . tam gdzie jest:Code: Select all
status(STATUS_REGISTER_IN_PROGRESS, "Register in progress");
https://www.facebook.com/groups/supladiy
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
-
klew
- Posts: 13908
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 135 times
- Been thanked: 137 times
Ja używam tej biblioteczki:
https://github.com/maniacbug/MemoryFree
W kodzie dajesz: Serial.println(freeMemory());
Najlepsze suple dla Twojego domu 
-
lukfud
- Posts: 2480
- Joined: Thu Nov 23, 2017 11:33 pm
- Location: Warszawa
- Has thanked: 13 times
- Been thanked: 11 times
Ok, dzięki.
Właśnie patrzyłem na nią na jakiejś stronie
Właśnie patrzyłem na nią na jakiejś stronie
https://www.facebook.com/groups/supladiy
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
