Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Peter de Lange
    @PedeLa
    Mh ich meinte auch VSCode.:-) Sonntag Nachmittag dann? irgendwann zwischen 2 und 4? (sag was:-) )
    Innuendo
    @InnuendoPi
    Hallo, am Sonntag werde ich leider doch keine Zeit haben. Das Wetter soll auch zu gut werden, um am Rechner zu hocken.
    Das Projekt erscheint mir aktuell auch eingeschlafen zu sein. Matschie hat scheinbar im Moment keine Zeit ... es ist aber noch immer sein Projekt.
    Deine PT100 Weiterentwicklung sollte eingebunden werden. Deine Basis ist weiterhin die von matschie. Mach das ruhig.
    Innuendo
    @InnuendoPi
    Mein repo ist weit weg von matschies Basis und muss auch nicht weiter beachtet werden. Eine ND (non display) Version liegt zum testen im git. Für meinen nächsten Brautag habe ich nur noch Kleinigkeiten bzw Optimierungen auf meiner Todo. Danach mag ich mit dem esp8266 und mosquitto das Thema openHab bearbeiten.
    Innuendo
    @InnuendoPi
    Guten Morgen, weil mein Vormittagstermin kurzfristig abgesagt hat, habe ich mal weiter in Deinem branch gelesen. Das handle MQTT ist noch nicht plausibel:
    if (!client.connected())
    {
    mqttreconnect();
    }
    client.loop();
    Ist der Client nicht mit dem Broker verbunden wird ein reconnect versucht. Ist der reconnect erfolgreich ist die Anweisung client.loop korrekt. Ist der Broker aber nicht erreichbar, kann client.loop nichts sinnvolles machen.
    Innuendo
    @InnuendoPi
    Per PN im Forum habe ich ja schon etwas zum Update Intervall geschrieben. Bei den Sensoren ist ein drittes Intervall vorhanden
    void update()
    {
    if (millis() > (lastCalled + DEFAULT_SENSOR_UPDATE_INTERVAL))
    Das ist aus meiner Sicht überflüssig.
    Innuendo
    @InnuendoPi
    Beim DS18B20 ist die init Temperatur laut Datenblatt +85°C. Diese initiale Temperatur darf der Sensor maximal 750ms haben. Entweder gibt es nach 750ms einen Sensorwert oder der Sensor ist fehlerhaft (zB zu langes Kabel). 85 Grad kann aber auch ein echter Sensorwert sein ...
    if (sens_value == 85.0)
    {
    Serial.print("One Wire Sensor ");
    Serial.print(sens_name);
    Serial.println(" Error!");
    }
    schlage ich vor zu ersetzen durch
    public:
    float sens_value = -127.0; //inital auf -127 setzen
    ....
    if (sens_value == 85.0) { // prüfen ob Sensor Init 85 vorliegt
    unsigned long pause = millis();
    while (millis() < pause + 750) {
    //wait approx. 750ms
    yield();
    }
    DS18B20.requestTemperatures();
    Wenn jetzt die Abfrage
    if (sens_value == -127.0 || sens_value == 85.0) wahr wird, müsste immer ein Fehler vorliegen
    Peter de Lange
    @PedeLa
    hey..den letzten punkt verstehe ich. da habe ich ehrlich gesagt auch gar nichts dran geändert, das müsste auch im master branch so sein. kann gern geändert werden:-)
    zum ersten punkt..dann einfach den client.loop in die if bedingung rein, würde so mehr sinn ergeben?
    Innuendo
    @InnuendoPi
    ja, ich glaube, dass Sensorhandling ist noch von matschie so.
    Beim MQTT Cleint und Reconnect möchte ich erst noch ein bisschen testen und mit Debugausgaben nachprüfen, ob meine Behauptung richtig ist.
    Peter de Lange
    @PedeLa
    dieses dritte sensor update intervall verstehe ich deiner beschreibung nach nicht zu 100% (hab aber auch gerade kein device zur hand / ardunino installiert hier) ich muss gestehen ich habe an den ganzen schleifen gar nicht viel gemacht, ich habe nur die delays dort ersetzt, wo du sie auch ersetzt hast (bis auf beim esp restart, da ist es bei dir nicht sinnvoll ersetzt worden mMn). von daher kann das schon gut sein..
    kurz zum letzten punkt nochmal: dann aber requestTemperatures nur nach der if abfrage, sprich davor im code rausnehmen (GitHub PT100 Branch Zeile 31), ansonsten würde ich unabhängig vom Sensorwert immer 2 Abfragen machen. (nur zur Klarstellung)
    Innuendo
    @InnuendoPi
    Du verstehst mich noch etwas falsch. Das ist keine Kritik an Deinem Source, sondern ein Vorschlag oder eine Idee zur Verbesserung.
    Peter de Lange
    @PedeLa
    ach quatsch, ich nehm das nicht als Kritik, sorry falls das so rüberkommt:-)
    Innuendo
    @InnuendoPi
    ;-)
    Peter de Lange
    @PedeLa
    sollte nur konstruktiv meine Meinung zu den Punkten ausdrücken
    Innuendo
    @InnuendoPi
    ok
    Also die vielen Intervalle sollten wir vereinheitlichen
    das ist dann am End auch nachvollziehbarer.
    Peter de Lange
    @PedeLa
    mir war wichtig, dass die sache mit den pt100 läuft, damit ich sie auch nutzen kann. Und alles, was mir auf dem Weg so untergekommen ist habe ich halt "mit gemacht", mehr nicht:-)
    ja, gern
    Innuendo
    @InnuendoPi
    mit millis und UPDATE,SYS_UPDATE und SENSOR_UPDATE macht es unleserlich und schwierig auszurechnen, wann denn nun wirklich mal ein Update durchgeführt wird
    Peter de Lange
    @PedeLa
    sehe ich auch so
    Innuendo
    @InnuendoPi
    MQTTreconnect ist ein wichtiges Detail - wenn das nicht suaber funktioniert, nutzt uns des Device wenig
    solange Client und Broker reden ist alles prima ;-)
    Peter de Lange
    @PedeLa
    ja. wobei es derzeit sehr gut funktioniert, nur halt mit dem elenden Delay wenn gerade kein Broker läuft
    Innuendo
    @InnuendoPi
    ja, die delays sind keine gute wahl
    Kann Dein PT100 auch über andere Pins als D1 und D2 angeschlossen werden?
    Peter de Lange
    @PedeLa
    ja absolut
    ich war nur zu faul dafür ein webinterface zu machen
    Innuendo
    @InnuendoPi
    Du hast OneWire auf D5 gelegt und PT100 D1 D2
    D3
    Peter de Lange
    @PedeLa
    der pt100 braucht 3 feste pins die über alle sensoren geshared werden und einen pin pro sensor zusätzlich
    aber alle vier können überall liegen
    genauso wie mit one wire
    meiner meinung nach wäre es fast am besten wenn man alles konfigurierbar macht
    sprich auch die one wire pins
    Innuendo
    @InnuendoPi
    gut. Mein blödes Display kann das nämlich nicht und hängt D1 und D2
    Peter de Lange
    @PedeLa
    ja kein problem
    zum thema box/display noch
    ich hab mir ein paar platinen bestellt für meine kühlschränke
    da sind dann auch 2 relais mit drauf für kühlschrank und heizspirale
    mal gucken welche boxgröße ich dann brauche, hab ich mir noch gar keine gedanken drüber gemacht
    ich zeig mal wie das aussieht wenn ichs gelötet habe..
    Innuendo
    @InnuendoPi
    ja kein Problem. Das kann ich fertig machen und zuschicken
    Peter de Lange
    @PedeLa
    sieht schick aus. ich hab ein kleineres, auch so 1 zoll nur. Allerdings möchte ich auch nur die Temperatur darauf haben:-)
    ich kann übrigens anbieten, euch auch ein pcb zukommen zu lassen, falls da interesse besteht