- Luck Dragon: Asszociációs játék. :)
- Argos: Szeretem az ecetfát
- Szoszo94: Xiaomi Mi Router 3G - Padavanra fel!
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Magga: PLEX: multimédia az egész lakásban
- sziku69: Szólánc.
- Parci: Milyen mosógépet vegyek?
- gban: Ingyen kellene, de tegnapra
- Kempingezés és sátrazás
- Gurulunk, WAZE?!
-
LOGOUT
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
válasz
Postas99 #23659 üzenetére
Szia!
Pontos router típusokat tudnál adni? Mert, ha a TP.-Link egy Archer C1200 v2, akkor nem csodálkozom, hiszen BroadCom SoC-al és wifi-vel szerelt, ami ugye zárt forrású.
Viszont ha az Asus egy RT-AX53U, akkor ott nem kellene, hogy bármi gond legyen, hiszen MediaTek SoC-al és wifivel szerelt. Az egyik legjobban támogatott SoC. 40 kliens nem kell, hogy gondot okozzon neki. -
vargalex
félisten
válasz
JulianSinulf #23579 üzenetére
Nekem is egy Yihua-val azonos kinézetű Kraft & Dele típusú forraszóállomásom van (nem itt vettem, de ilyen). Én nagyjából meg vagyok vele elégedve. Most éppen egy Yihua páka van rajta.
-
vargalex
félisten
Sziasztok!
Egy ismerős szélsebességet szeretne mérni Tasmota-val Wemos D1 mini-n. Van tapasztalatotok, hogy melyik eszköz működhet biztosan? Aliexpressen annyi típus van, mint égen a csillag...
-
vargalex
félisten
válasz
szoke12 #23458 üzenetére
Anno csak teszt céllal próbáltam, így friss emlékeim nincsenek, de a legkevesebb barkácsolással talán az asztal lábára szerelt ultrahangos (vagy lézeres) távolságmérővel (ami nyilván az asztal lap aljára néz) is érdemes lehet próbálkozni (persze jól be kell kalibrálni), ha biztosan nem lesz semmi útban.
-
vargalex
félisten
válasz
Undoroid #23446 üzenetére
Igen, ez a másik lehetőség. Csak valamiért nekem az volt a fejemben, hogy olyan kábellel próbálkozol, amivel másik mikrokontrollert már tudtál programozni... Eszembe nem jutott, hogy mindegyik kábel csak töltésre való. (Valóban vannak olyan eszközök, amikhez csak olyan kábelt adnak, amiben csak a GND és VCC van bekötve.)
-
vargalex
félisten
válasz
Undoroid #23426 üzenetére
Az, hogy milyen board-ot tudsz kiválasztani az Arduino IDE-ben teljesen független attól, hogy valójában milyen lapot csatlakoztatsz a géphez. A lényeg az, amit a kolléga is ír: soros portként látszania kell az eszközödnek, amíg ez nincs így, semmit nem tudsz feltölteni rá. Ahhoz, hogy megjelenjen, megfelelő driver kell. Én sajna ebben nem tudok segíteni, mert nem használok Windows-t. Ennek megfelelően én megnézném Linux alatt...
-
vargalex
félisten
válasz
Tankblock #23341 üzenetére
A setupban a wifi connection-nél van
delay
:WiFi.begin(AP_SSID, AP_PASS);
while (WiFi.status() != WL_CONNECTED && connect_try_count < AP_CONNECT_MAX_TRY_COUNT) {
Serial.print(".");
delay(500);
connect_try_count++;
}Egyébként ezen kívül egy darab
delay
sincs a kódban (és természetesen ahogy írtam,yield
sincs):[gavarga@gavarga-5500 ~]$ cat Arduino/projects/esp8266_keringeto_vezerles/keringeto_webserver/keringeto_webserver.ino | grep -i "delay\|yield"
delay(500);
[gavarga@gavarga-5500 ~]$Ami még feladata és nem írtam: közben I2C-n egy Oled kijelzőt is hajt, folyamatosan frissítve az adatokat, valamint a webes felületen állíthatóak a relé (SSR) ki-, illetve bekapcsolási hőmérsékletei, amit SPIFFS-en tárol, hogy áramszünet, vagy újraindítás esetén használni is tudjon. A hőmérő DS18B20. Illetve természetesen soros porton logol is.
-
vargalex
félisten
válasz
Tankblock #23330 üzenetére
Vannak esp8266 eszközeim hőmérésre, többek között a kazán előremenő csövénél is. Wifi-n csatlakozik az itthoni IOT hálózathoz, percenként mér, a hőmérséklet függvényében kapcsol egy relét. Mindeközben weben elérhető felülete van, plusz percenként hív be a szerverem rest API-n (szintén http egy másik végpont), ami json-ban adja vissza az aktuális adatokat. Sehol nem volt szükségem a yield-re, soha nem fagyott.
-
vargalex
félisten
válasz
ViZion #23248 üzenetére
Ugye most a kazán "vezérli" a szivattyút. Azaz, ha fűt a kazán, bekapcsolja a keringetőt is, ha nem, akkor nem. Így a kazán teljes fogyasztását mértem (ez még egy buta kazán, a saját fogyasztása szerintem elenyésző) egy okos konnektorral és emlékeim szerint 1-es fokozaton 10-15 W között volt valahol (de 20W alatt, szinte biztos). 4-es fokozatot persze sokkal több.
Köszönöm mindenkinek, akkor elfogadom, hogy ez így jó.
Szerintem az lehet a baj, hogy én mindenáron hagyományos reléhez akarom hasonlítani a működést...
-
vargalex
félisten
válasz
Tankblock #23246 üzenetére
OK, így a 0 átmenetet értem. Ez akkor csak az AC oldalt érinti, de mivel 50 Hz, így elég gyakran lesz 0 átmenet. Csak, hogy világos legyen a problémám, most teljesen kiiktattam mindent, inputnak egy laptopból bontott akkut használtam (4 ilyen akkuból állt a teljes akkupack):
Majd a probléma a videón látható nagyjából (a halvány fény annyira nem látványos, mert nagyon erősből vált arra, de azért látszik). Ami látható:
1. 2 másodpercnél rárakom az input pozitív ágát és fel is kapcsol az izzó.
2. 8 másodpercnél megszüntetem az inputot, az izzó halványan világít tovább (ez nem olyan látványos a videón, próbáltam sötétben is, de akkor pedig mindenáron bekapcsolta a mobil a világítást, így szintén nem látszott).
3. 14 másodpercnél (picivel előtte) kihúzom a konnektorból az izzót és megszűnik a halvány világításEgyébként, ha ilyenkor visszadugom a konnektorba, akkor általában továbbra is halványan világít. Néhány másodperces áramtalanítás után nem világít tovább.
Nem fog ez gondot okozni egy 1-es fokozaton nagyjából ugyan úgy 10W-ot fogyasztó keringető szivattyú esetén?#23244 Undoroid: természetesen a fázis van az SSR out ágára kötve. Direkt ellenőriztem, illetve megnéztem fordított polaritással is. Ugyan ez a jelenség.
Egyébként a korábban linkelt 2 videó miért állít 2 különböző doglot ráadásul ugyan olyan típusú SSR esetén? (Egyik szerint rövidzár, illetve nyitás van, másik szerint mindkét esetben van kapcsolat a 2 pólus között, csak nagyságrendi ellenálláskülönbség van.
Illetve a később linkelt videóban miért nincs ez a jelenség?Sajna hagyományos izzóm nincs, így másik LED izzóval, fénycsöves izzóval néztem meg. Ezek közül egyik sem világított halványan sem, viszont az input megszűnése esetén az out oldal 1-es lába és a föld között az eredeti Osram LED izzónál 110 V-ot, egy másik LED izzónál (ami nem világít) 180V-ot, a fénycsöves izzó esetén 32V-ot mértem. Fogyasztó nélkül (kicsavartam az izzót a foglalatból) viszont 230V-ot. Ha az inputra nem kötök semmit, csak bedugom a konnektorba a fogyasztót, akkor az 1-es láb és a föld között azonnal rendre 10V-ot, 170V-ot és 32V-ot mérek.
Most már egyáltalán nem értem, hogy hogyan is működne a Solid State Relay... -
vargalex
félisten
válasz
Tankblock #23239 üzenetére
Köszi!
Ahogy írtam, a visszajelző led világít, amikor a Wemos lábát HIGH-re húzom, tehát a relé kapcsol, a nagyfeszültségű oldal is kapcsol (az újonnan vásárolt relé esetén), a rákötött "izzó" világít. Majd, amikor LOW-ra állítom a Wemost lábát, akkor a rákötött (korábban linkelt) Osram LED "izzó" halványan világít tovább (ha az in oldalt lehúzom a próbapanelről, akkor is). Tehát, mintha nem oldana teljesen a nagyfeszülségű AC oldal. De másik LED "izzóval" nem csinálta ugyan ezt. A Wemos D1 mini és a relé között a teszt környezetben egyelőre 10 cm-es vezetékek vannak.
Mit jelent pontosan az, hogy "0 átmenetnél tud kapcsolni"?
-
vargalex
félisten
válasz
ViZion #23236 üzenetére
Ahogy írtam, 230V-os Osram 13W LED "izzó"val teszteltem. Ott is van elektronika...
-
vargalex
félisten
válasz
ViZion #23234 üzenetére
Nem is láttam a projektedet. Én is hasonlót csinálok, csak saját kóddal. Egyébként az a fura, hogy ebben a példában is a led-el mutatja be emberünk az SSR-t és nála szépen lekapcsol...
-
vargalex
félisten
Sziasztok!
Rég jártam erre... Szóval, gondoltam kis ujjgyakorlatként egy régi gázkazán keringető szivattyúját vezérelném Wemos D1 Minivel (mehetne akár Arduinoval is, de ez akadt elsőre a kezembe) hőmérséklet alapon. Raktam rá egy 0,96"-os OLED kijelzőt, egy Dallas DS18B20 szenzort és eredetileg egy SSR-40 DA-t gondoltam a szivattyú kapcsolásához (mert az volt itthon és ugye ez csendes). Megírtam a kódot, minden működni látszott, a relé vissza is jelezte a kapcsolást a leddel, de a próbalámpám (220V, 14W-os led) nem kapcsolt. Soha nem volt használatban ez a relé, így gondoltam gyárilag hibás. Kipróbáltam egy hagyományos kék relével szerelt panellel, azzal működött a kapcsolás. De azért rendeltem egy SSR-10 DA-t, valamiért biztonságosabbnak gondolom a kék relénél.
Működni látszik, de az SSR relé kikapcsolásakor (a visszajelző led kialszik) halványan világít továbbra is a 220V-os LED (egy másik LED viszont rendben kialszik). Ha kihúzom a konnektorból és újra bedugom (a Wemos-hoz, SSR-hez nem nyúlok), akkor nem világít. Ha nem húzom ki, de az SSR vezérlő lábát lehúzom (tehát biztosan nem kap semmilyen tápot az IN oldalra), akkor is világít halványan kihúzásig. Ez mitől lehet?Valójában hogyan működnek az SSR relék? Mert néztem youtube videókat, leírásokat, de egyik ezt, másik azt írja. Pl. itt azt mondja, hogy rövidzárnak kellene lennie, de ez ugyanakkor azt mondja, hogy nyitott állásban megaOhm nagyságrendű ellenállás van a kimenet lábai között, míg zárt állásban kiloOhm nagyságrend. Ahogy én mértem, nálam utóbbi igaz.
Túl kicsi a load a 14W-os LED bulb-al?
-
vargalex
félisten
válasz
Janos250 #21794 üzenetére
Az "azok tudják, hogy hol keressék a nekik kellőt" elég hihetetlen, ha azokban is egy
#include <masikheader.h>
van csak..
Persze az azonos elnevezésű header-ekkel nem nagyon lehet mit kezdeni. Ezt én is úgy szoktam, hogy kiválasztok egyet, telepítem. Ha nem tetszik, akkor leszedem és telepítem a másikat. -
vargalex
félisten
válasz
Janos250 #21784 üzenetére
Ez addig járható út, ameddig egyetlen header-ről van szó, ami nem hivatkozik másikra és azok tovább...
Nekem még soha nem volt problémám ebből. Persze lehet annak is köze hozzá, hogy linux alatt vagyok.Mondjuk számomra az volt a triviális feltételezés, hogy mindenki tudja, mi a különbség a két include között.
-
vargalex
félisten
válasz
Undoroid #21635 üzenetére
Nekem nincs ESP-01-em, de ahogy a többiek már írták, ott nem megy alapból a deepsleep.
Maga a kód nyilván működne, hiszen 1 db GPIO-t igényel. -
vargalex
félisten
Ez sem mondható el általánosan. A Mikrotik is már annyi féle SoC-ot és Wifi chip-et használ, mint égen a csillag. Nekem egy hAP ac²-m van (most éppen egy kollégámnál van), nincs gond a wifi-vel, de az elérhető sávszélességben nagyon elmarad az azonos sebességet ígérő egyéb (mondjuk én OpenWrt-t használok, így OpenWrt kompatibilis) eszközöktől (pl. MediaTek). Ugyan ez igaz a cégnél lévő Mikrotik AP-kre is.
-
vargalex
félisten
Sziasztok!
Kaptam egy 3,5"-os, leírás szerint elvileg 384*184 pixeles e-ink (BWR, azaz Black, White, Red) kijelzőt. Viszont semmilyen elektronika nincs hozzá, ha jól számoltam, 26 pines szalagkábele van. Valahogy meg lehetne ezt hajtani?
-
vargalex
félisten
válasz
Wolfram #20929 üzenetére
Az időjárás állomások jellemzően rádióhullámon (pl. RF433) küldik az adatot és biztosan nem ESP8266 alapúak. Több cikket is találsz, hogyan lehet csökkenteni a fogyasztást.
Napelemes rásegítés nálam nem játszik, mert beltéri hőmérők a lakás helyiségeiben, fűtés vezérléshez.
-
vargalex
félisten
válasz
Wolfram #20923 üzenetére
Nekem 1 db 18650-es cellával vannak csupasz ESP12F moduljaim breakout board-ra forrasztva egy DS18B20 társaságában). Percenként ébrednek wifi nélkül, mérik a hőmérsékletet, a cella feszültségét, lementik a mért adatokat RTC memóriába. 10 percenként wifi-vel ébrednek, a mérést elvégzik és a wifi-hez csatlakozás után JSON-ban POST-olják a szerverre az addigi méréseket. Ha ez sikertelen, akkor a következő méréskor próbálja küldeni. Persze van benne méret ellenőrzés is, ha sokáig nem sikerül küldeni, akkor dobja a régebbi méréseket.
Így az 1 db celláról (notebook akkuból bontott) elmennek kb. 3 hónapot. -
vargalex
félisten
válasz
JozsBiker #20841 üzenetére
Szia!
Én valami ilyet csináltam anno:
#include <limits.h>
...
unsigned long startTime = millis();
unsigned long elapsedTime;
...
unsigned long currTime = millis();
if (startTime < currTime) {
elapsedTime = currTime - startTime;
}
else {
elapsedTime = ULONG_MAX - startTime + currTime;
}
-
-
vargalex
félisten
Igen, ez meg is van, de mégsem megy. Na, majd még próbálkozom és a kolléga linkjét is megnézem...
Szerk.:
#20834 ViZion: Hirtelen ránéztem, elvileg ESP-01, mert van blue és red led is... Viszont a linken nem látom, hogy az USB to ESP-01-en bármit is kellene kötni... Az rendben van, hogy a sima USB-TTL-nél igen. Korábban flash-eltem már magamnak csupasz ESP12F modult egyébként.
-
vargalex
félisten
Sziasztok!
Valaki találkozott már olyannal, hogy ESP-01-et nem tud flash-elni? Egy ismerős hozott 2 példányt egy USB to ESP01 adapter társaságában, hogy nem sikerül neki flash-elni. És valóban, nekem sem megy, próbáltam PL2303 USB-TTL konverterrel is. Holnap még megnézem egy CH340-el is.
-
vargalex
félisten
válasz
JozsBiker #20777 üzenetére
Rengeteg routernél is (pl. D-Link DIR-825, Asus RT-AC65P, stb.) is ilyet alkalmaznak, ahogy notebookok esetén is a wifi antennákhoz. Igaz, valóban kicsit véknyabb a vezeték, de más a frekvencia.
-
vargalex
félisten
válasz
JozsBiker #20772 üzenetére
Csak rá kell pattintani. Az egy U.FL csatlakozó.
-
vargalex
félisten
Szia!
Ugyan én nem nagyon szoktam használni a String osztályt, de most az egyszerűség kedvéért (kipróbálni ugyan nem tudtam, de szerintem működnie kell):
#include <SPI.h>
#include <LoRa.h>
unsigned int state;
//LoRa32u4 ports
#define SS 8
#define RST 4
#define DI0 7
#define BAND 433E6
void setup() {
Serial.begin(115200);
pinMode(13, OUTPUT); // fehér led sets the pin as output for relay
digitalWrite(13,HIGH);
//while (!Serial); //if just the the basic function, must connect to a computer
delay(1000);
SPI.begin();
LoRa.setPins(SS,RST,DI0);
Serial.println("LoRa Receiver");
if (!LoRa.begin(433E6)) {
Serial.println("Starting LoRa failed!");
while (1);
}
Serial.println("LoRa Initial OK!");
}
/*----( LOOP: RUNS CONSTANTLY )----*/
void loop() {
digitalWrite(13,LOW); // try to parse packet
int packetSize = LoRa.parsePacket();
String message = ""
if (packetSize) { // received a packet
while (LoRa.available()) {
message += (char)LoRa.read();
}
Serial.print("Received packet :");
Serial.print(message);
// print RSSI of packet
Serial.print("' with RSSI ");
Serial.println(LoRa.packetRssi());
Serial.print("Status: ");
Serial.println(message.charAt(0));
}
}A korrekt megoldás valóban inkább az lenne, hogy saját struktúrát definiálni és annak a címét beállítani a beolvasott tömb címére (persze ekkor fix méretekkel kell dolgozni).
-
vargalex
félisten
válasz
Janos250 #20425 üzenetére
A kolléga által írt "sufni tuning" megoldás után én is éppen azt kerestem a lib-ben, hogy csak megcsinálták, hogy lekérdezhető legyen a beep parancs futásának állapota. Erre nem... Ezért nem is írtam másik megoldási javaslatot.
Persze lehetne azt, hogy kiszámoljuk, hogy az adott paraméterezéssel meddig tart a csipogás és az if-ben vizsgáljuk, hogy az eltelt-e már (ekkor nyilván érdemes a 3 ág indulási idejét 3 különböző változóban tárolni, mert nyiván egyik állapotról a másikra akár azonnal át akarhatunk váltani). Persze, ez csak hozzávetőleges idő lesz. -
-
vargalex
félisten
-
vargalex
félisten
válasz
lanszelot #20418 üzenetére
Csak belenéztem a lib-be, így egyáltalán nem biztos, amit írok. De azt látom, hogy a beep metódus csak belső változókat állít be és az osztály példány majd azzal dolgozik. Ez azt is jelenti, hogy a te kódod azonnal fut tovább (illetve lesz a 250 ms delay) és újra elkezdődik a loop, megint bemegy az if-be és újra inicializálja a beep-el a csipogást. Ezért hallod folyamatosan ugyan azt (szerintem).
-
-
vargalex
félisten
válasz
lanszelot #20383 üzenetére
Szia!
A kolléga által bemásolt kódrészletben egyértelműen ott van megjegyzésként a value-nál:
deprecated,moved to decodedIRData.decodedRawData ///< Decoded value / command [max 32-bits]
Nyilván fejlődött, módosult közben a példához képest a lib. Ezt neked kell lekövetned, vagy aktuális példát kell keresni. A fenti struct-ból látszik, hogy neked nem a
decode_results
-ra van szükséged, hiszen szinte minden deprecated. Ahogy láthatod, átkerültek adecodedIRData
-ba.
De egyébként a readme-ban minden le van írva. Érdemes szétnézni az példák között esetleg.. -
vargalex
félisten
-
vargalex
félisten
válasz
its_grandpa #20163 üzenetére
Nem lehet tudni, hogy mi van a ....-ban.
Egyébként szerintem ebben a formában kettő. Tehettél volna a
for
-ba egy deklarációt, akkor legalább 3 lenne... -
vargalex
félisten
válasz
its_grandpa #20153 üzenetére
Én sem használok goto-t, pont ezért rendesen meglepődtem, mikor a legutóbbi melónál kernel patch-et kellett backportolni (OpenWrt alá) és bőven van goto a mainline kernel kódjában...
-
vargalex
félisten
válasz
its_grandpa #20088 üzenetére
Én ezt egy projektben így kezeltem:
unsigned long ElapsedTime = millis() - StartTime;
if (ElapsedTime > StartTime) {
ElapsedTime = ULONG_MAX - StartTime + millis();
...
}
-
vargalex
félisten
válasz
KoVee84 #19938 üzenetére
Mire iratod ki az adatokat? Ha nem e-ink kijelzőre, akkor ugye a kijelzés is harap erősen az akkuból.
Egyébként, ha e-ink, akkor ahogy a kolléga mondja, deep sleep-be kell küldeni az ESP32-t (én ESP8266-al csináltam percenként ébredő hőmérőket, amik 10 percenként wifi-re is csatlakoznak és post-olják az addig mért adatokat, azok egy 18650-es cellával 3-4 hónapig elvannak) és időzítve ébreszteni.Szerk.: mondjuk a developer board-ok nem biztos, hogy ideálisak a feladatra, mivel ha az ESP-t deep sleep-be is küldöd, attól a körítés, ami a lapon van, fogja enni az akkut. És nem biztos, hogy maga az ESP a legnagyobb fogyasztó. Én csupasz ESP12E-kett használtam a projektemhez.
-
vargalex
félisten
válasz
Tomika86 #19898 üzenetére
Eddig is tiszta volt, hogy mit szeretnél!
Csak a redirect-et - ahogy írtam - a javascript-ből indított ajax hívás nem kezeli le. Ha a böngészőben megnézed Developer módban a Network fület, akkor látni fogod, hogy megkapja a HTTP 302-t (legalábbis a forrás szerint 302 megy vissza), de a böngésző nem kezd vele semmit... Ezt neked kell a javascript kódodban kezelni, ahogy a http 200-at is teszed.
Legalábbis emlékeim szerint nem kezd a redirect-el semmit a böngésző, de amint időm engedi, tesztelem. De a Developer mód Network füle sokat tud segíteni... -
vargalex
félisten
válasz
Tomika86 #19896 üzenetére
ESP oldalról válaszolod az átirányítást (ezt látnod is kell a böngészőben developer módban a network fülön, ahogy minden más választ is), de azt ajax hívás esetén a böngésző nem követi, azaz neked kell a javascript-ben a location-t beállítani. Ennek a résznek nincs köze az esp-hez, tisztán böngésző/javascript működés.
-
vargalex
félisten
válasz
Tomika86 #19892 üzenetére
Nem teljesen értem, mert az átirányítás nincs kezelve az ajax hívásodban. Miért irányítana bárhová a böngésző?
Milyen kiíratott üzenetre gondolsz, hogy nem jelenik meg? A javascript-ből csak az alert megy, semmilyen visszatérő értékkel nem foglalkozol ott... Tehát a jelenlegi kódoddal az alerten kívül más nem is kell, hogy megjelenjen a böngészőben. -
vargalex
félisten
válasz
Tomika86 #19889 üzenetére
Szia!
A
valcheck
és asendInfo
függvényben is független, önállóXMLHttpRequest
objektumot hozol létre. Így asendInfo
-ban elküldött adat nem fogja szerintem kiváltani avalcheck
-ben definiáltXMLHttpRequest onreadystatechange
eseményét. És ugye a sorrend is rossz, előbb kell azonreadystatechange
definiálás, utána a küldés..
Illetve a /size feldolgozásnál a check statustrue
esetén (bár én éppen megcserélném a true-false értékeket, mert így az elnevezéshez képest fordítva működik, azaz igaz esetén hibás, hamis esetén OK) nem http 200-at kellene visszaadni, ha azt szeretnéd, hogy a javascriptonreadystatechange
else ága fusson le.Szóval, szerintem valahogy így kellene (csak részleteket írok):
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if(xhttp.readyState == 4 && xhttp.status == 200) {
alert('Ok status');
}
else {
alert('Invalid status');
}
};
sendInfo(xhttp, file.size);
...
function sendInfo(xmlHttp, size) {
xmlHttp.open("post", "/size");
xmlHttp.send(size);
}
...
if (check_status)
{
request->send(400, "text/plain", "FAIL CONNECTION");
Serial.println("Check status Fail");
}
else {
Serial.println("Check status Ok");
request->send(200);
}
-
vargalex
félisten
válasz
bagarol #19797 üzenetére
Erre írtam, hogy
false
-t kellene visszaadnia, ha nem volt fogadott adat. Erre válaszoltad, hogy azt is ad. Tehát mégsem azt ad... Az is biztos, hogy nem 0-t, mert akkor azelse
ág futna (ami nincs). -
vargalex
félisten
válasz
bagarol #19795 üzenetére
Ezt így nem értem. Ha az
irrecv.decode false
-t ad, amikor nincs bejövő adat, akkor az eredeti kód szerint nem atrue
ág fut, azaz nincscase
, tehát nincs, ami kikapcsolja a ledet. Vagy nem erre gondoltál? -
vargalex
félisten
válasz
gordonfreemN #19786 üzenetére
A soros log alapján Ayres kolléga megoldása jó kell, hogy legyen. A case -1 ágába a break-on kívül más nem kell. Viszont azt gyanítom, hogy kellene valami timeout is, mert amíg nyomod, addig jön a -1, de ha elengeded, akkor nem fog jönni semmi és nem is fut be a default ágba. Vagy, ha nem nyomsz gombot, akkor az irrecv.decode-ban áll?
-
vargalex
félisten
válasz
gordonfreemN #19786 üzenetére
A break lényege, hogy utána más ág (így a default sem) hajtódik végre. Vagy nem értem, amit írsz...
-
vargalex
félisten
Ezért kérdeztem a kollégától, hogy ez a teljes kód-e. Mert ugye a bemásolt kód csak a másik gomb megnyomásakor kapcsolná le a ledet, addig folyamatosan világítania kellene.
A telefon kamárájához megjegyzés: telefon kérdése is, mert pl. iPhone-ok esetén (talán már a 6-os, vagy 7-es óta) a kamerán van IR szűrő, ott nem látszik a villogás...
-
vargalex
félisten
válasz
gordonfreemN #19760 üzenetére
A soros monitoron ilyenkor mit látsz? Valami csak lekapcsolja azt a ledet, ha csak felvillan... Ennyi a teljes kód, vagy csak kiemelted a lényeget?
-
vargalex
félisten
Én úgy értettem a kollégát, hogy a starter kit már megvan...
De, hogy valami értelmeset is írjak:
A topikon is volt kolléga, aki készített videós tanfolyamot.
Illetve nem tudom, mennyire jó, de a TavIR-nek is van egy 60 napos ingyenes tanfolyama. Minden nap küldenek egy e-mail-t egy-egye témával. -
vargalex
félisten
válasz
its_grandpa #19695 üzenetére
Ott a beillesztett képen az Egyéni lehetőség... Oda azt adsz meg, amit akarsz, nincs megkötés az értékére.
Az nf_conntrack_max nem a kliensek, hanem az egyidejű kapcsolatok maximális számát határozza meg. Ha pl. torrentezel (bármelyik kliensen), akkor egyetlen kliens elvihet több 100, vagy több 1000 kapcsolatot is. Nálam ez fel van húzva:root@AX3200:~# cat /etc/sysctl.d/30-nf-conntrack-max.conf
net.netfilter.nf_conntrack_max=65535
Memóriával nincs gond, ehhez bőven elég a 256 MB:
259 kapcsolattal:
root@AX3200:~# cat /proc/net/nf_conntrack | wc -l
259
root@AX3200:~# free
total used free shared buff/cache available
Mem: 233328 44108 160416 452 28804 150040
Swap: 0 0 0
1227 kapcsolattal:
root@AX3200:~# cat /proc/net/nf_conntrack | wc -l
1227
root@AX3200:~# free
total used free shared buff/cache available
Mem: 233328 44584 159952 452 28792 149568
Swap: 0 0 0
#19690 Aryes: A .0 végű nem egy valós IP cím (azaz az általad említett 192.168.2.0), mivel 1-254-ig mehet. A 255 pedig a broadcast IP egy 255.255.255.0 (vagy másként /24-es) hálózat esetén, azaz ott az sem valós IP. Ezért írtam, hogy 192.168.2.2-192.168.2.254-ig bármit adhatsz (a 192.168.2.1 a router, azt azért nem).
-
vargalex
félisten
Az ESP eszközeid nem akkor kapják a 192.168.4.1-et, ha ők AP-ként és DHCP szerverként működnek és te rájuk csatlakozol, így kapsz tőlük egy IP-t a 192.168.4.1/24-ből?
Elvileg működhet a netmask átírás, de egyébként nem egyszerűbb a PC-den 192.168.2.0/24-ből beállítani egy statikus IP-t, közvetlenül csatlakozni vezetékkel az N14U-ra és átállítani a LAN IP-jét egy saját hálózatodban lévőre (nem használtra)? Gondolom repeater módban kikapcsolja a DHCP szervert... Majd visszarakhatod a PC-det DHCP-re.
Ezért szeretem az OpenWrt-t. Ott ilyen esetben én a második router LAN interface-jának azt mondom, hogy DHCP-n kérjen magának IP-t (és gateway-t, DNS-t). Nem kell kézzel beállítani semmit, látszik az első router DHCP táblájában.
-
vargalex
félisten
válasz
Janos250 #19682 üzenetére
Ahogy láthatod, a két esetben teljesen más a broadcast IP és a prefix is (amiről én beszéltem):
root@AX3200:~# ipcalc.sh 192.168.50.1 255.255.50.0
IP=192.168.50.1
NETMASK=255.255.50.0
BROADCAST=192.168.255.255
NETWORK=192.168.50.0
PREFIX=19
root@AX3200:~# ipcalc.sh 192.168.50.1 255.255.255.0
IP=192.168.50.1
NETMASK=255.255.255.0
BROADCAST=192.168.50.255
NETWORK=192.168.50.0
PREFIX=24
Tehát az első esetben az első 19 bit egyezése esetén már olyan pl. a 192.168.32.1 cél IP esetén sem fog átmenni a forgalom a gateway-on (hiszen az első 19 bit egyezik), pedig az lehet akár egy másik háló a gateway mögött...
-
vargalex
félisten
válasz
its_grandpa #19678 üzenetére
Pedig normális routereken (vagy inkább firmware-okban) olyan alhálózati maszkot használhatsz, amit csak akarsz:
Miért kellene a 255-höz ragaszkodni? Ez csak egy általános megszokás... De használhatok én itthon 172.16.0.0/16, vagy 10.0.0.0/8-as hálót is. Semmi nem akadályoz meg benne. És ahogy egyszer több okos eszköz van, lassan kinövi az ember a 254 eszközt (routerrel együtt).
#19679 Janos250: A subnetben a 0 nem véd ki semmit, a kolléga által is említett 50-es tartomány esetén a 255.255.50.0 subnet != 255.255.255.0-val... Utóbbi esetben lesznek olyan IP-k amik eléréséhez az eszközöd nem szeretne a gataway-on keresztül menni.
-
vargalex
félisten
válasz
its_grandpa #19574 üzenetére
Azért ez az IP-re feloldás nem ilyen egyszerű. Pl. az általad említett domain mögött két IP is van:
[gavarga@gavarga-5500 ~]$ drill icast.connectmedia.hu
;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 15341
;; flags: qr rd ra ; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;; icast.connectmedia.hu. IN A
;; ANSWER SECTION:
icast.connectmedia.hu. 7 IN A 109.199.62.243
icast.connectmedia.hu. 7 IN A 109.199.61.243
;; AUTHORITY SECTION:
;; ADDITIONAL SECTION:
;; Query time: 12 msec
;; SERVER: 127.0.0.53
;; WHEN: Tue Mar 7 10:06:34 2023
;; MSG SIZE rcvd: 7
Ha az egyiket beégeted, de éppen nem megy, akkor nem tud fallback-olni a másodikra. Persze lehet, hogy éppen ilyen esetben nem megy a kollégának csak másodikra...
-
vargalex
félisten
válasz
lanszelot #19542 üzenetére
Én nem szoktam lib-eket csak úgy letölteni és bemásolni sehová. Egyszerűen Arduino IDE-ben az Eszközök->Könyvtárak kezelése alatt megkeresem a kérdéses lib-et (jelen esetben az U8glib-et, majd megnyomom a hozzá tartozó Telepítés gombot. Ezután a sketch-et bemásoltam az IDE-be, lementettem és azonnal hiba nélkül fordult.
Te hogyan csinálod ezt az egészet? -
vargalex
félisten
válasz
lanszelot #19504 üzenetére
Szia!
Esetleg, ha nem lenne bekapcsolva, akkor Arduino IDE-ban kapcsold be a Beállítások alatt a Bővebb kimenet mutatása eközben: feltöltés opciót (Preferences->Show verbose output during: upload).
Egyébként én még nem láttam bootloader nélküli nano-t. Csak olyat, amin még régi bootloader volt, ekkor az Arduino IDE-ben az Eszközök (Tools) menüben az Arduino Nano board kiválasztása után CPU-t is át kell állítani ATmega328P (Old Bootloader) típusra. -
vargalex
félisten
válasz
its_grandpa #19455 üzenetére
Igen, üres, mert
ESP_ERR_NVS_NOT_FOUND
errorral tér vissza. Ebben az esetben ugye nem változik aznvs_buf
tartalma, azaz aContetns
logolás teljesen normális, hogy az üres string-re (nvs_buf[0] = '\0';
miatt) inicializált értékkel tér vissza.
Szóval, én is megpróbálnám a flash törlést.#19453 its_grandpa: Teljesen normális az a log, hiszen ahogy Aryes által bemásolt kódban is látszik, az eredeti
key
hosszát és azNVSBUFSIZE
-ra (150) beállítottlen
-t adja vissza, mivel a fentiek szerint utóbbi nem módosul (nyilván akey
egyébként sem módosulna).
Új hozzászólás Aktív témák
Hirdetés
- Dell OptiPlex MT/SFF 3040, 3050, 7050, 3060, 3070, 5070, 7060 /WIN 11 - SZÁMLA- GARANCIA
- BESZÁMÍTÁS! GIGABYTE AORUS MASTER RTX 3070 8GB GDDR6 videokártya garanciával hibátlan működéssel
- REFURBISHED - HP USB-C Universal Dock G1 docking station (DisplayLink)
- BESZÁMÍTÁS! Asus H110M i5 7400 8GB DDR4 250GB SSD 1TB HDD GTX 1650 4GB ZALMAN S3 TG Chieftec 600W
- LG 65C4 - 65" OLED evo - 4K 144Hz - 0.1ms - NVIDIA G-Sync - FreeSync - HDMI 2.1 - 1000 Nits
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest