Advertisement
Guest User

Untitled

a guest
Aug 5th, 2015
236
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.12 KB | None | 0 0
  1. #!/usr/bin/python
  2. import ec3k
  3. import signal
  4. import time
  5.  
  6. want_stop = False
  7.  
  8. def handler(signum, frame):
  9.         global want_stop
  10.         print "Signal %d caught! Stopping..." % (signum,)
  11.         want_stop = True
  12.  
  13. def main():
  14.         signal.signal(signal.SIGTERM, handler)
  15.         signal.signal(signal.SIGINT, handler)
  16.  
  17.         filehandlers = dict()
  18.  
  19.         def callback(state):
  20.                 id = "%04x" % state.id
  21.  
  22.                 if not id in filehandlers:
  23.                         file = "/var/run/ec3k/%s" % id
  24.                         filehandlers[id] = open(file, "w")
  25.  
  26.                 filehandlers[id].seek(0,0)
  27.                 filehandlers[id].write("%d,%s,%d,%d" % (int(time.time()),id, state.time_total, state.energy))
  28.  
  29.         my_ec3k = ec3k.EnergyCount3K(callback=callback, freq=868.185e6)
  30.         my_ec3k.start()
  31.  
  32.         while not want_stop:
  33.                 time.sleep(60)
  34.                 #print "Noise level: %.1f dB" % (my_ec3k.noise_level,)
  35.  
  36.         my_ec3k.stop()
  37.  
  38.         for handle in filehandlers:
  39.                 filehandlers[handle].close()
  40.  
  41. if __name__ == '__main__':
  42.         main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement