Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
tutorials_devicehub [2016/12/16 05:17]
admin [Sending Commands to the Nodes]
tutorials_devicehub [2017/04/01 06:50] (current)
admin [Sending Commands to the Nodes]
Line 36: Line 36:
 def analog_input(dev,​ sensor): def analog_input(dev,​ sensor):
     value = randint(0, 1023)     value = randint(0, 1023)
-    sensor.addValue(value)+    sensor.addValue(float(value.strip()))
     dev.send()     dev.send()
     print value     print value
Line 178: Line 178:
 DEVICE_UUID ​    = 'your Device UUID' DEVICE_UUID ​    = 'your Device UUID'
 API_KEY ​        = 'your API KEY' API_KEY ​        = 'your API KEY'
-AN_SENSOR_NAME ​ = '​LED'​ #make sure your actuator has the same name on DeviceHub!+ACTUATOR_NAME1 ​ = '​LED'​ #make sure your actuator has the same name on DeviceHub!
    
    
Line 208: Line 208:
 from devicehub import Sensor, Actuator, Device, Project from devicehub import Sensor, Actuator, Device, Project
 from time import sleep from time import sleep
 +import serial
    
 PROJECT_ID ​     = 'your project ID' PROJECT_ID ​     = 'your project ID'
Line 221: Line 222:
  
 def act1_callback(payload):​ def act1_callback(payload):​
-    ​"""​ +    ​global red
-    :param payload: mqtt payload message +
-    """​+
     print ACT1.state     print ACT1.state
     red = str(ACT1.state)     red = str(ACT1.state)
- + 
 +def act2_callback(payload):​ 
 +    global green 
 +    print ACT2.state 
 +    green = str(ACT2.state) 
 +     
 +def act3_callback(payload):​ 
 +    global blue 
 +    print ACT3.state 
 +    blue = str(ACT3.state) 
 +     
 project = Project(PROJECT_ID) project = Project(PROJECT_ID)
 device = Device(project,​ DEVICE_UUID,​ API_KEY) device = Device(project,​ DEVICE_UUID,​ API_KEY)
    
-ACT1 = Actuator(Actuator.ANALOG, ​ACTUATOR_NAME1+ACT1 = Actuator(Actuator.ANALOG, ​AN1_SENSOR_NAME) 
- +ACT2 = Actuator(Actuator.ANALOG,​ AN2_SENSOR_NAME) 
 +ACT3 = Actuator(Actuator.ANALOG,​ AN3_SENSOR_NAME
 device.addActuator(ACT1,​ act1_callback) device.addActuator(ACT1,​ act1_callback)
- +device.addActuator(ACT2,​ act2_callback) 
 +device.addActuator(ACT3,​ act3_callback)  
 + 
 +# Make sure you have the correct port and baud rate selected 
 +# For Windows, use COMx instead of ttyUSB 
 +ser=serial.Serial('/​dev/​ttyUSB0',​ 9600)  
 try: try:
     while True:     while True:
-        ​pass+        ​ser.write(red + ','​ + green + ','​ + blue + '​\n'​) #send RGB values as CSV 
 +        sleep(1.0)
 except KeyboardInterrupt: ​           except KeyboardInterrupt: ​          
     print '​Goodbye!'​     print '​Goodbye!'​
     ​     ​
 </​code>​ </​code>​
 +
 +Now we need to write an Arduino sketch for the Sparrow node to read the CSV data from the serial port and refresh the color on the LED:
  
 <code C> <code C>
Line 246: Line 266:
 // pins for the LEDs: // pins for the LEDs:
 const int redPin = 8; const int redPin = 8;
-const int greenPin = 11+const int greenPin = 11;
 const int bluePin = 10; const int bluePin = 10;