[vz-users] S0-Impulse Interval verkürzen

Matthias Behr mbehr at mcbehr.de
Sun Nov 29 21:10:25 CET 2015


Hallo,

du müsstest den Code ändern: (aus MeterS0.cpp) 

ssize_t MeterS0::read(std::vector<Reading> &rds, size_t n) {

	ssize_t ret = 0;

	if (!_hwif) return 0;
	if (n<4) return 0; // would be worth a debug msg!

	// wait till last+1s (even if we are already later)
	struct timespec req = _time_last_read;
	// (or even more seconds if !send_zero

	unsigned int t_imp;
	unsigned int t_imp_neg;
	bool is_zero = true;
	do{
		req.tv_sec += 1;


statt req.tv_sec +=1; müsstest du
timespec_add_ms( req, 100); 
machen.


> Am 29.11.2015 um 20:33 schrieb Marius Brahm <marius.brahm at gmx.de>:
> 
> Von: volkszaehler-users [mailto:volkszaehler-users-bounces at demo.volkszaehler.org <mailto:volkszaehler-users-bounces at demo.volkszaehler.org>] Im Auftrag von Andreas Goetz
> Gesendet: Freitag, 20. November 2015 11:34
> An: volkszaehler.org <http://volkszaehler.org/> - users <volkszaehler-users at demo.volkszaehler.org <mailto:volkszaehler-users at demo.volkszaehler.org>>
> Betreff: Re: [vz-users] S0-Impulse Interval verkürzen
>  
> Moin
>  
> 2015-11-20 11:30 GMT+01:00 Udo1 <udo1 at gmx.net <mailto:udo1 at gmx.net>>:
>> Am 20.11.2015 um 11:15 schrieb Brahm, Marius:
>>> es sind etwa 20 St.
>> Betrifft wohl dieses Thema:
>> https://github.com/volkszaehler/vzlogger/issues/206 <https://github.com/volkszaehler/vzlogger/issues/206>
>> 
>> Ich meine das ist schon erledigt. Vielleicht mal auf die neueste vzlogger-Version updaten:
> 
> Es ist das Thema, aber auch mit der Lösung gibt es- wie geschrieben- nur 1 Timestamp pro Sekunde.
> 
> Vielen Dank für die Antworten!
> 
> Ich habe mich nun etwas in vzlogger und co eingelesen. Wenn ich den Code ändere, sollte es doch funktionieren. 
> 
> Folgendes ist mir noch nicht ganz klar. Die Middleware frägt doch beim vzlogger (Controller) via http die Daten an. Das heißt die Häufigkeit der Anfragen sollte doch das Zeitintervall verkürzen, warum dann in vzlogger eingreifen, oder habe ich da etwas grundlegendes falsch verstanden?
> 
> Erst einmal vielleicht noch die allgemeine Frage ob man das mit einer „kleinen” Änderung vornehmen kann, oder ob das tiefer in die Struktur eingreift als gedacht.
> 
> Klar unter Buffer / MeterS0 / api und co ist einiges mit Intervall und Zeitstempeln. Gerade bei der MeterS0.cpp bin ich auf einen verdächtigen Wert gestoßen 
> 
> 680: int rv = poll(&poll_fd, 1, 1000);    // timeout set to 1s
> 
> Vielen Dank schon mal!
> 
> Gruß
> 
> Marius
> 
>  
> 
>> 
>> Gruß
>> Udo
> 
>  
> Viele Grüße,
> Andreas
> 

Gruß

Matthias

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20151129/bca4921d/attachment.html>


More information about the volkszaehler-users mailing list