Ok, this is odd… I have a Core in my basement doing two simple checks with an AM2301.
In my Setup() I have:
Spark.variable("temp", &temp, DOUBLE);
Spark.variable("humidity", &humidity, DOUBLE);
I have four recipes in IFTTT:
- If humidity on “SumpMon1” is Greater 45, then send a notification
- If temp on “SumpMon1” is Less 50, then send a notification
- If SumpMon1 is Online, then send a notification
- If SumpMon1 is Offline, then send a notification
3 and 4 work perfectly with little delay. 1 and 2 seem to work mostly except for about twice a day rule 2 triggers showing me a temp of around 32-33. The problem is this is NOT the temp, it’s the humidity! When I check manually right after the alert it is clearly swapping the variables. The temp never gets even close to 32-33, but the humidity is smack on those values at the time the alert is triggered.
So my question is, how do I troubleshoot this? It seems to me like the Core is reading perfectly and IFTTT is the one with a bug somewhere. I will have to set up a log of this data to prove this conclusively, but I would be very surprised if the Core, code on the Core, or the AM2301 is to blame here since they seem to have proven reliable so far. It’s only the IFTTT recipes that are behaving strangely.
I think eventually I will change to SSE and have IFTTT only handle the alerts and leave the logic entirely to the Core, but that will take some more time. That said, IFTTT should work as-is.
@Dave any thoughts?