Woohoo! Thanks for confirming the code @ognqn.chikov and also thanks to @jburhenn for providing the edits. Way to go!
-B
Woohoo! Thanks for confirming the code @ognqn.chikov and also thanks to @jburhenn for providing the edits. Way to go!
-B
Here is the code also for DHT22. Sorry that I have remove it, but I split the code for every sensor in separate files.
import cayenne.client as cayenne
import time
import Adafruit_DHT
time.sleep(60) #Sleep to allow wireless to connect before starting MQTT
MQTT_USERNAME = "YOUR_USERNAME"
MQTT_PASSWORD = "YOUR_PASSWORD"
MQTT_CLIENT_ID = "YOUR_CLIENDID"
client = cayenne.CayenneMQTTClient()
client.begin(MQTT_USERNAME, MQTT_PASSWORD, MQTT_CLIENT_ID)
timestamp = 0
while True:
client.loop()
if (time.time() > timestamp + 5):
humidity11, temp11 = Adafruit_DHT.read_retry(11, 18) #11 is the sensor type, 18 is the GPIO pin number that DATA wire is connected to
humidity22, temp22 = Adafruit_DHT.read_retry(22, 19) #22 is the sensor type, 19 is the GPIO pin number that DATA wire is connected to
if temp11 is not None:
client.virtualWrite(1, temp11, cayenne.TYPE_TEMPERATURE, cayenne.UNIT_CELSIUS)
if humidity11 is not None:
client.virtualWrite(2, humidity11, cayenne.TYPE_RELATIVE_HUMIDITY, cayenne.UNIT_PERCENT)
if temp22 is not None:
client.virtualWrite(3, temp22, cayenne.TYPE_TEMPERATURE, cayenne.UNIT_CELSIUS)
if humidity22 is not None:
client.virtualWrite(4, humidity22, cayenne.TYPE_RELATIVE_HUMIDITY, cayenne.UNIT_PERCENT)
timestamp = time.time()
Thank you, very much.
In Monday I will test for sure that is working with DHT22! Stay tuned ![]()
I just tried running the script…with my DHT22…i got the following error message:
Yes I have a mistake! Sorry! I put one more space than needed! Sorry.
Can you try with this code:
import cayenne.client as cayenne
import time
import Adafruit_DHT
time.sleep(60) #Sleep to allow wireless to connect before starting MQTT
MQTT_USERNAME = "YOUR_USERNAME"
MQTT_PASSWORD = "YOUR_PASSWORD"
MQTT_CLIENT_ID = "YOUR_CLIENDID"
client = cayenne.CayenneMQTTClient()
client.begin(MQTT_USERNAME, MQTT_PASSWORD, MQTT_CLIENT_ID)
timestamp = 0
while True:
client.loop()
if (time.time() > timestamp + 5):
humidity11, temp11 = Adafruit_DHT.read_retry(11, 18) #11 is the sensor type, 18 is the GPIO pin number that DATA wire is connected to
humidity22, temp22 = Adafruit_DHT.read_retry(22, 19) #22 is the sensor type, 19 is the GPIO pin number that DATA wire is connected to
if temp11 is not None:
client.virtualWrite(1, temp11, cayenne.TYPE_TEMPERATURE, cayenne.UNIT_CELSIUS)
if humidity11 is not None:
client.virtualWrite(2, humidity11, cayenne.TYPE_RELATIVE_HUMIDITY, cayenne.UNIT_PERCENT)
if temp22 is not None:
client.virtualWrite(3, temp22, cayenne.TYPE_TEMPERATURE, cayenne.UNIT_CELSIUS)
if humidity22 is not None:
client.virtualWrite(4, humidity22, cayenne.TYPE_RELATIVE_HUMIDITY, cayenne.UNIT_PERCENT)
timestamp = time.time()
Also when you copy it, sometimes some more spaces are added. I use pycharm just for indentation verification.
No need to be sorry, you`re doing a great service to the community…
with the new script i get this error message:
I start the command with sudo python3
I was able to get rid of the error message using
sudo pip install cayenne-mqtt
The DHT22 seam to be Online but there are no widgets in the menu
Can you try sudo pip3 install cayenne-mqtt
and then run the file with sudo python3 filename.py
Yes, I need to research about this message. It is ok to receive messages but with measurements of the sensor, not this one
sudo pip3 install cayenne-mqtt
gives me the following error message:
As it turns out, i’ve got some spare time at this moment…if you need someone for troubleshooting, keep the sugestions coming ![]()
You properly connected the DHT22 sensor and edit the code for the GPIO wire?
I will investigate this error and try to give you suggestions. Les’t get back to the empty dashboard to try send data using python2 (sudo python) command. Because I run my code using python3
This is the Script I`m using…
import cayenne.client as cayenne
import time
import Adafruit_DHT
time.sleep(60) #Sleep to allow wireless to connect before starting MQTT
MQTT_USERNAME = "e4c4f330-c845-11e6-bd19-2daeb3a13a46"
MQTT_PASSWORD = "4471f03b7f4cd13453a6d95724dbbe92ee409efc"
MQTT_CLIENT_ID = "4c88c740-0706-11e7-a905-f3d1e6fb8dd5"
client = cayenne.CayenneMQTTClient()
client.begin(MQTT_USERNAME, MQTT_PASSWORD, MQTT_CLIENT_ID)
timestamp = 0
while True:
client.loop()
if (time.time() > timestamp + 5):
# humidity11, temp11 = Adafruit_DHT.read_retry(11, 18) #11 is the sensor type, 18 is the GPIO pin number that DATA wire is connected to
humidity22, temp22 = Adafruit_DHT.read_retry(22, 26) #22 is the sensor type, 19 is the GPIO pin number that DATA wire is connected to
# if temp11 is not None:
# client.virtualWrite(1, temp11, cayenne.TYPE_TEMPERATURE, cayenne.UNIT_CELSIUS)
# if humidity11 is not None:
# client.virtualWrite(2, humidity11, cayenne.TYPE_RELATIVE_HUMIDITY, cayenne.UNIT_PERCENT)
if temp22 is not None:
client.virtualWrite(3, temp22, cayenne.TYPE_TEMPERATURE, cayenne.UNIT_CELSIUS)
if humidity22 is not None:
client.virtualWrite(4, humidity22, cayenne.TYPE_RELATIVE_HUMIDITY, cayenne.UNIT_PERCENT)
timestamp = time.time()
The DHT is connected to 3,3V, GPIO 26 & GND…
I going to take a picture… ~5min
When I try to run my code with sudo python myfile.py I get the same error as you:
Traceback (most recent call last):
File "dht11.py", line 1, in <module>
import cayenne.client as cayenne
ImportError: No module named cayenne.client
I think that it is because I install cayenne-mqtt using python3.
Can you run sudo apt-get install python3-pip
We have Liftoff!![]()
sudo python2 /home/pi/python/tempsensor.py
Seams to work, but unfortunatly i get some Reading-error.
but this might be because of the 3-4Meter Cable I`m using.
sudo apt-get install python3-pip
is already installed