-
Fototrend
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
vargalex
félisten
Szia!
Mindhárom eszközön ugyan az a kód fut? Ezt a doksit érdemes egyébként elolvasni. Konkrétan arra a részre gondolok, hogy az ESP8266-on alapban engedélyezett a Modem sleep mode kliens módban, ami ugye lekapcsolja a WiFi modult 2 DTIM Beacon intervallum között, ha nincs rajta forgalom. Nyilván, ha ilyen állapotban ping-eled, akkor előbb fel kell, hogy ébressze...
-
mArZsi
tag
Én se értem, hogy ha nincs deep sleep, mi értelme lekonnektálni majd fel, hiba esetén meg belerúgni, újraindítani. Ha hibás az olvasás, akkor meg kell próbálni még egyszer lekérdezni. Workaround.
Hozzá tenném, hogy a hardware résznél kezdeném a hibakeresést, bár a DHT egy rakat fos.Használd e szerint, így jónak kell lennie, nálam így megy:
void Refresh(){
delay(2000);
temp = dht.readTemperature();
humidity = dht.readHumidity();
if (humidity == 2147483647){Refresh();}
if (isnan(humidity) || humidity == 2147483647 || isnan(temp) || isnan(hic)) {
Serial.println("- Failed to read from DHT sensor!");
return;
}
else {
Serial.print(F("TEMP: "));
Serial.println(temp);
Serial.print(F("HUMIDITY: "));
Serial.println(humidity);
}
}...bekéred loopból a Refresh();-t.
Hibás érték abból ered, hogy mire feléled már lekéste a kérést. delay(5000)-et is tehetsz neki.
begin meg csak setupba megy, egyszer kell inicializálni.
-
Janos250
őstag
Okosat nem tudok mondani, csak hangosan gondolkodom:
" Serial.println("Failed to read from DHT sensor! Rebooting.");
ESP.restart();"Ha hibás a DHT olvasás, de van WiFi kapcsolat, akkor reboot? Nem tudom, a router mit szól ehhez, hogy ugyanolyan IP-vel újra kapcsolódni akarsz. Persze ez csak egy elképzelés.
Hibás DHT11 olvasás? Én valamikor régen próbáltam a DHT.h-val a DHT11-et, de gondjaim voltak, inkább csináltam másikat.
Nem nagyon emlékszem már rá, de valamikor feltettem a netre:
link
Persze valószínűleg az idő rég eljárt felette. -
Janos250
őstag
Csak elmélkedés: Lecsatlakozol, és újra fel ugyanarra az IP címre? Kilépéskor lezáródott rendesen a kapcsolat? Eléggé közel van az ESP a routerhez? Nincs túl nagy forgalom a sávon, hogy tudjon csatlakozni? Az ESP működik, csak a WiFire nem tud csatlakozni, vagy az ESP is áll?
"csatlakozik, csak nem ahhoz, amit megadtam neki" ????
Ez elég érdekesnek tűnik! Honnan tudja a másik adatait?De jó helyen van ez az ESP, hogy 30 fok van
-
Janos250
őstag
Szerintem is Tanblocknak van igaza. Én annyit tennék hozzá, hogy az IDF is ugyanazzal működik, mint az Arduino IDE. Valahol meg is van ugyanaz a konfig fájl, amit az IDF-ben állítasz, én egyszer régebben ott állítgattam valamit, de már nem emlékszem mit, és miért. Ezek csak user interface-ek. Jó az a 8266! Az meg, hogy mindenki fejleszt rá mindenfélét, és azok egymással nem csereszabatosak, az mindkettőnél megvan. Hogy az alaplapok között is van apróbb különbség, az is. Pl. megírod a programot, aztán a másik lapon nem ugyanaz a beépített led neve, és nem ugyanazon a GPIO-n van, de más eddig nekem nem okozott gondot. Ezért én be szoktam írni a program elejére kommentben, hogy milyen könyvtárral és milyen lappal használtam, milyen lapra fordítottam.
Aztán egy év múlva keresem ugyanazt a könyvtárat, de közben átírták.
-
Tankblock
aktív tag
Hello,
Szerintem nem kell váltanod, csak jobban kiismerni és kihasználni a lehetőségeit.
Mire is szeretnéd használni?Ha csak pár szenzor / garázsnyitó / lámpakapcsoló kell arra bőven megfelelő ESP8266
ESP32 ha komoly számítűsi teljesítmény kell. Bár nagyon sok mindent meg lehet ESP8266 al is tenni, bár lehet hogy nem arduino alatt hanem a saját IDF et használva. -
Janos250
őstag
Melyikről beszélünk, ESP8266 vagy ESP32?
ESP32-n jó ideje stabilan működő programból kopiztam ki a beírt részletet.
ESP32-n nálam:
config elöl. utána begin: sztochasztikus viselkedés.
begin elöl, utána config: stabil viselkedés.
Azért kezdtem el kutakodni 32 ügyben a neten, mert az első verzió esetén nekem is gondjaim voltak.
A neten írták a második verziót. Amióta azt használom, azóta stabil. Tehát felkapcsolódunk, kapunk IP-t.
Utána változtatjuk meg az IP-nket. -
Janos250
őstag
Így sajnos nem stabil.
A neten írták, és én is ezt tapasztaltam, hogy a
WiFi.begin(ssid, password);
WiFi.config(ip, gateway, subnet);
közé kell egy delay(1000)
Ne kérdezzétek miért, én sem értem.Így próbáld, én ezt egy saját programból kopiztam hirtelenjében, stabilan működik:
WiFi.begin(ssid, password );
delay(1000); // legalabb 1000 kell, hogy tudjon kapcsolodni
IPAddress ip(192,168,1,140); //Node static IP
IPAddress gateway(192,168,1,1) ;
IPAddress subnet(255,255,255,0) ;
WiFi.config(ip, gateway, subnet) ;
delay(1000);A WiFi.config sok leírás szerint a WiFi.begin elé is jó lenne, de a gyakorlatban nem, pedig az lenne a logikusabb.
-
vargalex
félisten
Mit tárolsz te 19 oszlopon? Nálam összesen 4 oszlop van, amiből 1 (unix timestamp) csak a group by gyorsítására van (és egy trigger tölti):
CREATE TABLE temperatures (
sensor_id mediumint(9) NOT NULL,
datum timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
temperature decimal(5,3) NOT NULL,
u_timestamp int(11) DEFAULT NULL,
KEY idx_temp_date (datum),
KEY idx_temp_sensor (sensor_id),
KEY idx_sens_date (sensor_id, datum),
KEY idx_sens_u_ts (u_timestamp, sensor_id),
CONSTRAINT temperatures_ibfk_1 FOREIGN KEY (sensor_id) REFERENCES sensors (id) ON DELETE CASCADE ON UPDATE CASCADE)
ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_hungarian_ci;Esetleg nálad egy rekord az egy időpont az összes szenzor által mért adattal?
-
vargalex
félisten
Én a különböző eszközök mérését egymással nem szinkronizálom, csak azt akartam elérni, hogy egy mérő lehetőleg mindig ugyan abban a másodpercben küldjön értéket (ne legyen olyan, hogy 1 percben 2 mérést küld, vagy 1 perc kimarad). A megjelenítésnél viszont percre kerekítek, így látszólag minden eszköz azonos időpontban mér, a szerverre küldés viszont eloszlik, így nem egyszerre kapcsolódnak.
-
Janos250
őstag
"nem is szöveget ad vissza, hanem számokat"
Persze.
WiFiType.h:typedef enum {
WL_NO_SHIELD = 255, // for compatibility with WiFi Shield library
WL_IDLE_STATUS = 0,
WL_NO_SSID_AVAIL = 1,
WL_SCAN_COMPLETED = 2,
WL_CONNECTED = 3,
WL_CONNECT_FAILED = 4,
WL_CONNECTION_LOST = 5,
WL_DISCONNECTED = 6
} wl_status_t;
Új hozzászólás Aktív témák
- Meta Quest 3 128gb - Garanciás 2025.10.16-ig
- Eladó! Azonnal indítható Sugar Daddy társkereső az angol piacra Készen áll a pénztermelésre
- Apple Watch Nike S6 44mm Space Gray LTE, ajándék új szíjakkal, üvegfóliával és ütésálló tokkal!
- BenQ MW523 3D DLP Projektor, 3000 ANSI lumen, 143 óra üzemidő + 2db 3D szemüveg + Ingyen posta
- 16" macbook pro m1pro.
- Bomba ár! Lenovo ThinkPad T440 - i5-4GEN I 4GB I 500GB I 14" HD+ I Cam I W10 I Garancia!
- Bomba ár! Dell Latitude 5420 - i5-1145G7 I 16GB I 256SSD I HDMI I 14" FHD I Cam I W11 I Garancia!
- ÁRGARANCIA!Épített KomPhone i9 14900KF 32/64GB RAM RTX 5070Ti 16GB GAMER PC termékbeszámítással
- Tablet felvásárlás!! Apple iPad, iPad Mini, iPad Air, iPad Pro
- LG 24GQ50F-B - 24" VA / 1920x1080 FHD / 165Hz 1ms / AMD FreeSync Premium / Adaptive Sync / HDR 10
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest