- 3D nyomtatás
- Milyen billentyűzetet vegyek?
- Milyen nyomtatót vegyek?
- Milyen monitort vegyek?
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Intel Core i3 / i5 / i7 / i9 10xxx "Comet Lake" és i3 / i5 / i7 / i9 11xxx "Rocket Lake" (LGA1200)
- Bambu Lab X1/X1C, P1P-P1S és A1 mini tulajok
- Nem indul és mi a baja a gépemnek topik
- Milyen TV-t vegyek?
- Fejhallgató erősítő és DAC topik
Hirdetés
-
Limitált ideig már kipróbálható a The Alters PC-s verziója
gp A 11 bit studios különleges túlélőjátéka konzolokra is megjelenik majd.
-
Kíváncsi az EU, milyen online védelmet adnak a pornóplatformok a kiskorúaknak
it Az EB felkereste a nagy pornóplatformokat, hogy megtudja, milyen intézkedéseket tettek.
-
Megérkezett Magyarországra a Samsung új OLED gaming monitora
ph Az Odyssey OLED G8 32 hüvelyes, sík OLED panellel dolgozik.
-
PROHARDVER!
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
-
válasz
vargalex #19687 üzenetére
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
De, tényleg, de hülye vagyok
egyébként nem egyszerűbb a PC-den 192.168.2.0/24-ből beállítani egy statikus IP-t
Az a baj, hogy ezt a mondatot nem értem.
a 192.168.2.0 után mi az a 24? De, valószínűleg ez lesz a megoldás, majd ha megértettem.
-
-
its_grandpa
tag
válasz
vargalex #19681 üzenetére
OK, de te nem e-világi eszközöket használsz mint általában mi
Ránéztem most az openwrt-s routeremre.
Nem lehet szabadon subnet-et állítani, 255.255.255.0 vagy 255.255.0.0 lehet.
Ránéztem a forrásra git-en - net.netfilter.nf_conntrack_max=16384 .Editálhatom a sysctl.conf-ot net.netfilter.nf_conntrack_max=25000-re de úgyse fogja bírni memóriával és nem is tudok beszerezni 25000 klienst.
Otthoni környezetben nem tartom igazi limitnek a 255 max klienst. -
vargalex
félisten
-
Blasius
tag
válasz
vargalex #19710 üzenetére
Na, tálalhatóbb formába hoztam a kódot. Íme:
const byte numChars = 128;
char receivedChars[numChars];
bool newData = false;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
Serial.println("<Johet>");
}
void loop() {
// put your main code here, to run repeatedly:
recvWithStartEndMarkers();
showNewData();
}
void showNewData() {
if (newData == true) {
Serial.print("new data came:");
Serial.println(receivedChars);
newData = false;
}
}
void recvWithStartEndMarkers() {
static boolean recvInProgress = false;
static byte ndx = 0;
static byte ndxmea = 0;
byte endKa = 0x0a;
byte startKa = 0x24;
byte starKa = 0x2a;
byte nmea = 0x00;
char rc;
char nmeaRd[2];
long nmeaRdL;
bool inhibi = false;
while (Serial.available() > 0 && newData == false) {
rc = Serial.read();
if (recvInProgress == true) {
if (rc != endKa) {//delay(2);//?????????????????????????????????????????????????????????????????
if (inhibi == true) {nmeaRd[ndxmea]=rc; ndxmea++;}
else if (rc == starKa) {inhibi = true;}
else if (inhibi == false){nmea ^=rc; receivedChars[ndx] = rc; ndx++;
//delay(1);//?????????????????????????????????????????????????????????????????
if (ndx >= numChars) {ndx = numChars - 1;}
}
}
if (rc==endKa) {
nmeaRd[2] = '\0';
char * pEnd;
nmeaRdL = strtol(nmeaRd, &pEnd, 16);
if (nmeaRdL==nmea){receivedChars[ndx] = '\0';} // terminate the string
else {memset(receivedChars, '0', 6); receivedChars[7] = '\0';}
recvInProgress = false;
ndx = 0;
ndxmea = 0;
newData = true;
nmea =0;
inhibi=false;
}
}
else if (rc == startKa) {recvInProgress = true;}
}
}
A második függvényben lévő késleltetések (...delay(x)/???...) nélkül a kód nem megy rendesen. Viszont, ahogy Aryes tippelte, a késleltetéssel jól megy. Ha késleltetések helyett sorosra írás lenne akkor is menne jól. Hát, kicsit tákolt, de megy. Gondolom erre mondják hogy nem egy robosztus kód
. De most már kíváncsi vagyok hogy mi lehet ennek a furcsa viselkedésnek az oka
.
(nmea ...^=rc... az egyfajta crc számítás. A startKa karakter utáni karakterekre kell számolni. Aztán a soroson jön egy * (starKa), egy byte két karakter hex ascii-ként (00-FF, ez a crc) majd egy 0x0a karakter (sorvég). Ha a számolt és fogadott crc egyezik, akkor kiírja sorosra ami jött ahogy van. Ha a crc nem stimmel akkor kinullázza az első pár karaktert.)
Ez egy rendes arduino unon fut (atmega chip).Ha ''a'' ram megy dualban ''b'' rammal, és ''c'' ram megy dualban ''b'' rammal, akkor ''a'' ram megy dualban ''c'' rammal?
-
sonar
addikt
válasz
vargalex #19737 üzenetére
A gyors olvasást még gyakorolni kell
Ezt a tavir-osat még nem is láttam. Csak a könyvet ismertem - Arduino programozás néven futott talán. Viszont most nem találom. (lehet, hogy a céges háló hátránya)
A tudást mástól kapjuk, a siker a mi tehetségünk - Remember: Your life – Your choices!
-
Tomika86
senior tag
válasz
vargalex #19890 üzenetére
Átalakítottam, így az ESP32 400-as kódot küld, ha true a check_status és nem jelenik meg az upload gomb.
De a fő probléma az hogy nem jelenik meg az oldalon a kiíratott üzenet sem:
if (check_status)
{
request->send(400, "text/plain", "FAIL CONNECTION");
// request->redirect("/nextion_fail");
Serial.println("Check status Fail");
}
else {
Serial.println("Check status Ok");
request->send(200);
}itt a redirect ki van kommentelve, de azzal sem jelenik meg, pedig a redirect még működik, de az ott lévő request->send(400, "text/html", fail_page); nem működik.
Tehát a fő probléma, hogy az átirányított oldal nem töltődik be, illetve még a sima text sem (nem a scriptben lévő alert)
Köszönöm!
-
Tomika86
senior tag
válasz
vargalex #19893 üzenetére
Az esp32 kódjában lenne az átirányítás (nem a javascriptben)
Ahol a send(400, "text/plain", "FAIL CONNECTION")(sima szöveg küldés böngészőre)
de próbáltam ezzel is
request->redirect("/nextion_fail");
És ehhez megvan a hozzátartozó http_get kérés, ahol a html kódot küldöm el.
Ez a nextion.cpp az other mappábanDe akkor valamit félreértek, illetve teljesen máshogy kell csinálni.
Az ajax kód jó így.
Az esp32nél a post kódnál ahol ellenőrzöm a check_status értékét, ott egy hibaközlő html oldalt szeretnék megjeleníteni.Köszönöm
[ Szerkesztve ]
-
Tomika86
senior tag
válasz
vargalex #19899 üzenetére
Bocsánat, úgy gondoltam hogy a redirectel megmondom hova lépjen és amit a get kérésnél megadtam azt betölti, mint ahogyan az index oldalt is. És az ajax kódban nincs teendő.
Böngészőben néztem debugot ott jön a post esemény útána a 302 átirányítás, utána pedig a kiiratás kódja.
Köszönöm
-
KoVee84
senior tag
válasz
vargalex #19940 üzenetére
E-ink kijelzőt használok és úgy, hogy csak hetente 1x frissül, addig a kijelző ki van kapcsolva. De délután berakom a kódot.
-
ViZion
félisten
válasz
vargalex #20158 üzenetére
Nem C, de máshol sem találtam goto-t, gosub-ot, miért?
Mi a baj vele?
Mondjuk anno még ezt tanultam, de nem tudom, h mi van helyette, szerencsére meg tudtam kerülni.[ Szerkesztve ]
Hold on, trying to give a fuck... Nope, not Happening • Powered by Fedora Linux • "Az élet olyan sz@r, szerencsére a felén már túl vagyok" Al Bundy
-
-
Tomika86
senior tag
válasz
vargalex #20205 üzenetére
Szia!
Te nagyon kened vágod a témát, tudsz esetleg segíteni abban, hogy websocket segítségével, miért nem tudok 100ms alatti intervallummal adatot küldeni?
jelenleg van egy programom amit megcsináltam offline elérhetővé, illetve összerakosgattam a javascript kódot is.
Jelenleg 110ms-al próbálkozok (ezzel jó is), a szinusz és koszinusz csak teszt.
Jobb lenne ha 100ms alá tudnék menni, viszont ilyenkor megbolondul az ESP32, heap error, lefagy az adatátvitel, újraindulgat.Az a helyzet, hogy szeretnék kb 5 grafikont, és jelenleg még csak 2 van (de így se elég gyors).
[link]
src mappában a fájlokKöszönöm, ha bármiben tudsz segíteni, ötletet mondani. Illetve tuti találsz benne hülyeséget is, amit én nem tudok még.
-
lanszelot
addikt
válasz
vargalex #20387 üzenetére
Nagyon szépen köszönöm a segítséget mindenkinek
Olvasgattam, de még nekem az nagyon bonyolult.
Nagyon kezdő vagyok, és ott túl sok minden van, és belekavarodok. Nem tudom mi az amire nekem szükségem van
A library példái egyik se jó nekem.
Talaltam más példát is hozzá, az jó lenne, de krixkraxokat olvas be nekem. Nekik nem, csak nekem. Nem tudom miért, így feladtam.
Csak tanulgatom, így valami könnyebbet nézek
Vettem 37 érzékelő modult és csak kikaptam ezt a 2 érzékelőt.
De van még 35 másik.
Ez az infra se nehéz, ha saját távvezérlőt akarok, pl lámpát kapcsolgatni. /relé is van a 37 ben/
A lemásolás nehéz nekem. -
lanszelot
addikt
válasz
vargalex #20415 üzenetére
Az első ággal van gond.
Amúgy nem annyiban különbözik
Default: 25, 25, 1, 1, 1
Ez ugye a 2ik ág
A 3ik ág: 35,1,1,1,1.
Mivel a silent 1, azaz nincs, így folyamatos beeeeeep -et kapok, hiába van ott a 250 -es delay, mert 350 be bele megy a 250 és nem lesz delay.Míg 150+250+250 ezért lesz a 2ik ágban szünet.
Aza beep, szünet, beep, szünet....stbAz első ág az:
150+1500, mivel ott van repeat, de nincs 1500,
150+250 van, repeat sincs.
Pedig ott van
Az első kódsor ugyanaz, és jól működik. Míg a másodikban varázslatos módon ugyanaz a kód nem működik.
Állíthatom a silent-et 4millióra is nem lesz silent.
De miért nincs silent? Mi írja felül 1-re?
/Ha nulla az érték az végtelent jelent, kipróbáltam. 1 jelenti a nincs-et/ -
lanszelot
addikt
válasz
vargalex #20417 üzenetére
Rosszul emlékeztem.
De 200 is kevesebb mint 250 így lesz benne szünet.
És van is.De még mindig nem a 2ik és 3ik ággal van gond.
Hanem az elsővel.
Csak az első ág nem működik jól.
A többi jó.
Az első ágban nem fut le a szünet. Állíthatom bármekkorára.
Vagy nem jut el oda a futtatás, vagy felül írja valami.
Felül írja, én arra szavazok. Mert a "nem fut le" annak semmi értelme, ha a másikban gond nélkül lefut.
Tehát mi írja felül az if első ágában az 1500ms szünetet, vagy akár az egész ágat.
Az az ág fut le, az biztos. Másik ág nem fut le egyidőben.
A kiiratás teszt megmutatta.
De mégis felül írja vmi. De mi? -
válasz
vargalex #20445 üzenetére
Hát akkor próbáld ki telefonon.
Főleg amikor utólag szeretnél javítani/módosítani valami formázást/linket stb.
De a legrosszabb valóban a kód formázás, mert nem képes egyben formázni, szétszedi sorokra a kódot.Ezt a szerkesztős dolgot be lehetne tenni az összefoglalóba, mostanában annyian kérdezték már.
-
olli
tag
válasz
vargalex #20460 üzenetére
"Received packet :1 HELLO 36.75 22.50 32342' with RSSI -82"
Jelenleg így íratom ki a csomagot, de csak az első karakterét, a state értékét is külön kellene megkapnom.
Szerinted hogyan nézzen ki a kód?#include <SPI.h>
#include <LoRa.h>
unsigned int state;
//LoRa32u4 ports
#define SS 8
#define RST 4
#define DI0 7
#define BAND 433E6void
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();
if (packetSize) { // received a packet
Serial.print("Received packet :"); // read packet
while (LoRa.available()) {
Serial.print((char)LoRa.read()); }
// print RSSI of packet
Serial.print("' with RSSI ");
Serial.println(LoRa.packetRssi());}}
[ Szerkesztve ]
By cool !
-
olli
tag
válasz
vargalex #20469 üzenetére
Kiíratás:
Received packet :1 HELLO 36.50 34.00 38369' with RSSI -99 Status: 1 BOILER
vagyis így már egy csomagból működik a pin 13 vezérlése is.
Korábban rákérdeztem az ESP-NOW vonalra a két esp közötti kommunikáció egyik protokolra. A jelen megoldás és az között stabilitás és kidolgozottság lenne csak a különbség?By cool !
-
ViZion
félisten
válasz
vargalex #20778 üzenetére
+1 a Huawei 4G routereken is ilyen van belül. Érdekes, h a belső wifi antenna ezzel csatlakozik (biztos van oka, h nem a panelon vezetik). De nem baj, így ki tudtam vezetni, mostmár külső antenna...
Hold on, trying to give a fuck... Nope, not Happening • Powered by Fedora Linux • "Az élet olyan sz@r, szerencsére a felén már túl vagyok" Al Bundy
-
válasz
vargalex #20832 üzenetére
Szia! Ha fizikailag nem sérült az eszköz, akkor az lehet, hogy nincs boot módba állítva! Ehhez a GPIO0, GPIO2 és a GPIO15 pineknek megfelelő állapotban kell lenni: a GPIO0 és GPIO2 lábakat magasra, a GPIO15-t alacsonyra kell húzni.
A rosszabbik eset, ha a Vcc-re 3,3V helyett véletlenül 5V-ot kötött valaki korábban, mert akkor a flash chip esetleg megsülhetett.[ Szerkesztve ]
-
ViZion
félisten
válasz
vargalex #20832 üzenetére
A flashelő bigyón is össze kell kötni lábakat, nem mindegy h ESP-01 vagy ESP-01s a kütyü.
Hold on, trying to give a fuck... Nope, not Happening • Powered by Fedora Linux • "Az élet olyan sz@r, szerencsére a felén már túl vagyok" Al Bundy
-
Gergosz2
veterán
válasz
vargalex #20842 üzenetére
Ez jó megoldás , de igazából felesleges mert az unsigned integerek nem tudnak túlcsordulni, hanem szimplán a max értékük modulojával mennek tovább.
Arra érdemes csak figyelni hogy merre számol a millis(), ami Arduino estén felfelé megy.
Nokia 6030 Hardcore User // I Panic Restaurant by Taito
-
válasz
vargalex #20845 üzenetére
Szerintem arra gondol, hogy unsigned int esetében a különbség ugyanannyi lesz, ha kisebb számból kivonod a nagyobbat. Például
uint8_t
esetében 255 - 253 ugyanannyi, mint 1 - 255. A gyakorlatban akkor van csak probléma, ha többször is átfordul amillis()
értéke két mérés közt, illetve ha egy feltétel ahhoz van kötve, hogy amillis()
nagyobb-e, mint egy előre meghatározott érték. Bár utóbbi lehet, hogy a fenti okból kifolyólag nem is probléma.[ Szerkesztve ]
Új hozzászólás Aktív témák
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Bugok, problémák a PROHARDVER lapcsaládon
- BMW topik
- 3D nyomtatás
- Forza sorozat (Horizon/Motorsport)
- Milyen billentyűzetet vegyek?
- Elektromos autók - motorok
- A fociról könnyedén, egy baráti társaságban
- Hatalmas külső kijelzővel és akkumulátorral érkezett meg a Honor Magic V Flip
- E-roller topik
- További aktív témák...
- ASUS TUF Gaming A15 FA507XU- LP4050W Gray ELADÓ!!!!!! (GARANCIÁLIS 36-HÓNAP)
- Újszerű Spigen Liquid Air Folio Tok, iPad Pro 12.9, Fekete
- Huion Kamvas Digitalizáló Tábla / Rajztábla / Külső Monitor okos tollal /// ÚJ // Számla + Garancia
- ESR 360 Mágneses Tok és Billentyűzet Ipad Pro /// Air // Bontatlan // Számla + Garancia
- Synology DS223 (2GB) /// Teljesen Új // Számlával és 2 év Garanciával