Hauptmenü

1-Wire Update 17.Mai

Begonnen von Guest, 17 Mai 2012, 21:15:17

Vorheriges Thema - Nächstes Thema

Guest

Originally posted by: <email address deleted>

Hallo Liste,

ich habe in den 1-Wire-Modulen zwei Bugs gefixt.

OWLCD: Hier wurden bei langen Strings andere als die adressierten Zeilenmit
überschrieben

OWCOUNT: Die falschen Zählerwerte beim Betrieb zusammen mit anderen
Sensoren waren eine seltsame Sache. Denn ich lese hier aus dem DS2423
insgesamt 54 Bytes aus, in zwei Teilen. Je nach Adapter und anderen
Sensoren kommt das manchmal als 36 + 18 Bytes, oder als 28 + 26 Bytes, oder
als 32 + 22 Bytes.  Sollte jetzt keine Rolle mehr spielen, solange es
insgesamt 54 Bytes sind.

Viel Spaß beim Testen, steht im SVN

LG

pah

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo Peter,

Danke für Deine Mühe...OWCOUNT funktioniert jetzt :)

Nachdem mein vorhandenes 4x16 Display ja einige Querelen machte, konnte ich
ein 4x20 halbwegs erfolgreich in Betrieb nehmen.
Und zwar: Auf Zeile 0 werden alle 20 Zeichen korrekt angezeigt, die Zeichen
für Zeile 1 beginnen an Position 13 der Zeile 3 und enden auf Zeile 1. Wenn
ich dann Zeile 2 schreibe, beginnt diese an Position der Zeile 1...etwas
verworren, aber ich hoffe, Du kannst mit dieser unspezifischen Aussage
etwas anfangen...
Im Gegensatz zum vorherigen Display habe ich zu diesem nun kein besonders
aussagekräftiges Datenblatt. Die Zeilenadressierung geht daraus leider
nicht hervor.

Gruß
Uwe





Am 17. Mai 2012 21:15 schrieb Prof. Dr. Peter A. Henning <
prof.dr.peter.a.henning@gmail.com>:

> Hallo Liste,
>
> ich habe in den 1-Wire-Modulen zwei Bugs gefixt.
>
> OWLCD: Hier wurden bei langen Strings andere als die adressierten
> Zeilenmit überschrieben
>
> OWCOUNT: Die falschen Zählerwerte beim Betrieb zusammen mit anderen
> Sensoren waren eine seltsame Sache. Denn ich lese hier aus dem DS2423
> insgesamt 54 Bytes aus, in zwei Teilen. Je nach Adapter und anderen
> Sensoren kommt das manchmal als 36 + 18 Bytes, oder als 28 + 26 Bytes, oder
> als 32 + 22 Bytes.  Sollte jetzt keine Rolle mehr spielen, solange es
> insgesamt 54 Bytes sind.
>
> Viel Spaß beim Testen, steht im SVN
>
> LG
>
> pah
>
> --
> To unsubscribe from this group, send email to
> fhem-users+unsubscribe@googlegroups.com
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Das Problem liegt darin, dass die LC-Displays noch einen eigenen Controller
drin haben - der eben den Speicher bereitstellt, den Zeichengenerator
bereitstellt und die Ansteuerung übernimmt.

Von diesen Controllern gibt es im wesentlichen zwei Typen: KS0073 und  
HD44780 - die sind ähnlich, aber nicht vollständig gleich. Und jeder
LCD-Hersteller schließt diese auch noch leicht unterschiedlich an. Es kommt
also darauf an, das Adressierungssschema herauszufinden

In der gegenwärtigen Version von OWLCD wird geschrieben

Zeile 0 => Adressen 0-19
Zeile 1 => Adressen 32-41
Zeile 2 => Adressen 64-83
Zeile 3 => Adressen 96-115

Deine Beschreibung ist nicht so ganz klar. Vielleicht probierst Du noch ein
paar Schreibbefehle aus. Damit solltest Du in der Lage sein, mir eine Liste
zu liefern in der Art

"Adresse 32 landet auf Zeile 3, 13. Zeichen" (et cetera)

Das würde dann darauf hindeuten, dass die Adressen 20-31 die ersten 12
Zeichen von Zeile 3 ausmachen - und schon hätten wir für die erste und
dritte Zeile die Adressen:

Zeile 0 => Adressen 0-19
Zeile 1 => Adressen ??
Zeile 2 => Adressen ??
Zeile 3 => Adressen 20-39

Das ist dann eine Änderung in zwei Zeilen des Moduls, bzw. eine Abfrage des
Displaytyps-

Kann aber ein paar Tage dauern.

Ich habe zwar  - entgegen meiner ursprünglichen Ankündigung - heute etwas
Zeit dazugegeben. Das liegt daran, dass ich mit der Überarbeitung meiner
"Work Description" für die EU-Kommission etwas früher fertig war. Morgen
aber muss ich das DIng einreichen, und nächste Woche zu den
Vertragsverhandlungen fahren.  
 
LG

pah

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo Peter,

habe das "mal eben" getestet.
Auf den ersten Blick sieht das gut aus!
Ich bekomme Werte aus dem Counter.
Ich teste morgen mal in Ruhe ob die richtig zählen.

Vielen Dank für die schnelle Lösung!

Viele Grüße
Michael

Am 17.05.2012 21:15, schrieb Prof. Dr. Peter A. Henning:
> Hallo Liste,
>
> ich habe in den 1-Wire-Modulen zwei Bugs gefixt.
>
> OWLCD: Hier wurden bei langen Strings andere als die adressierten
> Zeilenmit überschrieben
>
> OWCOUNT: Die falschen Zählerwerte beim Betrieb zusammen mit anderen
> Sensoren waren eine seltsame Sache. Denn ich lese hier aus dem DS2423
> insgesamt 54 Bytes aus, in zwei Teilen. Je nach Adapter und anderen
> Sensoren kommt das manchmal als 36 + 18 Bytes, oder als 28 + 26 Bytes,
> oder als 32 + 22 Bytes.  Sollte jetzt keine Rolle mehr spielen,
> solange es insgesamt 54 Bytes sind.
>
> Viel Spaß beim Testen, steht im SVN
>
> LG
>
> pah
> --
> To unsubscribe from this group, send email to
> fhem-users+unsubscribe@googlegroups.com

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Ein Fehler ist noch im OWCOUNT.pm: Es gibt jetzt bei jedem Lesevorgang eine
Zeile im Log aus, das ist unnötig. Ich werde die korrigierte Version
nachher hochladen, für Eilige: In der Datei die Zeile suchen mit dem Text
"getting page" und diese auskommentieren.

LG

pah

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Am 17. Mai 2012 22:25 schrieb Prof. Dr. Peter A. Henning <
prof.dr.peter.a.henning@gmail.com>:

> Das Problem liegt darin, dass die LC-Displays noch einen eigenen
> Controller drin haben - der eben den Speicher bereitstellt, den
> Zeichengenerator bereitstellt und die Ansteuerung übernimmt.
>
> Von diesen Controllern gibt es im wesentlichen zwei Typen: KS0073 und
> HD44780 - die sind ähnlich, aber nicht vollständig gleich. Und jeder
> LCD-Hersteller schließt diese auch noch leicht unterschiedlich an. Es kommt
> also darauf an, das Adressierungssschema herauszufinden
>
> In der gegenwärtigen Version von OWLCD wird geschrieben
>
> Zeile 0 => Adressen 0-19
> Zeile 1 => Adressen 32-41
> Zeile 2 => Adressen 64-83
> Zeile 3 => Adressen 96-115
>
> Deine Beschreibung ist nicht so ganz klar. Vielleicht probierst Du noch
> ein paar Schreibbefehle aus. Damit solltest Du in der Lage sein, mir eine
> Liste zu liefern in der Art
>
> "Adresse 32 landet auf Zeile 3, 13. Zeichen" (et cetera)
>
> Das würde dann darauf hindeuten, dass die Adressen 20-31 die ersten 12
> Zeichen von Zeile 3 ausmachen - und schon hätten wir für die erste und
> dritte Zeile die Adressen:
>
> Zeile 0 => Adressen 0-19
> Zeile 1 => Adressen ??
> Zeile 2 => Adressen ??
> Zeile 3 => Adressen 20-39
>


OK, also:

Zeile 0 = Adressen 0-19 OK
Zeile 1 = 1. Zeichen auf 12. Stelle der Zeile 2, die nächsten 8 Zeichen ab
Stelle 0 der Zeile 1, der Rest fehlt (nur 2x8 Zeichen dargestellt)
Zeile 2 = landet komplett auf Zeile 1
Zeile 3 = 1. Zeichen auf 12. Stelle der Zeile 3, die nächsten 8 Zeichen ab
Stelle 0 der Zeile 0, der Rest fehlt (nur 2x8 Zeichen dargestellt)

Danke und Gruß
Uwe

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo Peter,

habe gerade einmal das neue Modul OWCOUNT.pm getestet.

Funktioniert soweit nach dem ersten Test wie Michael es beschrieben
hat.

Habe bewust den 1Wire Bus nach einem Neustart vom FHEM unterbrochen.
Ich wollte mal schauen wie sich die Zähler sich dabei verhalten.

Nun stehen die beiden Zähler bei  A: 3072 , B: 54.

Besteht die Möglichkeit über das Eingabefenster , wie beim interval,
den Zählern einen definierten Wert zuzuordnen?

Gruß Klaus


--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Moin,

nein, die Zählerstände kann man nicht beeinflussen, der 2423 lässt sich
auch nicht resetten. Einzige Chance ist die Unterbrechung der
Stromversorgung. Damit wird der Baustein wieder auf "0" gesetzt. Falls Du
einen der Zählerbausteine von eservice-online hast, dann ist das nicht ohne
Weiteres möglich, da die Zähler über einen Goldcap gepuffert werden. Da
muss man löten, um die Versorgungsspannung abzuklemmen.

Gruß
Uwe

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Stimmt leider, das Ding kann man nur als Differenzzähler betreiben.

LG

pah

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Ab Version 1.13 von OWLCD.pm gibt es oben im Code eine Variable $lcdpage.

Bitte diese mal testweise setzen auf


$lcdpage=(0,64,128,192);


LG

pah

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Ich habe einen Vorschlag für das OWCOUNT-Modul.

Weil der Zähler nicht rücksetzbar ist, könnte ich eine Abstraktionsschicht
darüberlegen - bei dem der Rückgabewert des Moduls nicht der absolute Wert
des Zählers ist, sondern sich auf einen frei rücksetzbaren Wert bezieht.
Welchen Modus das Modul dann hat, wird durch die Konfiguration bestimmt.

Schon bei dem Modul 15_EMX.pm (als halbfertiger Ersatz für 15_CUL_EM.pm)
habe ich das realisiert, denn die Hardware ist hier genauso blöd, wie der
DS2423 (nicht rücksetzbar). Dort wird auch der Zählerwert für den
Tagesenergiezähler um Mitternacht minutengenau interpoliert und auf Null
gesetzt, ebenso beim Monatwechsel.

Damit ergäben sich drei mögliche Modi für für OWCOUNT.pm
1. so wie jetzt
2. manuell rücksetzbar
3. automatisch zurückgesetzt um Mitternacht, mit Überträgen für Tage und
Monate.

Selbstverständlich mit frei definierbaren Skalenfaktoren und Einheiten, so
wie jetzt auch.

Bei dem EMX-Modul besteht sogar das Problem (für das ich immer noch nach
einer sinnvollen Lösung suche), dass die bisher angesammelten Werte nicht
gegen einen totalen Absturz von FHEM gesichert sind. Da könnte ich bei
OWCOUNT sogar umgehen, denn es enthält ja neben den Zählern auch Speicher,
in denen ich die akkumulierten Werte ablegen könnte.

Bitte um Kommentare

LG

pah

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo Peter,

wenn der Punkt 2 bedeutet einen definierten Wert festzulegen, ich denke dabei
an die Erfassung von Strom und Gas, dann ist der Zähler universell einsetzbar.
Damit denke ich ist ein breites Spectrum abgedeckt und für jeden etwas dabei.

Hört sich alles sehr gut an.

Das Einschreiben der ermittelnden Werte in den Zähler ist natürlich das i Tüpfelchen.

Gruß Klaus


Am 20.05.2012 um 09:56 schrieb Prof. Dr. Peter A. Henning:

> Damit ergäben sich drei mögliche Modi für für OWCOUNT.pm
> 1. so wie jetzt
> 2. manuell rücksetzbar
> 3. automatisch zurückgesetzt um Mitternacht, mit Überträgen für Tage und Monate.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo Peter, hallo Klaus,

Ich habe das hardwarenah gelöst in dem ich dem DS2423 eine Pufferbatterie spendiert habe.
Wenn ich den zurücksetzen möchte kann ich ja die Batterie ziehen...

In dem Zusammenhang habe ich aber noch Fragen zu den Attributen des DS2423 im OWCOUNT.
1.) die beiden Attribute AFactor und BFactor habe ich auf 0.01 gesetzt, da mein Gaszähler alle 0,01m^3 einen Impuls liefert, richtig?
2.) mit AOffset bzw. BOffset habe ich den Zählerwert eingetragen, in meinem Fall 32228.40, richtig?
3.) das Ergebniss überrascht mich nämlich etwas, mein Gaszähler hat demnach einen Zählerstand von 322.284, wo liegt der Fehler?

Kann ich das überhaupt so machen oder geht das erst mit der Zwischenschicht?

Viele Grüße
Michael

P.S. Mit Prellen des Reedkontakts habe ich null Probleme, nur einen Pullupwiderstand, noch nicht mal einen Kondensator brauche ich (bisher)...



Am 18.05.2012 um 22:21 schrieb B50one :

> Hallo Peter,
>
> habe gerade einmal das neue Modul OWCOUNT.pm getestet.
>
> Funktioniert soweit nach dem ersten Test wie Michael es beschrieben
> hat.
>
> Habe bewust den 1Wire Bus nach einem Neustart vom FHEM unterbrochen.
> Ich wollte mal schauen wie sich die Zähler sich dabei verhalten.
>
> Nun stehen die beiden Zähler bei  A: 3072 , B: 54.
>
> Besteht die Möglichkeit über das Eingabefenster , wie beim interval,
> den Zählern einen definierten Wert zuzuordnen?
>
> Gruß Klaus
>
>
> --
> To unsubscribe from this group, send email to
> fhem-users+unsubscribe@googlegroups.com

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Erst addieren, dann multiplizieren.

Ausgabewert = AFactor ( reading + AOffset).

Die gesamte Rechnung wird in der Routine FormatValues durchgeführt.

Der Offset muss in der gleichen Einheit wie die Zählimpulse sein - also
0.01 m^3, und damit 3228440.

Damit die Ausgabe dann in m^3 erfolgt, muss der Faktor dann tatsächlich
0.01 sein.

Das wäre natürlich etwas für die nötige commandref.html - dazu bin ich noch
nicht gekommen.

LG

pah

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo,

nach einigem hin- und her und tatkräftiger Unterstützung von Peter läuft
nun auch mein Display. Die Inbetriebnahme mit der OWLCD-Version 1.14 ist
recht einfach, wenn man weiß, was man einstellen muss... ;-)

Danke

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com