linux-iio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Richard Weinberger <richard@nod.at>
To: Harald Geyer <harald@ccbib.org>
Cc: jic23@kernel.org, knaack.h@gmx.de, lars@metafoo.de,
	pmeerw@pmeerw.net, sanjeev_sharma@mentor.com,
	linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: iio: dht11 Updates
Date: Wed, 03 Dec 2014 14:15:42 +0100	[thread overview]
Message-ID: <547F0CFE.4010107@nod.at> (raw)
In-Reply-To: <E1Xw8sp-0001B6-Ul@stardust.g4.wien.funkfeuer.at>

Harald,

Am 03.12.2014 um 13:18 schrieb Harald Geyer:
> Hi Richard,
> 
> thanks for all the work you put into this!
> 
> Richard Weinberger writes:
>> Please see my current patches for your driver.
>> As discussed in an earlier mail I'm testing with the DHT22 sensor only.
>> With the IRQ changes I see 84 edges.
> 
> This still surprises me. With the IRQ changes I would expect the
> preamble to be 2 edges only. I must be missing something. Can you
> explain this to me?

I'll try to find out!

> I'll look into this as soon as I've time.
> 
>> I have also a question on your driver. Why you increment
>> DHT11_DATA_BIT_LOW/timeres by one in the ambiguity check?
>>
>>         threshold = DHT11_DATA_BIT_HIGH / timeres;
>>         if (DHT11_DATA_BIT_LOW/timeres + 1 >= threshold)
>>                 pr_err("dht11: WARNING: decoding ambiguous\n");
> 
> This is to take ambiguity of when the bit started relativ to the
> clock ticks into account. For example with common 32kHz clocks:
> DHT11_DATA_BIT_LOW / timeres = 0
> DHT11_DATA_BIT_HIGH / timeres = 2
> but since the bit might not start at a clock tick the actual t of
> a low bit can be either 0 or 1 while the actual t of a high bit
> can be either 2 or 3.
> 
> This case is fine.
> 
> But if we had a 38kHz clock:
> DHT11_DATA_BIT_LOW / timeres = 1    t can be 1 or 2
> DHT11_DATA_BIT_HIGH / timeres = 2   t can be 2 or 3
> so we have an ambiguity. The ambiguity could be removed by a smarter
> decoder, that looks at the t of other bits, but I'm not going to do
> that unless somebody is promising to test it on affected hardware.
> 
> Feel free to add some comment about this to the code.

Will do, thanks a lot for the explanation.

I was asking because I see the "dht11: WARNING: decoding ambiguous"
very often. (with and without my patches)

>> [PATCH 1/4] iio: dht11: Add locking
>> [PATCH 2/4] iio: dht11: IRQ fixes
>> [PATCH 3/4] iio: dht11: Logging updates
>> [PATCH 4/4] iio: dht11: Fix out-of-bounds read
> 
> You can add my Acked-by or Reviewed-by to 1/4 and 4/4 if you want to.
> Maybe Jonathan wants the patches reordered so that fixes come first, but
> then 4/4 should not cause any problems in practice, so perhaps it doesn't
> matter.
> 
> I really have to understand this preamble length thing on 2/4 and I will
> reply to 3/4 separately.

Thanks a lot!
//richard

  reply	other threads:[~2014-12-03 13:15 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-02 23:32 iio: dht11 Updates Richard Weinberger
2014-12-02 23:32 ` [PATCH 1/4] iio: dht11: Add locking Richard Weinberger
2014-12-14 12:31   ` Hartmut Knaack
2014-12-14 14:06     ` Richard Weinberger
2014-12-02 23:32 ` [PATCH 2/4] iio: dht11: IRQ fixes Richard Weinberger
2014-12-02 23:35   ` Richard Weinberger
2014-12-06 17:21   ` harald
2014-12-02 23:32 ` [PATCH 3/4] iio: dht11: Logging updates Richard Weinberger
2014-12-03 12:58   ` Harald Geyer
2014-12-03 13:11     ` Richard Weinberger
2014-12-03 13:56       ` Harald Geyer
2014-12-03 21:30         ` Richard Weinberger
2014-12-04 14:25           ` Harald Geyer
2014-12-02 23:32 ` [PATCH 4/4] iio: dht11: Fix out-of-bounds read Richard Weinberger
2014-12-14 12:32   ` Hartmut Knaack
2014-12-03 12:18 ` iio: dht11 Updates Harald Geyer
2014-12-03 13:15   ` Richard Weinberger [this message]
2014-12-03 14:08     ` Harald Geyer
2014-12-03 14:29       ` Richard Weinberger
2014-12-03 22:05       ` Richard Weinberger
2014-12-04 13:45         ` Harald Geyer
2014-12-04 14:15           ` Richard Weinberger
2014-12-03 20:20   ` Richard Weinberger
2014-12-04 16:08     ` Harald Geyer
2015-01-01 12:38 ` Jonathan Cameron
2015-01-01 21:18   ` harald
2015-01-02 11:28     ` Richard Weinberger
2015-01-04 11:01       ` Jonathan Cameron
2015-01-05 13:49         ` [PATCHv2 1/3] iio: dht11: Fix out-of-bounds read Harald Geyer
2015-01-05 13:55           ` Richard Weinberger
2015-01-06  5:39             ` sanjeev sharma
2015-01-07 12:15             ` [PATCHv2 1/3,RESEND] " Harald Geyer
2015-01-10 11:14               ` Jonathan Cameron
2015-01-10 18:39                 ` Richard Weinberger
2015-01-12 11:26                   ` Harald Geyer
2015-01-12 11:27                     ` Richard Weinberger
2015-01-07 12:18             ` [PATCHv2 2/3,RESEND] iio: dht11: Add locking Harald Geyer
2015-01-10 11:16               ` Jonathan Cameron
2015-02-22 10:44                 ` Richard Weinberger
2015-02-25 12:01                   ` Jonathan Cameron
2015-01-07 12:22             ` [PATCHv2 3/3,RESEND] iio: dht11: IRQ fixes Harald Geyer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=547F0CFE.4010107@nod.at \
    --to=richard@nod.at \
    --cc=harald@ccbib.org \
    --cc=jic23@kernel.org \
    --cc=knaack.h@gmx.de \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pmeerw@pmeerw.net \
    --cc=sanjeev_sharma@mentor.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).