def kill(self): ''' function call to kill the current running ''' if self.event != None: self.event.cancel() accelerometer.disable()
def get_accelerometer_activity(): accelerometer.enable() i = 0 asum = 0.0 lastx = lasty = lastz = 0 sleep(0.2) val = accelerometer.acceleration[:3] if (not val == (None, None, None)): lastx = val[0] lasty = val[1] lastz = val[2] Logger.info("x: " + str(val[0]) + " y: " + str(val[1]) + " z: " + str(val[2])) while i < 5: val = accelerometer.acceleration[:3] if (not val == (None, None, None)): asum += abs(val[0] - lastx) + abs(val[1] - lasty) + abs(val[2] - lastz) Logger.info("y-ac: " + str(datetime.now()) + "; asum: " + str(round(asum, 2)) + "; x: " + str(round(val[0], 2)) + " y: " + str(round(val[1], 2)) + " z: " + str(round(val[2], 2))) lastx = val[0] lasty = val[1] lastz = val[2] i += 1 else: Logger.info("no accelerometer-values at " + str(datetime.now()) + "; " + str(asum)) sleep(0.1) Logger.info("asum: " + str(asum)) accelerometer.disable() return asum, val
def iniciar(self): try: if self.pressed_start != True: #pulsamos start self.label1.text = 'Conectando ....' if self.conectar(): #conectado self.label1.text = 'Conectado' self.pressed_start = True self.boton.text = 'Parar' self.medida_y_envio( ) #realizar la lectura y el envio de datos en loop else: self.label1.text = 'Error conexion' self.pressed_start = False #lo mantenemos como false else: #pulsamos finalizar accelerometer.disable() Clock.unschedule(self.obtener_accelero) self.label1.text = 'Desconectado' self.label2.text = 'Sin datos' self.boton.text = 'Iniciar' self.pressed_start = False #reiniciamos el start/stop self.contador = 0 self.desconectar() except NotImplementedError: import traceback traceback.print_exc()
def sensor_init(self): """accelerometer est une variable globale, non reconnue par le thread""" print("Lancement de l'accéléromètre...") if self.sensor_enabled == 0: if ANDROID: # #while self.sensor_enabled == 1: # #sleep(2) try: accelerometer.enable() sleep(1) self.sensor_enabled = 1 # #self.status_msg = "Stop Accelerometer" print("Android sensor enable") except: accelerometer.disable() self.sensor_enabled = 0 print("Android sensor doesn't work!") # #self.status_msg = "Android sensor doesn't work!" else: # Linux self.status_msg = "Stop Virtual Accelerometer" self.sensor_enabled = 2 self.virtual_acceler = VirtualAccelerometer() print("Virtual sensor enabled") # Display if self.sensor_enabled == 1: sens = "Android" elif self.sensor_enabled == 2: sens = "Virtual" else : sens = "No sensor" self.client.send_message(b'/sensor', [sens.encode('utf-8')])
def close(self,instance=None): try: self.internet.close_connet() chat.screen_manager.current = "loing" Clock.unschedule(self.get_acceleration)#關閉加速度讀取 accelerometer.disable() except: pass
def menu_callback(self, button): if self.quick_and_short( button.last_touch ) and not self.in_success_screen: # Disable the devices. accelerometer.disable() self.go_to_menu() if self.engine_running: self.reset()
def disable_all(self): GlobalShared.direction = 0 GlobalShared.speed = 0 GlobalShared.forward_back = 1 GlobalShared.left_arrow = 1 GlobalShared.right_arrow = 1 accelerometer.disable() Clock.schedule_once(self.disable_clock, 2)
def onSetAccelerometer(self,state): if self.vibrate: vibrator.vibrate(0.05) if state == "down": p = AcclPopup(bindroot=self) p.open() else: accelerometer.disable() Clock.unschedule(self.accl) self.padctrl.PadMode()
def do_toggle(self): if not self.sensorEnabled: accelerometer.enable() Clock.schedule_interval(self.get_acceleration, refresh_rate) self.sensorEnabled = True else: accelerometer.disable() Clock.unschedule(self.get_acceleration) self.sensorEnabled = False self.ids.toggle_acc_button.text = "Accelerometer"
def is_implemented(self): try: accelerometer.enable() print(accelerometer.acceleration[:3]) accelerometer.disable() return True except: # import traceback # traceback.print_exc() print('Accelerometer is not implemented for your platform') return False
def startGPS(): """start up the GPS""" global batteryAtStart, gpsRunning, lastGPSMeasuredAt, prevAccel if gpsService: try: gpsService.configure(on_location=on_location) gpsService.start(gpsMinTime, gpsMinDistance) accelerometer.disable() prevAccel = None logging.info("gps started") sendMsg('gps started') lastGPSMeasuredAt = datetime.datetime.now() gpsRunning = True except Exception as e: sendMsg('failed to start GPS: ' + e.message) logging.exception("failed to start gps")
def do_toggle(self): try: if not self.sensorEnabled: accelerometer.enable() Clock.schedule_interval(self.get_acceleration, 5/1000) self.sensorEnabled = True else: accelerometer.disable() self.reset_plots() Clock.unschedule(self.get_acceleration) self.sensorEnabled = False except NotImplementedError: popup = ErrorPopup() popup.open()
def pressed1(self): try: if not self.sensorEnabled: accelerometer.enable() Clock.schedule_interval(self.get_acceleration, 1 / 20.) self.sensorEnabled = True self.ids.button1.text = "Stop" else: accelerometer.disable() Clock.unschedule(self.get_acceleration) self.sensorEnabled = False self.ids.button1.text = "Start" except NotImplementedError: import traceback; traceback.print_exc() self.ids.status.text = "Accelerometer is not supported for your platform"
def do_toggle(self): try: if not self.sensorEnabled: accelerometer.enable() Clock.schedule_interval(self.get_acceleration, 1 / 20.) self.sensorEnabled = True self.ids.toggle_button.text = "Stop Accelerometer" else: accelerometer.disable() Clock.unschedule(self.get_acceleration) self.sensorEnabled = False self.ids.toggle_button.text = "Start Accelerometer" except NotImplementedError: import traceback; traceback.print_exc() self.ids.accel_status.text = "Accelerometer is not implemented for your platform"
def do_toggle(self): try: if not self.sensorEnabled: accelerometer.enable() Clock.schedule_interval(self.get_acceleration, 1 / 20.) self.sensorEnabled = True self.ids.toggle_button.text = "Stop Accelerometer" else: accelerometer.disable() self.reset_plots() Clock.unschedule(self.get_acceleration) self.sensorEnabled = False self.ids.toggle_button.text = "Start Accelerometer" except NotImplementedError: popup = ErrorPopup() popup.open()
def do_toggle(self): try: if not self.sensorEnabled: accelerometer.enable() Clock.schedule_interval(self.get_acceleration, 1 / 20.) self.sensorEnabled = True self.ids.toggle_button.text = "Stop Accelerometer" else: accelerometer.disable() self.reset_plots() Clock.unschedule(self.get_acceleration) self.sensorEnabled = False self.ids.toggle_button.text = "Start Accelerometer" except NotImplementedError: popup = ErrorPopup() popup.open()
def do_toggle(self): if self.sensor_status: try: accelerometer.enable() #increase the value of denominator to get more accurate /real time values Clock.schedule_interval(self.get_acceleration, 1.0 / 3) self.sensor_status = False self.ids.togglebutton.text = 'Stop' self.ids.value.text = 'Sending data to host' except: self.ids.value.text = 'Try Again Later' else: self.sensor_status = True self.ids.togglebutton.text = 'Start' self.ids.value.text = 'start again' accelerometer.disable() Clock.unschedule(self.get_acceleration) self.fh.close()
def do_toggle(self): try: if not self.sensorEnabled: accelerometer.enable() Clock.schedule_interval(self.get_acceleration, 1 / 20.) self.sensorEnabled = True self.ids.toggle_button.text = "Stop Accelerometer" else: accelerometer.disable() Clock.unschedule(self.get_acceleration) self.sensorEnabled = False self.ids.toggle_button.text = "Start Accelerometer" except NotImplementedError: import traceback traceback.print_exc() status = "Accelerometer is not implemented for your platform" self.ids.accel_status.text = status
def tofile(self): try: if self.pressed_start != True: #pulsamos start self.label1.text = 'Guardando datos en archivo' self.archivo = open('Datos.txt', 'w') self.archivo.write('dT=' + str(dT) + '\n') self.pressed_start = True self.medida_y_envio(True) else: #pulsamos finalizar accelerometer.disable() Clock.unschedule(self.write_accelero) self.label1.text = 'Desconectado' self.label2.text = 'Datos guardados en \n' + os.getcwd() self.archivo.close() self.pressed_start = False #reiniciamos el start/stop self.contador = 0 except NotImplementedError: import traceback traceback.print_exc()
def startrecording(self): popup = Popup(content=Label( text='Make sure to center your phone on the net before continuing' ), size_hint=(0.4, 0.4)) popup.open() if self.ids.recordbutton.text == "Start Recording Positions": #collecting accelerometer data accelerometer.enable() Clock.schedule_interval(self.get_acceleration, 1 / 20.) self.ids.recordbutton.text = "Stop Recording Position Data" self.ids.recordinglabel.text = "Recording Data Now!" screens[2].animate() else: accelerometer.disable() Clock.unschedule(self.get_acceleration) self.ids.recordbutton.text = "Finished Game!" self.ids.recordinglabel.text = "Finished Game! Waiting for other's data to send!" self.ids.recordbutton.disabled = True
def mk_hardware_accelerometer_off(): """ Turn off accelerometer """ accelerometer.disable() Clock.unschedule(mk_get_acceleration)
def on_stop(self, msg): print("stop =", msg) accelerometer.disable() # Fin de boucle avec msg = 0 self.loop = int(msg)
def publish_terminal(self, terminal, _data_queue): terminal.insert_text("\n") if (platform == 'android') or (platform == 'ios'): try: vibrator.vibrate(1) except: pass #Accelerometer if self._data_object.get("sensor") == "Accelerometer": try: accelerometer.enable() except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return previous_payload_hash = None while True: if _data_queue.empty() is False: qdata = _data_queue.get() if qdata == "exit": try: accelerometer.disable() except: pass break if None in accelerometer.acceleration: pass else: payload_hash = hashlib.md5(str(accelerometer.acceleration).encode('utf-8')).hexdigest() if (previous_payload_hash is not None): if (previous_payload_hash == payload_hash): pass else: previous_payload_hash = payload_hash payload = "(x, y, z): " + str(accelerometer.acceleration) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return time.sleep(0.1) else: payload = "(x, y, z): " + str(accelerometer.acceleration) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return time.sleep(0.1) #Compass elif self._data_object.get("sensor") == "Compass": try: compass.enable() except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return previous_payload_hash = None while True: if _data_queue.empty() is False: qdata = _data_queue.get() if qdata == "exit": try: compass.disable() except: pass break if None in compass.field: pass else: payload_hash = hashlib.md5(str(compass.field).encode('utf-8')).hexdigest() if (previous_payload_hash is not None): if (previous_payload_hash == payload_hash): pass else: previous_payload_hash = payload_hash payload = "(x, y, z): " + str(compass.field) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return time.sleep(0.1) else: payload = "(x, y, z): " + str(compass.field) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return time.sleep(0.1) #GPS elif self._data_object.get("sensor") == "GPS": try: gps.configure(on_location=self.on_location, on_status=self.on_status) gps.start(1000, 0) except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return previous_payload_hash = None while True: if _data_queue.empty() is False: qdata = _data_queue.get() if qdata == "exit": try: gps.stop() except: pass break if self.gps_location is None: pass else: payload_hash = hashlib.md5(str(self.gps_location).encode('utf-8')).hexdigest() if (previous_payload_hash is not None): if (previous_payload_hash == payload_hash): pass else: previous_payload_hash = payload_hash payload = str(self.gps_location) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return time.sleep(3) else: payload = str(self.gps_location) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return time.sleep(0.5) #Barometer elif self._data_object.get("sensor") == "Barometer": try: barometer.enable() except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return previous_payload_hash = None while True: if _data_queue.empty() is False: qdata = _data_queue.get() if qdata == "exit": try: barometer.disable() except: pass break if barometer.pressure is None: pass else: payload_hash = hashlib.md5(str(barometer.pressure).encode('utf-8')).hexdigest() if (previous_payload_hash is not None): if (previous_payload_hash == payload_hash): pass else: previous_payload_hash = payload_hash payload = "hPa: " + str(barometer.pressure) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return time.sleep(0.1) else: payload = "hPa: " + str(barometer.pressure) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return #Gravity elif self._data_object.get("sensor") == "Gravity": try: gravity.enable() except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return previous_payload_hash = None while True: if _data_queue.empty() is False: qdata = _data_queue.get() if qdata == "exit": try: gravity.disable() except: pass break if None in gravity.gravity: pass else: payload_hash = hashlib.md5(str(gravity.gravity).encode('utf-8')).hexdigest() if (previous_payload_hash is not None): if (previous_payload_hash == payload_hash): pass else: previous_payload_hash = payload_hash payload = "(x, y, z): " + str(gravity.gravity) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return time.sleep(0.1) else: payload = "(x, y, z): " + str(gravity.gravity) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return #Gyroscope elif self._data_object.get("sensor") == "Gyroscope": try: gyroscope.enable() except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return previous_payload_hash = None while True: if _data_queue.empty() is False: qdata = _data_queue.get() if qdata == "exit": try: gyroscope.disable() except: pass break if None in gyroscope.rotation: pass else: payload_hash = hashlib.md5(str(gyroscope.rotation).encode('utf-8')).hexdigest() if (previous_payload_hash is not None): if (previous_payload_hash == payload_hash): pass else: previous_payload_hash = payload_hash payload = "(x, y, z): " + str(gyroscope.rotation) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return time.sleep(0.1) else: payload = "(x, y, z): " + str(gyroscope.rotation) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return else: pass else: while True: if _data_queue.empty() is False: qdata = _data_queue.get() if qdata == "exit": break payload = "time: " + str(time.strftime("%c", time.gmtime())) terminal.insert_text(payload + "\n") if (self._data_object.get("protocol") != "terminal"): try: terminal.insert_text("xmit status: " + self.xmit_payload(payload) + "\n") except Exception as _exp: terminal.insert_text("Exception: " + str(_exp) + "\n") return time.sleep(2)
def stop_client(self, instance): self.event.cancel() accelerometer.disable()
def on_pause(self): Clock.unschedule(self.get_acceleration) if self.has_accelerometer: accelerometer.disable()
def stop_clock(self): Clock.unschedule(self.update_tele_coordinates, all=True) accelerometer.disable() self.accOn = 0
def stop(self): if self.working: accelerometer.disable()