Skip to content

Instantly share code, notes, and snippets.

@PhirePhly
Created July 2, 2016 02:43
Show Gist options
  • Save PhirePhly/5eda4214788429e9d09c060cca10971f to your computer and use it in GitHub Desktop.
Save PhirePhly/5eda4214788429e9d09c060cca10971f to your computer and use it in GitHub Desktop.
#!/usr/bin/env python
import paho.mqtt.client as mqtt
import RPi.GPIO as GPIO
def on_connect(client, userdata, rc):
#print ("Connected with rc: " + str(rc))
client.subscribe("kwf/demo/led")
def on_message(client, userdata, msg):
#print ("Topic: "+ msg.topic+"\nMessage: "+str(msg.payload))
if "green" in msg.payload:
#print(" Green on!")
GPIO.output(11, True)
else:
#print(" Green off!")
GPIO.output(11, False)
if "yellow" in msg.payload:
#print(" Yellow on!")
GPIO.output(12, True)
else:
#print(" Yellow off!")
GPIO.output(12, False)
if "red" in msg.payload:
#print(" Red on!")
GPIO.output(13, True)
else:
#print(" Red off!")
GPIO.output(13, False)
client = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message
client.connect("test.mosquitto.org", 1883, 60)
GPIO.setmode(GPIO.BOARD)
GPIO.setup(11, GPIO.OUT)
GPIO.setup(12, GPIO.OUT)
GPIO.setup(13, GPIO.OUT)
client.loop_forever()
@ishtiyaq
Copy link

ishtiyaq commented Aug 7, 2017

There is a small change in your, This function requires 4 arguments.
Change this:
def on_connect(client, userdata, rc):

To this:
def on_connect(client, userdata, flag, rc):

@smalhao
Copy link

smalhao commented Jul 31, 2018

Hello, username and password in mqtt dashboard app what are they? Should the phone and raspberry pi be on the same network?
best regards

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment