Guest User

Untitled

a guest
Sep 22nd, 2013
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.91 KB | None | 0 0
  1. 0 NUL 20 DLE 40 SP 60 0 100 @ 120 P 140 ` 160 p
  2.  
  3. -guinominous here, help please - .py gateway code test - problems with 16-bit negotiations on remote devices
  4.  
  5. import time
  6. import logging
  7.  
  8. #from tests.SerialMock import Serial
  9. from serial import Serial
  10. from libs.config import Config
  11. from libs.xbee_wrapper import XBeeWrapper
  12.  
  13. class Xbee2Console(object):
  14.  
  15. xbee = None
  16.  
  17. def log(self, level, message):
  18. if self.logger:
  19. self.logger.log(level, message)
  20.  
  21. def xbee_on_message(self, address, port, value):
  22. """
  23. Message from the radio coordinator
  24. """
  25. self.log(logging.DEBUG, "%s %s %s" % (address, port, value))
  26.  
  27. def run(self):
  28. """
  29. Entry point, initiates components and loops forever...
  30. """
  31. self.xbee.on_message = self.xbee_on_message
  32. self.xbee.log = self.log
  33. self.xbee.connect()
  34.  
  35. try:
  36. while True:
  37. time.sleep(.1)
  38. except KeyboardInterrupt:
  39. pass
  40.  
  41. self.xbee.disconnect()
  42. self.log(logging.INFO, "Exiting")
  43.  
  44. if __name__ == "__main__":
  45.  
  46. config = Config('config/xbee2mqtt.yaml')
  47.  
  48. handler = logging.StreamHandler()
  49. formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
  50. handler.setFormatter(formatter)
  51.  
  52. logger = logging.getLogger()
  53. logger.setLevel(logging.DEBUG)
  54. logger.addHandler(handler)
  55.  
  56. serial = Serial(
  57. config.get('radio', 'port', '/dev/ttyUSB0'),
  58. config.get('radio', 'baudrate', 9600)
  59. )
  60.  
  61. # Sample data when using SerialMock
  62. # serial.feed('920013a200406bfd090123010110008010000B00') # IO Sample DIO12:1, ADC7(Supply Voltage):2816
  63.  
  64. xbee = XBeeWrapper()
  65. xbee.serial = serial
  66. xbee.default_port_name = config.get('radio', 'default_port_name', 'serial')
  67.  
  68. manager = Xbee2Console()
  69. manager.xbee = xbee
  70. manager.logger = logger
  71. manager.run()
Advertisement
Add Comment
Please, Sign In to add comment