Author Topic: IFTTT Outside Temperature example - Still not working  (Read 2286 times)

flookdigital

  • Newbie
  • *
  • Posts: 21
    • View Profile
IFTTT Outside Temperature example - Still not working
« on: June 09, 2016, 10:54:28 pm »
We have followed the example script and the video example but we are still not able to get a connection between the module and writing into the Google Drive spreadsheet.  Please give clear instructions and script examples so we can at least  get this example running.

We have updated to the latest firmware on the Gateway and modules.

Thank you for your help.

Share on Facebook Share on Twitter


kristofferis

  • Sr. Member
  • ****
  • Posts: 287
  • Location: Sweden
    • View Profile
Hello.

Where does it stop? do you get any error message?
I just tested this myself and it works without any issues, the only thing that i changed from the video is that the temperatur code should now be
Code: [Select]
TempSensor.GetTemp()instead of
Code: [Select]
Temperatur.GetTemp()
But that will raise an error message in mcStudio.

So please provide some more information and i will try my best to help you.

flookdigital

  • Newbie
  • *
  • Posts: 21
    • View Profile
Hello Kristofferis - Thank you for taking the time to have a look.

Here is my code, I'm not getting any errors but I can't get it to post to the Google Drive spreadsheet.

First file: Tony3 -

Class TempSETUP
    Shared Event checktemp() RaiseEvent Every 30 Seconds
        Dim temp As Float = TempSensor.GetTemp()
        Dim tempstring As String = temp.ToString()
       
        Lplan.IFTTT("dQoVzrPWk31UKuZDRMXnSW", "Grinder", tempstring, " ",)
       
       
    End Event
   
    Shared Event blinkgreen() RaiseEvent Every 5000 milliSeconds
        LedGreen = Not LedGreen
       
    End Event
End Class


Second File: TempSensor

Class TempSensor
    // Function returns the temperature in degree celcius or
    // Float.NaN if something is wrong
    Shared Function GetTemp() As Float
        // Define the properties of the I2C peripheral and device address
        Dim sensor As I2c
        sensor = I2c.Create(400000, Pin.SCL, Pin.SDA, 0x48)
       
        // Power up the sensor and give it some time to settle
        Device.EnableTempSensor()
        Thread.Sleep(40000) // See page 13 of the datasheet
       
        // Read the sensor (only 2 bytes to read
        Dim res As ListOfByte = sensor.Read(2)
       
        // See Tmp102 documentation how to interpret the data (page 8)
        Dim temp As Float = Float.NaN
        If res <> Nothing Then
            // Shift the partial part to the right nibble
            Dim part As Float = res(1) >> 4
            // Temperature partial is 1/16*n where n is between 0 and 15           
            part = part / 16
            // Sign extend the byte to an integer
            temp = res(0).SignExtend() + part
        End If
       
        // power off
        Device.DisableTempSensor()
        Return temp
    End Function
   
    Shared Function GetDieTemp() As Float
        // Just get the temperature and return
        Return Device.TempDie
    End Function
   
    Shared Function ToFarenheit(celcius As Float) As Float
        Return (celcius * 9) / 5 + 32
    End Function
   
    Shared Function ToCelcius(farenheit As Float) As Float
        Return (farenheit - 32) * 5 / 9
    End Function
   
End Class

kristofferis

  • Sr. Member
  • ****
  • Posts: 287
  • Location: Sweden
    • View Profile
Hello.
Is this code exactly what you are using? if that's the case then i have to say that it seems that you IFTTT key is to short, please verify that you are using the correct key.

spacecadetant

  • Newbie
  • *
  • Posts: 7
    • View Profile
I'm having similar trouble. I'm trying to figure out if the gateway is actually connecting out. I think we could do with some kind of diagnostic tool to check gateway to internet connection is working. The amber light is on.

kristofferis

  • Sr. Member
  • ****
  • Posts: 287
  • Location: Sweden
    • View Profile
What do you mean with similar issue?
If you like to test external connection then you could setup a MQTT broker on internet and verify with a MQTT client that your mcGateway is sending to broker.

The code against IFTTT does work, if your spreadsheet not update then verify IFTTT Key and that IFTTT has permission to write to your Google drive account.

If you want to verify your IFTTT account then you could send me your key and recipe name in an PM and I will test against your account from one of my mcModules.

flookdigital

  • Newbie
  • *
  • Posts: 21
    • View Profile
Hello

Yes this is the code I'm using - I have since started again and now have a longer code - "jsaIqb28FNkdmR0qFCmOSaNXA7JRJvnTaUG6q5uDfnb"

But it is still not working.

Blank spreadsheet.

kristofferis

  • Sr. Member
  • ****
  • Posts: 287
  • Location: Sweden
    • View Profile
If you post your recipe name that you use on IFTTT then i could test to update your spreadsheet from one of my devices, to verify if the problem is the code on your device, your mcGateway or the recipe on IFTTT.

flookdigital

  • Newbie
  • *
  • Posts: 21
    • View Profile
Recipe ID 428645

'Flook Google drive test'

Maker key jsaIqb28FNkdmR0qFCmOSaNXA7JRJvnTaUG6q5uDfnb

kristofferis

  • Sr. Member
  • ****
  • Posts: 287
  • Location: Sweden
    • View Profile
Okey, I think that I have found a bug if there is space in the recipe name.
Please test with a recipe name like Temperature or something just no spaces in the name.
Let me know the new name and i will test again.

flookdigital

  • Newbie
  • *
  • Posts: 21
    • View Profile
Event name is 'Grinder'

kristofferis

  • Sr. Member
  • ****
  • Posts: 287
  • Location: Sweden
    • View Profile
Okey, I have now sent a couple of temperatures to that IFTTT event name.
Does it show in your spreadsheet?
« Last Edit: June 11, 2016, 05:03:24 pm by kristofferis »

flookdigital

  • Newbie
  • *
  • Posts: 21
    • View Profile
I have 3 entries, 3:54 PM 3:55 PM and 3:56 PM - last one 26 degrees

I was really hoping they were coming from my module :(

flookdigital

  • Newbie
  • *
  • Posts: 21
    • View Profile
My Gateway seems to freeze - either green led stays on or off after a reset. two red led stay on all the time.

Is that good?

kristofferis

  • Sr. Member
  • ****
  • Posts: 287
  • Location: Sweden
    • View Profile
But now we know that your IFTTT is working.
Do you run this in debug mode in mcStudio when connected to a mcModule?
If not, do that and also set some breakpoints in the code.
One on the raw that fetch the temperature and one the next line that creates a string and finally one on the raw that sends the IFTTT message.

Then you will see if the code actually run and also what value you are pushing to IFTTT.