Sari la conținut
ELFORUM - Forumul electronistilor

XAN77

Membru cunoscut
  • Număr conținut

    2.707
  • Înregistrat

  • Ultima Vizită

Profile Fields

  • Locatie
    CT

Vizitatori Recenți Profil

2.459 citiri profil

XAN77's Achievements

Grand Master

Grand Master (14/14)

  • Dedicated
  • Reacting Well
  • Conversation Starter
  • First Post
  • Collaborator

Recent Badges

  1. Mă lămurește cineva care e diferența între cele două? Din câte am înțeles Tuya Smart e pe wifi și poate controla direct dispozitivele compatibile, eu am un aspirator robot și un întrerupător de perete. Iar Tuya Zigbee ar fi ceva similar dar necesită un hub, un getway, o drăcie pe post de server!? Care e avantajul folosirii sistemului cu Zigbee? Inițial am vrut să deschid topicul cu numele Tuya smart vs Smart life, crezând că smart life este aplicația android pentru tuya zigbee. Căutând un pic pe google înainte să deschid topicul am văzut că nu-i chiar așa, e doar o aplicație mai complexă decât Tuya smart, ce suportă și IFTTT. Am instalat-o acum și am adăugat în ea întrerupătorul meu, e unul cu 2 comenzi. Apoi am văzut că pot adăuga și un remote pentru întrerupător, am dat să adaug și am apăsat butoane pe o telecomandă RF a unui fost întrerupător ce s-a defectat, spre surprinderea mea a recunoscut și înregistrat telecomanda, acum am telecomandă al acel întrerupător, asta chiar m-a dat pe spate că. aia din câte știu e o telecomandă RF. scurt istoric cu acel ntrerupător: am avut în toată casa niște întrerupătoare Sesso ceva china de pe emag, unele cu telecomanzi (niște telecomenzi banale albe cu 4 butoane) altele fără. La un moment dat cel din dormitor s-a bulit și am luat un Livolo de pe emag care are o telecomandă mai atrăgătoare cu o protecție pe șină peste butoane etc, care are un PIC în ea, dar care după 2 ani a luat-o razna și am aflat pe google că așa face toate. Apoi, pentru că chiar în dormitor e cea mai mare nevoie am luat unul de pe alliexpres fără telecomandă, dar cu wifi, un tuya smart și pentru că tot foloseam aplicația cu aspiratorul am pus și întrerupătorul, doar că era mai nepractic când trebuia să sting/aprind lumina dar na, decât să mă dau jos din pat... Acum am rămas uimit că am putut folosi telecomanda cea veche albă a întrerupătorului Sesso, primul care l-am avut și care s-a bulit.
  2. eu am un Vortex de 9000 într-un dormitor de 16mp. Curentul nu e o problemă și nici zgomotul pentru că doar la început îl țin mai tare dacă are de ridicat prea multe grade, apoi îl țin pe prima treaptă, minim posibil. Dar eu folosesc AC-ul pe încălzit doar toamna/primăvara când nu am chef să fac focul în centrală și nu stau cu aeru pornit toată noaptea. Închid ușa la dormitor (ceea ce e un dezavantaj) și pornesc aeru câteva ore nu foarte mult și se menține ok. Nu știu cum ar fi dacă m-aș încălzi cu aeru toată iarna. La ce pene de curent am avut anu trecut în noiembrie, nici nu aș îndrăzni. Mă rog, la țară e mai complicat.
  3. mi se pare o prostie sistemul ăsta, eu m-am consolat cu gândul că s-a scumpit marfa cu 50 de bani și aia e, nu am depus niciun pet la aparatele alea aflate doar la supermarketuri. Numai la coadă la predat peturi nu stăteam.
  4. la cum i-ai răspuns nu m-ar mira dacă nu va mai ”călca” pe aici
  5. eu sper după alegeri să rămână aceeași guvernare, nu că ar fi minunată ci pentru că nu văd alternativă.
  6. Între timp am renunțat la HA, mi s-a părut prea complicat. Am rămas la ce foloseam înainte, anume Nodered și broker MQTT pe un raspberry pi zero 2 W. Am instalat pe modulele cu ESP firmware Tasmota, pe cât posibil, că nu am putut pune la toate că are și Tasmota ăla limitele lui. Dashboardul din Nodered îmi e suficient pentru ce folosesc eu acum.
  7. XAN77

    Despre solarii

    aoleo acum am văzut ce am scris a naiba tastatura asta de la telefon, de la evoluție la ovulație...
  8. XAN77

    Despre solarii

    nu fac mișto, nu știu cum de a reieșit asta, sunt intersat să pună colegul poze pe parcursul desfășurăii proiectului. Sunt și eu interesat de un solar într-un oarecare viitor apropiat. E singura variantă în care aș mai pune ceva în grădină că am abandonat de ceva ani.
  9. XAN77

    Despre solarii

    Ma interesează ovulația
  10. Vă salut și vă mulțumesc. Da merge codul generat pe siteul respectiv. Am bâjbâit un pic până am pus componentele codului unde trebuie, unele declarări de variabile sau constante la început în afara funcțiilor ca să fie globale să le pot accesa în loop(). În setup() nu am mai pus nimic, majoritatea liniilor de cod le am în funcția callback. Am modificat acum unu din ceasurile mele și afișez una din temperaturile a 3 senzori în paralel, extrăgând doar obiectul respectiv, în cazul meu cu: JsonObject ds18b20 = doc["DS18B20-1"];
  11. Am încercat dar nu mam descurcat. Am băgat versiunea 7, apoi un 5.13.5 parca, cum văzusem un toturial pe randomnerdtutorial. Dar nu mia ieșit.
  12. Vă salut, Am o nouă mică dilemă. M-am apucat să reconfigurez jucăriile din casă ce trimit date la un broker mqtt, în general esp01/nodemcu cu senzori, punând pe toate firmware Tasmota, întrucât mi s-a părut mie interesant că pentru modificări ulterioare nu necesită reprogramare ci doar configurare, plus că se poate integra în Homeassistant sau alte aplicații. Pe de altă parte am și module ce au cod făcut în ArduinoIDE pe care nu pot pune Tasmota pentru că au display cu afișare ”complexă”, afișează date din mai multe topicuri mqtt, succesiv și în diverse stiluri, ceea ce nu am găsit cum pot face cu Tasmota. Acestea sunt de regulă ceasurile din camere, ce au display matriceal 8x32 puncte cu MAX7219. M-am lovit astfel de problema necesității de a extrage valorile trimise de senzori din mesajele ce le trimite Tasmota, care sunt mai stufoase decât trimiteam eu cu cod diy. Mesajele respectă stilul JSON, adică reprezintă obiecte (din câte am înțeles). Cel din camera mică unde am un esp01 cu un singur senzor 18b20 trimite mesajul: {"Time":"2024-02-21T19:03:02","DS18B20":{"Id":"0417315443FF","Temperature":24.4},"TempUnit":"C"} Și ăsta e unul simplu, alte mesaje sunt mai stufoase dacă sunt mai mulți senzori, dacă au și umiditate etc. Momentan extrag temperatura folosind poziția caracterelor din șir, în exemplul de mai sus primu caracter e la poziia 75. Dar e penibilă soluția pentru că dacă am mai multe temperaturi în mesaj, poziția acestora se poate schimba dacă unu din ele capătă valori din mai multe sau mai puține caractere. Momentan e ok că nu o să am în cameră sub 10 sau peste 99 grade, dar nu e elegant. Aș vrea să folosesc JSON și să extrag exact obiectele, adică valoarea "Temperature" pentru senzorul "DS18B20", indiferent câte caractere are, dacă are - în față sau nu etc. Dar nu am reușit să înțeleg perfect cum se lucrează cu JSON și nu am reușit să scriu cod pentru a face asta. Dacă are cineva un exemplu sau, și mai bine, timp ca să editeze codul meu de mai jos, dau o bere virtuală Am încercat să chelesc un cod de alte bălării, să fie cât mai simplu. nodemcu cu display cu 4 matrici chinezesc, ce dă subscribe la topicul ce l-am luat cu copy din consola Tasmota, extrag din șir valorile temperaturii și o afișez cu scroll, defilare de la dreapta la stânga cu funcția display_message. Scuze de postarea lungă. Nu am grabă în a rezolva speța. E util însă pe viitor să pot folosi JSON. #include <ESP8266WiFi.h> #include <PubSubClient.h> #include <SPI.h> #include <Adafruit_GFX.h> #include <Max72xxPanel.h> const char* ssid = "..."; const char* password = "..."; const char* mqtt_server = "..."; WiFiClient espClient; PubSubClient client(espClient); long lastMsg = 0; char msg[50]; int value = 0; int ore, minute, secunde; int wait = 70; // In milliseconds int spacer = 1; int width = 5 + spacer; // The font width is 5 pixels int m; int ti, ti_c, ti_cr; // folosite la afisarea temp si umid pe displayul local LED int hi; int pinCS = D4; int numberOfHorizontalDisplays = 6; int numberOfVerticalDisplays = 1; char tasmota_message[150]; char temp_value[6]; Max72xxPanel matrix = Max72xxPanel(pinCS, numberOfHorizontalDisplays, numberOfVerticalDisplays); //ruleaza un text de la dreapta la stanga void display_message(String message){ for ( int i = 0 ; i < width * message.length() + matrix.width() - spacer; i++ ) { //matrix.fillScreen(LOW); int letter = i / width; int x = (matrix.width() - 1) - i % width; int y = (matrix.height() - 8) / 2; // center the text vertically while ( x + width - spacer >= 0 && letter >= 0 ) { if ( letter < message.length() ) { matrix.drawChar(x, y, message[letter], HIGH, LOW, 1); // HIGH LOW means foreground ON, background off, reverse to invert the image } letter--; x -= width; } matrix.write(); // Send bitmap to display delay(wait/2); client.loop(); } } void setup_wifi() { delay(10); // We start by connecting to a WiFi network Serial.println(); Serial.print("Connecting to "); Serial.println(ssid); WiFi.mode(WIFI_STA); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); display_message("..wait for wifi.."); } randomSeed(micros()); Serial.println(""); Serial.println("WiFi connected"); Serial.println("IP address: "); Serial.println(WiFi.localIP()); } void callback(String topic, byte* payload, unsigned int length) { Serial.print("Message arrived ["); Serial.print(topic); Serial.print("] "); for (int i = 0; i < length; i++) { Serial.print((char)payload[i]); } if (topic == "tele/%cameramica%/SENSOR") { for (int i = 0; i < length; i++) { tasmota_message[i] = payload[i]; } } temp_value[0] = tasmota_message[75]; temp_value[1] = tasmota_message[76]; temp_value[2] = tasmota_message[77]; temp_value[3] = tasmota_message[78]; temp_value[4] = tasmota_message[93]; } void reconnect() { // Loop until we're reconnected while (!client.connected()) { Serial.print("Attempting MQTT connection..."); // Create a random client ID String clientId = "camera-mica"; clientId += String(random(0xffff), HEX); // Attempt to connect if (client.connect(clientId.c_str() , "x_dadu", "Pecineaga1" )) { Serial.println("subscribed and connected"); client.subscribe("tele/%cameramica%/SENSOR"); } else { Serial.print("failed, rc="); Serial.print(client.state()); Serial.println(" try again in 5 seconds"); // Wait 5 seconds before retrying delay(5000); } } } void verificari(){ client.loop(); } //face delay din bucati de 100ms, intre care face alte verificari void diy_wait_ms (int timp){ client.loop(); timp=timp/100; for (int i=0; i<timp; i++) { // splituisc un delay de 500ms in 5 de 100 delay(100); verificari(); // ca sa fac niste verificari mai des } } void setup() { Serial.begin(115200); matrix.setIntensity(1); // Use a value between 0 and 15 for brightness matrix.setRotation(0, 1); // The first display is position upside down matrix.setRotation(1, 1); // The first display is position upside down matrix.setRotation(2, 1); // The first display is position upside down matrix.setRotation(3, 1); // The first display is position upside down matrix.fillScreen(LOW); matrix.write(); setup_wifi(); client.setServer(mqtt_server, 1883); client.setCallback(callback); } void loop() { if (!client.connected()) { reconnect(); } client.loop(); matrix.fillScreen(LOW); matrix.write(); display_message(temp_value); diy_wait_ms(1000); client.loop(); }
  13. văd că pe ro.farnell un senzor costă 30 de lei fără TVA. Ăla da, e original. Eu am luat conștient 10 buc de la chinezi, au o abatere mică în punctul în care am verificat, pe la 1 grad, dar nu știu dacă e constantă eroare pe plaja de interes.
  14. HA instalat cu raspberry imager sau balena eatcher, se accesează ca la toată lumea, doar pe cablu. Am scris pe pagina anterioară că având în vedere că pe wifi merge ok pentru că la instalare SO de raspberry am posibilitatea setării SSH la scrierea cardului și aș fi vrut să pot seta cumva HA să folosească nativ wifi ceea ce nu știam cum, dar am făcut ieri asta datorită pontului primit de colegul Stefan. Până una alta trebuie să scriu iar cardul, după ce am instalat ieri broker mqtt la addon și am încercat să bag și esphome care dura prea mult și am renunțat, am scos pi din priză. Azi când l-am pornit, după mesaju cu start HA CLI, a dat eroare la pornirea CLI și făcu jumping to emergency console :D Sensibilos HA ăsta.
  15. acuma da, a vrut imediat pe wifi, mulțumesc Deci e o problemă cu ”routerul” meu digi pe LAN
×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări