Things used in this project

Hardware components:
Mcplug perspective 1000px 4nu2utqvdj
mcThings mcPlug
A relay with an embedded mcModule120 that allows you to provide power to a 'plugged in' device/appliance/etc!
Mc devkit100a scojkvv1ol
mcThings mcModule120 Dev Kit
We recommend a kit for this example so that you have multiple modules to gather information from (Not required but you will need at least one mcModule, one mcGateway and an mcDongle)
Product mcmod120 top front back p8hs3xepwv
mcThings mcMod120 Module
You'll need at least one mcModule120 for this project
Mcgateway110 perspective 1000px iqkgknswa5
mcThings mcGateway110
You'll need an mcGateway for this project
Mcdongle perspective 1000px pcdfntbxl3
mcThings mcDongle
You'll need one of these to complete your firmware updates! Be sure to update your firmware to the latest versions before starting
Software apps and online services:
Mcstudio h8lhxdnyfz
mcThings mcStudio
IDE for programming mcThings gear
Screen%20shot%202016 03 01%20at%209.14.06%20pm
Losant Platform
Comprehensive IoT cloud application
Losant icon
Losant Go Mobile App
Losant's mobile app - not required but fun to use!
IFTTT Maker service
Used if you wish to send the information to another service using IFTTT


mcMod120 brief


mcPlug Subscribe codemcScript
Used to program the mcPlug to receive incoming MQTT messages and then give power or not to a device/appliance/etc
Class FanTempSubscribe
    Shared Event Boot()
    End Event
    Shared Event SubscriptionDelivery()
        Dim msg As Message = Lplan.GetDelivery()
        If msg.Topic= "mcThings/FanOn" Then
            Relay = True
        ElseIf msg.Topic= "mcThings/FanOff" Then
            Relay = False
        End If
    End Event
End Class
mcModule MQTT and IFTTT publishmcScript
checking the temperature and then sending a unique MQTT topic to your broker as well as option to send information to IFTTT
Class FanTempPublish
    'Set a constant MQTT topic
    Const mcPlugOn As String = "mcThings/PlugOn"
    Const mcPlugOff As String = "mcThings/PlugOff"
    'Optional to set module to mid-power mode if you wish
    'Shared Event Boot()
    '    Lplan.SetMidPowerMode(2)
    'End Event
    'Check temperature every XX seconds/minutes/days
    Shared Event CheckTemp() RaiseEvent Every 30 Seconds
        Dim TempC As Float = TempSensor.GetTemp
        Dim TempF As Float = TempSensor.ToFarenheit(TempC)
        'program logic for IFTTT and MQTT topic publish  
        If TempC > 25.0 Then
            LedRed = True
            Lplan.IFTTT("YOURIFTTKEYHERE", "FanOn")
            Dim payloadOn As ListOfByte = New ListOfByte()
            'publish topic to MQTT broker
            Lplan.Publish(mcPlugOn, payloadOn)
            LedRed = False
        ElseIf TempC < 24.99 Then
            LedGreen = True
            Lplan.IFTTT("YOURIFTTTKEYHERE", "FanOff")
            Dim payloadOff As ListOfByte = New ListOfByte()
            'publish topic to MQTT broker
            Lplan.Publish(mcPlugOff, payloadOff)
            LedGreen = False
        End If
    End Event
End Class 


Avatar 2 1464902871 1r3seyaity

Use mcThings to quickly & easily create, test and deploy IoT solutions for industrial, business/commercial and individual needs!



Did you replicate this project? Share it!

I made one

Love this project? Think it could be improved? Tell us what you think!

Give feedback


Similar projects you might like

MyHumidity Controlled by BME280 and Photon
  • 104
  • 2

Full instructions

Checks if humidity threshold is reached and informs the user by using Blynk/IFTTT-services with softAP integration.

Cheapest Smart Home for $38
  • 7,022
  • 27

Full instructions

Use Raspberry Pi Zero W to make the cheapest and easiest yet very useful smart home automation for $38 only and no skills needed!

Tweeting Particle Photon
  • 15
  • 0

Full instructions

Tweet your friends with only the press of a button!

Smooth Ambience System With Voice Command
  • 157
  • 1

Full instructions

Trigger via voice command a smooth ambience system that turns off your main lights, turn on smooth lighting and starts relaxing music

MyDallas DS18B20 Controlled by Photon
  • 77
  • 0


A water-resistant temperature sensor is suitable to signal the reaching of the core temperature of the meat during the grilling time.

Study Buddy
  • 2,788
  • 141

Full instructions

Know when an assignment is coming up!

Study Buddy

Team Alexa and Shannon

ProjectsCommunitiesTopicsContestsLiveAppsBetaFree StoreBlogAdd projectSign up / Login