Ading data collection script for spell capturing
This commit is contained in:
+3
-1
@@ -195,4 +195,6 @@ fabric.properties
|
|||||||
.idea/httpRequests
|
.idea/httpRequests
|
||||||
|
|
||||||
# Android studio 3.1+ serialized cache file
|
# Android studio 3.1+ serialized cache file
|
||||||
.idea/caches/build_file_checksums.ser
|
.idea/caches/build_file_checksums.ser
|
||||||
|
|
||||||
|
data
|
||||||
Generated
+2
-2
@@ -2,9 +2,9 @@
|
|||||||
<module type="PYTHON_MODULE" version="4">
|
<module type="PYTHON_MODULE" version="4">
|
||||||
<component name="NewModuleRootManager">
|
<component name="NewModuleRootManager">
|
||||||
<content url="file://$MODULE_DIR$">
|
<content url="file://$MODULE_DIR$">
|
||||||
<sourceFolder url="file://$MODULE_DIR$/kano-wand-2" isTestSource="false" />
|
<excludeFolder url="file://$MODULE_DIR$/data" />
|
||||||
</content>
|
</content>
|
||||||
<orderEntry type="inheritedJdk" />
|
<orderEntry type="jdk" jdkName="Python 3.7" jdkType="Python SDK" />
|
||||||
<orderEntry type="sourceFolder" forTests="false" />
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
</component>
|
</component>
|
||||||
<component name="TestRunnerService">
|
<component name="TestRunnerService">
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
from .shop import Shop
|
||||||
|
from .wand import Wand
|
||||||
|
from .constants import *
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
from enum import Enum
|
||||||
|
|
||||||
|
class INFO(Enum):
|
||||||
|
"""Enum containing info UUIDs"""
|
||||||
|
SERVICE = '64a70010-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
ORGANIZATION_CHAR = '64a7000b-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
SOFTWARE_CHAR = '64a70013-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
HARDWARE_CHAR = '64a70001-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
|
||||||
|
class IO(Enum):
|
||||||
|
"""Enum containing _IO UUIDs"""
|
||||||
|
SERVICE = '64a70012-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
BATTERY_CHAR = '64a70007-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
USER_BUTTON_CHAR = '64a7000d-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
VIBRATOR_CHAR = '64a70008-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
LED_CHAR = '64a70009-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
KEEP_ALIVE_CHAR = '64a7000f-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
|
||||||
|
class SENSOR(Enum):
|
||||||
|
"""Enum containing sensor UUIDs"""
|
||||||
|
SERVICE = '64a70011-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
TEMP_CHAR = '64a70014-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
QUATERNIONS_CHAR = '64a70002-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
# RAW_CHAR = '64a7000a-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
# MOTION_CHAR = '64a7000c-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
MAGN_CALIBRATE_CHAR = '64a70021-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
QUATERNIONS_RESET_CHAR = '64a70004-f691-4b93-a6f4-0968f5b648f8'
|
||||||
|
|
||||||
|
|
||||||
|
class PATTERN(Enum):
|
||||||
|
"""Enum for wand vibration patterns"""
|
||||||
|
REGULAR = 1
|
||||||
|
SHORT = 2
|
||||||
|
BURST = 3
|
||||||
|
LONG = 4
|
||||||
|
SHORT_LONG = 5
|
||||||
|
SHORT_SHORT = 6
|
||||||
|
BIG_PAUSE = 7
|
||||||
@@ -1,11 +1,13 @@
|
|||||||
from bleak import discover
|
from bleak import discover
|
||||||
from wand import Wand
|
from .wand import Wand
|
||||||
|
|
||||||
class Shop(object):
|
class Shop(object):
|
||||||
"""A scanner class to connect to wands
|
"""
|
||||||
|
A scanner class to connect to wands
|
||||||
"""
|
"""
|
||||||
def __init__(self, shop_loop, wand_class=Wand, debug=False):
|
def __init__(self, shop_loop, wand_class=Wand, debug=False):
|
||||||
"""Create a new scanner
|
"""
|
||||||
|
Create a new scanner
|
||||||
|
|
||||||
Keyword Arguments:
|
Keyword Arguments:
|
||||||
wand_class {class} -- Class to use when connecting to wand (default: {Wand})
|
wand_class {class} -- Class to use when connecting to wand (default: {Wand})
|
||||||
@@ -19,7 +21,8 @@ class Shop(object):
|
|||||||
self._mac = None
|
self._mac = None
|
||||||
|
|
||||||
async def scan(self, prefix="Kano-Wand", mac=None, timeout=2.0, connect=False):
|
async def scan(self, prefix="Kano-Wand", mac=None, timeout=2.0, connect=False):
|
||||||
"""Scan for devices
|
"""
|
||||||
|
Scan for devices
|
||||||
|
|
||||||
Keyword Arguments:
|
Keyword Arguments:
|
||||||
name {str} -- Name of the device to scan for (default: {None})
|
name {str} -- Name of the device to scan for (default: {None})
|
||||||
@@ -53,7 +56,7 @@ class Shop(object):
|
|||||||
devices = list(filter(lambda x : x.address == self.mac, devices))
|
devices = list(filter(lambda x : x.address == self.mac, devices))
|
||||||
print(devices)
|
print(devices)
|
||||||
|
|
||||||
self.wands = [Wand(d.address, d.name, self.shop_loop) for d in devices]
|
self.wands = [self.wand_class(d.address, d.name, self.shop_loop) for d in devices]
|
||||||
print(self.wands)
|
print(self.wands)
|
||||||
if connect:
|
if connect:
|
||||||
for wand in self.wands:
|
for wand in self.wands:
|
||||||
@@ -0,0 +1,422 @@
|
|||||||
|
import asyncio
|
||||||
|
import numpy as np
|
||||||
|
|
||||||
|
from .constants import *
|
||||||
|
from bleak import BleakClient
|
||||||
|
|
||||||
|
|
||||||
|
class Wand(object):
|
||||||
|
"""
|
||||||
|
A wand class to interact with the Kano wand
|
||||||
|
"""
|
||||||
|
|
||||||
|
def __init__(self, device_addr, name, bot_loop, debug=True):
|
||||||
|
"""
|
||||||
|
Create a new wand
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
device {bluepy.ScanEntry} -- Device information
|
||||||
|
|
||||||
|
Keyword Arguments:
|
||||||
|
debug {bool} -- Print debug messages (default: {False})
|
||||||
|
"""
|
||||||
|
self.debug = debug
|
||||||
|
self._dev = BleakClient(device_addr)
|
||||||
|
self.name = name
|
||||||
|
self.bot_loop = bot_loop
|
||||||
|
|
||||||
|
if debug:
|
||||||
|
print("Wand: {}\n\rWand Mac: {}".format(self.name, self._dev.address))
|
||||||
|
|
||||||
|
# Notification stuff
|
||||||
|
self.connected = False
|
||||||
|
self._position_callbacks = {}
|
||||||
|
self._position_subscribed = False
|
||||||
|
self._button_callbacks = {}
|
||||||
|
self._button_subscribed = False
|
||||||
|
self._temperature_callbacks = {}
|
||||||
|
self._temperature_subscribed = False
|
||||||
|
self._battery_callbacks = {}
|
||||||
|
self._battery_subscribed = False
|
||||||
|
self._notification_thread = None
|
||||||
|
self._position_notification_handle = 41
|
||||||
|
self._button_notification_handle = 33
|
||||||
|
self._temp_notification_handle = 56
|
||||||
|
self._battery_notification_handle = 23
|
||||||
|
|
||||||
|
async def connect(self):
|
||||||
|
if self.debug:
|
||||||
|
print("Connecting to {}...".format(self.name))
|
||||||
|
|
||||||
|
connected = await self._dev.connect()
|
||||||
|
if not connected:
|
||||||
|
raise Exception("ERROR NOT CONNECTED TO THE DEVICE")
|
||||||
|
|
||||||
|
self.connected = True
|
||||||
|
await self.post_connect()
|
||||||
|
|
||||||
|
if self.debug:
|
||||||
|
print("Connected to {}".format(self.name))
|
||||||
|
|
||||||
|
async def post_connect(self):
|
||||||
|
"""
|
||||||
|
Do anything necessary after connecting
|
||||||
|
"""
|
||||||
|
pass
|
||||||
|
|
||||||
|
async def disconnect(self):
|
||||||
|
|
||||||
|
await self._dev.disconnect()
|
||||||
|
self.connected = False
|
||||||
|
await self.post_disconnect()
|
||||||
|
|
||||||
|
if self.debug:
|
||||||
|
print("Disconnected from {}".format(self.name))
|
||||||
|
|
||||||
|
async def post_disconnect(self):
|
||||||
|
"""
|
||||||
|
Do anything necessary after disconnecting
|
||||||
|
"""
|
||||||
|
pass
|
||||||
|
|
||||||
|
async def get_organization(self):
|
||||||
|
"""
|
||||||
|
Get organization of device
|
||||||
|
Returns {str} -- Organization name
|
||||||
|
"""
|
||||||
|
result = await self._dev.read_gatt_char(INFO.ORGANIZATION_CHAR.value)
|
||||||
|
return result.decode("utf-8")
|
||||||
|
|
||||||
|
async def get_software_version(self):
|
||||||
|
"""
|
||||||
|
Get software version
|
||||||
|
Returns {str} -- Version number
|
||||||
|
"""
|
||||||
|
result = await self._dev.read_gatt_char(INFO.SOFTWARE_CHAR.value)
|
||||||
|
return result.decode("utf-8")
|
||||||
|
|
||||||
|
async def get_hardware_version(self):
|
||||||
|
|
||||||
|
"""
|
||||||
|
Get hardware version
|
||||||
|
Returns {str} -- Hardware version
|
||||||
|
"""
|
||||||
|
result = await self._dev.read_gatt_char(INFO.HARDWARE_CHAR.value)
|
||||||
|
return result.decode("utf-8")
|
||||||
|
|
||||||
|
async def get_battery(self):
|
||||||
|
"""
|
||||||
|
Get battery level (currently only returns 0)
|
||||||
|
Returns {str} -- Battery level
|
||||||
|
"""
|
||||||
|
result = await self._dev.read_gatt_char(IO.BATTERY_CHAR.value)
|
||||||
|
print(f"battery is {result}")
|
||||||
|
print(f"battery is {result.decode('utf-8')}")
|
||||||
|
return result.decode("utf-8")
|
||||||
|
|
||||||
|
async def get_button(self):
|
||||||
|
"""
|
||||||
|
Get current button status
|
||||||
|
Returns {bool} -- Button pressed status
|
||||||
|
"""
|
||||||
|
data = await self._dev.read_gatt_char(IO.USER_BUTTON_CHAR.value)
|
||||||
|
return data[0] == 1
|
||||||
|
|
||||||
|
async def get_temperature(self):
|
||||||
|
"""
|
||||||
|
Get temperature
|
||||||
|
|
||||||
|
Returns {str} -- Battery level
|
||||||
|
"""
|
||||||
|
# with self._lock:
|
||||||
|
# if not hasattr(self, "_temperature_handle"):
|
||||||
|
# handle = self._sensor_service.getCharacteristics(SENSOR.TEMP_CHAR.value)[0]
|
||||||
|
# self._temperature_handle = handle.getHandle()
|
||||||
|
result = await self._dev.read_gatt_char(SENSOR.TEMP_CHAR.value)
|
||||||
|
print(f"temp is {result}")
|
||||||
|
return result
|
||||||
|
|
||||||
|
async def keep_alive(self):
|
||||||
|
"""
|
||||||
|
Keep the wand's connection active
|
||||||
|
|
||||||
|
Returns {bytes} -- Status
|
||||||
|
"""
|
||||||
|
if self.debug:
|
||||||
|
print("Keeping wand alive.")
|
||||||
|
return await self._dev.write_gatt_char(IO.KEEP_ALIVE_CHAR.value, bytes([1]), response=True)
|
||||||
|
|
||||||
|
async def vibrate(self, pattern=PATTERN.REGULAR):
|
||||||
|
"""
|
||||||
|
Vibrate wand with pattern
|
||||||
|
|
||||||
|
Keyword Arguments:
|
||||||
|
pattern {kano_wand.PATTERN} -- Vibration pattern (default: {PATTERN.REGULAR})
|
||||||
|
|
||||||
|
Returns {bytes} -- Status
|
||||||
|
"""
|
||||||
|
if isinstance(pattern, PATTERN):
|
||||||
|
message = [pattern.value]
|
||||||
|
else:
|
||||||
|
message = [pattern]
|
||||||
|
if self.debug:
|
||||||
|
print("Setting Vibration to {}".format(message))
|
||||||
|
return await self._dev.write_gatt_char(IO.VIBRATOR_CHAR.value, bytes(message), response=True)
|
||||||
|
|
||||||
|
async def set_led(self, color="0x2185d0", on=True):
|
||||||
|
"""
|
||||||
|
Set the LED's color
|
||||||
|
|
||||||
|
Keyword Arguments:
|
||||||
|
color {str} -- Color hex code (default: {"0x2185d0"})
|
||||||
|
on {bool} -- Whether light is on or off (default: {True})
|
||||||
|
|
||||||
|
Returns {bytes} -- Status
|
||||||
|
"""
|
||||||
|
message = []
|
||||||
|
if on:
|
||||||
|
message.append(1)
|
||||||
|
else:
|
||||||
|
message.append(0)
|
||||||
|
|
||||||
|
color = int(color.replace("#", ""), 16)
|
||||||
|
r = (color >> 16) & 255
|
||||||
|
g = (color >> 8) & 255
|
||||||
|
b = color & 255
|
||||||
|
rgb = (((r & 248) << 8) + ((g & 252) << 3) + ((b & 248) >> 3))
|
||||||
|
message.append(rgb >> 8)
|
||||||
|
message.append(rgb & 0xff)
|
||||||
|
|
||||||
|
if self.debug:
|
||||||
|
print("Setting LED to {}".format(message))
|
||||||
|
return await self._dev.write_gatt_char(IO.LED_CHAR.value, bytes(message), response=True)
|
||||||
|
|
||||||
|
async def subscribe_position(self):
|
||||||
|
"""
|
||||||
|
Subscribe to position notifications and start thread if necessary
|
||||||
|
"""
|
||||||
|
if self.debug:
|
||||||
|
print("Subscribing to position notification")
|
||||||
|
self._position_subscribed = True
|
||||||
|
await self._dev.start_notify(SENSOR.QUATERNIONS_CHAR.value, self.handle_notification)
|
||||||
|
|
||||||
|
async def unsubscribe_position(self, continue_notifications=False):
|
||||||
|
"""
|
||||||
|
Unsubscribe to position notifications
|
||||||
|
|
||||||
|
Keyword Arguments:
|
||||||
|
continue_notifications {bool} -- Keep notification thread running (default: {False})
|
||||||
|
"""
|
||||||
|
if self.debug:
|
||||||
|
print("Unsubscribing from position notification")
|
||||||
|
|
||||||
|
self._position_subscribed = continue_notifications
|
||||||
|
await self._dev.stop_notify(SENSOR.QUATERNIONS_CHAR.value)
|
||||||
|
|
||||||
|
async def subscribe_button(self):
|
||||||
|
"""
|
||||||
|
Subscribe to button notifications and start thread if necessary
|
||||||
|
"""
|
||||||
|
if self.debug:
|
||||||
|
print("Subscribing to button notification")
|
||||||
|
|
||||||
|
self._button_subscribed = True
|
||||||
|
await self._dev.start_notify(IO.USER_BUTTON_CHAR.value, self.handle_notification)
|
||||||
|
|
||||||
|
async def unsubscribe_button(self, continue_notifications=False):
|
||||||
|
"""
|
||||||
|
Unsubscribe to button notifications
|
||||||
|
|
||||||
|
Keyword Arguments:
|
||||||
|
continue_notifications {bool} -- Keep notification thread running (default: {False})
|
||||||
|
"""
|
||||||
|
if self.debug:
|
||||||
|
print("Unsubscribing from button notification")
|
||||||
|
self._button_subscribed = continue_notifications
|
||||||
|
await self._dev.stop_notify(IO.USER_BUTTON_CHAR.value)
|
||||||
|
|
||||||
|
async def subscribe_temperature(self):
|
||||||
|
"""
|
||||||
|
Subscribe to temperature notifications and start thread if necessary
|
||||||
|
"""
|
||||||
|
if self.debug:
|
||||||
|
print("Subscribing to temperature notification")
|
||||||
|
|
||||||
|
self._temperature_subscribed = True
|
||||||
|
await self._dev.start_notify(SENSOR.TEMP_CHAR.value, self.handle_notification)
|
||||||
|
|
||||||
|
async def unsubscribe_temperature(self, continue_notifications=False):
|
||||||
|
"""
|
||||||
|
Unsubscribe to temperature notifications
|
||||||
|
|
||||||
|
Keyword Arguments:
|
||||||
|
continue_notifications {bool} -- Keep notification thread running (default: {False})
|
||||||
|
"""
|
||||||
|
if self.debug:
|
||||||
|
print("Unsubscribing from temperature notification")
|
||||||
|
|
||||||
|
self._temperature_subscribed = continue_notifications
|
||||||
|
await self._dev.stop_notify(SENSOR.TEMP_CHAR.value)
|
||||||
|
|
||||||
|
#
|
||||||
|
#
|
||||||
|
async def subscribe_battery(self):
|
||||||
|
"""
|
||||||
|
Subscribe to battery notifications and start thread if necessary
|
||||||
|
"""
|
||||||
|
if self.debug:
|
||||||
|
print("Subscribing to battery notification")
|
||||||
|
|
||||||
|
self._battery_subscribed = True
|
||||||
|
await self._dev.start_notify(IO.BATTERY_CHAR.value, self.handle_notification)
|
||||||
|
|
||||||
|
async def unsubscribe_battery(self, continue_notifications=False):
|
||||||
|
"""
|
||||||
|
Unsubscribe to battery notifications
|
||||||
|
|
||||||
|
Keyword Arguments:
|
||||||
|
continue_notifications {bool} -- Keep notification thread running (default: {False})
|
||||||
|
"""
|
||||||
|
if self.debug:
|
||||||
|
print("Unsubscribing from battery notification")
|
||||||
|
|
||||||
|
self._battery_subscribed = continue_notifications
|
||||||
|
await self._dev.stop_notify(IO.BATTERY_CHAR.value)
|
||||||
|
|
||||||
|
async def _on_position(self, data):
|
||||||
|
"""
|
||||||
|
Private function for position notification
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
data {bytes} -- Data from device
|
||||||
|
"""
|
||||||
|
# I got part of this from Kano's node module and modified it
|
||||||
|
y = np.int16(np.uint16(int.from_bytes(data[0:2], byteorder='little')))
|
||||||
|
x = -1 * np.int16(np.uint16(int.from_bytes(data[2:4], byteorder='little')))
|
||||||
|
w = -1 * np.int16(np.uint16(int.from_bytes(data[4:6], byteorder='little')))
|
||||||
|
z = np.int16(np.uint16(int.from_bytes(data[6:8], byteorder='little')))
|
||||||
|
|
||||||
|
if self.debug:
|
||||||
|
pitch = "Pitch: {}".format(z).ljust(16)
|
||||||
|
roll = "Roll: {}".format(w).ljust(16)
|
||||||
|
# print("{}{}(x, y): ({}, {})".format(pitch, roll, x, y))
|
||||||
|
|
||||||
|
await self.on_position(x, y, z, w)
|
||||||
|
for callback in self._position_callbacks.values():
|
||||||
|
await callback(x, y, z, w)
|
||||||
|
|
||||||
|
async def on_position(self, x, y, pitch, roll):
|
||||||
|
"""
|
||||||
|
Function called on position notification
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
x {int} -- X position of wand (Between -1000 and 1000)
|
||||||
|
y {int} -- Y position of wand (Between -1000 and 1000)
|
||||||
|
pitch {int} -- Pitch of wand (Between -1000 and 1000)
|
||||||
|
roll {int} -- Roll of wand (Between -1000 and 1000)
|
||||||
|
"""
|
||||||
|
pass
|
||||||
|
|
||||||
|
async def reset_position(self):
|
||||||
|
"""
|
||||||
|
Reset the quaternains of the wand
|
||||||
|
"""
|
||||||
|
if self.debug:
|
||||||
|
print("resetting the quarternion position")
|
||||||
|
return await self._dev.write_gatt_char(SENSOR.QUATERNIONS_RESET_CHAR.value, bytes([1]), response=True)
|
||||||
|
|
||||||
|
async def _on_button(self, data):
|
||||||
|
"""
|
||||||
|
Private function for button notification
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
data {bytes} -- Data from device
|
||||||
|
"""
|
||||||
|
val = data[0] == 1
|
||||||
|
|
||||||
|
if self.debug:
|
||||||
|
print("Button: {}".format(val))
|
||||||
|
|
||||||
|
await self.on_button(val)
|
||||||
|
for callback in self._button_callbacks.values():
|
||||||
|
await callback(val)
|
||||||
|
|
||||||
|
async def on_button(self, value):
|
||||||
|
"""
|
||||||
|
Function called on button notification
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
pressed {bool} -- If button is pressed
|
||||||
|
"""
|
||||||
|
pass
|
||||||
|
|
||||||
|
async def _on_temperature(self, data):
|
||||||
|
"""
|
||||||
|
Private function for temperature notification
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
data {bytes} -- Data from device
|
||||||
|
"""
|
||||||
|
val = np.int16(np.uint16(int.from_bytes(data[0:2], byteorder='little')))
|
||||||
|
|
||||||
|
if self.debug:
|
||||||
|
print("Temperature: {}".format(val))
|
||||||
|
|
||||||
|
await self.on_temperature(val)
|
||||||
|
for callback in self._temperature_callbacks.values():
|
||||||
|
await callback(val)
|
||||||
|
|
||||||
|
async def on_temperature(self, value):
|
||||||
|
"""
|
||||||
|
Function called on temperature notification
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
value {int} -- Temperature of the wand
|
||||||
|
"""
|
||||||
|
pass
|
||||||
|
|
||||||
|
async def _on_battery(self, data):
|
||||||
|
"""
|
||||||
|
Private function for battery notification
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
data {bytes} -- Data from device
|
||||||
|
"""
|
||||||
|
val = data[0]
|
||||||
|
|
||||||
|
if self.debug:
|
||||||
|
print("Battery: {}".format(val))
|
||||||
|
print("subscribing to the")
|
||||||
|
|
||||||
|
await self.on_battery(val)
|
||||||
|
for callback in self._battery_callbacks.values():
|
||||||
|
await callback(val)
|
||||||
|
|
||||||
|
async def on_battery(self, value):
|
||||||
|
"""
|
||||||
|
Function called on battery notification
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
value {int} -- Battery level of the wand
|
||||||
|
"""
|
||||||
|
pass
|
||||||
|
|
||||||
|
def handle_notification(self, sender, data):
|
||||||
|
"""
|
||||||
|
Handle notifications subscribed to
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
cHandle {int} -- Handle of notification
|
||||||
|
data {bytes} -- Data from device
|
||||||
|
"""
|
||||||
|
future = None
|
||||||
|
if sender == SENSOR.QUATERNIONS_CHAR.value:
|
||||||
|
future = asyncio.run_coroutine_threadsafe(self._on_position(data), self.bot_loop)
|
||||||
|
elif sender == IO.USER_BUTTON_CHAR.value:
|
||||||
|
future = asyncio.run_coroutine_threadsafe(self._on_button(data), self.bot_loop)
|
||||||
|
elif sender == SENSOR.TEMP_CHAR.value:
|
||||||
|
future = asyncio.run_coroutine_threadsafe(self._on_temperature(data), self.bot_loop)
|
||||||
|
elif sender == IO.BATTERY_CHAR.value:
|
||||||
|
future = asyncio.run_coroutine_threadsafe(self._on_battery(data), self.bot_loop)
|
||||||
|
if future != None:
|
||||||
|
future.result()
|
||||||
@@ -1,707 +0,0 @@
|
|||||||
# name='kano_wand'
|
|
||||||
# description='Python module for interfacing with the Kano wand'
|
|
||||||
# author='Jesse Lieberg (@GammaGames)'
|
|
||||||
# url='https://github.com/GammaGames/kano_wand'
|
|
||||||
|
|
||||||
from enum import Enum
|
|
||||||
import inspect
|
|
||||||
import numpy
|
|
||||||
import threading
|
|
||||||
import uuid
|
|
||||||
|
|
||||||
from time import sleep
|
|
||||||
|
|
||||||
class _INFO(Enum):
|
|
||||||
"""Enum containing info UUIDs"""
|
|
||||||
SERVICE = '64A70010-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
ORGANIZATION_CHAR = '64A7000B-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
SOFTWARE_CHAR = '64A70013-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
HARDWARE_CHAR = '64A70001-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
|
|
||||||
class _IO(Enum):
|
|
||||||
"""Enum containing _IO UUIDs"""
|
|
||||||
SERVICE = '64A70012-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
BATTERY_CHAR = '64A70007-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
USER_BUTTON_CHAR = '64A7000D-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
VIBRATOR_CHAR = '64A70008-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
LED_CHAR = '64A70009-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
KEEP_ALIVE_CHAR = '64A7000F-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
|
|
||||||
class _SENSOR(Enum):
|
|
||||||
"""Enum containing sensor UUIDs"""
|
|
||||||
SERVICE = '64A70011-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
TEMP_CHAR = '64A70014-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
QUATERNIONS_CHAR = '64A70002-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
# RAW_CHAR = '64A7000A-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
# MOTION_CHAR = '64A7000C-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
MAGN_CALIBRATE_CHAR = '64A70021-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
QUATERNIONS_RESET_CHAR = '64A70004-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
|
|
||||||
class PATTERN(Enum):
|
|
||||||
"""Enum for wand vibration patterns"""
|
|
||||||
REGULAR = 1
|
|
||||||
SHORT = 2
|
|
||||||
BURST = 3
|
|
||||||
LONG = 4
|
|
||||||
SHORT_LONG = 5
|
|
||||||
SHORT_SHORT = 6
|
|
||||||
BIG_PAUSE = 7
|
|
||||||
|
|
||||||
class Wand(Peripheral, DefaultDelegate):
|
|
||||||
"""A wand class to interact with the Kano wand
|
|
||||||
"""
|
|
||||||
|
|
||||||
def __init__(self, device, debug=False):
|
|
||||||
"""Create a new wand
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
device {bluepy.ScanEntry} -- Device information
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
debug {bool} -- Print debug messages (default: {False})
|
|
||||||
"""
|
|
||||||
super().__init__(None)
|
|
||||||
# Meta stuff
|
|
||||||
self.debug = debug
|
|
||||||
self._dev = device
|
|
||||||
self.name = device.getValueText(9)
|
|
||||||
|
|
||||||
if debug:
|
|
||||||
print("Wand: {}\n\rWand Mac: {}".format(self.name, device.addr))
|
|
||||||
|
|
||||||
# Notification stuff
|
|
||||||
self.connected = False
|
|
||||||
self._position_callbacks = {}
|
|
||||||
self._position_subscribed = False
|
|
||||||
self._button_callbacks = {}
|
|
||||||
self._button_subscribed = False
|
|
||||||
self._temperature_callbacks = {}
|
|
||||||
self._temperature_subscribed = False
|
|
||||||
self._battery_callbacks = {}
|
|
||||||
self._battery_subscribed = False
|
|
||||||
self._notification_thread = None
|
|
||||||
self._position_notification_handle = 41
|
|
||||||
self._button_notification_handle = 33
|
|
||||||
self._temp_notification_handle = 56
|
|
||||||
self._battery_notification_handle = 23
|
|
||||||
|
|
||||||
def connect(self):
|
|
||||||
if self.debug:
|
|
||||||
print("Connecting to {}...".format(self.name))
|
|
||||||
|
|
||||||
super(Wand, self).connect(self._dev)
|
|
||||||
self._lock = threading.Lock()
|
|
||||||
self.connected = True
|
|
||||||
self.setDelegate(self)
|
|
||||||
self._info_service = self.getServiceByUUID(_INFO.SERVICE.value)
|
|
||||||
self._io_service = self.getServiceByUUID(_IO.SERVICE.value)
|
|
||||||
self._sensor_service = self.getServiceByUUID(_SENSOR.SERVICE.value)
|
|
||||||
|
|
||||||
self.post_connect()
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Connected to {}".format(self.name))
|
|
||||||
|
|
||||||
def post_connect(self):
|
|
||||||
"""Do anything necessary after connecting
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def disconnect(self):
|
|
||||||
super().disconnect()
|
|
||||||
self.connected = False
|
|
||||||
self._position_subscribed = False
|
|
||||||
self._button_subscribed = False
|
|
||||||
self._temperature_subscribed = False
|
|
||||||
self._battery_subscribed = False
|
|
||||||
|
|
||||||
self.post_disconnect()
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Disconnected from {}".format(self.name))
|
|
||||||
|
|
||||||
def post_disconnect(self):
|
|
||||||
"""Do anything necessary after disconnecting
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def get_organization(self):
|
|
||||||
"""Get organization of device
|
|
||||||
|
|
||||||
Returns {str} -- Organization name
|
|
||||||
"""
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_organization_handle"):
|
|
||||||
handle = self._info_service.getCharacteristics(_INFO.ORGANIZATION_CHAR.value)[0]
|
|
||||||
self._organization_handle = handle.getHandle()
|
|
||||||
return self.readCharacteristic(self._organization_handle).decode("utf-8")
|
|
||||||
|
|
||||||
def get_software_version(self):
|
|
||||||
"""Get software version
|
|
||||||
|
|
||||||
Returns {str} -- Version number
|
|
||||||
"""
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_software_handle"):
|
|
||||||
handle = self._info_service.getCharacteristics(_INFO.SOFTWARE_CHAR.value)[0]
|
|
||||||
self._software_handle = handle.getHandle()
|
|
||||||
return self.readCharacteristic(self._software_handle).decode("utf-8")
|
|
||||||
|
|
||||||
def get_hardware_version(self):
|
|
||||||
"""Get hardware version
|
|
||||||
|
|
||||||
Returns {str} -- Hardware version
|
|
||||||
"""
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_hardware_handle"):
|
|
||||||
handle = self._info_service.getCharacteristics(_INFO.HARDWARE_CHAR.value)[0]
|
|
||||||
self._hardware_handle = handle.getHandle()
|
|
||||||
return self.readCharacteristic(self._hardware_handle).decode("utf-8")
|
|
||||||
|
|
||||||
def get_battery(self):
|
|
||||||
"""Get battery level (currently only returns 0)
|
|
||||||
|
|
||||||
Returns {str} -- Battery level
|
|
||||||
"""
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_battery_handle"):
|
|
||||||
handle = self._io_service.getCharacteristics(_IO.BATTERY_CHAR.value)[0]
|
|
||||||
self._battery_handle = handle.getHandle()
|
|
||||||
return self.readCharacteristic(self._battery_handle).decode("utf-8")
|
|
||||||
|
|
||||||
def get_button(self):
|
|
||||||
"""Get current button status
|
|
||||||
|
|
||||||
Returns {bool} -- Button pressed status
|
|
||||||
"""
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_button_handle"):
|
|
||||||
handle = self._io_service.getCharacteristics(_IO.USER_BUTTON_CHAR.value)[0]
|
|
||||||
self._button_handle = handle.getHandle()
|
|
||||||
|
|
||||||
data = self.readCharacteristic(self._button_handle)
|
|
||||||
return data[0] == 1
|
|
||||||
|
|
||||||
def get_temperature(self):
|
|
||||||
"""Get temperature
|
|
||||||
|
|
||||||
Returns {str} -- Battery level
|
|
||||||
"""
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_temperature_handle"):
|
|
||||||
handle = self._sensor_service.getCharacteristics(_SENSOR.TEMP_CHAR.value)[0]
|
|
||||||
self._temperature_handle = handle.getHandle()
|
|
||||||
return self.readCharacteristic(self._temperature_handle).decode("utf-8")
|
|
||||||
|
|
||||||
def keep_alive(self):
|
|
||||||
"""Keep the wand's connection active
|
|
||||||
|
|
||||||
Returns {bytes} -- Status
|
|
||||||
"""
|
|
||||||
# Is not documented because it doesn't seem to work?
|
|
||||||
if self.debug:
|
|
||||||
print("Keeping wand alive.")
|
|
||||||
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_alive_handle"):
|
|
||||||
handle = self._io_service.getCharacteristics(_IO.KEEP_ALIVE_CHAR.value)[0]
|
|
||||||
self._alive_handle = handle.getHandle()
|
|
||||||
return self.writeCharacteristic(self._alive_handle, bytes([1]), withResponse=True)
|
|
||||||
|
|
||||||
def vibrate(self, pattern=PATTERN.REGULAR):
|
|
||||||
"""Vibrate wand with pattern
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
pattern {kano_wand.PATTERN} -- Vibration pattern (default: {PATTERN.REGULAR})
|
|
||||||
|
|
||||||
Returns {bytes} -- Status
|
|
||||||
"""
|
|
||||||
with self._lock:
|
|
||||||
if isinstance(pattern, PATTERN):
|
|
||||||
message = [pattern.value]
|
|
||||||
else:
|
|
||||||
message = [pattern]
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Setting LED to {}".format(message))
|
|
||||||
|
|
||||||
if not hasattr(self, "_vibrator_handle"):
|
|
||||||
handle = self._io_service.getCharacteristics(_IO.VIBRATOR_CHAR.value)[0]
|
|
||||||
self._vibrator_handle = handle.getHandle()
|
|
||||||
return self.writeCharacteristic(self._vibrator_handle, bytes(message), withResponse=True)
|
|
||||||
|
|
||||||
def set_led(self, color="0x2185d0", on=True):
|
|
||||||
"""Set the LED's color
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
color {str} -- Color hex code (default: {"0x2185d0"})
|
|
||||||
on {bool} -- Whether light is on or off (default: {True})
|
|
||||||
|
|
||||||
Returns {bytes} -- Status
|
|
||||||
"""
|
|
||||||
message = []
|
|
||||||
if on:
|
|
||||||
message.append(1)
|
|
||||||
else:
|
|
||||||
message.append(0)
|
|
||||||
|
|
||||||
# I got this from Kano's node module
|
|
||||||
color = int(color.replace("#", ""), 16)
|
|
||||||
r = (color >> 16) & 255
|
|
||||||
g = (color >> 8) & 255
|
|
||||||
b = color & 255
|
|
||||||
rgb = (((r & 248) << 8) + ((g & 252) << 3) + ((b & 248) >> 3))
|
|
||||||
message.append(rgb >> 8)
|
|
||||||
message.append(rgb & 0xff)
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Setting LED to {}".format(message))
|
|
||||||
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_led_handle"):
|
|
||||||
handle = self._io_service.getCharacteristics(_IO.LED_CHAR.value)[0]
|
|
||||||
self._led_handle = handle.getHandle()
|
|
||||||
return self.writeCharacteristic(self._led_handle, bytes(message), withResponse=True)
|
|
||||||
|
|
||||||
# SENSORS
|
|
||||||
def on(self, event, callback):
|
|
||||||
"""Add an event listener
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
event {str} -- Event type, "position", "button", "temp", or "battery"
|
|
||||||
callback {function} -- Callback function
|
|
||||||
|
|
||||||
Returns {str} -- ID of the callback for removal later
|
|
||||||
"""
|
|
||||||
if self.debug:
|
|
||||||
print("Adding callback for {} notification...".format(event))
|
|
||||||
|
|
||||||
id = None
|
|
||||||
if event == "position":
|
|
||||||
id = uuid.uuid4()
|
|
||||||
self._position_callbacks[id] = callback
|
|
||||||
self.subscribe_position()
|
|
||||||
elif event == "button":
|
|
||||||
id = uuid.uuid4()
|
|
||||||
self._button_callbacks[id] = callback
|
|
||||||
self.subscribe_button()
|
|
||||||
elif event == "temp":
|
|
||||||
id = uuid.uuid4()
|
|
||||||
self._temperature_callbacks[id] = callback
|
|
||||||
self.subscribe_temperature()
|
|
||||||
elif event == "battery":
|
|
||||||
id = uuid.uuid4()
|
|
||||||
self._battery_callbacks[id] = callback
|
|
||||||
self.subscribe_battery()
|
|
||||||
|
|
||||||
return id
|
|
||||||
|
|
||||||
def off(self, uuid, continue_notifications=False):
|
|
||||||
"""Remove a callback
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
uuid {str} -- Remove a callback with its id
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
continue_notifications {bool} -- Keep notification thread running (default: {False})
|
|
||||||
|
|
||||||
Returns {bool} -- If removal was successful or not
|
|
||||||
"""
|
|
||||||
removed = False
|
|
||||||
if self._position_callbacks.get(uuid) != None:
|
|
||||||
removed = True
|
|
||||||
self._position_callbacks.pop(uuid)
|
|
||||||
if len(self._position_callbacks.values()) == 0:
|
|
||||||
self.unsubscribe_position(continue_notifications=continue_notifications)
|
|
||||||
elif self._button_callbacks.get(uuid) != None:
|
|
||||||
removed = True
|
|
||||||
self._button_callbacks.pop(uuid)
|
|
||||||
if len(self._button_callbacks.values()) == 0:
|
|
||||||
self.unsubscribe_button(continue_notifications=continue_notifications)
|
|
||||||
elif self._temperature_callbacks.get(uuid) != None:
|
|
||||||
removed = True
|
|
||||||
self._temperature_callbacks.pop(uuid)
|
|
||||||
if len(self._temperature_callbacks.values()) == 0:
|
|
||||||
self.unsubscribe_temperature(continue_notifications=continue_notifications)
|
|
||||||
elif self._battery_callbacks.get(uuid) != None:
|
|
||||||
removed = True
|
|
||||||
self._battery_callbacks.pop(uuid)
|
|
||||||
if len(self._battery_callbacks.values()) == 0:
|
|
||||||
self.unsubscribe_battery(continue_notifications=continue_notifications)
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
if removed:
|
|
||||||
print("Removed callback {}".format(uuid))
|
|
||||||
else:
|
|
||||||
print("Could not remove callback {}".format(uuid))
|
|
||||||
|
|
||||||
return removed
|
|
||||||
|
|
||||||
def subscribe_position(self):
|
|
||||||
"""Subscribe to position notifications and start thread if necessary
|
|
||||||
"""
|
|
||||||
if self.debug:
|
|
||||||
print("Subscribing to position notification")
|
|
||||||
|
|
||||||
self._position_subscribed = True
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_position_handle"):
|
|
||||||
handle = self._sensor_service.getCharacteristics(_SENSOR.QUATERNIONS_CHAR.value)[0]
|
|
||||||
self._position_handle = handle.getHandle()
|
|
||||||
|
|
||||||
self.writeCharacteristic(self._position_handle + 1, bytes([1, 0]))
|
|
||||||
self._start_notification_thread()
|
|
||||||
|
|
||||||
def unsubscribe_position(self, continue_notifications=False):
|
|
||||||
"""Unsubscribe to position notifications
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
continue_notifications {bool} -- Keep notification thread running (default: {False})
|
|
||||||
"""
|
|
||||||
if self.debug:
|
|
||||||
print("Unsubscribing from position notification")
|
|
||||||
|
|
||||||
self._position_subscribed = continue_notifications
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_position_handle"):
|
|
||||||
handle = self._sensor_service.getCharacteristics(_SENSOR.QUATERNIONS_CHAR.value)[0]
|
|
||||||
self._position_handle = handle.getHandle()
|
|
||||||
|
|
||||||
self.writeCharacteristic(self._position_handle + 1, bytes([0, 0]))
|
|
||||||
|
|
||||||
def subscribe_button(self):
|
|
||||||
"""Subscribe to button notifications and start thread if necessary
|
|
||||||
"""
|
|
||||||
if self.debug:
|
|
||||||
print("Subscribing to button notification")
|
|
||||||
|
|
||||||
self._button_subscribed = True
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_button_handle"):
|
|
||||||
handle = self._io_service.getCharacteristics(_IO.USER_BUTTON_CHAR.value)[0]
|
|
||||||
self._button_handle = handle.getHandle()
|
|
||||||
|
|
||||||
self.writeCharacteristic(self._button_handle + 1, bytes([1, 0]))
|
|
||||||
self._start_notification_thread()
|
|
||||||
|
|
||||||
def unsubscribe_button(self, continue_notifications=False):
|
|
||||||
"""Unsubscribe to button notifications
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
continue_notifications {bool} -- Keep notification thread running (default: {False})
|
|
||||||
"""
|
|
||||||
if self.debug:
|
|
||||||
print("Unsubscribing from button notification")
|
|
||||||
|
|
||||||
self._button_subscribed = continue_notifications
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_button_handle"):
|
|
||||||
handle = self._io_service.getCharacteristics(_IO.USER_BUTTON_CHAR.value)[0]
|
|
||||||
self._button_handle = handle.getHandle()
|
|
||||||
|
|
||||||
self.writeCharacteristic(self._button_handle + 1, bytes([0, 0]))
|
|
||||||
|
|
||||||
def subscribe_temperature(self):
|
|
||||||
"""Subscribe to temperature notifications and start thread if necessary
|
|
||||||
"""
|
|
||||||
if self.debug:
|
|
||||||
print("Subscribing to temperature notification")
|
|
||||||
|
|
||||||
self._temperature_subscribed = True
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_temp_handle"):
|
|
||||||
handle = self._sensor_service.getCharacteristics(_SENSOR.TEMP_CHAR.value)[0]
|
|
||||||
self._temp_handle = handle.getHandle()
|
|
||||||
|
|
||||||
self.writeCharacteristic(self._temp_handle + 1, bytes([1, 0]))
|
|
||||||
self._start_notification_thread()
|
|
||||||
|
|
||||||
def unsubscribe_temperature(self, continue_notifications=False):
|
|
||||||
"""Unsubscribe to temperature notifications
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
continue_notifications {bool} -- Keep notification thread running (default: {False})
|
|
||||||
"""
|
|
||||||
if self.debug:
|
|
||||||
print("Unsubscribing from temperature notification")
|
|
||||||
|
|
||||||
self._temperature_subscribed = continue_notifications
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_temp_handle"):
|
|
||||||
handle = self._sensor_service.getCharacteristics(_SENSOR.TEMP_CHAR.value)[0]
|
|
||||||
self._temp_handle = handle.getHandle()
|
|
||||||
|
|
||||||
self.writeCharacteristic(self._temp_handle + 1, bytes([0, 0]))
|
|
||||||
|
|
||||||
def subscribe_battery(self):
|
|
||||||
"""Subscribe to battery notifications and start thread if necessary
|
|
||||||
"""
|
|
||||||
if self.debug:
|
|
||||||
print("Subscribing to battery notification")
|
|
||||||
|
|
||||||
self._battery_subscribed = True
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_battery_handle"):
|
|
||||||
handle = self._io_service.getCharacteristics(_IO.BATTERY_CHAR .value)[0]
|
|
||||||
self._battery_handle = handle.getHandle()
|
|
||||||
|
|
||||||
self.writeCharacteristic(self._battery_handle + 1, bytes([1, 0]))
|
|
||||||
self._start_notification_thread()
|
|
||||||
|
|
||||||
def unsubscribe_battery(self, continue_notifications=False):
|
|
||||||
"""Unsubscribe to battery notifications
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
continue_notifications {bool} -- Keep notification thread running (default: {False})
|
|
||||||
"""
|
|
||||||
if self.debug:
|
|
||||||
print("Unsubscribing from battery notification")
|
|
||||||
|
|
||||||
self._battery_subscribed = continue_notifications
|
|
||||||
with self._lock:
|
|
||||||
if not hasattr(self, "_battery_handle"):
|
|
||||||
handle = self._io_service.getCharacteristics(_IO.BATTERY_CHAR .value)[0]
|
|
||||||
self._battery_handle = handle.getHandle()
|
|
||||||
|
|
||||||
self.writeCharacteristic(self._battery_handle + 1, bytes([0, 0]))
|
|
||||||
|
|
||||||
def _start_notification_thread(self):
|
|
||||||
try:
|
|
||||||
if self._notification_thread == None:
|
|
||||||
self.reset_position()
|
|
||||||
self._notification_thread = threading.Thread(target=self._notification_wait)
|
|
||||||
self._notification_thread.start()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
def _notification_wait(self):
|
|
||||||
if self.debug:
|
|
||||||
print("Notification thread started")
|
|
||||||
|
|
||||||
while (self.connected and
|
|
||||||
(self._position_subscribed or
|
|
||||||
self._button_subscribed or
|
|
||||||
self._temperature_subscribed or
|
|
||||||
self._battery_subscribed)):
|
|
||||||
try:
|
|
||||||
if super().waitForNotifications(1):
|
|
||||||
continue
|
|
||||||
except:
|
|
||||||
continue
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Notification thread stopped")
|
|
||||||
|
|
||||||
def _on_position(self, data):
|
|
||||||
"""Private function for position notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
data {bytes} -- Data from device
|
|
||||||
"""
|
|
||||||
# I got part of this from Kano's node module and modified it
|
|
||||||
y = numpy.int16(numpy.uint16(int.from_bytes(data[0:2], byteorder='little')))
|
|
||||||
x = -1 * numpy.int16(numpy.uint16(int.from_bytes(data[2:4], byteorder='little')))
|
|
||||||
w = -1 * numpy.int16(numpy.uint16(int.from_bytes(data[4:6], byteorder='little')))
|
|
||||||
z = numpy.int16(numpy.uint16(int.from_bytes(data[6:8], byteorder='little')))
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
pitch = "Pitch: {}".format(z).ljust(16)
|
|
||||||
roll = "Roll: {}".format(w).ljust(16)
|
|
||||||
print("{}{}(x, y): ({}, {})".format(pitch, roll, x, y))
|
|
||||||
|
|
||||||
self.on_position(x, y, z, w)
|
|
||||||
for callback in self._position_callbacks.values():
|
|
||||||
callback(x, y, z, w)
|
|
||||||
|
|
||||||
def on_position(self, roll, x, y, z):
|
|
||||||
"""Function called on position notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
x {int} -- X position of wand (Between -1000 and 1000)
|
|
||||||
y {int} -- Y position of wand (Between -1000 and 1000)
|
|
||||||
pitch {int} -- Pitch of wand (Between -1000 and 1000)
|
|
||||||
roll {int} -- Roll of wand (Between -1000 and 1000)
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def reset_position(self):
|
|
||||||
"""Reset the quaternains of the wand
|
|
||||||
"""
|
|
||||||
handle = self._sensor_service.getCharacteristics(_SENSOR.QUATERNIONS_RESET_CHAR.value)[0].getHandle()
|
|
||||||
with self._lock:
|
|
||||||
self.writeCharacteristic(handle, bytes([1]))
|
|
||||||
|
|
||||||
def _on_button(self, data):
|
|
||||||
"""Private function for button notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
data {bytes} -- Data from device
|
|
||||||
"""
|
|
||||||
val = data[0] == 1
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Button: {}".format(val))
|
|
||||||
|
|
||||||
self.on_button(val)
|
|
||||||
for callback in self._button_callbacks.values():
|
|
||||||
callback(val)
|
|
||||||
|
|
||||||
def on_button(self, value):
|
|
||||||
"""Function called on button notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
pressed {bool} -- If button is pressed
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def _on_temperature(self, data):
|
|
||||||
"""Private function for temperature notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
data {bytes} -- Data from device
|
|
||||||
"""
|
|
||||||
val = numpy.int16(numpy.uint16(int.from_bytes(data[0:2], byteorder='little')))
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Temperature: {}".format(val))
|
|
||||||
|
|
||||||
self.on_temperature(val)
|
|
||||||
for callback in self._temperature_callbacks.values():
|
|
||||||
callback(val)
|
|
||||||
|
|
||||||
def on_temperature(self, value):
|
|
||||||
"""Function called on temperature notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
value {int} -- Temperature of the wand
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def _on_battery(self, data):
|
|
||||||
"""Private function for battery notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
data {bytes} -- Data from device
|
|
||||||
"""
|
|
||||||
val = data[0]
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Battery: {}".format(val))
|
|
||||||
|
|
||||||
self.on_battery(val)
|
|
||||||
for callback in self._battery_callbacks.values():
|
|
||||||
callback(val)
|
|
||||||
|
|
||||||
def on_battery(self, value):
|
|
||||||
"""Function called on battery notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
value {int} -- Battery level of the wand
|
|
||||||
"""
|
|
||||||
|
|
||||||
def handleNotification(self, cHandle, data):
|
|
||||||
"""Handle notifications subscribed to
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
cHandle {int} -- Handle of notification
|
|
||||||
data {bytes} -- Data from device
|
|
||||||
"""
|
|
||||||
if cHandle == self._position_notification_handle:
|
|
||||||
self._on_position(data)
|
|
||||||
elif cHandle == self._button_notification_handle:
|
|
||||||
self._on_button(data)
|
|
||||||
elif cHandle == self._temp_notification_handle:
|
|
||||||
self._on_temperature(data)
|
|
||||||
elif cHandle == self._battery_notification_handle:
|
|
||||||
self._on_battery(data)
|
|
||||||
|
|
||||||
class Shop(DefaultDelegate):
|
|
||||||
"""A scanner class to connect to wands
|
|
||||||
"""
|
|
||||||
def __init__(self, wand_class=Wand, debug=False):
|
|
||||||
"""Create a new scanner
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
wand_class {class} -- Class to use when connecting to wand (default: {Wand})
|
|
||||||
debug {bool} -- Print debug messages (default: {False})
|
|
||||||
"""
|
|
||||||
super().__init__()
|
|
||||||
self.wand_class = wand_class
|
|
||||||
self.debug = debug
|
|
||||||
self._name = None
|
|
||||||
self._prefix = None
|
|
||||||
self._mac = None
|
|
||||||
self._scanner = Scanner().withDelegate(self)
|
|
||||||
|
|
||||||
def scan(self, name=None, prefix="Kano-Wand", mac=None, timeout=1.0, connect=False):
|
|
||||||
"""Scan for devices
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
name {str} -- Name of the device to scan for (default: {None})
|
|
||||||
prefix {str} -- Prefix of name of device to scan for (default: {"Kano-Wand"})
|
|
||||||
mac {str} -- MAC Address of the device to scan for (default: {None})
|
|
||||||
timeout {float} -- Timeout before returning from scan (default: {1.0})
|
|
||||||
connect {bool} -- Connect to the wands automatically (default: {False})
|
|
||||||
|
|
||||||
Returns {Wand[]} -- Array of wand objects
|
|
||||||
"""
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Scanning for {} seconds...".format(timeout))
|
|
||||||
try:
|
|
||||||
name_check = not (name is None)
|
|
||||||
prefix_check = not (prefix is None)
|
|
||||||
mac_check = not (mac is None)
|
|
||||||
assert name_check or prefix_check or mac_check
|
|
||||||
except AssertionError as e:
|
|
||||||
print("Either a name, prefix, or mac address must be provided to find a wand")
|
|
||||||
raise e
|
|
||||||
|
|
||||||
if name is not None:
|
|
||||||
self._name = name
|
|
||||||
elif prefix is not None:
|
|
||||||
self._prefix = prefix
|
|
||||||
elif mac is not None:
|
|
||||||
self._mac = mac
|
|
||||||
|
|
||||||
self.wands = []
|
|
||||||
self._scanner.scan(timeout)
|
|
||||||
if connect:
|
|
||||||
for wand in self.wands:
|
|
||||||
wand.connect()
|
|
||||||
return self.wands
|
|
||||||
|
|
||||||
def handleDiscovery(self, device, isNewDev, isNewData):
|
|
||||||
"""Check if the device matches
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
device {bluepy.ScanEntry} -- Device data
|
|
||||||
isNewDev {bool} -- Whether the device is new
|
|
||||||
isNewData {bool} -- Whether the device has already been seen
|
|
||||||
"""
|
|
||||||
|
|
||||||
if isNewDev:
|
|
||||||
# Perform initial detection attempt
|
|
||||||
mode = 0
|
|
||||||
found = 0
|
|
||||||
name = device.getValueText(9)
|
|
||||||
if self._name is not None:
|
|
||||||
mode += 1
|
|
||||||
if name == self._name:
|
|
||||||
found += 1
|
|
||||||
if self._prefix is not None:
|
|
||||||
mode += 1
|
|
||||||
if name is not None and name.startswith(self._prefix):
|
|
||||||
found += 1
|
|
||||||
if self._mac is not None:
|
|
||||||
mode += 1
|
|
||||||
if device.addr == self._mac:
|
|
||||||
found += 1
|
|
||||||
|
|
||||||
if found >= mode:
|
|
||||||
self.wands.append(self.wand_class(device, debug=self.debug))
|
|
||||||
elif self.debug:
|
|
||||||
if name != "None":
|
|
||||||
print("Mac: {}\tCommon Name: {}".format(device.addr, name))
|
|
||||||
else:
|
|
||||||
print("Mac: {}".format(device.addr))
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
import matplotlib.pyplot as plt
|
|
||||||
import matplotlib.animation as animation
|
|
||||||
from matplotlib import style
|
|
||||||
|
|
||||||
|
|
||||||
style.use('fivethirtyeight')
|
|
||||||
|
|
||||||
fig = plt.figure()
|
|
||||||
ax1 = fig.add_subplot(1,1,1)
|
|
||||||
|
|
||||||
|
|
||||||
def animate(i):
|
|
||||||
graph_data = open('example.txt','r').read()
|
|
||||||
lines = graph_data.split('\n')
|
|
||||||
xs = []
|
|
||||||
ys = []
|
|
||||||
for line in lines:
|
|
||||||
if len(line) > 1:
|
|
||||||
x, y = line.split(',')
|
|
||||||
xs.append(float(x))
|
|
||||||
ys.append(float(y))
|
|
||||||
ax1.clear()
|
|
||||||
ax1.plot(xs, ys)
|
|
||||||
|
|
||||||
|
|
||||||
ani = animation.FuncAnimation(fig, animate, interval=100)
|
|
||||||
|
|
||||||
plt.show()
|
|
||||||
|
|
||||||
-115
@@ -1,115 +0,0 @@
|
|||||||
import asyncio
|
|
||||||
import json
|
|
||||||
import os
|
|
||||||
import platform
|
|
||||||
import uuid
|
|
||||||
import pandas as pd
|
|
||||||
from kano_wand.ble_client import KanoBLEClient
|
|
||||||
from time import sleep
|
|
||||||
from tkinter import *
|
|
||||||
from bleak import discover
|
|
||||||
|
|
||||||
"""
|
|
||||||
This is used for reading and decoding values from t he Kano Harry Potter Coding Wand
|
|
||||||
- Wand sends 25 updates to gyro and accel every second
|
|
||||||
"""
|
|
||||||
|
|
||||||
HEIGHT = 2
|
|
||||||
WIDTH = 35
|
|
||||||
|
|
||||||
|
|
||||||
# class SpellCollectionGUI:
|
|
||||||
# def __init__(self, root, spells, kano_ble_client):
|
|
||||||
# self.root = root
|
|
||||||
# self.kano_ble_client = kano_ble_client
|
|
||||||
# self.data_output_file = f"recording-session-{uuid.uuid4()}.csv"
|
|
||||||
#
|
|
||||||
# self.root = root
|
|
||||||
# self.root.title("Microphone Recorder")
|
|
||||||
#
|
|
||||||
# self.label = Label(root, text="Select a spell, and then press start to begin recording spell data!")
|
|
||||||
# self.label.pack()
|
|
||||||
#
|
|
||||||
# self.spell_variable = StringVar(root)
|
|
||||||
# self.spell_list = OptionMenu(root, self.spell_variable,
|
|
||||||
# *["", *[spell for spell in spells]
|
|
||||||
# ], command=self.select_spell)
|
|
||||||
# self.spell_list.config(height=HEIGHT, width=WIDTH)
|
|
||||||
# self.spell_list.pack()
|
|
||||||
#
|
|
||||||
# self.recording_button = Button(root, text="Start Recording", command=self.start_recording, height=HEIGHT,
|
|
||||||
# width=WIDTH)
|
|
||||||
# self.recording_button.pack()
|
|
||||||
#
|
|
||||||
# self.close_button = Button(root, text="Close", command=root.quit, height=HEIGHT, width=WIDTH)
|
|
||||||
# self.close_button.pack()
|
|
||||||
#
|
|
||||||
# self.spell = None
|
|
||||||
# self.root.after(0, self.kano_ble_client.connect, True)
|
|
||||||
#
|
|
||||||
# def select_spell(self, selected_value):
|
|
||||||
# self.spell = selected_value
|
|
||||||
#
|
|
||||||
# def start_recording(self):
|
|
||||||
# print("Started Recording")
|
|
||||||
# self.root.after(0)
|
|
||||||
#
|
|
||||||
# self.kano_ble_client.start_recieving_data()
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# def select_spell(spells):
|
|
||||||
# try:
|
|
||||||
# spell = spells[int(input("Please select a spell.\n " +
|
|
||||||
# "\n".join([f"{s} - {spells[s]}" for s in range(len(spells))]) +
|
|
||||||
# "\nenter -1 to exit\n"))]
|
|
||||||
# print(f"You have selected {spell}")
|
|
||||||
# return spell
|
|
||||||
# except Exception as e:
|
|
||||||
# print(e)
|
|
||||||
# print("Selected spell is uncorrect")
|
|
||||||
# return None
|
|
||||||
|
|
||||||
async def main(loop):
|
|
||||||
# device_address = "D8:9B:12:D1:08:80"
|
|
||||||
#
|
|
||||||
# os.environ["PYTHONASYNCIODEBUG"] = str(1)
|
|
||||||
# address = (
|
|
||||||
# device_address # <--- Change to your device's address here if you are using Windows or Linux
|
|
||||||
# if platform.system() != "Darwin"
|
|
||||||
# else "243E23AE-4A99-406C-B317-18F1BD7B4CBE" # <--- Change to your device's address here if you are using macOS
|
|
||||||
# )
|
|
||||||
|
|
||||||
# One method for connect
|
|
||||||
# One for getting all data
|
|
||||||
# One for getting data when button is pressed
|
|
||||||
devices = await discover()
|
|
||||||
for d in devices:
|
|
||||||
print(d)
|
|
||||||
print(d.name, d.address)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
spells = pd.read_csv("spells.csv")["spells"]
|
|
||||||
|
|
||||||
kble = KanoBLEClient(address, loop)
|
|
||||||
await kble.connect(True)
|
|
||||||
await kble.start_recieving_data(sensors)
|
|
||||||
x = 1
|
|
||||||
while x:
|
|
||||||
x = select_spell(spells)
|
|
||||||
if x is not None:
|
|
||||||
kble.change_spell(x)
|
|
||||||
|
|
||||||
await kble.stop_recieving_data(sensors)
|
|
||||||
print("finished main")
|
|
||||||
#
|
|
||||||
# df = None
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# def display_selections():
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
loop = asyncio.get_event_loop()
|
|
||||||
loop.run_until_complete(main(loop))
|
|
||||||
@@ -0,0 +1,77 @@
|
|||||||
|
from KanoWandAsync import Shop, Wand
|
||||||
|
from KanoWandAsync.constants import *
|
||||||
|
import asyncio
|
||||||
|
import pandas as pd
|
||||||
|
from uuid import uuid4
|
||||||
|
from pathlib import Path
|
||||||
|
import os
|
||||||
|
global spell
|
||||||
|
def save_dataframe(data):
|
||||||
|
df = pd.DataFrame(data)
|
||||||
|
df.columns = ["x", "y", "pitch", "roll"]
|
||||||
|
path = Path(f"./data/{spell}/{uuid4()}.csv")
|
||||||
|
if not path.parent.exists():
|
||||||
|
path.parent.mkdir(parents=True, exist_ok=True)
|
||||||
|
df.to_csv(str(path), index=False)
|
||||||
|
|
||||||
|
|
||||||
|
class DataCollectWand(Wand):
|
||||||
|
def __init__(self, *args, **kwargs):
|
||||||
|
super().__init__(*args, **kwargs)
|
||||||
|
self.colors = ["#a333c8", "2185d0", "0x21ba45", "#fbbd08", "#f2711c", "#db2828"]
|
||||||
|
self.position_id = None
|
||||||
|
self.data = []
|
||||||
|
|
||||||
|
async def post_connect(self):
|
||||||
|
print("Connected to {}".format(self.name))
|
||||||
|
await self.subscribe_button()
|
||||||
|
|
||||||
|
async def on_button(self, pressed):
|
||||||
|
if pressed:
|
||||||
|
self.data = []
|
||||||
|
print("Button pressed")
|
||||||
|
await self.vibrate(PATTERN.BURST)
|
||||||
|
await self.reset_position()
|
||||||
|
await self.subscribe_position()
|
||||||
|
else:
|
||||||
|
save_dataframe(self.data)
|
||||||
|
await self.unsubscribe_position()
|
||||||
|
|
||||||
|
async def on_position(self, x, y, pitch, roll):
|
||||||
|
# print(x, y, pitch, roll)
|
||||||
|
self.data.append([x, y, pitch, roll])
|
||||||
|
|
||||||
|
def get_prompt_text(spells):
|
||||||
|
strings = [f"{spells[spells == spell].index[0]} - {spell} " for spell in spells]
|
||||||
|
return "Enter number to select spell- \n" + "\n".join(strings)
|
||||||
|
|
||||||
|
async def main():
|
||||||
|
spells = pd.read_csv("spells.csv")["spells"]
|
||||||
|
shop = Shop(asyncio.get_running_loop(), wand_class=DataCollectWand, debug=True)
|
||||||
|
wands = []
|
||||||
|
x = input(get_prompt_text(spells))
|
||||||
|
|
||||||
|
while x != "quit":
|
||||||
|
try:
|
||||||
|
global spell
|
||||||
|
spell = spells[int(x)]
|
||||||
|
print(f"Currently chosen spell - {spell}")
|
||||||
|
except Exception as e:
|
||||||
|
print(e)
|
||||||
|
|
||||||
|
try:
|
||||||
|
while len(wands) == 0:
|
||||||
|
print("Scanning...")
|
||||||
|
wands = await shop.scan(connect=True)
|
||||||
|
for wand in wands:
|
||||||
|
await wand.vibrate(PATTERN.BURST)
|
||||||
|
await asyncio.sleep(60)
|
||||||
|
except Exception as e:
|
||||||
|
print(e)
|
||||||
|
for wand in wands:
|
||||||
|
wand.disconnect()
|
||||||
|
x = input(get_prompt_text(spells))
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
asyncio.run(main())
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
from glob import glob
|
||||||
|
from pathlib import Path
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
import pandas as pd
|
||||||
|
|
||||||
|
for folder in glob("data/*"):
|
||||||
|
path = Path(folder)
|
||||||
|
print(path.stem)
|
||||||
|
for c in glob(f"{folder}/*.csv"):
|
||||||
|
csv = Path(c)
|
||||||
|
print(csv)
|
||||||
|
data = pd.read_csv(csv)
|
||||||
|
plt.plot(
|
||||||
|
data["x"],
|
||||||
|
data["y"]
|
||||||
|
)
|
||||||
|
plt.plot(
|
||||||
|
data["pitch"],
|
||||||
|
data["roll"]
|
||||||
|
)
|
||||||
|
plt.title(path.stem)
|
||||||
|
plt.show()
|
||||||
|
|
||||||
|
|
||||||
|
for folder in glob("data/*"):
|
||||||
|
path = Path(folder)
|
||||||
|
for c in glob(f"{folder}/*.csv"):
|
||||||
|
csv = Path(c)
|
||||||
|
data = pd.read_csv(csv)
|
||||||
|
plt.plot(
|
||||||
|
data["x"],
|
||||||
|
data["y"]
|
||||||
|
)
|
||||||
|
plt.plot(
|
||||||
|
data["pitch"],
|
||||||
|
data["roll"]
|
||||||
|
)
|
||||||
|
plt.title("COMBINED")
|
||||||
|
plt.show()
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
from enum import Enum
|
|
||||||
|
|
||||||
class INFO(Enum):
|
|
||||||
"""Enum containing info UUIDs"""
|
|
||||||
SERVICE = '64A70010-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
ORGANIZATION_CHAR = '64A7000B-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
SOFTWARE_CHAR = '64A70013-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
HARDWARE_CHAR = '64A70001-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
|
|
||||||
class IO(Enum):
|
|
||||||
"""Enum containing _IO UUIDs"""
|
|
||||||
SERVICE = '64A70012-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
BATTERY_CHAR = '64A70007-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
USER_BUTTON_CHAR = '64A7000D-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
VIBRATOR_CHAR = '64A70008-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
LED_CHAR = '64A70009-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
KEEP_ALIVE_CHAR = '64A7000F-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
|
|
||||||
class SENSOR(Enum):
|
|
||||||
"""Enum containing sensor UUIDs"""
|
|
||||||
SERVICE = '64A70011-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
TEMP_CHAR = '64A70014-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
QUATERNIONS_CHAR = '64A70002-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
# RAW_CHAR = '64A7000A-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
# MOTION_CHAR = '64A7000C-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
MAGN_CALIBRATE_CHAR = '64A70021-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
QUATERNIONS_RESET_CHAR = '64A70004-F691-4B93-A6F4-0968F5B648F8'
|
|
||||||
|
|
||||||
|
|
||||||
class PATTERN(Enum):
|
|
||||||
"""Enum for wand vibration patterns"""
|
|
||||||
REGULAR = 1
|
|
||||||
SHORT = 2
|
|
||||||
BURST = 3
|
|
||||||
LONG = 4
|
|
||||||
SHORT_LONG = 5
|
|
||||||
SHORT_SHORT = 6
|
|
||||||
BIG_PAUSE = 7
|
|
||||||
@@ -1,616 +0,0 @@
|
|||||||
import threading
|
|
||||||
import numpy as np
|
|
||||||
|
|
||||||
from constants import *
|
|
||||||
from bleak import BleakClient
|
|
||||||
from uuid import uuid4
|
|
||||||
|
|
||||||
|
|
||||||
class Wand(object):
|
|
||||||
"""A wand class to interact with the Kano wand
|
|
||||||
"""
|
|
||||||
|
|
||||||
def __init__(self, device_addr, name, bot_loop, debug=True):
|
|
||||||
"""Create a new wand
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
device {bluepy.ScanEntry} -- Device information
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
debug {bool} -- Print debug messages (default: {False})
|
|
||||||
"""
|
|
||||||
super().__init__(None)
|
|
||||||
self.debug = debug
|
|
||||||
self._dev = BleakClient(device_addr)
|
|
||||||
self.name = name
|
|
||||||
self.bot_loop = bot_loop
|
|
||||||
|
|
||||||
if debug:
|
|
||||||
print("Wand: {}\n\rWand Mac: {}".format(self.name, self._dev.address))
|
|
||||||
|
|
||||||
# Notification stuff
|
|
||||||
self.connected = False
|
|
||||||
self._position_callbacks = {}
|
|
||||||
self._position_subscribed = False
|
|
||||||
self._button_callbacks = {}
|
|
||||||
self._button_subscribed = False
|
|
||||||
self._temperature_callbacks = {}
|
|
||||||
self._temperature_subscribed = False
|
|
||||||
self._battery_callbacks = {}
|
|
||||||
self._battery_subscribed = False
|
|
||||||
self._notification_thread = None
|
|
||||||
self._position_notification_handle = 41
|
|
||||||
self._button_notification_handle = 33
|
|
||||||
self._temp_notification_handle = 56
|
|
||||||
self._battery_notification_handle = 23
|
|
||||||
|
|
||||||
async def connect(self):
|
|
||||||
if self.debug:
|
|
||||||
print("Connecting to {}...".format(self.name))
|
|
||||||
|
|
||||||
connected = await self._dev.connect()
|
|
||||||
if not connected:
|
|
||||||
raise Exception("ERROR NOT CONNECTED TO THE DEVICE")
|
|
||||||
|
|
||||||
self.connected = True
|
|
||||||
self.post_connect()
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Connected to {}".format(self.name))
|
|
||||||
|
|
||||||
def post_connect(self):
|
|
||||||
"""Do anything necessary after connecting
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
async def disconnect(self):
|
|
||||||
|
|
||||||
await self._dev.disconnect()
|
|
||||||
self.connected = False
|
|
||||||
self.post_disconnect()
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Disconnected from {}".format(self.name))
|
|
||||||
|
|
||||||
def post_disconnect(self):
|
|
||||||
"""Do anything necessary after disconnecting
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
# def get_organization(self):
|
|
||||||
# """Get organization of device
|
|
||||||
#
|
|
||||||
# Returns {str} -- Organization name
|
|
||||||
# """
|
|
||||||
# # with self._lock:
|
|
||||||
# if not hasattr(self, "_organization_handle"):
|
|
||||||
# handle = self._info_service.getCharacteristics(INFO.ORGANIZATION_CHAR.value)[0]
|
|
||||||
# self._organization_handle = handle.getHandle()
|
|
||||||
# return self.readCharacteristic(self._organization_handle).decode("utf-8")
|
|
||||||
|
|
||||||
# def get_software_version(self):
|
|
||||||
#
|
|
||||||
# """Get software version
|
|
||||||
#
|
|
||||||
# Returns {str} -- Version number
|
|
||||||
# """
|
|
||||||
# #with self._lock:
|
|
||||||
# if not hasattr(self, "_software_handle"):
|
|
||||||
# handle = self._info_service.getCharacteristics(INFO.SOFTWARE_CHAR.value)[0]
|
|
||||||
# self._software_handle = handle.getHandle()
|
|
||||||
# return self.readCharacteristic(self._software_handle).decode("utf-8")
|
|
||||||
|
|
||||||
# def get_hardware_version(self):
|
|
||||||
#
|
|
||||||
# """Get hardware version
|
|
||||||
#
|
|
||||||
# Returns {str} -- Hardware version
|
|
||||||
# """
|
|
||||||
# #with self._lock:
|
|
||||||
# if not hasattr(self, "_hardware_handle"):
|
|
||||||
# handle = self._info_service.getCharacteristics(INFO.HARDWARE_CHAR.value)[0]
|
|
||||||
# self._hardware_handle = handle.getHandle()
|
|
||||||
# return self.readCharacteristic(self._hardware_handle).decode("utf-8")
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# def get_battery(self):
|
|
||||||
# """Get battery level (currently only returns 0)
|
|
||||||
#
|
|
||||||
# Returns {str} -- Battery level
|
|
||||||
# """
|
|
||||||
# # with self._lock:
|
|
||||||
# if not hasattr(self, "_battery_handle"):
|
|
||||||
# handle = self._io_service.getCharacteristics(IO.BATTERY_CHAR.value)[0]
|
|
||||||
# self._battery_handle = handle.getHandle()
|
|
||||||
# return self.readCharacteristic(self._battery_handle).decode("utf-8")
|
|
||||||
|
|
||||||
|
|
||||||
async def get_button(self):
|
|
||||||
"""Get current button status
|
|
||||||
|
|
||||||
Returns {bool} -- Button pressed status
|
|
||||||
"""
|
|
||||||
# with self._lock:
|
|
||||||
# if not hasattr(self, "_button_handle"):
|
|
||||||
# handle = self._io_service.getCharacteristics(IO.USER_BUTTON_CHAR.value)[0]
|
|
||||||
# self._button_handle = handle.getHandle()
|
|
||||||
# data = self.readCharacteristic(self._button_handle)
|
|
||||||
data = await self._dev.read_gatt_char(IO.USER_BUTTON_CHAR.value)
|
|
||||||
return data[0] == 1
|
|
||||||
|
|
||||||
|
|
||||||
async def get_temperature(self):
|
|
||||||
"""Get temperature
|
|
||||||
|
|
||||||
Returns {str} -- Battery level
|
|
||||||
"""
|
|
||||||
# with self._lock:
|
|
||||||
# if not hasattr(self, "_temperature_handle"):
|
|
||||||
# handle = self._sensor_service.getCharacteristics(SENSOR.TEMP_CHAR.value)[0]
|
|
||||||
# self._temperature_handle = handle.getHandle()
|
|
||||||
return await self._dev.read_gatt_char(SENSOR.TEMP_CHAR.value)
|
|
||||||
|
|
||||||
|
|
||||||
async def keep_alive(self):
|
|
||||||
"""Keep the wand's connection active
|
|
||||||
|
|
||||||
Returns {bytes} -- Status
|
|
||||||
"""
|
|
||||||
# Is not documented because it doesn't seem to work?
|
|
||||||
if self.debug:
|
|
||||||
print("Keeping wand alive.")
|
|
||||||
|
|
||||||
# with self._lock:
|
|
||||||
# if not hasattr(self, "_alive_handle"):
|
|
||||||
# handle = self._io_service.getCharacteristics(IO.KEEP_ALIVE_CHAR.value)[0]
|
|
||||||
# self._alive_handle = handle.getHandle()
|
|
||||||
return await self._dev.write_gatt_char(IO.KEEP_ALIVE_CHAR.value, bytes([1]), response=True)
|
|
||||||
# writeCharacteristic(self._alive_handle, bytes([1]), withResponse=True)
|
|
||||||
|
|
||||||
|
|
||||||
async def vibrate(self, pattern=PATTERN.REGULAR):
|
|
||||||
"""Vibrate wand with pattern
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
pattern {kano_wand.PATTERN} -- Vibration pattern (default: {PATTERN.REGULAR})
|
|
||||||
|
|
||||||
Returns {bytes} -- Status
|
|
||||||
"""
|
|
||||||
# with self._lock:
|
|
||||||
if isinstance(pattern, PATTERN):
|
|
||||||
message = [pattern.value]
|
|
||||||
else:
|
|
||||||
message = [pattern]
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Setting VibrationLed to {}".format(message))
|
|
||||||
#
|
|
||||||
# if not hasattr(self, "_vibrator_handle"):
|
|
||||||
# handle = self._io_service.getCharacteristics(IO.VIBRATOR_CHAR.value)[0]
|
|
||||||
# self._vibrator_handle = handle.getHandle()
|
|
||||||
# self.writeCharacteristic(self._vibrator_handle, bytes(message), withResponse=True)
|
|
||||||
|
|
||||||
return await self._dev.write_gatt_char(IO.VIBRATOR_CHAR.value, bytes(message), response=True)
|
|
||||||
|
|
||||||
|
|
||||||
async def set_led(self, color="0x2185d0", on=True):
|
|
||||||
"""Set the LED's color
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
color {str} -- Color hex code (default: {"0x2185d0"})
|
|
||||||
on {bool} -- Whether light is on or off (default: {True})
|
|
||||||
|
|
||||||
Returns {bytes} -- Status
|
|
||||||
"""
|
|
||||||
message = []
|
|
||||||
if on:
|
|
||||||
message.append(1)
|
|
||||||
else:
|
|
||||||
message.append(0)
|
|
||||||
|
|
||||||
# I got this from Kano's node module
|
|
||||||
color = int(color.replace("#", ""), 16)
|
|
||||||
r = (color >> 16) & 255
|
|
||||||
g = (color >> 8) & 255
|
|
||||||
b = color & 255
|
|
||||||
rgb = (((r & 248) << 8) + ((g & 252) << 3) + ((b & 248) >> 3))
|
|
||||||
message.append(rgb >> 8)
|
|
||||||
message.append(rgb & 0xff)
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Setting LED to {}".format(message))
|
|
||||||
|
|
||||||
# with self._lock:
|
|
||||||
# if not hasattr(self, "_led_handle"):
|
|
||||||
# handle = self._io_service.getCharacteristics(IO.LED_CHAR.value)[0]
|
|
||||||
# self._led_handle = handle.getHandle()
|
|
||||||
# self.writeCharacteristic(self._led_handle, bytes(message), withResponse=True)
|
|
||||||
return await self._dev.write_gatt_char(IO.LED_CHAR.value, bytes(message), response=True)
|
|
||||||
|
|
||||||
|
|
||||||
# SENSORS
|
|
||||||
# def on(self, event, callback):
|
|
||||||
# """Add an event listener
|
|
||||||
#
|
|
||||||
# Arguments:
|
|
||||||
# event {str} -- Event type, "position", "button", "temp", or "battery"
|
|
||||||
# callback {function} -- Callback function
|
|
||||||
#
|
|
||||||
# Returns {str} -- ID of the callback for removal later
|
|
||||||
# """
|
|
||||||
# if self.debug:
|
|
||||||
# print("Adding callback for {} notification...".format(event))
|
|
||||||
#
|
|
||||||
# id = None
|
|
||||||
# if event == "position":
|
|
||||||
# id = uuid4()
|
|
||||||
# self._position_callbacks[id] = callback
|
|
||||||
# self.subscribe_position()
|
|
||||||
# elif event == "button":
|
|
||||||
# id = uuid4()
|
|
||||||
# self._button_callbacks[id] = callback
|
|
||||||
# self.subscribe_button()
|
|
||||||
# elif event == "temp":
|
|
||||||
# id = uuid4()
|
|
||||||
# self._temperature_callbacks[id] = callback
|
|
||||||
# self.subscribe_temperature()
|
|
||||||
# elif event == "battery":
|
|
||||||
# id = uuid4()
|
|
||||||
# self._battery_callbacks[id] = callback
|
|
||||||
# self.subscribe_battery()
|
|
||||||
#
|
|
||||||
# return id
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# def off(self, uuid, continue_notifications=False):
|
|
||||||
# """Remove a callback
|
|
||||||
#
|
|
||||||
# Arguments:
|
|
||||||
# uuid {str} -- Remove a callback with its id
|
|
||||||
#
|
|
||||||
# Keyword Arguments:
|
|
||||||
# continue_notifications {bool} -- Keep notification thread running (default: {False})
|
|
||||||
#
|
|
||||||
# Returns {bool} -- If removal was successful or not
|
|
||||||
# """
|
|
||||||
# removed = False
|
|
||||||
# if self._position_callbacks.get(uuid) != None:
|
|
||||||
# removed = True
|
|
||||||
# self._position_callbacks.pop(uuid)
|
|
||||||
# if len(self._position_callbacks.values()) == 0:
|
|
||||||
# self.unsubscribe_position(continue_notifications=continue_notifications)
|
|
||||||
# elif self._button_callbacks.get(uuid) != None:
|
|
||||||
# removed = True
|
|
||||||
# self._button_callbacks.pop(uuid)
|
|
||||||
# if len(self._button_callbacks.values()) == 0:
|
|
||||||
# self.unsubscribe_button(continue_notifications=continue_notifications)
|
|
||||||
# elif self._temperature_callbacks.get(uuid) != None:
|
|
||||||
# removed = True
|
|
||||||
# self._temperature_callbacks.pop(uuid)
|
|
||||||
# if len(self._temperature_callbacks.values()) == 0:
|
|
||||||
# self.unsubscribe_temperature(continue_notifications=continue_notifications)
|
|
||||||
# elif self._battery_callbacks.get(uuid) != None:
|
|
||||||
# removed = True
|
|
||||||
# self._battery_callbacks.pop(uuid)
|
|
||||||
# if len(self._battery_callbacks.values()) == 0:
|
|
||||||
# self.unsubscribe_battery(continue_notifications=continue_notifications)
|
|
||||||
#
|
|
||||||
# if self.debug:
|
|
||||||
# if removed:
|
|
||||||
# print("Removed callback {}".format(uuid))
|
|
||||||
# else:
|
|
||||||
# print("Could not remove callback {}".format(uuid))
|
|
||||||
#
|
|
||||||
# return removed
|
|
||||||
|
|
||||||
|
|
||||||
# def subscribe_position(self):
|
|
||||||
# """Subscribe to position notifications and start thread if necessary
|
|
||||||
# """
|
|
||||||
# if self.debug:
|
|
||||||
# print("Subscribing to position notification")
|
|
||||||
#
|
|
||||||
# self._position_subscribed = True
|
|
||||||
# # with self._lock:
|
|
||||||
# if not hasattr(self, "_position_handle"):
|
|
||||||
# handle = self._sensor_service.getCharacteristics(SENSOR.QUATERNIONS_CHAR.value)[0]
|
|
||||||
# self._position_handle = handle.getHandle()
|
|
||||||
#
|
|
||||||
# self.writeCharacteristic(self._position_handle + 1, bytes([1, 0]))
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# self._start_notification_thread()
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# def unsubscribe_position(self, continue_notifications=False):
|
|
||||||
# """Unsubscribe to position notifications
|
|
||||||
#
|
|
||||||
# Keyword Arguments:
|
|
||||||
# continue_notifications {bool} -- Keep notification thread running (default: {False})
|
|
||||||
# """
|
|
||||||
# if self.debug:
|
|
||||||
# print("Unsubscribing from position notification")
|
|
||||||
#
|
|
||||||
# self._position_subscribed = continue_notifications
|
|
||||||
# # with self._lock:
|
|
||||||
# if not hasattr(self, "_position_handle"):
|
|
||||||
# handle = self._sensor_service.getCharacteristics(SENSOR.QUATERNIONS_CHAR.value)[0]
|
|
||||||
# self._position_handle = handle.getHandle()
|
|
||||||
#
|
|
||||||
# self.writeCharacteristic(self._position_handle + 1, bytes([0, 0]))
|
|
||||||
|
|
||||||
|
|
||||||
async def subscribe_button(self):
|
|
||||||
"""Subscribe to button notifications and start thread if necessary
|
|
||||||
"""
|
|
||||||
if self.debug:
|
|
||||||
print("Subscribing to button notification")
|
|
||||||
|
|
||||||
self._button_subscribed = True
|
|
||||||
await self._dev.start_notify(IO.USER_BUTTON_CHAR.value, self.handle_notification)
|
|
||||||
# with self._lock:
|
|
||||||
# if not hasattr(self, "_button_handle"):
|
|
||||||
# handle = self._io_service.getCharacteristics(IO.USER_BUTTON_CHAR.value)[0]
|
|
||||||
# self._button_handle = handle.getHandle()
|
|
||||||
|
|
||||||
# self.writeCharacteristic(self._button_handle + 1, bytes([1, 0]))
|
|
||||||
# self._start_notification_thread()
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
async def unsubscribe_button(self, continue_notifications=False):
|
|
||||||
"""Unsubscribe to button notifications
|
|
||||||
|
|
||||||
Keyword Arguments:
|
|
||||||
continue_notifications {bool} -- Keep notification thread running (default: {False})
|
|
||||||
"""
|
|
||||||
if self.debug:
|
|
||||||
print("Unsubscribing from button notification")
|
|
||||||
|
|
||||||
self._button_subscribed = continue_notifications
|
|
||||||
# with self._lock:
|
|
||||||
# if not hasattr(self, "_button_handle"):
|
|
||||||
# handle = self._io_service.getCharacteristics(IO.USER_BUTTON_CHAR.value)[0]
|
|
||||||
# self._button_handle = handle.getHandle()
|
|
||||||
#
|
|
||||||
# self.writeCharacteristic(self._button_handle + 1, bytes([0, 0]))
|
|
||||||
await self._dev.stop_notify(IO.USER_BUTTON_CHAR.value)
|
|
||||||
|
|
||||||
|
|
||||||
# def subscribe_temperature(self):
|
|
||||||
# """Subscribe to temperature notifications and start thread if necessary
|
|
||||||
# """
|
|
||||||
# if self.debug:
|
|
||||||
# print("Subscribing to temperature notification")
|
|
||||||
#
|
|
||||||
# self._temperature_subscribed = True
|
|
||||||
# # with self._lock:
|
|
||||||
# if not hasattr(self, "_temp_handle"):
|
|
||||||
# handle = self._sensor_service.getCharacteristics(SENSOR.TEMP_CHAR.value)[0]
|
|
||||||
# self._temp_handle = handle.getHandle()
|
|
||||||
#
|
|
||||||
# self.writeCharacteristic(self._temp_handle + 1, bytes([1, 0]))
|
|
||||||
#
|
|
||||||
# self._start_notification_thread()
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# def unsubscribe_temperature(self, continue_notifications=False):
|
|
||||||
# """Unsubscribe to temperature notifications
|
|
||||||
#
|
|
||||||
# Keyword Arguments:
|
|
||||||
# continue_notifications {bool} -- Keep notification thread running (default: {False})
|
|
||||||
# """
|
|
||||||
# if self.debug:
|
|
||||||
# print("Unsubscribing from temperature notification")
|
|
||||||
#
|
|
||||||
# self._temperature_subscribed = continue_notifications
|
|
||||||
# # with self._lock:
|
|
||||||
# if not hasattr(self, "_temp_handle"):
|
|
||||||
# handle = self._sensor_service.getCharacteristics(SENSOR.TEMP_CHAR.value)[0]
|
|
||||||
# self._temp_handle = handle.getHandle()
|
|
||||||
#
|
|
||||||
# self.writeCharacteristic(self._temp_handle + 1, bytes([0, 0]))
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# def subscribe_battery(self):
|
|
||||||
# """Subscribe to battery notifications and start thread if necessary
|
|
||||||
# """
|
|
||||||
# if self.debug:
|
|
||||||
# print("Subscribing to battery notification")
|
|
||||||
#
|
|
||||||
# self._battery_subscribed = True
|
|
||||||
# # with self._lock:
|
|
||||||
# if not hasattr(self, "_battery_handle"):
|
|
||||||
# handle = self._io_service.getCharacteristics(IO.BATTERY_CHAR.value)[0]
|
|
||||||
# self._battery_handle = handle.getHandle()
|
|
||||||
#
|
|
||||||
# self.writeCharacteristic(self._battery_handle + 1, bytes([1, 0]))
|
|
||||||
# self._start_notification_thread()
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# def unsubscribe_battery(self, continue_notifications=False):
|
|
||||||
# """Unsubscribe to battery notifications
|
|
||||||
#
|
|
||||||
# Keyword Arguments:
|
|
||||||
# continue_notifications {bool} -- Keep notification thread running (default: {False})
|
|
||||||
# """
|
|
||||||
# if self.debug:
|
|
||||||
# print("Unsubscribing from battery notification")
|
|
||||||
#
|
|
||||||
# self._battery_subscribed = continue_notifications
|
|
||||||
# # with self._lock:
|
|
||||||
# if not hasattr(self, "_battery_handle"):
|
|
||||||
# handle = self._io_service.getCharacteristics(IO.BATTERY_CHAR.value)[0]
|
|
||||||
# self._battery_handle = handle.getHandle()
|
|
||||||
#
|
|
||||||
# self.writeCharacteristic(self._battery_handle + 1, bytes([0, 0]))
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# def _start_notification_thread(self):
|
|
||||||
# try:
|
|
||||||
# if self._notification_thread == None:
|
|
||||||
# self.reset_position()
|
|
||||||
# self._notification_thread = threading.Thread(target=self._notification_wait)
|
|
||||||
# self._notification_thread.start()
|
|
||||||
# except:
|
|
||||||
# pass
|
|
||||||
|
|
||||||
|
|
||||||
# def _notification_wait(self):
|
|
||||||
# if self.debug:
|
|
||||||
# print("Notification thread started")
|
|
||||||
#
|
|
||||||
# while (self.connected and
|
|
||||||
# (self._position_subscribed or
|
|
||||||
# self._button_subscribed or
|
|
||||||
# self._temperature_subscribed or
|
|
||||||
# self._battery_subscribed)):
|
|
||||||
# try:
|
|
||||||
# if super().waitForNotifications(1):
|
|
||||||
# continue
|
|
||||||
# except:
|
|
||||||
# continue
|
|
||||||
#
|
|
||||||
# if self.debug:
|
|
||||||
# print("Notification thread stopped")
|
|
||||||
|
|
||||||
|
|
||||||
def _on_position(self, data):
|
|
||||||
"""Private function for position notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
data {bytes} -- Data from device
|
|
||||||
"""
|
|
||||||
# I got part of this from Kano's node module and modified it
|
|
||||||
y = np.int16(np.uint16(int.from_bytes(data[0:2], byteorder='little')))
|
|
||||||
x = -1 * np.int16(np.uint16(int.from_bytes(data[2:4], byteorder='little')))
|
|
||||||
w = -1 * np.int16(np.uint16(int.from_bytes(data[4:6], byteorder='little')))
|
|
||||||
z = np.int16(np.uint16(int.from_bytes(data[6:8], byteorder='little')))
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
pitch = "Pitch: {}".format(z).ljust(16)
|
|
||||||
roll = "Roll: {}".format(w).ljust(16)
|
|
||||||
print("{}{}(x, y): ({}, {})".format(pitch, roll, x, y))
|
|
||||||
|
|
||||||
self.on_position(x, y, z, w)
|
|
||||||
for callback in self._position_callbacks.values():
|
|
||||||
callback(x, y, z, w)
|
|
||||||
|
|
||||||
|
|
||||||
def on_position(self, roll, x, y, z):
|
|
||||||
"""Function called on position notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
x {int} -- X position of wand (Between -1000 and 1000)
|
|
||||||
y {int} -- Y position of wand (Between -1000 and 1000)
|
|
||||||
pitch {int} -- Pitch of wand (Between -1000 and 1000)
|
|
||||||
roll {int} -- Roll of wand (Between -1000 and 1000)
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
# def reset_position(self):
|
|
||||||
# """Reset the quaternains of the wand
|
|
||||||
# """
|
|
||||||
# handle = self._sensor_service.getCharacteristics(SENSOR.QUATERNIONS_RESET_CHAR.value)[0].getHandle()
|
|
||||||
# # with self._lock:
|
|
||||||
# self.writeCharacteristic(handle, bytes([1]))
|
|
||||||
|
|
||||||
|
|
||||||
def _on_button(self, data):
|
|
||||||
"""Private function for button notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
data {bytes} -- Data from device
|
|
||||||
"""
|
|
||||||
val = data[0] == 1
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Button: {}".format(val))
|
|
||||||
|
|
||||||
self.on_button(val)
|
|
||||||
for callback in self._button_callbacks.values():
|
|
||||||
callback(val)
|
|
||||||
|
|
||||||
|
|
||||||
async def on_button(self, value):
|
|
||||||
"""Function called on button notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
pressed {bool} -- If button is pressed
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
def _on_temperature(self, data):
|
|
||||||
"""Private function for temperature notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
data {bytes} -- Data from device
|
|
||||||
"""
|
|
||||||
val = np.int16(np.uint16(int.from_bytes(data[0:2], byteorder='little')))
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Temperature: {}".format(val))
|
|
||||||
|
|
||||||
self.on_temperature(val)
|
|
||||||
for callback in self._temperature_callbacks.values():
|
|
||||||
callback(val)
|
|
||||||
|
|
||||||
|
|
||||||
def on_temperature(self, value):
|
|
||||||
"""Function called on temperature notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
value {int} -- Temperature of the wand
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
async def _on_battery(self, data):
|
|
||||||
"""Private function for battery notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
data {bytes} -- Data from device
|
|
||||||
"""
|
|
||||||
val = data[0]
|
|
||||||
|
|
||||||
if self.debug:
|
|
||||||
print("Battery: {}".format(val))
|
|
||||||
|
|
||||||
await self.on_battery(val)
|
|
||||||
for callback in self._battery_callbacks.values():
|
|
||||||
await callback(val)
|
|
||||||
|
|
||||||
|
|
||||||
async def on_battery(self, value):
|
|
||||||
"""Function called on battery notification
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
value {int} -- Battery level of the wand
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def handle_notification(self, sender, data):
|
|
||||||
"""Handle notifications subscribed to
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
cHandle {int} -- Handle of notification
|
|
||||||
data {bytes} -- Data from device
|
|
||||||
"""
|
|
||||||
import asyncio
|
|
||||||
future = None
|
|
||||||
print("Handle notification")
|
|
||||||
if sender == SENSOR.QUATERNIONS_CHAR.value:
|
|
||||||
self._on_position(data)
|
|
||||||
elif sender == IO.USER_BUTTON_CHAR.value:
|
|
||||||
# self._on_button(data)
|
|
||||||
future = asyncio.run_coroutine_threadsafe(self._on_button(data), self.bot_loop)
|
|
||||||
|
|
||||||
elif sender == SENSOR.TEMP_CHAR.value:
|
|
||||||
self._on_temperature(data)
|
|
||||||
elif sender == IO.BATTERY_CHAR.value:
|
|
||||||
self._on_battery(data)
|
|
||||||
|
|
||||||
if future != None:
|
|
||||||
print("future result is - ", future.result())
|
|
||||||
+22
-14
@@ -1,8 +1,6 @@
|
|||||||
from shop import Shop
|
from KanoWandAsync import Shop, Wand
|
||||||
from wand import Wand
|
from KanoWandAsync.constants import *
|
||||||
from constants import *
|
|
||||||
import asyncio
|
import asyncio
|
||||||
import sys
|
|
||||||
|
|
||||||
# Custom wand class extending the default wand
|
# Custom wand class extending the default wand
|
||||||
class MyWand(Wand):
|
class MyWand(Wand):
|
||||||
@@ -12,22 +10,39 @@ class MyWand(Wand):
|
|||||||
self.position_id = None
|
self.position_id = None
|
||||||
|
|
||||||
# Do some functions after connecting
|
# Do some functions after connecting
|
||||||
def post_connect(self):
|
async def post_connect(self):
|
||||||
print("Connected to {}".format(self.name))
|
print("Connected to {}".format(self.name))
|
||||||
# # Vibrate the wand and set its color to red
|
# # Vibrate the wand and set its color to red
|
||||||
# self.set_led(self.colors.pop())
|
# self.set_led(self.colors.pop())
|
||||||
# # Subscribe to notifications
|
# # Subscribe to notifications
|
||||||
self.subscribe_button()
|
await self.subscribe_button()
|
||||||
|
await self.subscribe_position()
|
||||||
|
await self.get_organization()
|
||||||
|
await self.subscribe_battery()
|
||||||
|
await self.subscribe_temperature()
|
||||||
|
|
||||||
|
|
||||||
# Button callback, automatically called after connecting to wand
|
# Button callback, automatically called after connecting to wand
|
||||||
async def on_button(self, pressed):
|
async def on_button(self, pressed):
|
||||||
if pressed:
|
if pressed:
|
||||||
|
await self.vibrate(PATTERN.BURST)
|
||||||
# Unsubscribe from the position callback
|
# Unsubscribe from the position callback
|
||||||
await self.set_led(self.colors.pop())
|
await self.set_led(self.colors.pop())
|
||||||
|
await self.reset_position()
|
||||||
# Disconnect if we run out of colors
|
# Disconnect if we run out of colors
|
||||||
if len(self.colors) == 0:
|
if len(self.colors) == 0:
|
||||||
await self.disconnect()
|
await self.disconnect()
|
||||||
|
|
||||||
|
async def on_position(self, x, y, pitch, roll):
|
||||||
|
print(x, y, pitch, roll)
|
||||||
|
|
||||||
|
async def on_battery(self, value):
|
||||||
|
print("Battery:", value)
|
||||||
|
|
||||||
|
async def on_temperature(self, value):
|
||||||
|
print("Temperature", value)
|
||||||
|
|
||||||
|
|
||||||
async def main():
|
async def main():
|
||||||
|
|
||||||
# Create a new wand scanner
|
# Create a new wand scanner
|
||||||
@@ -43,15 +58,8 @@ async def main():
|
|||||||
for wand in wands:
|
for wand in wands:
|
||||||
# Vibrate the wand and set its color to red
|
# Vibrate the wand and set its color to red
|
||||||
await wand.vibrate(PATTERN.BURST)
|
await wand.vibrate(PATTERN.BURST)
|
||||||
|
await asyncio.sleep(20)
|
||||||
|
|
||||||
# Callback for position
|
|
||||||
# def onPos(x, y, pitch, roll):
|
|
||||||
# pitch = "Pitch: {}".format(pitch).ljust(16)
|
|
||||||
# roll = "Roll: {}".format(roll).ljust(16)
|
|
||||||
# print("{}{}(x, y): ({}, {})".format(pitch, roll, x, y))
|
|
||||||
|
|
||||||
# Add the event callback to the wand
|
|
||||||
# wand.position_id = wand.on("position", onPos)
|
|
||||||
|
|
||||||
# Detect keyboard interrupt disconnect
|
# Detect keyboard interrupt disconnect
|
||||||
except KeyboardInterrupt as e:
|
except KeyboardInterrupt as e:
|
||||||
|
|||||||
@@ -1,198 +0,0 @@
|
|||||||
# Byte-compiled / optimized / DLL files
|
|
||||||
__pycache__/
|
|
||||||
*.py[cod]
|
|
||||||
*$py.class
|
|
||||||
|
|
||||||
# C extensions
|
|
||||||
*.so
|
|
||||||
|
|
||||||
# Distribution / packaging
|
|
||||||
.Python
|
|
||||||
build/
|
|
||||||
develop-eggs/
|
|
||||||
dist/
|
|
||||||
downloads/
|
|
||||||
eggs/
|
|
||||||
.eggs/
|
|
||||||
lib/
|
|
||||||
lib64/
|
|
||||||
parts/
|
|
||||||
sdist/
|
|
||||||
var/
|
|
||||||
wheels/
|
|
||||||
pip-wheel-metadata/
|
|
||||||
share/python-wheels/
|
|
||||||
*.egg-info/
|
|
||||||
.installed.cfg
|
|
||||||
*.egg
|
|
||||||
MANIFEST
|
|
||||||
|
|
||||||
# PyInstaller
|
|
||||||
# Usually these files are written by a python script from a template
|
|
||||||
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
|
||||||
*.manifest
|
|
||||||
*.spec
|
|
||||||
|
|
||||||
# Installer logs
|
|
||||||
pip-log.txt
|
|
||||||
pip-delete-this-directory.txt
|
|
||||||
|
|
||||||
# Unit test / coverage reports
|
|
||||||
htmlcov/
|
|
||||||
.tox/
|
|
||||||
.nox/
|
|
||||||
.coverage
|
|
||||||
.coverage.*
|
|
||||||
.cache
|
|
||||||
nosetests.xml
|
|
||||||
coverage.xml
|
|
||||||
*.cover
|
|
||||||
*.py,cover
|
|
||||||
.hypothesis/
|
|
||||||
.pytest_cache/
|
|
||||||
|
|
||||||
# Translations
|
|
||||||
*.mo
|
|
||||||
*.pot
|
|
||||||
|
|
||||||
# Django stuff:
|
|
||||||
*.log
|
|
||||||
local_settings.py
|
|
||||||
db.sqlite3
|
|
||||||
db.sqlite3-journal
|
|
||||||
|
|
||||||
# Flask stuff:
|
|
||||||
instance/
|
|
||||||
.webassets-cache
|
|
||||||
|
|
||||||
# Scrapy stuff:
|
|
||||||
.scrapy
|
|
||||||
|
|
||||||
# Sphinx documentation
|
|
||||||
docs/_build/
|
|
||||||
|
|
||||||
# PyBuilder
|
|
||||||
target/
|
|
||||||
|
|
||||||
# Jupyter Notebook
|
|
||||||
.ipynb_checkpoints
|
|
||||||
|
|
||||||
# IPython
|
|
||||||
profile_default/
|
|
||||||
ipython_config.py
|
|
||||||
|
|
||||||
# pyenv
|
|
||||||
.python-version
|
|
||||||
|
|
||||||
# pipenv
|
|
||||||
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
|
||||||
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
|
||||||
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
|
||||||
# install all needed dependencies.
|
|
||||||
#Pipfile.lock
|
|
||||||
|
|
||||||
# pyflow
|
|
||||||
__pypackages__/
|
|
||||||
|
|
||||||
# Celery stuff
|
|
||||||
celerybeat-schedule
|
|
||||||
celerybeat.pid
|
|
||||||
|
|
||||||
# SageMath parsed files
|
|
||||||
*.sage.py
|
|
||||||
|
|
||||||
# Environments
|
|
||||||
.env
|
|
||||||
.venv
|
|
||||||
env/
|
|
||||||
venv/
|
|
||||||
ENV/
|
|
||||||
env.bak/
|
|
||||||
venv.bak/
|
|
||||||
|
|
||||||
# Spyder project settings
|
|
||||||
.spyderproject
|
|
||||||
.spyproject
|
|
||||||
|
|
||||||
# Rope project settings
|
|
||||||
.ropeproject
|
|
||||||
|
|
||||||
# mkdocs documentation
|
|
||||||
/site
|
|
||||||
|
|
||||||
# mypy
|
|
||||||
.mypy_cache/
|
|
||||||
.dmypy.json
|
|
||||||
dmypy.json
|
|
||||||
|
|
||||||
# Pyre type checker
|
|
||||||
.pyre/
|
|
||||||
|
|
||||||
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm
|
|
||||||
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
|
|
||||||
|
|
||||||
# User-specific stuff
|
|
||||||
.idea/**/workspace.xml
|
|
||||||
.idea/**/tasks.xml
|
|
||||||
.idea/**/usage.statistics.xml
|
|
||||||
.idea/**/dictionaries
|
|
||||||
.idea/**/shelf
|
|
||||||
|
|
||||||
# Generated files
|
|
||||||
.idea/**/contentModel.xml
|
|
||||||
|
|
||||||
# Sensitive or high-churn files
|
|
||||||
.idea/**/dataSources/
|
|
||||||
.idea/**/dataSources.ids
|
|
||||||
.idea/**/dataSources.local.xml
|
|
||||||
.idea/**/sqlDataSources.xml
|
|
||||||
.idea/**/dynamic.xml
|
|
||||||
.idea/**/uiDesigner.xml
|
|
||||||
.idea/**/dbnavigator.xml
|
|
||||||
|
|
||||||
# Gradle
|
|
||||||
.idea/**/gradle.xml
|
|
||||||
.idea/**/libraries
|
|
||||||
|
|
||||||
# Gradle and Maven with auto-import
|
|
||||||
# When using Gradle or Maven with auto-import, you should exclude module files,
|
|
||||||
# since they will be recreated, and may cause churn. Uncomment if using
|
|
||||||
# auto-import.
|
|
||||||
# .idea/modules.xml
|
|
||||||
# .idea/*.iml
|
|
||||||
# .idea/modules
|
|
||||||
# *.iml
|
|
||||||
# *.ipr
|
|
||||||
|
|
||||||
# CMake
|
|
||||||
cmake-build-*/
|
|
||||||
|
|
||||||
# Mongo Explorer plugin
|
|
||||||
.idea/**/mongoSettings.xml
|
|
||||||
|
|
||||||
# File-based project format
|
|
||||||
*.iws
|
|
||||||
|
|
||||||
# IntelliJ
|
|
||||||
out/
|
|
||||||
|
|
||||||
# mpeltonen/sbt-idea plugin
|
|
||||||
.idea_modules/
|
|
||||||
|
|
||||||
# JIRA plugin
|
|
||||||
atlassian-ide-plugin.xml
|
|
||||||
|
|
||||||
# Cursive Clojure plugin
|
|
||||||
.idea/replstate.xml
|
|
||||||
|
|
||||||
# Crashlytics plugin (for Android Studio and IntelliJ)
|
|
||||||
com_crashlytics_export_strings.xml
|
|
||||||
crashlytics.properties
|
|
||||||
crashlytics-build.properties
|
|
||||||
fabric.properties
|
|
||||||
|
|
||||||
# Editor-based Rest Client
|
|
||||||
.idea/httpRequests
|
|
||||||
|
|
||||||
# Android studio 3.1+ serialized cache file
|
|
||||||
.idea/caches/build_file_checksums.ser
|
|
||||||
@@ -1,71 +0,0 @@
|
|||||||
import logging
|
|
||||||
import struct
|
|
||||||
|
|
||||||
from time import sleep
|
|
||||||
from converters import BinToInt, BinToFloat
|
|
||||||
from .wand_sensors import *
|
|
||||||
from bleak import BleakClient
|
|
||||||
from bleak import _logger as logger
|
|
||||||
from .wand_utils import *
|
|
||||||
from .sensor_decoders import wand_decoder
|
|
||||||
|
|
||||||
|
|
||||||
class KanoBLEClient(object):
|
|
||||||
def __init__(self, wand_address, loop, spells=None):
|
|
||||||
self.wand_address = wand_address
|
|
||||||
self.int_decoder = BinToInt(48)
|
|
||||||
self.float_decoder = BinToFloat(16, 31)
|
|
||||||
self.client = None
|
|
||||||
self.decoder = wand_decoder()
|
|
||||||
self.wand_sensors = WandSensors(self.sensor_update_handler)
|
|
||||||
self.loop = loop
|
|
||||||
self.dateframe_handler = None
|
|
||||||
|
|
||||||
async def connect(self, debug=False):
|
|
||||||
if debug:
|
|
||||||
import sys
|
|
||||||
l = logging.getLogger("asyncio")
|
|
||||||
l.setLevel(logging.DEBUG)
|
|
||||||
h = logging.StreamHandler(sys.stdout)
|
|
||||||
h.setLevel(logging.DEBUG)
|
|
||||||
l.addHandler(h)
|
|
||||||
logger.addHandler(h)
|
|
||||||
|
|
||||||
self.client = BleakClient(self.wand_address, loop=self.loop)
|
|
||||||
await self.client.connect()
|
|
||||||
x = await self.client.is_connected()
|
|
||||||
logger.info("Connected: {0}".format(x))
|
|
||||||
|
|
||||||
|
|
||||||
async def start_recieving_data(self, sensors=None):
|
|
||||||
await start_notify(self.client, self.sensor_handling, sensors)
|
|
||||||
|
|
||||||
async def stop_recieving_data(self, sensors):
|
|
||||||
await stop_notify(self.client, sensors)
|
|
||||||
|
|
||||||
def change_spell(self, spell):
|
|
||||||
self.wand_sensors.data_folder = "./training_data/" + spell + "/"
|
|
||||||
print(f"changed wand folder to {self.wand_sensors.data_folder}")
|
|
||||||
|
|
||||||
def sensor_update_handler(self, sensors):
|
|
||||||
print(sensors)
|
|
||||||
# print("SENSORS RECIEVED")
|
|
||||||
return
|
|
||||||
|
|
||||||
|
|
||||||
def sensor_handling(self, sender, data):
|
|
||||||
"""Simple notification handler which prints the data received."""
|
|
||||||
sender = get_key(sender, CHARACTERISTIC_UUIDS)
|
|
||||||
if sender == BUTTON:
|
|
||||||
self.wand_sensors.set_button(self.decoder.decode_button(data))
|
|
||||||
self.loop.run_until_complete(self.client.write_gatt_char(RESET_CHAR, struct.pack("h", 1)))
|
|
||||||
elif sender == NINE_AXIS:
|
|
||||||
self.wand_sensors.set_gyro(*self.decoder.decode_nine_axis(data))
|
|
||||||
elif sender == ACCELEROMETER:
|
|
||||||
self.wand_sensors.set_accel(*self.decoder.decode_nine_axis(data))
|
|
||||||
elif sender == BATTERY:
|
|
||||||
self.decoder.decode_battery(data)
|
|
||||||
elif sender == TEMPERATURE:
|
|
||||||
self.wand_sensors.set_temp(self.decoder.decode_temp(data))
|
|
||||||
elif sender == MAGNETOMETER:
|
|
||||||
self.wand_sensors.set_magneto(self.decoder.decode_magnet(data))
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
from enum import Enum
|
|
||||||
|
|
||||||
BUTTON = 1
|
|
||||||
NINE_AXIS = 2
|
|
||||||
ACCELEROMETER = 3
|
|
||||||
BATTERY = 4
|
|
||||||
TEMPERATURE = 5
|
|
||||||
MAGNETOMETER = 6
|
|
||||||
|
|
||||||
RESET_CHAR = "64a70004-f691-4b93-a6f4-0968f5b648f8"
|
|
||||||
|
|
||||||
CHARACTERISTIC_UUIDS = {
|
|
||||||
BUTTON: ("64a7000d-f691-4b93-a6f4-0968f5b648f8"), # Button
|
|
||||||
NINE_AXIS: ("64a7000a-f691-4b93-a6f4-0968f5b648f8"), # 9 axis
|
|
||||||
ACCELEROMETER: ("64a7000c-f691-4b93-a6f4-0968f5b648f8"), # Accel
|
|
||||||
BATTERY: ("64a70007-f691-4b93-a6f4-0968f5b648f8"),
|
|
||||||
TEMPERATURE:("64a70014-f691-4b93-a6f4-0968f5b648f8"),
|
|
||||||
MAGNETOMETER:("64a70021-f691-4b93-a6f4-0968f5b648f8")
|
|
||||||
} # <--- Change to the characteristic you want to enable notifications from.
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
import struct
|
|
||||||
from .wand_utils import chunker
|
|
||||||
from converters import BinToInt, BinToFloat
|
|
||||||
|
|
||||||
class wand_decoder(object):
|
|
||||||
def __init__(self, int_decoder=BinToInt(48), float_decoder= BinToFloat(16, 31)):
|
|
||||||
self.int_decoder = int_decoder
|
|
||||||
self.float_decoder = float_decoder
|
|
||||||
|
|
||||||
def decode_button(self, data):
|
|
||||||
return int.from_bytes(data, byteorder='big')
|
|
||||||
|
|
||||||
def decode_nine_axis(self, data):
|
|
||||||
converted = [self.int_decoder.process(x, True) / 10 ** 14 for x in chunker(data, 6)]
|
|
||||||
return converted
|
|
||||||
|
|
||||||
def decode_accelerometer(self, data):
|
|
||||||
converted = [self.int_decoder.process(x, True) / 10 ** 14 for x in chunker(data, 6)]
|
|
||||||
return converted
|
|
||||||
|
|
||||||
def decode_battery(self, data):
|
|
||||||
return int.from_bytes(data, byteorder='big')
|
|
||||||
|
|
||||||
def decode_temp(self, data):
|
|
||||||
return struct.unpack("h", data)
|
|
||||||
|
|
||||||
def decode_magnet(self, data):
|
|
||||||
print(data)
|
|
||||||
print(len(data))
|
|
||||||
return 0
|
|
||||||
@@ -1,916 +0,0 @@
|
|||||||
0, 1, 2, 3, 4, 5, 6, 7, 8
|
|
||||||
16, -12, 1, 3, 2, 999, -1277, -1, 1
|
|
||||||
13, -1, 0, 2, 4, 999, -1277, -1, 2
|
|
||||||
12, -9, 0, 1, 5, 999, -1276, 0, 3
|
|
||||||
1, -1, 1, 0, 10, 999, -1275, 0, 6
|
|
||||||
11, 0, 1, 0, 16, 999, -1274, 0, 9
|
|
||||||
11, -9, -2, 1, 26, 999, -1273, 0, 15
|
|
||||||
21, 12, 0, 1, 35, 999, -1273, 0, 20
|
|
||||||
9, -21, 0, 0, 45, 998, -1273, 0, 25
|
|
||||||
6, -29, 2, 0, 51, 998, -1272, 0, 29
|
|
||||||
10, -12, 0, 1, 52, 998, -1272, 0, 30
|
|
||||||
6, -16, -2, 1, 45, 998, -1272, 0, 26
|
|
||||||
12, -2, 0, 1, 39, 999, -1273, 0, 22
|
|
||||||
10, 0, -2, 1, 38, 999, -1273, 0, 22
|
|
||||||
11, -9, 1, 1, 41, 999, -1274, -1, 23
|
|
||||||
10, -18, -1, 1, 44, 998, -1273, -1, 25
|
|
||||||
11, -10, 0, 1, 46, 998, -1272, 0, 26
|
|
||||||
11, -8, 0, 1, 47, 998, -1272, 0, 26
|
|
||||||
9, 0, 0, 0, 44, 999, -1271, 0, 25
|
|
||||||
9, -6, -1, 0, 38, 999, -1270, 0, 21
|
|
||||||
0, -17, -3, 0, 29, 999, -1270, 0, 16
|
|
||||||
7, 10, -7, -1, 21, 999, -1269, 1, 12
|
|
||||||
7, -12, -5, -3, 6, 999, -1268, 2, 3
|
|
||||||
10, 42, -36, -5, -57, 998, -1267, 3, -32
|
|
||||||
37, 118, 49, 4, -118, 992, -1269, -2, -67
|
|
||||||
106, 86, 59, 2, -289, 957, -1269, -1, -168
|
|
||||||
115, 326, 152, 1, -456, 889, -1274, -1, -271
|
|
||||||
4, 54, 50, 4, -568, 822, -1279, -2, -346
|
|
||||||
-40, 61, 43, 10, -666, 745, -1283, -6, -417
|
|
||||||
11, 52, 70, 14, -761, 648, -1290, -8, -495
|
|
||||||
14, 797, -121, 10, -834, 551, -1288, -5, -565
|
|
||||||
-11, 25, 130, -11, -921, 388, -1279, 6, -671
|
|
||||||
6, 35, 189, -13, -967, 253, -1275, 7, -752
|
|
||||||
-5, 0, 139, -15, -987, 155, -1271, 9, -810
|
|
||||||
-5, 0, 79, -17, -993, 112, -1270, 9, -835
|
|
||||||
-14, 120, 158, -19, -997, 61, -1269, 11, -864
|
|
||||||
-10, -3, 107, -21, -998, 49, -1268, 12, -871
|
|
||||||
-9, -22, 69, -22, -998, 48, -1268, 12, -872
|
|
||||||
-8, -17, 102, -23, -999, 31, -1267, 13, -882
|
|
||||||
-84, 3, 102, -22, -999, 17, -1267, 13, -889
|
|
||||||
19, -1, 53, -14, -999, 0, -1268, 8, -900
|
|
||||||
14, -27, 117, -4, -999, -2, -1268, 2, -901
|
|
||||||
10, -18, 80, -5, -999, 2, -1268, 3, -898
|
|
||||||
5, -7, 85, -7, -999, 2, -1268, 4, -898
|
|
||||||
3, -13, 85, -8, -999, 0, -1267, 5, -899
|
|
||||||
-6, 0, 67, -9, -999, -2, -1267, 5, -901
|
|
||||||
6, -29, 109, -11, -999, 0, -1268, 6, -899
|
|
||||||
-1, -11, 57, -13, -999, -4, -1268, 7, -902
|
|
||||||
6, -53, 65, -15, -999, 8, -1269, 8, -895
|
|
||||||
-2, -7, 31, -16, -999, 25, -1270, 9, -885
|
|
||||||
-1, -32, 30, -19, -998, 42, -1271, 10, -875
|
|
||||||
0, -9, 48, -21, -998, 51, -1272, 12, -870
|
|
||||||
0, -40, 31, -23, -998, 47, -1272, 13, -872
|
|
||||||
5, 0, 50, -24, -999, 36, -1271, 14, -878
|
|
||||||
-7, -15, 50, -29, -999, 10, -1272, 16, -894
|
|
||||||
-5, -4, 43, -29, -999, 3, -1272, 17, -897
|
|
||||||
-10, -12, 31, -28, -999, 5, -1272, 16, -897
|
|
||||||
-11, -5, 30, -27, -999, 6, -1271, 15, -896
|
|
||||||
-14, -5, 27, -27, -999, 3, -1270, 15, -898
|
|
||||||
-9, -9, 23, -25, -999, -6, -1270, 14, -903
|
|
||||||
-8, -13, 22, -25, -999, -10, -1269, 14, -905
|
|
||||||
-12, -10, 27, -26, -999, -19, -1269, 15, -911
|
|
||||||
-10, -4, 30, -26, -999, -28, -1268, 15, -916
|
|
||||||
-10, -22, 19, -27, -999, -34, -1268, 15, -919
|
|
||||||
-18, 5, 35, -29, -998, -41, -1268, 16, -923
|
|
||||||
-12, -6, 27, -31, -998, -46, -1267, 18, -926
|
|
||||||
-5, -15, 20, -29, -998, -48, -1267, 16, -927
|
|
||||||
-10, -13, 11, -29, -998, -40, -1266, 16, -923
|
|
||||||
-10, -5, 8, -29, -998, -33, -1266, 16, -919
|
|
||||||
-13, 0, 13, -29, -999, -26, -1265, 17, -915
|
|
||||||
-10, -21, 0, -30, -999, -23, -1265, 17, -913
|
|
||||||
-13, -13, 8, -30, -999, -26, -1264, 17, -914
|
|
||||||
-17, -8, 7, -30, -999, -31, -1264, 17, -918
|
|
||||||
-15, 0, 8, -30, -998, -38, -1263, 17, -922
|
|
||||||
-11, -8, 7, -32, -998, -48, -1263, 18, -927
|
|
||||||
-9, 0, -15, -34, -998, -44, -1262, 19, -925
|
|
||||||
-12, -6, -2, -34, -998, -34, -1262, 19, -919
|
|
||||||
-14, -13, -6, -34, -999, -25, -1261, 19, -914
|
|
||||||
-18, -31, -15, -33, -999, -16, -1261, 19, -909
|
|
||||||
-18, 4, -22, -32, -999, -12, -1260, 18, -906
|
|
||||||
-12, -8, -5, -32, -999, -12, -1259, 18, -907
|
|
||||||
-2, 8, 0, -32, -999, -16, -1259, 18, -909
|
|
||||||
-15, -1, 12, -33, -999, -17, -1258, 19, -909
|
|
||||||
-14, -9, -10, -34, -999, -17, -1258, 19, -910
|
|
||||||
-7, -31, -1, -35, -999, -19, -1257, 20, -911
|
|
||||||
-13, -4, -3, -35, -999, -21, -1257, 20, -912
|
|
||||||
-12, -9, -3, -34, -999, -22, -1256, 19, -912
|
|
||||||
-6, -39, -3, -34, -999, -23, -1256, 19, -913
|
|
||||||
-13, -9, -9, -32, -999, -24, -1255, 18, -914
|
|
||||||
-12, -15, -8, -30, -999, -26, -1254, 17, -915
|
|
||||||
-14, -18, -10, -29, -999, -32, -1254, 16, -918
|
|
||||||
-13, -8, -2, -28, -998, -44, -1254, 16, -925
|
|
||||||
-12, -6, 3, -26, -998, -55, -1253, 15, -931
|
|
||||||
-12, -9, 2, -25, -997, -70, -1253, 14, -940
|
|
||||||
-14, -15, 2, -25, -996, -73, -1252, 14, -942
|
|
||||||
-13, -6, 2, -24, -996, -74, -1252, 14, -942
|
|
||||||
-12, -10, -1, -24, -996, -74, -1252, 13, -942
|
|
||||||
-12, -14, -4, -23, -996, -74, -1251, 13, -942
|
|
||||||
-14, -11, -1, -22, -996, -75, -1251, 12, -943
|
|
||||||
-13, -9, 0, -20, -996, -78, -1250, 11, -945
|
|
||||||
-9, -10, 7, -19, -996, -75, -1250, 11, -943
|
|
||||||
-9, -13, 0, -18, -996, -76, -1250, 10, -943
|
|
||||||
-9, -10, 0, -18, -996, -76, -1249, 10, -943
|
|
||||||
-11, -7, 0, -17, -996, -76, -1249, 10, -943
|
|
||||||
-10, -9, 0, -17, -996, -76, -1249, 9, -943
|
|
||||||
-10, -10, -2, -16, -997, -74, -1248, 9, -942
|
|
||||||
-10, -16, -7, -16, -997, -72, -1248, 9, -941
|
|
||||||
-7, -10, -6, -16, -997, -72, -1247, 9, -941
|
|
||||||
-9, -15, -4, -16, -997, -75, -1247, 9, -943
|
|
||||||
-9, -11, 2, -16, -996, -78, -1246, 9, -945
|
|
||||||
-10, -10, 4, -16, -996, -80, -1246, 9, -945
|
|
||||||
-9, -11, -1, -16, -996, -80, -1246, 9, -946
|
|
||||||
-10, -9, -5, -15, -996, -80, -1245, 9, -946
|
|
||||||
-7, -10, 1, -15, -996, -80, -1245, 8, -946
|
|
||||||
-9, -8, -4, -15, -996, -82, -1244, 8, -947
|
|
||||||
-9, -7, 0, -15, -996, -83, -1244, 8, -948
|
|
||||||
-9, -12, -2, -15, -996, -84, -1243, 8, -948
|
|
||||||
-9, -11, -3, -15, -996, -82, -1243, 8, -947
|
|
||||||
-9, -13, -5, -15, -996, -81, -1243, 8, -946
|
|
||||||
-7, -10, -7, -14, -996, -79, -1242, 8, -945
|
|
||||||
-9, -11, -4, -14, -996, -77, -1242, 8, -944
|
|
||||||
-8, -10, -11, -14, -997, -73, -1241, 8, -942
|
|
||||||
-5, -9, -6, -14, -997, -71, -1241, 8, -940
|
|
||||||
-8, -9, -4, -13, -997, -69, -1240, 8, -939
|
|
||||||
-8, -14, -8, -13, -997, -68, -1240, 7, -939
|
|
||||||
-8, -9, 0, -13, -997, -65, -1239, 7, -937
|
|
||||||
-7, -7, -7, -13, -998, -58, -1239, 7, -933
|
|
||||||
-5, -23, -34, -12, -998, -49, -1238, 6, -928
|
|
||||||
0, 104, 75, -13, -999, -10, -1237, 7, -905
|
|
||||||
-149, 21, -67, -14, -997, 65, -1236, 8, -862
|
|
||||||
-39, 7, -45, -15, -988, 148, -1233, 8, -814
|
|
||||||
0, -42, -30, -15, -955, 293, -1230, 8, -729
|
|
||||||
41, -78, -114, -17, -883, 467, -1222, 9, -621
|
|
||||||
-2, -85, -105, -17, -794, 606, -1219, 10, -526
|
|
||||||
-5, -100, -79, -21, -754, 656, -1216, 12, -489
|
|
||||||
-20, -74, -87, -25, -732, 680, -1215, 14, -470
|
|
||||||
-13, -72, -88, -24, -689, 723, -1215, 14, -436
|
|
||||||
-7, -88, -70, -26, -668, 742, -1215, 15, -419
|
|
||||||
-1, -100, -42, -24, -569, 821, -1213, 13, -347
|
|
||||||
10, -66, -13, -21, -468, 883, -1212, 12, -279
|
|
||||||
-37, -141, -24, -20, -235, 971, -1205, 11, -136
|
|
||||||
14, -221, 29, -18, -21, 999, -1192, 10, -12
|
|
||||||
-44, -86, 94, -14, 165, 986, -1185, 8, 95
|
|
||||||
-81, -141, 226, -10, 424, 905, -1189, 5, 251
|
|
||||||
23, -231, 148, -5, 482, 875, -1191, 3, 288
|
|
||||||
3, -156, 157, -1, 619, 785, -1193, 0, 382
|
|
||||||
4, -181, 203, 1, 664, 747, -1194, 0, 416
|
|
||||||
0, -209, 192, 3, 717, 696, -1193, -1, 458
|
|
||||||
14, -131, 237, 4, 785, 618, -1193, -2, 518
|
|
||||||
6, -121, 317, 5, 854, 518, -1192, -2, 587
|
|
||||||
-15, -69, 329, 5, 910, 412, -1191, -3, 656
|
|
||||||
14, -48, 307, 6, 938, 344, -1190, -3, 698
|
|
||||||
9, -35, 336, 8, 953, 300, -1191, -5, 725
|
|
||||||
18, -30, 296, 10, 966, 255, -1192, -6, 752
|
|
||||||
19, -40, 350, 13, 979, 201, -1193, -7, 783
|
|
||||||
19, -17, 318, 15, 986, 163, -1193, -9, 805
|
|
||||||
20, -13, 304, 17, 987, 156, -1194, -10, 809
|
|
||||||
21, -9, 296, 19, 987, 158, -1194, -11, 808
|
|
||||||
23, 2, 256, 20, 984, 173, -1194, -11, 800
|
|
||||||
21, -14, 278, 20, 986, 164, -1195, -11, 805
|
|
||||||
22, -11, 274, 20, 988, 149, -1196, -11, 813
|
|
||||||
21, -9, 278, 21, 990, 137, -1196, -12, 820
|
|
||||||
20, -20, 260, 20, 992, 123, -1198, -11, 829
|
|
||||||
-40, -26, 182, 18, 990, 132, -1196, -10, 823
|
|
||||||
52, -95, 274, 17, 991, 126, -1196, -10, 827
|
|
||||||
26, -6, 267, 16, 991, 126, -1194, -9, 827
|
|
||||||
25, -4, 256, 17, 992, 122, -1193, -9, 829
|
|
||||||
24, -6, 231, 17, 993, 108, -1194, -10, 837
|
|
||||||
23, -3, 234, 17, 994, 99, -1194, -10, 842
|
|
||||||
23, 0, 223, 19, 995, 96, -1195, -11, 844
|
|
||||||
22, -2, 202, 19, 995, 93, -1195, -11, 846
|
|
||||||
24, 1, 203, 19, 996, 86, -1196, -11, 850
|
|
||||||
20, -3, 178, 19, 996, 78, -1197, -11, 854
|
|
||||||
22, -3, 172, 19, 997, 73, -1198, -11, 858
|
|
||||||
20, 1, 157, 19, 997, 65, -1198, -11, 862
|
|
||||||
20, 0, 150, 19, 998, 53, -1199, -11, 869
|
|
||||||
22, -1, 140, 19, 998, 42, -1200, -11, 875
|
|
||||||
19, -4, 132, 19, 999, 31, -1200, -10, 881
|
|
||||||
19, 1, 117, 18, 999, 17, -1201, -10, 889
|
|
||||||
17, 3, 108, 18, 999, 9, -1202, -10, 894
|
|
||||||
18, -2, 102, 17, 999, 0, -1203, -10, 900
|
|
||||||
18, 2, 92, 17, 999, -12, -1204, -10, 906
|
|
||||||
18, 0, 84, 17, 999, -23, -1205, -9, 913
|
|
||||||
15, 0, 82, 16, 999, -29, -1205, -9, 917
|
|
||||||
16, 0, 76, 16, 999, -36, -1206, -9, 920
|
|
||||||
16, 0, 66, 16, 998, -42, -1206, -9, 924
|
|
||||||
15, 0, 66, 15, 998, -50, -1207, -9, 928
|
|
||||||
15, -2, 63, 15, 998, -56, -1208, -9, 932
|
|
||||||
14, -2, 58, 15, 997, -63, -1209, -9, 936
|
|
||||||
15, -1, 54, 15, 997, -67, -1209, -9, 938
|
|
||||||
16, -3, 48, 15, 997, -69, -1210, -9, 939
|
|
||||||
17, -2, 47, 16, 997, -72, -1211, -9, 941
|
|
||||||
14, -1, 46, 15, 996, -75, -1211, -8, 943
|
|
||||||
15, -1, 42, 15, 996, -77, -1212, -8, 944
|
|
||||||
16, -2, 34, 15, 996, -80, -1212, -8, 946
|
|
||||||
12, -5, 32, 14, 996, -84, -1213, -8, 948
|
|
||||||
14, -1, 32, 14, 996, -87, -1214, -8, 950
|
|
||||||
16, -4, 30, 14, 995, -90, -1214, -8, 952
|
|
||||||
11, -5, 25, 13, 995, -94, -1215, -7, 954
|
|
||||||
12, -6, 25, 13, 995, -96, -1215, -7, 955
|
|
||||||
12, -4, 22, 12, 994, -99, -1216, -7, 957
|
|
||||||
12, -2, 19, 13, 994, -100, -1216, -7, 957
|
|
||||||
-1, -5, 17, 13, 994, -101, -1217, -7, 958
|
|
||||||
12, -1, 15, 13, 994, -102, -1218, -7, 959
|
|
||||||
12, -5, 16, 12, 994, -103, -1218, -7, 959
|
|
||||||
12, -19, 12, 12, 994, -104, -1219, -6, 960
|
|
||||||
12, -5, 14, 11, 994, -107, -1219, -6, 961
|
|
||||||
12, -3, 14, 11, 994, -107, -1220, -6, 961
|
|
||||||
12, -3, 10, 11, 993, -110, -1220, -6, 963
|
|
||||||
11, -3, 12, 11, 993, -111, -1221, -6, 963
|
|
||||||
8, -4, 7, 11, 993, -112, -1221, -6, 964
|
|
||||||
10, -3, 6, 11, 993, -113, -1222, -6, 964
|
|
||||||
9, -4, 6, 10, 993, -114, -1222, -5, 965
|
|
||||||
9, -5, 9, 10, 993, -116, -1223, -5, 966
|
|
||||||
9, -6, 7, 9, 992, -118, -1223, -5, 968
|
|
||||||
10, -7, 10, 9, 992, -119, -1224, -5, 968
|
|
||||||
8, -5, 4, 9, 992, -119, -1224, -5, 968
|
|
||||||
9, -5, 5, 9, 992, -119, -1225, -5, 968
|
|
||||||
7, -6, 5, 9, 993, -117, -1225, -5, 967
|
|
||||||
5, -6, 8, 8, 993, -116, -1225, -5, 966
|
|
||||||
7, -6, 4, 8, 993, -116, -1226, -5, 966
|
|
||||||
7, -8, 5, 8, 993, -115, -1226, -4, 966
|
|
||||||
7, -8, 10, 8, 993, -114, -1227, -4, 965
|
|
||||||
6, -7, 0, 8, 993, -113, -1227, -4, 965
|
|
||||||
8, -5, 4, 7, 993, -113, -1227, -4, 964
|
|
||||||
8, -7, 4, 7, 993, -112, -1228, -4, 964
|
|
||||||
6, -6, 4, 7, 993, -112, -1228, -4, 964
|
|
||||||
6, -5, 7, 5, 993, -112, -1228, -3, 964
|
|
||||||
4, -2, 1, 5, 993, -113, -1228, -3, 964
|
|
||||||
4, -3, -3, 5, 993, -113, -1229, -3, 965
|
|
||||||
4, -8, 9, 5, 993, -114, -1229, -3, 965
|
|
||||||
5, -7, 5, 5, 993, -114, -1230, -3, 965
|
|
||||||
7, -5, 3, 6, 993, -113, -1230, -3, 965
|
|
||||||
5, -5, 0, 5, 993, -112, -1230, -3, 964
|
|
||||||
3, -5, 2, 4, 993, -111, -1231, -2, 964
|
|
||||||
2, -11, 6, 4, 993, -112, -1231, -2, 964
|
|
||||||
4, -8, 6, 4, 993, -111, -1231, -2, 963
|
|
||||||
3, -8, -1, 3, 994, -108, -1232, -2, 962
|
|
||||||
3, -5, -4, 3, 994, -106, -1232, -1, 961
|
|
||||||
2, -2, 2, 2, 994, -101, -1232, -1, 958
|
|
||||||
2, -7, 0, 1, 994, -101, -1233, 0, 958
|
|
||||||
2, 2, -14, 0, 995, -98, -1232, 0, 956
|
|
||||||
7, -6, 4, 0, 994, -101, -1233, 0, 958
|
|
||||||
19, 26, -26, -1, 994, -103, -1233, 0, 959
|
|
||||||
6, 4, -9, -2, 994, -106, -1233, 1, 960
|
|
||||||
3, -10, 4, -2, 993, -109, -1233, 1, 962
|
|
||||||
5, -8, 11, -2, 993, -112, -1234, 1, 964
|
|
||||||
5, 0, 12, -2, 993, -116, -1234, 1, 966
|
|
||||||
0, 7, -3, -2, 993, -118, -1235, 1, 967
|
|
||||||
3, -4, 2, -2, 993, -116, -1235, 1, 967
|
|
||||||
8, -5, 17, -2, 993, -114, -1235, 1, 965
|
|
||||||
3, -7, 7, -3, 993, -112, -1236, 1, 964
|
|
||||||
5, -18, 0, -3, 993, -111, -1236, 1, 964
|
|
||||||
7, -1, 0, -2, 993, -110, -1236, 1, 963
|
|
||||||
4, -3, 8, -2, 993, -110, -1236, 1, 963
|
|
||||||
4, -5, 2, -2, 993, -110, -1237, 1, 963
|
|
||||||
4, -5, 5, -1, 993, -109, -1237, 0, 962
|
|
||||||
4, -6, 0, 0, 994, -107, -1237, 0, 961
|
|
||||||
3, -5, 2, 0, 994, -104, -1238, 0, 960
|
|
||||||
4, -2, -1, 0, 994, -104, -1238, 0, 960
|
|
||||||
6, -6, 3, 0, 994, -105, -1238, 0, 960
|
|
||||||
6, -4, 3, 1, 994, -108, -1239, 0, 962
|
|
||||||
5, -7, 7, 1, 993, -110, -1239, 0, 963
|
|
||||||
6, -5, 4, 1, 993, -110, -1239, 0, 963
|
|
||||||
6, -9, 3, 2, 993, -112, -1240, -1, 964
|
|
||||||
4, -7, 8, 2, 993, -112, -1240, -1, 964
|
|
||||||
7, -1, 0, 3, 993, -112, -1241, -1, 964
|
|
||||||
2, -11, 7, 3, 993, -109, -1241, -2, 963
|
|
||||||
6, -5, 3, 3, 994, -104, -1241, -2, 960
|
|
||||||
8, -5, -3, 3, 994, -100, -1241, -1, 957
|
|
||||||
3, -3, -1, 2, 995, -98, -1242, -1, 956
|
|
||||||
3, -5, 4, 2, 994, -101, -1242, -1, 958
|
|
||||||
5, -3, 1, 2, 994, -104, -1242, -1, 960
|
|
||||||
4, -7, 8, 3, 994, -109, -1243, -1, 962
|
|
||||||
5, -7, 4, 3, 993, -112, -1243, -2, 964
|
|
||||||
6, -7, 8, 3, 993, -114, -1243, -2, 965
|
|
||||||
5, -10, 3, 4, 993, -115, -1244, -2, 966
|
|
||||||
3, -8, 8, 4, 993, -115, -1244, -2, 966
|
|
||||||
5, -3, 4, 4, 993, -114, -1245, -2, 965
|
|
||||||
2, -1, -12, 4, 994, -102, -1245, -2, 958
|
|
||||||
-2, 33, -15, 4, 999, -20, -1244, -2, 911
|
|
||||||
4, -8, -24, 5, 999, 15, -1244, -2, 891
|
|
||||||
7, -18, 25, 5, 991, 130, -1243, -3, 825
|
|
||||||
9, 138, -147, 7, 944, 327, -1241, -4, 709
|
|
||||||
-44, 340, -147, 6, 910, 413, -1240, -3, 655
|
|
||||||
2, -56, 55, 5, 833, 553, -1235, -3, 564
|
|
||||||
11, 46, -47, 2, 770, 637, -1231, -1, 503
|
|
||||||
34, -101, 51, -4, 632, 774, -1229, 2, 392
|
|
||||||
10, 84, -46, -6, 543, 839, -1228, 3, 329
|
|
||||||
11, -11, 5, -6, 460, 887, -1227, 3, 274
|
|
||||||
68, 52, -464, -24, 194, 980, -1253, 13, 112
|
|
||||||
0, 124, -3, -17, -30, 999, -1258, 9, -17
|
|
||||||
4, 86, 68, -23, -199, 979, -1275, 13, -115
|
|
||||||
4, 53, 15, -23, -284, 958, -1271, 13, -165
|
|
||||||
-12, -18, 34, -27, -382, 923, -1269, 16, -225
|
|
||||||
24, 304, 124, -32, -548, 835, -1270, 18, -333
|
|
||||||
-26, 66, 82, -33, -670, 741, -1272, 19, -421
|
|
||||||
1, 61, 49, -32, -752, 658, -1273, 18, -488
|
|
||||||
57, -23, 177, -31, -803, 595, -1263, 17, -534
|
|
||||||
-18, 80, 99, -29, -831, 554, -1257, 17, -563
|
|
||||||
-26, 32, 57, -29, -875, 481, -1258, 17, -611
|
|
||||||
-16, 50, 150, -29, -911, 410, -1259, 17, -657
|
|
||||||
-14, 50, 117, -29, -937, 347, -1260, 16, -696
|
|
||||||
-17, 19, 113, -29, -946, 321, -1260, 16, -712
|
|
||||||
-19, 19, 111, -28, -948, 314, -1260, 16, -716
|
|
||||||
-18, 8, 85, -28, -949, 313, -1260, 16, -717
|
|
||||||
-21, 19, 95, -28, -949, 312, -1260, 16, -718
|
|
||||||
-4, 19, 84, -29, -950, 308, -1259, 16, -720
|
|
||||||
-20, 19, 83, -28, -954, 296, -1258, 16, -727
|
|
||||||
-18, 13, 93, -28, -955, 293, -1258, 16, -729
|
|
||||||
-15, 34, 115, -29, -962, 270, -1257, 16, -743
|
|
||||||
-14, -12, 75, -30, -964, 260, -1257, 17, -748
|
|
||||||
-16, 1, 60, -30, -964, 261, -1257, 17, -748
|
|
||||||
-12, 3, 75, -30, -965, 257, -1257, 17, -750
|
|
||||||
-13, -2, 81, -30, -968, 248, -1256, 17, -756
|
|
||||||
-19, 8, 74, -30, -970, 239, -1256, 17, -761
|
|
||||||
-16, -9, 89, -30, -972, 232, -1256, 17, -765
|
|
||||||
-17, -14, 63, -30, -974, 223, -1256, 17, -770
|
|
||||||
-21, 14, 70, -30, -978, 202, -1255, 17, -782
|
|
||||||
-15, -2, 86, -31, -982, 185, -1255, 17, -792
|
|
||||||
-15, 3, 79, -29, -987, 156, -1256, 16, -809
|
|
||||||
-14, 0, 68, -29, -988, 151, -1256, 16, -812
|
|
||||||
-14, -1, 57, -27, -987, 154, -1256, 16, -811
|
|
||||||
-15, -6, 54, -27, -987, 157, -1256, 15, -809
|
|
||||||
-15, -17, 44, -25, -987, 152, -1257, 14, -812
|
|
||||||
-15, -10, 41, -24, -990, 138, -1257, 14, -820
|
|
||||||
-11, -48, 10, -23, -993, 113, -1257, 13, -834
|
|
||||||
-18, 0, 55, -23, -995, 87, -1257, 13, -849
|
|
||||||
-15, 9, 59, -19, -999, 38, -1261, 11, -877
|
|
||||||
-12, -5, 32, -19, -999, 29, -1261, 11, -883
|
|
||||||
-12, -21, 24, -19, -999, 35, -1261, 11, -879
|
|
||||||
-11, -8, 24, -19, -999, 38, -1261, 11, -878
|
|
||||||
-11, -15, 26, -19, -999, 38, -1261, 11, -877
|
|
||||||
-12, -15, 28, -19, -999, 36, -1261, 11, -878
|
|
||||||
-12, -10, 27, -18, -999, 31, -1261, 10, -882
|
|
||||||
-13, -5, 34, -17, -999, 26, -1261, 10, -884
|
|
||||||
-11, -4, 25, -16, -999, 28, -1261, 9, -883
|
|
||||||
-13, -14, 13, -15, -999, 41, -1262, 8, -876
|
|
||||||
-10, -15, 12, -15, -998, 57, -1262, 8, -866
|
|
||||||
-7, -10, 13, -14, -996, 77, -1261, 8, -855
|
|
||||||
-8, -13, 4, -14, -994, 100, -1261, 8, -842
|
|
||||||
-8, -9, 3, -14, -993, 117, -1261, 8, -832
|
|
||||||
-9, -13, -4, -14, -989, 142, -1260, 8, -818
|
|
||||||
-10, -20, -12, -14, -984, 172, -1260, 8, -800
|
|
||||||
-8, 0, -5, -14, -983, 182, -1259, 8, -794
|
|
||||||
-9, -20, -8, -14, -980, 196, -1259, 8, -786
|
|
||||||
-9, -22, -11, -13, -978, 204, -1258, 8, -782
|
|
||||||
-10, -18, -8, -14, -978, 206, -1257, 8, -780
|
|
||||||
-11, -16, -6, -14, -978, 204, -1257, 8, -781
|
|
||||||
-10, -17, -6, -14, -979, 202, -1256, 8, -783
|
|
||||||
-9, -21, -14, -14, -980, 196, -1255, 8, -786
|
|
||||||
-10, 0, 11, -14, -982, 184, -1255, 8, -793
|
|
||||||
-10, -7, 3, -14, -984, 176, -1254, 8, -798
|
|
||||||
-11, -16, -6, -13, -985, 169, -1253, 7, -802
|
|
||||||
-11, -12, -1, -13, -985, 167, -1253, 7, -803
|
|
||||||
-10, -11, 2, -13, -986, 164, -1253, 7, -805
|
|
||||||
-11, -15, -3, -13, -986, 163, -1252, 7, -805
|
|
||||||
-8, -12, -5, -13, -986, 163, -1252, 7, -805
|
|
||||||
-9, -14, -3, -12, -986, 165, -1251, 7, -804
|
|
||||||
-9, -12, -3, -12, -986, 165, -1251, 7, -804
|
|
||||||
-9, -16, -3, -12, -986, 165, -1250, 7, -804
|
|
||||||
-7, -17, -2, -13, -986, 161, -1250, 7, -806
|
|
||||||
-9, -3, 2, -14, -987, 159, -1249, 8, -808
|
|
||||||
-7, -19, -9, -15, -987, 158, -1249, 8, -808
|
|
||||||
-20, -6, -35, -17, -987, 155, -1249, 10, -810
|
|
||||||
-3, -15, -2, -19, -987, 154, -1248, 11, -811
|
|
||||||
-4, -26, -8, -21, -987, 158, -1248, 12, -808
|
|
||||||
-7, -7, 0, -23, -986, 164, -1248, 13, -805
|
|
||||||
-5, -19, -11, -24, -985, 165, -1247, 13, -804
|
|
||||||
-6, -11, 9, -25, -986, 164, -1247, 14, -805
|
|
||||||
-3, -22, -5, -26, -985, 167, -1246, 15, -803
|
|
||||||
-7, -8, -5, -26, -985, 168, -1246, 15, -803
|
|
||||||
-3, 3, 29, -27, -985, 165, -1246, 15, -804
|
|
||||||
-9, -13, -12, -27, -986, 161, -1245, 15, -806
|
|
||||||
-4, -13, -7, -26, -986, 162, -1245, 15, -806
|
|
||||||
-7, -16, -6, -26, -986, 158, -1245, 15, -808
|
|
||||||
-7, -1, -2, -25, -987, 153, -1244, 14, -811
|
|
||||||
-5, -21, -9, -25, -988, 147, -1244, 14, -815
|
|
||||||
-3, -18, -3, -24, -989, 142, -1244, 14, -818
|
|
||||||
-6, -9, 4, -24, -990, 135, -1244, 14, -821
|
|
||||||
2, 70, 43, -24, -990, 136, -1243, 13, -821
|
|
||||||
-6, 6, 2, -23, -984, 172, -1243, 13, -800
|
|
||||||
-4, 42, 43, -22, -972, 232, -1243, 13, -765
|
|
||||||
-5, -64, -68, -21, -955, 294, -1242, 12, -728
|
|
||||||
-3, -24, -22, -22, -949, 314, -1242, 12, -716
|
|
||||||
-3, -30, -26, -22, -944, 327, -1241, 12, -708
|
|
||||||
-3, -30, -29, -21, -943, 330, -1241, 12, -706
|
|
||||||
-3, -35, -34, -21, -940, 340, -1241, 12, -700
|
|
||||||
-7, -10, -25, -22, -942, 332, -1240, 12, -705
|
|
||||||
0, -8, 20, -22, -947, 319, -1240, 12, -713
|
|
||||||
-3, -28, -17, -22, -950, 310, -1240, 13, -718
|
|
||||||
-4, -37, -23, -22, -958, 284, -1239, 12, -734
|
|
||||||
-6, -12, -11, -22, -965, 257, -1239, 12, -750
|
|
||||||
-7, -13, 4, -23, -977, 207, -1239, 13, -780
|
|
||||||
-34, 6, 28, -24, -989, 141, -1239, 13, -818
|
|
||||||
-17, 0, 17, -24, -992, 122, -1238, 13, -829
|
|
||||||
-7, -14, -1, -24, -993, 114, -1238, 13, -833
|
|
||||||
-13, -16, 0, -24, -993, 109, -1237, 13, -836
|
|
||||||
4, 7, 1, -23, -994, 104, -1237, 13, -840
|
|
||||||
-2, -22, 10, -22, -994, 101, -1237, 12, -841
|
|
||||||
1, -7, -9, -23, -994, 102, -1235, 13, -840
|
|
||||||
-8, -15, -5, -23, -993, 107, -1234, 13, -838
|
|
||||||
21, -24, -24, -23, -994, 106, -1234, 13, -838
|
|
||||||
-7, 0, 15, -22, -994, 104, -1233, 12, -840
|
|
||||||
-11, -17, -4, -21, -994, 104, -1232, 12, -839
|
|
||||||
-34, -21, 18, -19, -994, 106, -1231, 11, -838
|
|
||||||
-12, -18, 14, -19, -993, 108, -1229, 10, -837
|
|
||||||
-5, -26, -22, -17, -994, 99, -1227, 10, -843
|
|
||||||
2, 9, 2, -18, -995, 90, -1226, 10, -847
|
|
||||||
4, 6, 4, -18, -996, 85, -1225, 10, -850
|
|
||||||
-5, -15, -8, -17, -996, 83, -1224, 10, -852
|
|
||||||
-4, -11, -4, -18, -996, 86, -1224, 10, -850
|
|
||||||
-11, 3, -16, -18, -995, 88, -1224, 10, -849
|
|
||||||
-3, -26, -7, -19, -996, 84, -1224, 11, -851
|
|
||||||
-4, -11, 0, -19, -996, 77, -1224, 11, -855
|
|
||||||
-6, -8, 0, -20, -997, 71, -1223, 11, -858
|
|
||||||
-3, -15, -4, -20, -997, 67, -1223, 11, -861
|
|
||||||
-5, -13, 0, -20, -997, 60, -1223, 11, -865
|
|
||||||
-6, -37, -17, -20, -997, 67, -1223, 11, -861
|
|
||||||
-4, -16, 3, -21, -997, 65, -1223, 12, -862
|
|
||||||
-9, -24, -4, -20, -997, 67, -1223, 11, -861
|
|
||||||
-8, -20, -9, -20, -997, 67, -1223, 11, -861
|
|
||||||
-4, -20, -7, -19, -997, 63, -1222, 11, -863
|
|
||||||
-8, -18, -3, -19, -998, 57, -1222, 11, -867
|
|
||||||
-2, -5, -1, -19, -998, 52, -1222, 10, -869
|
|
||||||
-7, -16, 0, -18, -998, 48, -1222, 10, -872
|
|
||||||
-14, -26, -10, -18, -999, 39, -1221, 10, -877
|
|
||||||
3, -18, -5, -19, -999, 28, -1218, 10, -883
|
|
||||||
13, -5, -15, -19, -999, 19, -1216, 11, -888
|
|
||||||
-13, 0, 9, -19, -999, 15, -1215, 11, -891
|
|
||||||
-9, -14, 0, -19, -999, 15, -1215, 11, -890
|
|
||||||
-7, -14, -7, -19, -999, 20, -1215, 10, -888
|
|
||||||
-8, -16, -3, -19, -999, 26, -1215, 11, -884
|
|
||||||
-8, -24, -15, -19, -999, 31, -1215, 10, -881
|
|
||||||
-6, -3, 5, -18, -999, 34, -1215, 10, -880
|
|
||||||
-6, -15, 3, -18, -999, 35, -1214, 10, -879
|
|
||||||
-5, -13, -7, -17, -999, 38, -1214, 10, -877
|
|
||||||
-5, -7, -10, -16, -999, 40, -1214, 9, -876
|
|
||||||
-6, -14, -2, -16, -999, 41, -1214, 9, -876
|
|
||||||
-7, 3, 0, -15, -999, 37, -1214, 9, -878
|
|
||||||
-8, -6, 2, -15, -999, 37, -1213, 8, -878
|
|
||||||
-5, -10, -3, -15, -999, 37, -1213, 8, -878
|
|
||||||
-8, -16, -9, -16, -999, 39, -1213, 9, -877
|
|
||||||
-2, 8, 8, -17, -998, 42, -1213, 9, -875
|
|
||||||
3, -17, -23, -18, -998, 43, -1213, 10, -875
|
|
||||||
-5, -14, -1, -19, -998, 42, -1213, 11, -875
|
|
||||||
-4, -22, -2, -19, -998, 42, -1212, 11, -875
|
|
||||||
-3, -23, -4, -19, -998, 44, -1212, 11, -874
|
|
||||||
-5, -12, -3, -19, -998, 46, -1212, 11, -873
|
|
||||||
-4, -17, -6, -18, -998, 50, -1212, 10, -871
|
|
||||||
-2, -17, -8, -18, -998, 57, -1211, 10, -866
|
|
||||||
-4, -15, -9, -17, -997, 63, -1211, 10, -863
|
|
||||||
-2, -9, -2, -18, -998, 59, -1211, 10, -865
|
|
||||||
-4, -9, 0, -18, -998, 57, -1210, 10, -867
|
|
||||||
-4, -17, -12, -18, -997, 60, -1210, 10, -865
|
|
||||||
-2, -10, -6, -17, -997, 63, -1210, 10, -863
|
|
||||||
-4, -16, -8, -18, -997, 65, -1210, 10, -862
|
|
||||||
-4, -11, -4, -17, -997, 68, -1209, 10, -860
|
|
||||||
-2, -49, -29, -16, -997, 74, -1209, 9, -856
|
|
||||||
-5, -1, -2, -16, -997, 72, -1209, 9, -858
|
|
||||||
-4, -14, -9, -16, -997, 65, -1208, 9, -862
|
|
||||||
-5, -7, -7, -16, -997, 63, -1208, 9, -863
|
|
||||||
-4, -9, -3, -16, -997, 63, -1208, 9, -863
|
|
||||||
-3, -14, -9, -17, -997, 62, -1208, 9, -864
|
|
||||||
-2, -15, 1, -16, -997, 62, -1207, 9, -863
|
|
||||||
-2, -13, -4, -16, -997, 64, -1207, 9, -862
|
|
||||||
-4, -16, -7, -16, -997, 66, -1207, 9, -861
|
|
||||||
-3, -16, -6, -17, -997, 66, -1207, 9, -861
|
|
||||||
-3, -11, 0, -17, -997, 66, -1206, 9, -861
|
|
||||||
-1, -15, -5, -16, -997, 68, -1206, 9, -861
|
|
||||||
-1, -16, -6, -16, -997, 67, -1206, 9, -861
|
|
||||||
-4, -9, -3, -16, -997, 68, -1206, 9, -860
|
|
||||||
-2, -14, -1, -16, -997, 68, -1206, 9, -860
|
|
||||||
-2, -14, -3, -16, -997, 69, -1205, 9, -860
|
|
||||||
-4, -14, -2, -16, -997, 69, -1205, 9, -860
|
|
||||||
-3, -10, -1, -17, -997, 69, -1205, 9, -860
|
|
||||||
-2, -13, 1, -16, -997, 69, -1205, 9, -859
|
|
||||||
-2, -14, -4, -16, -997, 69, -1204, 9, -859
|
|
||||||
-2, 1, 0, -16, -997, 69, -1204, 9, -860
|
|
||||||
-3, -12, 0, -16, -997, 69, -1204, 9, -859
|
|
||||||
9, -55, -1, -16, -997, 70, -1204, 9, -859
|
|
||||||
-2, 3, -1, -16, -998, 43, -1204, 9, -875
|
|
||||||
-5, 31, 59, -16, -999, 36, -1203, 9, -879
|
|
||||||
-3, -27, -14, -16, -996, 75, -1203, 9, -856
|
|
||||||
-2, -12, -4, -16, -991, 128, -1203, 9, -825
|
|
||||||
-1, 15, 15, -15, -985, 171, -1203, 9, -801
|
|
||||||
-7, 113, 107, -14, -947, 320, -1202, 8, -713
|
|
||||||
-4, -215, -132, -9, -820, 571, -1205, 5, -551
|
|
||||||
0, 187, 48, -9, -738, 674, -1206, 5, -475
|
|
||||||
6, -206, -103, -9, -749, 662, -1206, 5, -485
|
|
||||||
0, 68, -8, -9, -754, 656, -1206, 5, -489
|
|
||||||
2, -64, -42, -9, -733, 679, -1206, 5, -471
|
|
||||||
0, -2, -27, -9, -748, 662, -1205, 5, -484
|
|
||||||
1, -106, -60, -9, -744, 667, -1205, 5, -481
|
|
||||||
1, 0, -28, -9, -747, 664, -1205, 5, -483
|
|
||||||
5, -103, -59, -10, -748, 662, -1205, 5, -485
|
|
||||||
2, -29, -31, -11, -746, 665, -1205, 6, -482
|
|
||||||
3, -68, -48, -10, -748, 663, -1205, 5, -484
|
|
||||||
2, -57, -41, -11, -740, 672, -1205, 6, -477
|
|
||||||
0, -37, -33, -11, -737, 674, -1205, 6, -475
|
|
||||||
0, -53, -34, -12, -733, 679, -1205, 6, -472
|
|
||||||
0, -30, -26, -12, -728, 684, -1204, 7, -467
|
|
||||||
1, -42, -24, -12, -724, 689, -1204, 7, -464
|
|
||||||
-2, -24, -22, -12, -720, 693, -1204, 7, -461
|
|
||||||
1, -32, -15, -12, -718, 695, -1204, 7, -459
|
|
||||||
0, -26, -6, -12, -716, 697, -1204, 7, -458
|
|
||||||
-17, -63, 17, -10, -712, 701, -1203, 5, -454
|
|
||||||
2, -14, 1, -9, -713, 700, -1203, 5, -454
|
|
||||||
83, 106, 1, -11, -709, 704, -1203, 6, -451
|
|
||||||
-2, 30, -52, -15, -680, 732, -1205, 8, -428
|
|
||||||
-58, 201, -64, -40, -655, 753, -1225, 23, -410
|
|
||||||
-59, -114, -252, -97, -626, 773, -1239, 55, -390
|
|
||||||
21, 99, -121, -193, -587, 785, -1242, 111, -367
|
|
||||||
-2, 168, -43, -323, -566, 758, -1240, 188, -367
|
|
||||||
-19, -8, 98, -486, -505, 712, -1239, 291, -353
|
|
||||||
-52, -113, 138, -638, -427, 639, -1240, 396, -337
|
|
||||||
-1, -39, 144, -755, -327, 567, -1243, 490, -299
|
|
||||||
-80, -100, 159, -845, -233, 480, -1255, 577, -258
|
|
||||||
47, -173, 124, -888, -177, 423, -1275, 626, -226
|
|
||||||
-36, -116, 152, -944, -78, 318, -1295, 708, -138
|
|
||||||
0, -123, 37, -964, -23, 264, -1248, 746, -51
|
|
||||||
35, -59, 119, -971, 4, 238, -1204, 762, 10
|
|
||||||
-19, -53, 123, -978, 36, 203, -1118, 780, 102
|
|
||||||
-35, -27, 235, -984, 62, 163, -1025, 799, 209
|
|
||||||
-38, 131, -55, -987, 71, 142, -971, 808, 265
|
|
||||||
-21, 2, 65, -990, 82, 108, -857, 821, 373
|
|
||||||
4, -85, 77, -991, 84, 95, -806, 826, 415
|
|
||||||
-9, -55, 125, -992, 87, 89, -771, 827, 444
|
|
||||||
-8, -79, 154, -992, 88, 80, -731, 831, 477
|
|
||||||
-13, -25, 131, -993, 77, 78, -762, 836, 446
|
|
||||||
-4, -16, 113, -995, 62, 75, -812, 843, 396
|
|
||||||
-10, -14, 91, -996, 45, 71, -887, 851, 321
|
|
||||||
-12, -4, 96, -997, 35, 67, -931, 856, 278
|
|
||||||
-13, 13, 95, -997, 21, 60, -1016, 863, 194
|
|
||||||
8, 29, 102, -998, 14, 49, -1051, 870, 158
|
|
||||||
-9, -44, 95, -999, 13, 38, -1022, 876, 187
|
|
||||||
-12, -37, 96, -999, 14, 31, -958, 879, 251
|
|
||||||
-12, -39, 73, -999, 14, 28, -945, 881, 264
|
|
||||||
-10, -16, 55, -999, 11, 23, -955, 884, 254
|
|
||||||
-3, 14, 55, -999, 11, 16, -875, 888, 333
|
|
||||||
-9, -26, 66, -999, 12, 9, -673, 891, 536
|
|
||||||
-11, -38, 73, -999, 16, 2, -383, 890, 825
|
|
||||||
-12, -19, 57, -999, 21, -9, -72, 886, 1136
|
|
||||||
-14, -11, 33, -999, 22, -12, -17, 885, 1191
|
|
||||||
-1, -14, 32, -999, 22, -15, 32, 884, 1240
|
|
||||||
-15, 4, 25, -999, 25, -20, 76, 881, 1285
|
|
||||||
-16, -23, 27, -999, 25, -25, 148, 879, 1357
|
|
||||||
-14, 2, 26, -999, 28, -31, 173, 875, 1381
|
|
||||||
-14, -11, 25, -998, 29, -36, 201, 873, 1410
|
|
||||||
-13, -20, 25, -998, 33, -42, 203, 868, 1412
|
|
||||||
-13, -11, 20, -998, 35, -44, 205, 867, 1414
|
|
||||||
-9, 3, 5, -998, 38, -48, 209, 864, 1418
|
|
||||||
-13, 0, 10, -998, 38, -49, 211, 863, 1419
|
|
||||||
-10, -8, 11, -997, 40, -51, 210, 862, 1418
|
|
||||||
-12, -18, 13, -997, 43, -53, 202, 860, 1410
|
|
||||||
-11, -2, 9, -997, 44, -54, 195, 859, 1403
|
|
||||||
-10, 3, 6, -997, 45, -55, 199, 858, 1407
|
|
||||||
-12, -1, -8, -997, 45, -55, 199, 858, 1407
|
|
||||||
-10, 0, 3, -997, 45, -55, 201, 859, 1409
|
|
||||||
-10, 1, 3, -997, 44, -55, 203, 859, 1410
|
|
||||||
-12, -1, 7, -997, 44, -56, 207, 858, 1415
|
|
||||||
-13, -6, 10, -997, 44, -56, 212, 858, 1419
|
|
||||||
-11, 6, 0, -997, 43, -57, 222, 858, 1429
|
|
||||||
-13, 3, 4, -997, 42, -58, 229, 858, 1435
|
|
||||||
-14, -8, 4, -997, 42, -58, 232, 858, 1439
|
|
||||||
-10, 0, 2, -997, 42, -58, 233, 858, 1439
|
|
||||||
-11, -2, 1, -997, 42, -59, 237, 858, 1443
|
|
||||||
-13, -5, 3, -997, 42, -58, 234, 858, 1440
|
|
||||||
-11, 4, 0, -997, 43, -58, 225, 858, 1431
|
|
||||||
-10, -3, 0, -997, 43, -57, 225, 858, 1432
|
|
||||||
-12, -3, -3, -997, 43, -57, 225, 858, 1431
|
|
||||||
-11, 4, 0, -997, 43, -56, 217, 858, 1423
|
|
||||||
-12, 0, 0, -997, 43, -56, 219, 859, 1425
|
|
||||||
-8, 9, -1, -997, 43, -56, 217, 859, 1423
|
|
||||||
-9, -6, 1, -997, 44, -57, 214, 858, 1420
|
|
||||||
-12, -4, 0, -997, 45, -57, 211, 858, 1417
|
|
||||||
-11, -6, 2, -997, 45, -57, 210, 857, 1416
|
|
||||||
-10, 1, 1, -997, 44, -57, 215, 858, 1420
|
|
||||||
-13, 8, 4, -997, 44, -57, 216, 858, 1422
|
|
||||||
-12, -4, -2, -997, 44, -58, 219, 858, 1425
|
|
||||||
-11, 2, 4, -997, 43, -58, 223, 858, 1428
|
|
||||||
-12, 1, 1, -997, 43, -58, 227, 858, 1432
|
|
||||||
-11, 0, 3, -997, 43, -59, 232, 857, 1437
|
|
||||||
-11, 1, 2, -997, 43, -60, 236, 857, 1442
|
|
||||||
-11, -3, -14, -997, 43, -61, 239, 856, 1445
|
|
||||||
-11, -4, 3, -997, 43, -61, 242, 856, 1447
|
|
||||||
-11, 10, -6, -997, 43, -61, 240, 856, 1445
|
|
||||||
-11, -1, -2, -997, 43, -60, 244, 857, 1447
|
|
||||||
-10, 3, -1, -997, 43, -60, 239, 857, 1441
|
|
||||||
5, 7, -2, -997, 44, -60, 234, 856, 1436
|
|
||||||
-9, -2, 0, -997, 44, -60, 235, 857, 1438
|
|
||||||
-13, 0, -6, -997, 44, -60, 234, 857, 1436
|
|
||||||
-11, 4, 5, -997, 44, -60, 233, 857, 1435
|
|
||||||
-11, 1, 2, -997, 44, -60, 232, 857, 1434
|
|
||||||
-10, 5, 0, -997, 43, -60, 239, 856, 1442
|
|
||||||
-10, 3, 0, -997, 44, -61, 240, 856, 1442
|
|
||||||
-15, -4, 4, -997, 44, -61, 241, 856, 1443
|
|
||||||
-9, 5, -1, -997, 44, -61, 241, 856, 1443
|
|
||||||
-10, 2, 0, -997, 44, -61, 238, 856, 1440
|
|
||||||
-10, 2, 4, -997, 44, -61, 236, 856, 1438
|
|
||||||
-12, 3, 0, -997, 45, -61, 232, 855, 1434
|
|
||||||
-10, 2, 3, -997, 45, -61, 230, 856, 1432
|
|
||||||
-11, 1, 1, -997, 45, -59, 223, 856, 1425
|
|
||||||
-12, 2, 0, -997, 46, -59, 219, 856, 1421
|
|
||||||
-11, 2, 3, -997, 45, -59, 224, 856, 1425
|
|
||||||
-11, -1, 3, -997, 44, -60, 232, 857, 1433
|
|
||||||
-9, 5, 0, -997, 44, -60, 238, 856, 1440
|
|
||||||
-13, 3, 6, -997, 43, -60, 241, 857, 1442
|
|
||||||
-10, 0, -3, -997, 42, -60, 246, 857, 1447
|
|
||||||
-10, 0, 0, -997, 42, -61, 249, 857, 1450
|
|
||||||
-9, 0, 6, -997, 42, -60, 246, 857, 1448
|
|
||||||
-13, -5, 3, -997, 43, -61, 248, 856, 1449
|
|
||||||
-9, 3, 0, -997, 43, -61, 249, 856, 1450
|
|
||||||
-12, 3, 2, -997, 42, -61, 251, 856, 1452
|
|
||||||
-12, -4, 2, -997, 42, -62, 254, 856, 1455
|
|
||||||
-10, 0, 1, -997, 42, -62, 255, 856, 1456
|
|
||||||
-10, 0, 4, -997, 42, -62, 260, 856, 1461
|
|
||||||
-12, 3, 0, -997, 41, -62, 262, 856, 1463
|
|
||||||
-10, -1, 0, -997, 40, -62, 268, 857, 1468
|
|
||||||
-11, -1, 2, -997, 40, -62, 268, 857, 1469
|
|
||||||
-12, -4, 1, -997, 40, -62, 272, 857, 1473
|
|
||||||
-9, 2, -1, -997, 39, -62, 274, 857, 1475
|
|
||||||
-49, 38, -33, -997, 37, -61, 285, 858, 1486
|
|
||||||
-10, 0, -7, -997, 37, -60, 281, 858, 1482
|
|
||||||
-9, 14, -7, -997, 37, -60, 284, 859, 1484
|
|
||||||
-10, 5, 0, -997, 37, -60, 285, 859, 1485
|
|
||||||
-9, 3, 0, -997, 36, -61, 293, 858, 1494
|
|
||||||
-10, 4, 5, -997, 35, -62, 304, 858, 1504
|
|
||||||
-14, 1, 0, -997, 35, -63, 309, 858, 1509
|
|
||||||
-9, 6, 2, -997, 35, -64, 313, 857, 1514
|
|
||||||
-8, 4, 2, -997, 36, -64, 303, 857, 1503
|
|
||||||
-1, -14, 25, -997, 35, -60, 297, 859, 1496
|
|
||||||
0, 40, 24, -997, 35, -57, 292, 861, 1484
|
|
||||||
66, -30, 120, -998, 37, -35, 159, 870, 1332
|
|
||||||
215, -117, -1, -998, 35, 29, -654, 873, 501
|
|
||||||
64, 34, -3, -991, 23, 130, -1050, 823, 100
|
|
||||||
-62, -43, 16, -960, 5, 277, -1144, 738, 11
|
|
||||||
-46, 74, 22, -922, 7, 386, -1155, 672, 10
|
|
||||||
-185, 2, 34, -783, 16, 620, -1164, 516, 15
|
|
||||||
-207, 4, 20, -674, 27, 737, -1160, 423, 21
|
|
||||||
-334, 51, 75, -456, 37, 888, -1158, 271, 24
|
|
||||||
-425, 162, 106, -180, 15, 983, -1171, 103, 8
|
|
||||||
-349, 53, -23, 98, 8, 995, -1185, -56, 5
|
|
||||||
-231, 62, 125, 318, 18, 947, -1197, -185, 10
|
|
||||||
-160, 19, 139, 511, 10, 859, -1203, -307, 7
|
|
||||||
-335, -149, -60, 675, -14, 737, -1196, -424, -11
|
|
||||||
-184, -296, 125, 754, -9, 656, -1203, -489, -8
|
|
||||||
-7, -77, 240, 875, -8, 482, -1199, -611, -9
|
|
||||||
-72, -178, 108, 932, -13, 359, -1186, -688, -20
|
|
||||||
-209, -221, -64, 951, -12, 307, -1178, -720, -23
|
|
||||||
-55, -129, 244, 965, -5, 261, -1163, -748, -11
|
|
||||||
-43, -55, 247, 966, -6, 255, -1150, -752, -13
|
|
||||||
-38, -68, 201, 968, -13, 248, -1128, -756, -32
|
|
||||||
-62, -25, 197, 970, -23, 239, -1104, -760, -55
|
|
||||||
-24, -25, 210, 974, -28, 224, -1087, -769, -72
|
|
||||||
-50, -42, 215, 978, -29, 204, -1078, -780, -81
|
|
||||||
-18, -55, 216, 981, -28, 190, -1075, -789, -83
|
|
||||||
-28, -58, 231, 985, -24, 168, -1074, -801, -83
|
|
||||||
-49, -62, 242, 987, -24, 154, -1066, -809, -91
|
|
||||||
-19, -33, 223, 988, -29, 150, -1046, -811, -111
|
|
||||||
-27, -32, 203, 988, -32, 148, -1031, -812, -125
|
|
||||||
-25, -59, 208, 988, -32, 149, -1033, -812, -123
|
|
||||||
-39, -42, 200, 988, -26, 148, -1053, -813, -103
|
|
||||||
-2, -38, 199, 988, -25, 147, -1060, -813, -96
|
|
||||||
-44, -42, 189, 990, -22, 138, -1063, -819, -91
|
|
||||||
-40, -43, 174, 992, -17, 123, -1070, -828, -82
|
|
||||||
-29, -46, 177, 992, -17, 123, -1072, -828, -80
|
|
||||||
-20, -47, 173, 992, -18, 123, -1068, -828, -83
|
|
||||||
-25, -42, 169, 992, -19, 123, -1061, -827, -89
|
|
||||||
-30, -30, 146, 992, -21, 121, -1052, -828, -98
|
|
||||||
-26, -41, 158, 992, -22, 121, -1043, -828, -105
|
|
||||||
-26, -41, 155, 992, -22, 118, -1042, -830, -107
|
|
||||||
-24, -38, 150, 993, -22, 115, -1040, -832, -108
|
|
||||||
-25, -40, 143, 993, -21, 110, -1039, -835, -109
|
|
||||||
-25, -39, 146, 994, -19, 103, -1038, -839, -109
|
|
||||||
-21, -36, 132, 994, -18, 98, -1038, -842, -108
|
|
||||||
-24, -35, 130, 995, -18, 93, -1035, -845, -110
|
|
||||||
-22, -30, 123, 995, -18, 89, -1032, -847, -113
|
|
||||||
-23, -26, 118, 996, -17, 82, -1027, -851, -117
|
|
||||||
-25, -30, 111, 996, -16, 78, -1026, -854, -119
|
|
||||||
-24, -28, 110, 997, -15, 73, -1025, -856, -119
|
|
||||||
-22, -28, 103, 997, -15, 70, -1024, -858, -120
|
|
||||||
-22, -26, 97, 997, -14, 67, -1023, -860, -121
|
|
||||||
-20, -25, 95, 997, -13, 63, -1025, -862, -118
|
|
||||||
-22, -22, 90, 998, -12, 60, -1023, -864, -120
|
|
||||||
-21, -23, 86, 998, -12, 57, -1025, -866, -118
|
|
||||||
-21, -25, 83, 998, -11, 53, -1027, -868, -116
|
|
||||||
-22, -22, 80, 998, -10, 50, -1029, -870, -114
|
|
||||||
-21, -19, 76, 998, -9, 46, -1032, -872, -112
|
|
||||||
-22, -20, 70, 999, -7, 43, -1040, -874, -103
|
|
||||||
-21, -27, 73, 999, -6, 39, -1050, -876, -93
|
|
||||||
-19, -21, 65, 999, -6, 36, -1051, -878, -92
|
|
||||||
-20, -23, 61, 999, -5, 33, -1049, -880, -94
|
|
||||||
-19, -9, 53, 999, -4, 29, -1054, -883, -89
|
|
||||||
-23, -9, 51, 999, -4, 26, -1046, -884, -97
|
|
||||||
-20, -19, 53, 999, -4, 24, -1039, -885, -104
|
|
||||||
-23, -18, 52, 999, -4, 22, -1042, -886, -101
|
|
||||||
-20, -14, 49, 999, -3, 20, -1049, -888, -93
|
|
||||||
-20, -17, 48, 999, -2, 18, -1052, -889, -91
|
|
||||||
-18, -17, 45, 999, -2, 17, -1051, -890, -92
|
|
||||||
-19, -9, 42, 999, -2, 15, -1052, -891, -90
|
|
||||||
-18, -13, 41, 999, -1, 12, -1067, -892, -76
|
|
||||||
-18, -15, 41, 999, 0, 9, -1112, -894, -30
|
|
||||||
-16, -14, 36, 999, 0, 6, -1161, -896, 17
|
|
||||||
-20, -10, 32, 999, 0, 4, -1254, -897, 110
|
|
||||||
-19, -13, 30, 999, 1, 2, -1356, -898, 212
|
|
||||||
-21, -10, 32, 999, 1, 0, -1773, -898, 629
|
|
||||||
-20, -9, 28, 999, 2, 0, 1351, -898, 1104
|
|
||||||
-17, -10, 23, 999, 2, -1, 1200, -898, 1255
|
|
||||||
-21, -9, 27, 999, 3, -3, 1045, -897, 1410
|
|
||||||
-22, -8, 22, 999, 3, -5, 994, -896, 1461
|
|
||||||
-19, -11, 24, 999, 4, -6, 974, -895, 1481
|
|
||||||
-19, -8, 18, 999, 4, -8, 948, -894, 1507
|
|
||||||
-18, -10, 20, 999, 5, -9, 940, -893, 1515
|
|
||||||
-19, -9, 20, 999, 5, -10, 931, -893, 1524
|
|
||||||
-19, -6, 17, 999, 6, -12, 937, -892, 1518
|
|
||||||
-19, -7, 16, 999, 6, -13, 933, -891, 1522
|
|
||||||
-19, -8, 16, 999, 7, -14, 930, -890, 1525
|
|
||||||
-20, -8, 17, 999, 7, -15, 925, -890, 1530
|
|
||||||
-21, -6, 10, 999, 7, -15, 918, -889, 1537
|
|
||||||
-19, -8, 14, 999, 8, -16, 916, -889, 1539
|
|
||||||
-19, -6, 12, 999, 8, -17, 906, -889, 1548
|
|
||||||
-17, -7, 9, 999, 8, -18, 903, -888, 1551
|
|
||||||
-20, -7, 10, 999, 8, -18, 905, -888, 1550
|
|
||||||
-19, -4, 10, 999, 9, -19, 908, -887, 1546
|
|
||||||
-22, -7, 10, 999, 9, -20, 900, -886, 1555
|
|
||||||
-19, -6, 8, 999, 9, -21, 902, -886, 1553
|
|
||||||
-18, 7, 6, 999, 10, -22, 899, -886, 1555
|
|
||||||
-21, -5, 7, 999, 10, -22, 900, -885, 1555
|
|
||||||
-21, -5, 2, 999, 10, -23, 896, -885, 1558
|
|
||||||
-21, -4, 5, 999, 10, -23, 891, -885, 1563
|
|
||||||
-20, 0, -1, 999, 10, -23, 890, -884, 1564
|
|
||||||
-20, -6, 0, 999, 10, -24, 890, -884, 1564
|
|
||||||
-18, -7, 6, 999, 11, -25, 896, -884, 1558
|
|
||||||
-19, -2, 4, 999, 11, -25, 896, -883, 1558
|
|
||||||
-18, -3, 0, 999, 11, -26, 894, -883, 1560
|
|
||||||
-21, -5, 6, 999, 11, -26, 889, -883, 1565
|
|
||||||
-18, -5, 1, 999, 11, -26, 890, -883, 1565
|
|
||||||
-16, -5, 0, 999, 11, -27, 886, -883, 1569
|
|
||||||
-19, -2, 2, 999, 11, -27, 888, -883, 1566
|
|
||||||
-22, -4, 0, 999, 11, -27, 881, -883, 1573
|
|
||||||
-19, -4, -4, 999, 11, -27, 875, -883, 1579
|
|
||||||
-18, -5, 1, 999, 10, -27, 871, -883, 1583
|
|
||||||
-20, 0, -1, 999, 10, -27, 867, -882, 1586
|
|
||||||
-20, -4, -1, 999, 10, -27, 865, -882, 1589
|
|
||||||
-18, -2, 1, 999, 10, -27, 866, -882, 1588
|
|
||||||
-21, -3, -2, 999, 10, -27, 866, -882, 1588
|
|
||||||
-23, -6, 0, 999, 10, -27, 861, -882, 1592
|
|
||||||
-21, -3, 8, 999, 10, -27, 860, -883, 1594
|
|
||||||
-27, -5, 11, 999, 9, -25, 852, -884, 1601
|
|
||||||
-54, -67, 21, 999, 0, -8, 611, -895, -1787
|
|
||||||
-158, -79, -25, 999, -24, 26, -786, -879, -417
|
|
||||||
-164, -119, 11, 992, -68, 96, -871, -832, -354
|
|
||||||
-81, -62, -27, 973, -131, 184, -904, -769, -354
|
|
||||||
-22, -41, -15, 949, -188, 251, -931, -716, -367
|
|
||||||
67, -69, -54, 882, -319, 345, -963, -619, -427
|
|
||||||
86, -48, -60, 778, -470, 416, -1002, -510, -485
|
|
||||||
281, -36, 92, 567, -697, 436, -1056, -345, -579
|
|
||||||
242, -98, 222, 381, -855, 351, -1098, -224, -676
|
|
||||||
67, -57, 220, 206, -960, 186, -1141, -119, -789
|
|
||||||
31, -200, 261, 114, -992, 33, -1158, -65, -880
|
|
||||||
10, 61, 274, 23, -962, -270, -1175, -13, -1056
|
|
||||||
-15, 85, 100, -51, -867, -495, -1193, 29, -1197
|
|
||||||
-4, -68, 130, -66, -833, -548, -1199, 38, -1233
|
|
||||||
221, -905, -10, -91, -736, -670, -1204, 52, -1323
|
|
||||||
-243, -294, 1174, -146, -547, -823, -1208, 84, -1463
|
|
||||||
-30, -80, -32, -155, -326, -932, -1227, 89, -1606
|
|
||||||
56, -138, 163, -128, -391, -910, -1232, 73, -1567
|
|
||||||
2, -98, 129, -104, -413, -904, -1237, 60, -1554
|
|
||||||
-10, -78, 128, -84, -355, -930, -1238, 48, -1591
|
|
||||||
-17, -298, -76, -57, -258, -964, -1240, 33, -1650
|
|
||||||
-44, -129, 8, -40, -197, -979, -1238, 23, -1685
|
|
||||||
-55, -160, 3, -38, -210, -976, -1235, 22, -1678
|
|
||||||
-15, -149, 99, -36, -240, -970, -1229, 20, -1660
|
|
||||||
-33, -133, 130, -33, -212, -976, -1223, 19, -1677
|
|
||||||
11, -193, -42, -20, -162, -986, -1213, 11, -1706
|
|
||||||
30, 270, -114, 9, -72, -997, -1211, -5, -1758
|
|
||||||
25, -595, 328, 47, -15, -998, -1229, -27, -1791
|
|
||||||
-2, 5, -251, 37, -3, -999, -1233, -21, -1798
|
|
||||||
4, -139, -131, 13, -28, -999, -1223, -7, -1783
|
|
||||||
5, -90, -4, 3, -79, -996, -1215, -2, -1754
|
|
||||||
-19, -119, 17, 0, -118, -992, -1211, 0, -1732
|
|
||||||
-8, -140, 51, -4, -100, -994, -1208, 2, -1742
|
|
||||||
-30, -92, -9, -11, -64, -997, -1206, 6, -1762
|
|
||||||
19, -209, 30, -17, 5, -999, -1202, 10, 1796
|
|
||||||
59, -326, 23, -26, 182, -982, -1200, 15, 1695
|
|
||||||
53, -245, -77, -43, 596, -801, -1196, 25, 1433
|
|
||||||
-47, -39, -145, -65, 959, -275, -1196, 37, 1060
|
|
||||||
36, 217, -156, -72, 954, 288, -1197, 41, 731
|
|
||||||
-26, 138, -54, -97, 745, 659, -1199, 56, 485
|
|
||||||
17, 153, -72, -125, 658, 741, -1199, 72, 415
|
|
||||||
15, 108, -34, -121, 597, 792, -1199, 69, 370
|
|
||||||
-17, 140, -243, -74, 589, 804, -1200, 42, 362
|
|
||||||
20, 282, -46, -2, 560, 828, -1196, 1, 340
|
|
||||||
-56, -93, -366, 128, 521, 843, -1174, -73, 317
|
|
||||||
9, -138, -336, 164, 515, 840, -1165, -94, 315
|
|
||||||
93, 711, 39, 164, 507, 845, -1158, -94, 309
|
|
||||||
37, 179, 116, 169, 501, 848, -1155, -97, 305
|
|
||||||
-77, -103, -154, 172, 469, 865, -1155, -99, 284
|
|
||||||
-7, 57, -28, 167, 400, 900, -1162, -96, 239
|
|
||||||
-20, 72, 232, 69, 356, 931, -1175, -40, 209
|
|
||||||
159, 185, -138, -16, 267, 963, -1190, 9, 154
|
|
||||||
4, 185, 3, 2, 287, 957, -1202, -1, 167
|
|
||||||
21, 65, -20, 3, 304, 952, -1212, -2, 177
|
|
||||||
7, 142, -39, 5, 279, 960, -1217, -3, 162
|
|
||||||
28, 164, -45, 5, 251, 967, -1222, -3, 145
|
|
||||||
20, 156, -31, 3, 219, 975, -1229, -2, 126
|
|
||||||
11, 108, -10, 3, 176, 984, -1233, -1, 101
|
|
||||||
14, 133, -13, 3, 159, 987, -1233, -1, 91
|
|
||||||
12, 117, -15, 2, 116, 993, -1232, -1, 66
|
|
||||||
-22, 25, 6, 1, 101, 994, -1231, -1, 58
|
|
||||||
14, 44, -18, 2, 91, 995, -1228, -1, 52
|
|
||||||
9, 0, -7, 3, 78, 996, -1222, -1, 45
|
|
||||||
-7, 95, -29, 3, 63, 997, -1215, -2, 36
|
|
||||||
-20, 82, -14, 4, 36, 999, -1210, -2, 20
|
|
||||||
23, 38, 26, 6, 1, 999, -1204, -3, 1
|
|
||||||
19, 93, -15, 6, -22, 999, -1198, -3, -13
|
|
||||||
-38, 241, 49, 8, -24, 999, -1193, -4, -14
|
|
||||||
43, 101, -67, 11, 15, 999, -1194, -6, 8
|
|
||||||
51, -74, -17, 14, 60, 998, -1200, -8, 34
|
|
||||||
76, -80, -9, 16, 119, 992, -1205, -9, 68
|
|
||||||
30, -9, 0, 17, 127, 991, -1206, -9, 73
|
|
||||||
18, 24, -5, 17, 98, 994, -1204, -10, 56
|
|
||||||
5, -5, 0, 17, 68, 997, -1200, -10, 39
|
|
||||||
20, 38, 12, 16, 20, 999, -1194, -9, 12
|
|
||||||
18, 49, -7, 16, 14, 999, -1194, -9, 8
|
|
||||||
20, -11, -1, 17, 37, 999, -1192, -10, 21
|
|
||||||
19, 17, 0, 17, 53, 998, -1192, -10, 30
|
|
||||||
21, 32, -1, 17, 88, 995, -1193, -9, 50
|
|
||||||
20, -127, 28, 16, 121, 992, -1193, -9, 69
|
|
||||||
22, 30, -5, 15, 130, 991, -1193, -9, 74
|
|
||||||
17, 34, -6, 15, 125, 991, -1192, -8, 72
|
|
||||||
22, -24, 0, 15, 122, 992, -1192, -8, 70
|
|
||||||
20, 20, -1, 14, 123, 992, -1192, -8, 70
|
|
||||||
19, -1, 0, 13, 120, 992, -1192, -7, 69
|
|
||||||
10, -2, -11, 11, 120, 992, -1192, -6, 69
|
|
||||||
16, 9, 3, 9, 118, 992, -1192, -5, 68
|
|
||||||
15, -8, 1, 8, 117, 993, -1192, -4, 67
|
|
||||||
9, 4, -3, 5, 118, 992, -1192, -3, 68
|
|
||||||
9, 5, -1, 3, 115, 993, -1192, -2, 66
|
|
||||||
7, 1, -1, 2, 115, 993, -1192, -1, 66
|
|
||||||
6, -5, 0, 1, 114, 993, -1191, 0, 65
|
|
||||||
5, -5, -3, 0, 114, 993, -1191, 0, 65
|
|
||||||
5, 3, -2, 0, 114, 993, -1191, 0, 65
|
|
||||||
3, 0, -2, -1, 113, 993, -1191, 1, 65
|
|
||||||
3, -1, 0, -2, 113, 993, -1191, 1, 65
|
|
||||||
3, 0, 0, -2, 113, 993, -1191, 1, 65
|
|
||||||
3, 1, -1, -3, 113, 993, -1191, 1, 65
|
|
||||||
3, 1, -3, -3, 112, 993, -1191, 2, 64
|
|
||||||
4, -3, -1, -4, 113, 993, -1191, 2, 64
|
|
||||||
1, 4, 0, -4, 113, 993, -1191, 2, 65
|
|
||||||
0, -11, -2, -4, 113, 993, -1191, 2, 65
|
|
||||||
3, 3, -1, -4, 113, 993, -1191, 2, 65
|
|
||||||
4, -2, -2, -4, 112, 993, -1191, 2, 64
|
|
||||||
3, -1, -3, -4, 111, 993, -1190, 2, 64
|
|
||||||
2, -2, -1, -4, 111, 993, -1190, 2, 63
|
|
||||||
-1, -2, -2, -4, 111, 993, -1190, 2, 63
|
|
||||||
1, 0, -2, -4, 111, 993, -1190, 2, 63
|
|
||||||
0, 0, -3, -4, 110, 993, -1190, 2, 63
|
|
||||||
1, -3, -1, -5, 110, 993, -1190, 2, 63
|
|
||||||
-1, 0, -4, -5, 110, 993, -1190, 3, 63
|
|
||||||
1, 0, -1, -5, 110, 993, -1190, 3, 63
|
|
||||||
1, -2, 0, -5, 110, 993, -1190, 2, 63
|
|
||||||
3, -4, -1, -5, 110, 993, -1190, 2, 63
|
|
||||||
2, 3, -2, -5, 110, 993, -1190, 2, 63
|
|
||||||
1, -1, 0, -5, 109, 993, -1189, 2, 63
|
|
||||||
2, 0, -3, -4, 109, 993, -1189, 2, 63
|
|
||||||
1, -1, -2, -4, 109, 993, -1189, 2, 63
|
|
||||||
1, 0, -2, -4, 110, 993, -1189, 2, 63
|
|
||||||
1, 4, 1, -4, 109, 993, -1189, 2, 63
|
|
||||||
3, 0, -3, -4, 110, 993, -1189, 2, 63
|
|
||||||
1, -1, -1, -4, 110, 993, -1189, 2, 63
|
|
||||||
1, 1, 0, -4, 109, 993, -1189, 2, 63
|
|
||||||
1, 0, 0, -5, 109, 993, -1189, 2, 62
|
|
||||||
0, -2, -1, -5, 109, 993, -1188, 2, 62
|
|
||||||
2, 1, 0, -4, 109, 993, -1188, 2, 62
|
|
||||||
2, 1, -4, -5, 109, 993, -1188, 2, 62
|
|
||||||
0, 0, 2, -5, 109, 994, -1188, 2, 62
|
|
||||||
1, 0, 0, -5, 109, 994, -1188, 2, 62
|
|
||||||
3, -1, -2, -5, 108, 994, -1188, 2, 62
|
|
||||||
3, 0, -1, -4, 108, 994, -1188, 2, 62
|
|
||||||
1, 1, 0, -5, 108, 994, -1188, 2, 62
|
|
||||||
2, -2, -2, -5, 108, 994, -1188, 2, 62
|
|
||||||
5, -1, -2, -5, 108, 994, -1188, 3, 62
|
|
||||||
1, 0, 0, -5, 108, 994, -1188, 3, 62
|
|
||||||
0, -5, 0, -5, 108, 994, -1188, 3, 62
|
|
||||||
0, 0, -8, -5, 108, 994, -1187, 3, 62
|
|
||||||
-1, 11, -5, -5, 107, 994, -1187, 3, 61
|
|
||||||
1, 3, 2, -5, 108, 994, -1187, 3, 62
|
|
||||||
-6, -26, -48, -5, 105, 994, -1187, 3, 60
|
|
||||||
0, 11, -18, -5, 104, 994, -1187, 3, 60
|
|
||||||
4, -11, 17, -5, 101, 994, -1187, 3, 58
|
|
||||||
3, -2, 4, -5, 106, 994, -1187, 3, 60
|
|
||||||
0, 18, -6, -5, 103, 994, -1187, 2, 59
|
|
||||||
4, -9, 2, -5, 99, 994, -1187, 3, 57
|
|
||||||
-1, -11, 0, -5, 101, 994, -1187, 3, 57
|
|
||||||
1, 8, -6, -5, 102, 994, -1187, 3, 58
|
|
||||||
2, -10, -1, -5, 101, 994, -1187, 3, 58
|
|
||||||
0, 0, 10, -6, 105, 994, -1186, 3, 60
|
|
||||||
3, -8, -49, -5, 99, 994, -1186, 3, 57
|
|
||||||
-1, -20, -5, -5, 101, 994, -1186, 3, 58
|
|
||||||
2, -21, -3, -5, 100, 994, -1186, 3, 57
|
|
||||||
2, 14, -8, -5, 101, 994, -1186, 3, 58
|
|
||||||
0, -12, -4, -5, 99, 995, -1186, 3, 57
|
|
||||||
-1, -22, -2, -5, 101, 994, -1186, 3, 58
|
|
||||||
2, 9, -1, -5, 98, 995, -1186, 2, 56
|
|
||||||
2, -11, 5, -5, 100, 994, -1186, 3, 57
|
|
||||||
0, -1, 0, -5, 102, 994, -1186, 3, 58
|
|
||||||
1, 4, -1, -5, 101, 994, -1186, 3, 58
|
|
||||||
1, -4, 0, -5, 101, 994, -1185, 3, 58
|
|
||||||
1, 0, -3, -6, 102, 994, -1185, 3, 59
|
|
||||||
3, 1, -2, -6, 102, 994, -1185, 3, 58
|
|
||||||
0, -4, 0, -6, 102, 994, -1185, 3, 58
|
|
||||||
1, 6, -3, -6, 103, 994, -1185, 3, 59
|
|
||||||
2, -2, -1, -6, 102, 994, -1185, 3, 58
|
|
||||||
1, -3, 0, -6, 102, 994, -1185, 3, 58
|
|
||||||
@@ -1,69 +0,0 @@
|
|||||||
import numpy as np
|
|
||||||
import struct
|
|
||||||
import pandas as pd
|
|
||||||
import beacontools
|
|
||||||
from beacontools import parse_packet
|
|
||||||
from converters import BinToFloat, BinToInt
|
|
||||||
from numpy import dtype
|
|
||||||
from bitstring import BitArray
|
|
||||||
|
|
||||||
test = b"5\x01\'\x02\xfd\x02/\x02e\x01%\xfd8\xc8Xn<\xc3"
|
|
||||||
|
|
||||||
print(BitArray(test).bin[:1])
|
|
||||||
def chunker(seq, size):
|
|
||||||
return (seq[pos:pos + size] for pos in range(0, len(seq), size))
|
|
||||||
|
|
||||||
def test_bin_float_converstion():
|
|
||||||
val = 100
|
|
||||||
test = struct.pack(">f", val)
|
|
||||||
binary = float_to_bin(val)
|
|
||||||
print(binary)
|
|
||||||
print(BinToFloat().process(test))
|
|
||||||
print(struct.unpack(">f", test))
|
|
||||||
print(BinToFloat().process(test, True))
|
|
||||||
print(struct.unpack("f", test))
|
|
||||||
|
|
||||||
def test_bin_int_converstion():
|
|
||||||
print()
|
|
||||||
val = 100
|
|
||||||
print("VAL IS ", val)
|
|
||||||
test = struct.pack("i", val)
|
|
||||||
binary = float_to_bin(val)
|
|
||||||
print(binary)
|
|
||||||
print(BinToInt().process(test))
|
|
||||||
print(struct.unpack("i", test))
|
|
||||||
print(BinToInt().process(test, True))
|
|
||||||
print(struct.unpack(">i", test))
|
|
||||||
|
|
||||||
print()
|
|
||||||
|
|
||||||
val = -100
|
|
||||||
print("VAL IS ", val)
|
|
||||||
test = struct.pack("i", val)
|
|
||||||
binary = float_to_bin(val)
|
|
||||||
print(binary)
|
|
||||||
print(BinToInt().process(test))
|
|
||||||
print(struct.unpack("i", test))
|
|
||||||
print(BinToInt().process(test, True))
|
|
||||||
print(struct.unpack(">i", test))
|
|
||||||
|
|
||||||
|
|
||||||
def float_to_bin(num):
|
|
||||||
return format(struct.unpack('!I', struct.pack('!f', num))[0], '032b')
|
|
||||||
|
|
||||||
|
|
||||||
def convert_row_to_bytes(row):
|
|
||||||
row = b"".join([struct.pack("h", x) for x in row])
|
|
||||||
b2i = BinToInt(48)
|
|
||||||
converted = [b2i.process(x, True)/10**14 for x in chunker(row, 6)]
|
|
||||||
print(converted,sum(converted))
|
|
||||||
|
|
||||||
|
|
||||||
data = pd.read_csv("accelerometer.data")
|
|
||||||
for index, row in data.iterrows():
|
|
||||||
convert_row_to_bytes(row)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
test_bin_float_converstion()
|
|
||||||
test_bin_int_converstion()
|
|
||||||
@@ -1,56 +0,0 @@
|
|||||||
import asyncio
|
|
||||||
from bleak import discover, BleakClient
|
|
||||||
from pprint import pprint
|
|
||||||
|
|
||||||
|
|
||||||
async def run():
|
|
||||||
devices = await discover()
|
|
||||||
for d in devices:
|
|
||||||
print(d)
|
|
||||||
|
|
||||||
|
|
||||||
loop = asyncio.get_event_loop()
|
|
||||||
loop.run_until_complete(run())
|
|
||||||
|
|
||||||
address = "D8:9B:12:D1:08:80"
|
|
||||||
MODEL_NBR_UUID = "64a7000f-f691-4b93-a6f4-0968f5b648f8"
|
|
||||||
|
|
||||||
|
|
||||||
async def run(address, loop):
|
|
||||||
async with BleakClient(address, loop=loop) as client:
|
|
||||||
# await client.connect()
|
|
||||||
print(await client.is_connected())
|
|
||||||
print(await client.get_services())
|
|
||||||
services = await client.get_services()
|
|
||||||
pprint(services.descriptors)
|
|
||||||
pprint(services.characteristics)
|
|
||||||
pprint(services.services)
|
|
||||||
# print(services.descriptors)
|
|
||||||
# for key, val in services.descriptors.items():
|
|
||||||
# print(f"{key} + {val}")
|
|
||||||
#
|
|
||||||
# print(services.characteristics)
|
|
||||||
# for key, val in services.characteristics.items():
|
|
||||||
# print(f"{key} + {val}")
|
|
||||||
|
|
||||||
print(services)
|
|
||||||
for x in services:
|
|
||||||
print(x)
|
|
||||||
for characteristic in x.characteristics:
|
|
||||||
print("")
|
|
||||||
print(characteristic)
|
|
||||||
print(characteristic.properties)
|
|
||||||
for descriptor in characteristic.descriptors:
|
|
||||||
print(descriptor)
|
|
||||||
print(x.description)
|
|
||||||
# for i in range(10):
|
|
||||||
# x = await client.read_gatt_descriptor(i)
|
|
||||||
# print(x)
|
|
||||||
|
|
||||||
# model_number = await client.read_gatt_char()
|
|
||||||
# print(model_number)
|
|
||||||
# print("Model Number: {0}".format("".join(map(chr, model_number))))
|
|
||||||
|
|
||||||
|
|
||||||
loop = asyncio.get_event_loop()
|
|
||||||
loop.run_until_complete(run(address, loop))
|
|
||||||
@@ -1,93 +0,0 @@
|
|||||||
<bleak.backends.service.BleakGATTServiceCollection object at 0x00000230AA342F08>
|
|
||||||
00001800-0000-1000-8000-00805f9b34fb: Generic Access Profile
|
|
||||||
|
|
||||||
00002a00-0000-1000-8000-00805f9b34fb:
|
|
||||||
['read', 'write']
|
|
||||||
|
|
||||||
00002a01-0000-1000-8000-00805f9b34fb:
|
|
||||||
['read']
|
|
||||||
|
|
||||||
00002a04-0000-1000-8000-00805f9b34fb:
|
|
||||||
['read']
|
|
||||||
|
|
||||||
00002aa6-0000-1000-8000-00805f9b34fb:
|
|
||||||
['read']
|
|
||||||
Generic Access Profile
|
|
||||||
00001801-0000-1000-8000-00805f9b34fb: Generic Attribute Profile
|
|
||||||
|
|
||||||
00002a05-0000-1000-8000-00805f9b34fb:
|
|
||||||
['indicate']
|
|
||||||
00002902-0000-1000-8000-00805f9b34fb: (Handle: 13)
|
|
||||||
Generic Attribute Profile
|
|
||||||
64a70010-f691-4b93-a6f4-0968f5b648f8: Unknown
|
|
||||||
|
|
||||||
64a7000b-f691-4b93-a6f4-0968f5b648f8:
|
|
||||||
['read']
|
|
||||||
|
|
||||||
64a70013-f691-4b93-a6f4-0968f5b648f8:
|
|
||||||
['read']
|
|
||||||
|
|
||||||
64a70001-f691-4b93-a6f4-0968f5b648f8:
|
|
||||||
['read']
|
|
||||||
Unknown
|
|
||||||
64a70012-f691-4b93-a6f4-0968f5b648f8: Unknown
|
|
||||||
|
|
||||||
64a70007-f691-4b93-a6f4-0968f5b648f8: Battery.
|
|
||||||
['read', 'notify']
|
|
||||||
00002902-0000-1000-8000-00805f9b34fb: (Handle: 24)
|
|
||||||
00002901-0000-1000-8000-00805f9b34fb: (Handle: 25)
|
|
||||||
|
|
||||||
64a70008-f691-4b93-a6f4-0968f5b648f8: Vibration motor.
|
|
||||||
['read', 'write']
|
|
||||||
00002901-0000-1000-8000-00805f9b34fb: (Handle: 28)
|
|
||||||
|
|
||||||
64a70009-f691-4b93-a6f4-0968f5b648f8: Led control.
|
|
||||||
['read', 'write']
|
|
||||||
00002901-0000-1000-8000-00805f9b34fb: (Handle: 31)
|
|
||||||
|
|
||||||
64a7000d-f691-4b93-a6f4-0968f5b648f8: User button.
|
|
||||||
['read', 'notify']
|
|
||||||
00002902-0000-1000-8000-00805f9b34fb: (Handle: 34)
|
|
||||||
00002901-0000-1000-8000-00805f9b34fb: (Handle: 35)
|
|
||||||
|
|
||||||
64a7000f-f691-4b93-a6f4-0968f5b648f8: Keep alive.
|
|
||||||
['write']
|
|
||||||
00002901-0000-1000-8000-00805f9b34fb: (Handle: 38)
|
|
||||||
Unknown
|
|
||||||
64a70011-f691-4b93-a6f4-0968f5b648f8: Unknown
|
|
||||||
|
|
||||||
64a70002-f691-4b93-a6f4-0968f5b648f8: Keep alive.
|
|
||||||
['notify']
|
|
||||||
00002902-0000-1000-8000-00805f9b34fb: (Handle: 42)
|
|
||||||
00002901-0000-1000-8000-00805f9b34fb: (Handle: 43)
|
|
||||||
|
|
||||||
64a70004-f691-4b93-a6f4-0968f5b648f8: Rst quaternions.
|
|
||||||
['write']
|
|
||||||
00002901-0000-1000-8000-00805f9b34fb: (Handle: 46)
|
|
||||||
|
|
||||||
64a7000a-f691-4b93-a6f4-0968f5b648f8: Raw 9-axis.
|
|
||||||
['notify']
|
|
||||||
00002902-0000-1000-8000-00805f9b34fb: (Handle: 49)
|
|
||||||
00002901-0000-1000-8000-00805f9b34fb: (Handle: 50)
|
|
||||||
|
|
||||||
64a7000c-f691-4b93-a6f4-0968f5b648f8: Linear Acc.
|
|
||||||
['notify']
|
|
||||||
00002902-0000-1000-8000-00805f9b34fb: (Handle: 53)
|
|
||||||
00002901-0000-1000-8000-00805f9b34fb: (Handle: 54)
|
|
||||||
|
|
||||||
64a70014-f691-4b93-a6f4-0968f5b648f8: Temperature.
|
|
||||||
['notify']
|
|
||||||
00002902-0000-1000-8000-00805f9b34fb: (Handle: 57)
|
|
||||||
00002901-0000-1000-8000-00805f9b34fb: (Handle: 58)
|
|
||||||
|
|
||||||
64a70021-f691-4b93-a6f4-0968f5b648f8: Magnetometer calibration.
|
|
||||||
['write', 'notify']
|
|
||||||
00002902-0000-1000-8000-00805f9b34fb: (Handle: 61)
|
|
||||||
00002901-0000-1000-8000-00805f9b34fb: (Handle: 62)
|
|
||||||
Unknown
|
|
||||||
0000fe59-0000-1000-8000-00805f9b34fb: Nordic Semiconductor ASA
|
|
||||||
|
|
||||||
8ec90003-f315-4f60-9fb8-838830daea50:
|
|
||||||
['write', 'indicate']
|
|
||||||
00002902-0000-1000-8000-00805f9b34fb: (Handle: 66)
|
|
||||||
Nordic Semiconductor ASA
|
|
||||||
@@ -1,100 +0,0 @@
|
|||||||
import pandas as pd
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
class ThreeAxisSensor(object):
|
|
||||||
def __init__(self, x, y, z):
|
|
||||||
self.x = x
|
|
||||||
self.y = y
|
|
||||||
self.z = z
|
|
||||||
|
|
||||||
def __str__(self):
|
|
||||||
return f"{self.x}, +{self.y}, +{self.z}"
|
|
||||||
|
|
||||||
|
|
||||||
class WandSensors(object):
|
|
||||||
def __init__(self, wand_update_callback, data_folder = "./", dataframe_handler = None):
|
|
||||||
|
|
||||||
self.accel = None
|
|
||||||
self.accel_updates = 0
|
|
||||||
|
|
||||||
self.button = 0
|
|
||||||
|
|
||||||
self.gyro = None
|
|
||||||
self.gyro_updates = 0
|
|
||||||
|
|
||||||
self.magneto = 0
|
|
||||||
self.temperature = 0
|
|
||||||
|
|
||||||
self.df = pd.DataFrame()
|
|
||||||
|
|
||||||
self.wand_update_callback = wand_update_callback
|
|
||||||
self.data_folder = data_folder
|
|
||||||
self.dataframe_handler = dataframe_handler
|
|
||||||
|
|
||||||
def __str__(self):
|
|
||||||
return f"Button " \
|
|
||||||
f"{self.button} " \
|
|
||||||
f"Accel " \
|
|
||||||
f"{self.accel} " \
|
|
||||||
f"Gyro " \
|
|
||||||
f"{self.gyro} " \
|
|
||||||
f"Mag {self.magneto} | Temp {self.temperature}"
|
|
||||||
|
|
||||||
def append_to_dataframe(self):
|
|
||||||
if self.gyro_updates == self.accel_updates:
|
|
||||||
self.df = self.df.append(
|
|
||||||
pd.DataFrame({
|
|
||||||
"gyro_x": self.gyro.x,
|
|
||||||
"gyro_y": self.gyro.y,
|
|
||||||
"gyro_z": self.gyro.z,
|
|
||||||
"accel_x": self.accel.x,
|
|
||||||
"accel_y": self.accel.y,
|
|
||||||
"accel_z": self.accel.z,
|
|
||||||
"magneto": self.magneto,
|
|
||||||
"button": self.button
|
|
||||||
}, index=[0])
|
|
||||||
)
|
|
||||||
self.send_data_back()
|
|
||||||
|
|
||||||
def send_data_back(self):
|
|
||||||
self.wand_update_callback(self)
|
|
||||||
|
|
||||||
def save_df_to_file(self):
|
|
||||||
filename = self.data_folder + datetime.datetime.now().strftime("%I%M%S-%B%d%Y.csv")
|
|
||||||
import os
|
|
||||||
try:
|
|
||||||
os.makedirs(self.data_folder)
|
|
||||||
except FileExistsError:
|
|
||||||
# directory already exists
|
|
||||||
pass
|
|
||||||
try:
|
|
||||||
self.df.to_csv(filename, index=False)
|
|
||||||
except Exception as e:
|
|
||||||
print(e)
|
|
||||||
|
|
||||||
def set_gyro(self, x, y, z):
|
|
||||||
self.gyro = ThreeAxisSensor(x, y, z)
|
|
||||||
self.gyro_updates += 1
|
|
||||||
self.append_to_dataframe()
|
|
||||||
|
|
||||||
|
|
||||||
def set_accel(self, x, y, z):
|
|
||||||
self.accel = ThreeAxisSensor(x, y, z)
|
|
||||||
self.accel_updates += 1
|
|
||||||
self.append_to_dataframe()
|
|
||||||
|
|
||||||
def set_temp(self, temp):
|
|
||||||
self.temp = temp
|
|
||||||
|
|
||||||
def set_button(self, button):
|
|
||||||
self.button = button
|
|
||||||
self.send_data_back()
|
|
||||||
if not button:
|
|
||||||
self.save_df_to_file()
|
|
||||||
else:
|
|
||||||
self.df = pd.DataFrame()
|
|
||||||
def set_magneto(self, magneto):
|
|
||||||
self.magneto = magneto
|
|
||||||
|
|
||||||
def get_dataframe(self):
|
|
||||||
return self.df
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
from kano_wand.constants import *
|
|
||||||
|
|
||||||
async def start_notify(client, notification_handler, sensors):
|
|
||||||
for char in sensors:
|
|
||||||
await client.start_notify(CHARACTERISTIC_UUIDS[char], notification_handler)
|
|
||||||
|
|
||||||
|
|
||||||
async def stop_notify(client, sensors):
|
|
||||||
for char in sensors:
|
|
||||||
await client.stop_notify(CHARACTERISTIC_UUIDS[char])
|
|
||||||
|
|
||||||
def chunker(seq, size):
|
|
||||||
return (seq[pos:pos + size] for pos in range(0, len(seq), size))
|
|
||||||
|
|
||||||
|
|
||||||
def get_key(val, dictionary):
|
|
||||||
for key, value in dictionary.items():
|
|
||||||
if val == value:
|
|
||||||
return key
|
|
||||||
|
|
||||||
return "key doesn't exist"
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.19794833121282,0.87972925034733,1.13064152557185,0.62671424483329,-1.20946967006461,0.43994406998783,0,1
|
|
||||||
1.19844569585666,1.05565597618413,0.00058968879684,0.73665869632,-0.24190413524989,0.41794544878335,0,1
|
|
||||||
0.64863300743171,1.13258404204781,1.23671586464267,0.63767530243583,1.07755125778435,0.00016257072127,0,1
|
|
||||||
1.31935875557124,1.24254074130669,0.94614241891347,1.02252282753022,-0.84659157425661,-0.72556593855489,0,1
|
|
||||||
-0.56080914779644,-1.35230250594067,-0.96271776461701,-1.17648616773122,-0.05493749801981,1.18757724739071,0,1
|
|
||||||
0.60471260406789,-1.29732356910867,-1.33724409708341,0.35182979576316,0.63776338450179,-0.02193486810625,0,1
|
|
||||||
-1.20939283112185,-1.12139633995539,0.51676342268476,0.97850713362427,0.93464343584003,-1.33035638940417,0,1
|
|
||||||
0.00020182781447,-1.13238893965075,-0.67874091646924,-0.98966481606405,0.30792835118595,0.37389233796607,0,1
|
|
||||||
0.63793753017863,-0.79154754924307,0.48702017248425,-1.30856865496068,-1.04451557830397,-0.37380643900929,0,1
|
|
||||||
-1.08831837579257,-0.57165780659987,-0.61549624489387,0.73649730255614,-1.23148926203645,-0.68168630369537,0,1
|
|
||||||
0.98972622088964,-0.35172561825555,0.84486346225894,-0.07720723739135,-0.96761385417469,-0.49474634227713,0,1
|
|
||||||
-0.49471228705791,-0.40671260815123,-1.13581240926695,0.35163417355267,-0.35192962147069,-0.06595828167169,0,1
|
|
||||||
-0.43978670121729,-0.67060445851411,-1.11115297562496,0.97837912112644,1.0004356240205,0.83570047672319,0,1
|
|
||||||
0.80264667472638,-1.15439477567251,0.09544264991883,1.06632075769604,0.20879949924098,-0.73659125231873,0,1
|
|
||||||
1.11048090586878,1.14358301642989,0.37904573040776,-1.26462594228732,0.19781780476162,0.79177302791167,0,1
|
|
||||||
1.09945408098814,0.68178863608045,-0.95870645203826,0.29672452505603,0.70356194870274,-0.62660351553536,0,1
|
|
||||||
0.57161937805567,0.21999643676909,1.0557916756138,0.12084007715842,-0.94569777586941,0.22004979805952,0,1
|
|
||||||
-1.04472445471232,-0.08790372888339,-0.61521669289896,1.12143441210113,0.70361395788291,0.53889139289856,0,1
|
|
||||||
-1.26472425559037,-0.13187647647507,-0.67406145738699,0.96752778171903,-0.03306772445949,0.03313936370688,0,1
|
|
||||||
0.78035361466629,0.05509267738861,-0.80379976153547,-0.40693808814595,-0.49478610459133,-0.97847508669441,0,1
|
|
||||||
0.50578407017991,0.63780750053613,0.07550224123399,-0.03323331473156,-1.35236239237629,0.15404789394431,0,1
|
|
||||||
|
@@ -1,24 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.23099844073981,0.83575566389485,0.07190457909918,-1.23146376304385,0.07699987084803,0.31902966697215,0,1
|
|
||||||
1.28635730088197,0.97865459519725,-0.47658619473743,-0.86865143226883,-1.18744017885437,-0.62660687215617,0,1
|
|
||||||
-0.04401502632698,1.34149930438893,1.37139149571104,-0.17596195745285,-0.31882246971901,1.18757959618303,0,1
|
|
||||||
-0.32977245516281,-1.37429072523027,-0.45354270940924,-1.01155505842693,0.10999545438723,0.09905922599935,0,1
|
|
||||||
1.08866851229191,-1.26433754918675,0.15880150927032,0.19787736672763,-0.36283095206141,-0.90153511058177,0,1
|
|
||||||
0.20912162065927,-1.13239984484115,0.66050061341916,-0.34096436478213,1.35240903281411,1.11058089905407,0,1
|
|
||||||
0.73684760741639,-0.91250557234963,-0.9795051094681,1.18731368035837,-0.51680737505789,0.64875934024191,0,1
|
|
||||||
0.27507084244997,-0.75854106177299,0.88414295865445,-1.08870558878209,0.19787065305603,0.41788052106495,0,1
|
|
||||||
0.35200561900802,-0.69258110152467,0.73532694499568,-0.54996234025215,0.95653216543491,0.65979220515839,0,1
|
|
||||||
-0.81356193462783,-0.81353560141587,-0.85025271402769,0.43967026542594,-0.74779256222973,1.15454676916991,0,1
|
|
||||||
0.75870211302911,-1.25334897667859,0.50668232462024,1.31926413251843,0.9784492502349,-0.87953732701697,0,1
|
|
||||||
-0.31888236404225,1.16557392007405,-0.85316236779843,-1.08867824420093,0.3517371853005,0.09907852121855,0,1
|
|
||||||
1.23143892962815,0.74775933374701,-0.71794334201709,0.10985989360899,0.37373966525442,-1.26431606483457,0,1
|
|
||||||
-0.32993653518337,0.35193682546925,-0.21267388611469,-1.1875998978227,0.9674824875085,-0.31874344683521,0,1
|
|
||||||
-1.00067050501632,0.06606547996909,-0.4740395292243,-0.1210365429043,-0.86874186046205,0.3190051733632,0,1
|
|
||||||
0.96741688907265,-0.16486987837203,-1.31354620321604,-0.7147429587072,0.60468710307843,0.45093130205951,0,1
|
|
||||||
1.28623466043906,-0.18685373558547,0.85777588647658,0.17592118600959,-0.45084959590141,0.20906508347391,0,1
|
|
||||||
0.12073639648004,0.00011340501229,-0.17585976418302,-0.11003320639234,-1.31942821405693,-0.68159973306369,0,1
|
|
||||||
-0.09913589896187,0.35196517896429,-0.29905923225924,1.01142335740413,0.74769256931075,0.85774154318335,0,1
|
|
||||||
0.74768350734343,0.90168827793645,-0.43778753646496,-0.42899810811909,-0.41778270974717,-0.76959321171713,0,1
|
|
||||||
-1.18721654108665,1.09961446379757,1.10898978912925,-1.11065102422789,0.45084422748675,0.74772494877952,0,1
|
|
||||||
-1.19826903448057,1.06663330926829,-1.27389289347858,1.15440450012669,0.53881203635715,0.25294404525568,0,1
|
|
||||||
1.24253739317253,0.98966799864045,0.46649419486761,-0.06598747389953,0.26393614269699,0.13200028280064,0,1
|
|
||||||
|
@@ -1,23 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-1.24253991116794,0.78074636095725,0.77671133652177,0.75869372341756,-0.84662143698685,0.17607654601471,0,1
|
|
||||||
0.01092767142407,0.86870997553389,0.00105540788953,-0.09899715136517,-0.04397677434365,-0.56064640846593,0,1
|
|
||||||
-0.83563974310393,1.13259595387117,0.09647241427196,1.20943158551035,0.16498043104771,1.08861918776575,0,1
|
|
||||||
-0.87955746140665,1.26453718143213,0.44332831111883,0.83555871028475,-0.23087714156029,-0.14287326170881,0,1
|
|
||||||
1.24258185235975,1.29751900705005,0.08841167496368,0.67060126401276,1.25346959580163,-1.11043158226945,0,1
|
|
||||||
0.04418615131654,-1.30829234581267,0.57897738600662,-0.9127439661901,-0.54977108123133,1.07756921080831,0,1
|
|
||||||
-1.34126711765244,-1.15437179088659,0.22659415108665,0.91244785181184,-0.53882159910653,0.89067723210751,0,1
|
|
||||||
-0.97844807790845,-1.12139583729427,-1.37463199839627,1.03338356076545,0.42874745874435,1.19851515491839,0,1
|
|
||||||
1.15454727056897,-1.28632996343571,-0.5420684822983,-1.07767624867582,-1.04463805246717,-1.08845376357633,0,1
|
|
||||||
-1.30841111993344,1.34149829710061,0.60317347830385,-0.30800015789566,0.92349229159426,-0.31878589330945,0,1
|
|
||||||
-0.12096439870209,1.05562342838509,-0.54499099307428,-0.05513110672637,0.52767431308034,0.62684208948735,0,1
|
|
||||||
-0.04406619630337,0.62681372578029,0.53237833357902,0.92349833024771,0.58261264972034,-1.2643187497344,0,1
|
|
||||||
-0.97864587902209,0.36293227729133,-0.32176680626439,-1.36349625729789,1.00043176599042,-0.43969006201088,0,1
|
|
||||||
-0.2969882642432,0.06606749323501,-0.03769993317239,-0.62681121962238,-0.91271678910205,0.09910335118592,0,1
|
|
||||||
0.62659311483136,-0.02193219235603,-0.21510021680949,-1.29750022743294,0.95649257261059,0.39599531363584,0,1
|
|
||||||
-1.27563800188671,-0.03292059774739,-0.2376999210179,0.16490778244352,-0.05501886675709,0.19806627626751,0,1
|
|
||||||
0.813406743017,0.19802868568301,-0.89327937289675,0.27480324550908,-0.89061079391485,-0.67060830770433,0,1
|
|
||||||
-0.25301702822905,0.49490454270189,0.11024046514936,0.32976272299516,0.87964403098371,0.91271595025663,0,1
|
|
||||||
-0.92352215724537,0.92368119484653,0.09356799064179,0.26377223145212,-0.70365170641917,-0.48371767187713,0,1
|
|
||||||
0.48402351836679,1.13259662495981,0.27295457633849,0.39574583991548,-0.13190029129469,1.22052031805951,0,1
|
|
||||||
-0.56056168451578,1.22055990399213,0.09497192875114,-0.14299388707331,-0.30786157753085,0.76972222776832,0,1
|
|
||||||
-1.06641739561724,1.14359190900973,-0.78185471186893,-0.36284823064063,-0.75865866054397,0.63778469121792,0,1
|
|
||||||
|
@@ -1,22 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
1.34133003027973,0.94567310512365,-1.13714921888734,-1.23146023924483,-0.84659593635837,0.65986166207231,0,1
|
|
||||||
-0.76966753594617,1.06662357848301,-0.03675819214302,-1.25348066900485,0.03306269086467,-0.28576917272833,0,1
|
|
||||||
-0.20889898922489,1.19856866480365,-1.33979654638459,-0.17598695483141,0.16497388791043,1.23155569931775,0,1
|
|
||||||
-0.08784617550329,1.24254761996525,-0.23140367144732,0.95649374925563,-0.36282407338237,-0.01093052424961,0,1
|
|
||||||
-0.03284744155641,1.37448565985517,-0.87238620990903,-0.97866936547587,0.97858330023939,-0.86853667542273,0,1
|
|
||||||
0.0661606139111,-1.26430969966355,0.20597828503601,1.28634136483582,-0.87963430037245,-1.33035840198145,0,1
|
|
||||||
0.93471507382532,-1.13237904174867,0.33869277470445,0.78054185596672,-0.72574797110525,-1.17640295047681,0,1
|
|
||||||
0.13205044603907,-1.18736385060627,-0.41239869373395,0.04385514030593,0.93451358009091,-0.91250925464577,0,1
|
|
||||||
1.38542776843264,-1.35230066110227,0.50718006853296,-0.39596595319038,-0.51688136299005,-0.29681109591809,0,1
|
|
||||||
-0.70367553049088,1.17657088184557,0.06730796726314,-0.50594211429117,1.2313503464909,0.57185795159039,0,1
|
|
||||||
-0.73668419963393,0.75875478556909,-0.01713825444623,0.82451342788611,0.72558825162242,-0.80252554318081,0,1
|
|
||||||
0.61568356213759,0.36293194174701,1.23218957342271,-1.18757104129533,1.03341308829954,0.06612773307648,0,1
|
|
||||||
0.86854154092543,0.06606464110829,-0.05634424009529,-0.19801477096446,-1.14361624423933,0.71483237929984,0,1
|
|
||||||
0.67058784038144,-0.18686212419347,0.64204968976412,0.26379873500418,-0.09908019768317,0.94571874816768,0,1
|
|
||||||
-0.59390455414783,-0.23083822722835,-0.19300664819998,0.91252552648449,1.28634387993859,0.91276259099648,0,1
|
|
||||||
0.41767265091586,-0.18685121900307,-0.82692908545927,0.68161550164736,0.21989544675843,0.38498090412287,0,1
|
|
||||||
1.19833446196228,0.11006641328365,-1.18733553938251,0.38477034721022,-0.60474649484797,-0.42871826625281,0,1
|
|
||||||
-1.24249545331962,0.74779506921709,0.14033647231543,-0.05512204697604,-1.35237413644029,1.02266207978239,0,1
|
|
||||||
1.37454522453511,1.08861213331693,0.57416868692104,-1.26458818924293,0.21997715176963,-0.40676007880449,0,1
|
|
||||||
-1.25322297291257,1.15459105181933,-0.10611011725697,1.20940977756668,0.76970243174659,1.17653163148544,0,1
|
|
||||||
0.2420903598055,1.04464223785197,-1.09199439891324,-0.79165743014402,0.58278713275907,1.02260168133376,0,1
|
|
||||||
|
@@ -1,23 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.10993807569925,1.01165084922093,1.19248975281667,-0.69269668901892,0.65977156788995,0.35198481666815,0,1
|
|
||||||
-1.27545982911994,1.20956814315757,-1.29451751836507,-1.16552158431749,1.37446201121795,-0.60463995999489,0,1
|
|
||||||
-0.42879594607097,1.34151222284525,-0.43592403820016,-0.14299808360709,-1.11042436898045,1.01163894525695,0,1
|
|
||||||
1.02265519918599,-1.35229059411731,-0.94267314555824,0.74754543566587,1.23150536772355,-0.50572552076033,0,1
|
|
||||||
1.39658142666247,-1.14338590142227,-0.67283715750676,0.71451109810685,-0.95655531917565,0.78072304873471,0,1
|
|
||||||
-1.25324612604155,-1.00045979168531,-1.04686135847823,1.29727172130303,0.38484853120259,0.39590689746943,0,1
|
|
||||||
0.32998653027843,-0.74754611326739,-0.42950071869767,-0.65987776723712,1.03351240870659,0.18697552961023,0,1
|
|
||||||
-0.48370173494526,-0.57163448692499,-0.93873845216094,-0.25304219206399,-1.38546635637501,0.42889023352831,0,1
|
|
||||||
0.15400108449537,-0.59363361140499,0.68910641526846,-0.47293076108542,-0.19803758711805,0.80269734403839,0,1
|
|
||||||
-1.23144731930624,-0.78055578906387,-0.17403442204561,-0.53890800156926,1.29730258917378,1.34147230228223,0,1
|
|
||||||
0.63774090316031,-1.13240370425619,0.62029433496774,0.07685088966403,0.50566260563458,-0.58266348324353,0,1
|
|
||||||
-0.82464026458625,1.33049999315181,0.02711006493203,0.32975651478275,0.10985133802498,0.58286699296511,0,1
|
|
||||||
0.16489285454079,0.82472414105837,-0.84912468464413,1.22036093376514,0.34076236947714,-0.98943765447169,0,1
|
|
||||||
1.30834753443327,0.42890062614765,-0.38512526089524,-1.0996361158067,0.95645901837826,0.08811897240576,0,1
|
|
||||||
0.50566310942977,-0.15387845308179,-0.6273812608762,0.42873957217793,-0.70379464808957,0.75880797919744,0,1
|
|
||||||
0.92342853837058,-0.38476968734483,-0.78917405937426,-0.04405479037952,-1.26450363492605,0.93475030715392,0,1
|
|
||||||
1.40717439601923,-0.42874360934163,0.62046956166348,0.01099058344447,0.68166835294467,0.48393275584768,0,1
|
|
||||||
-0.53896001159163,-0.12087246827283,1.25741921830985,-1.05559776955651,-0.10999092418813,-0.69260541949184,0,1
|
|
||||||
0.80255809142789,0.30798857261293,0.86079677785146,1.28633784028412,-1.09950927840509,0.61584059598848,0,1
|
|
||||||
0.24199439362567,0.74776185098477,0.8440913947189,0.42870669318652,0.16497875402755,-0.93452515729408,0,1
|
|
||||||
-0.29669063872249,0.87971381596397,-0.95871047175963,0.09887098931964,0.80270388668931,0.81369245892352,0,1
|
|
||||||
-0.03285297822457,0.92369897869549,0.90388102936182,0.4287687688038,0.87967137834499,0.61577969485056,0,1
|
|
||||||
|
@@ -1,23 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.16501180482044,0.98965927448813,-1.09441964897194,-0.81365404136962,0.34090799488515,1.24259208790014,0,1
|
|
||||||
1.08849637782277,1.22056141394157,-1.24425326127487,-0.40685688431875,1.33047433186307,0.31899326025471,0,1
|
|
||||||
-0.21994007551994,-1.39627206586131,1.00034929424496,0.7806160104806,-0.71460655840253,-0.92346226167041,0,1
|
|
||||||
-0.38476783432185,-1.27532192804627,-0.9888889500975,1.39629487623419,-0.64866622678781,0.28599985792255,0,1
|
|
||||||
1.23159915056647,-1.11039535165203,0.86754933470384,0.96745916924412,1.37444523477507,-1.16543383957505,0,1
|
|
||||||
1.08872622355463,-0.92348441472787,-0.96188404539783,-0.62686540608259,-0.47277624279037,0.80270891915775,0,1
|
|
||||||
0.67087758033925,-0.74757228506899,-0.1952219202695,-1.29755844031233,0.13195280372995,0.36292372960255,0,1
|
|
||||||
-0.53866792117757,-0.59361431760659,-1.31427562662762,-0.96771518649088,0.64867578919683,0.43986672714239,0,1
|
|
||||||
-0.21981676312063,-0.56064541044499,0.24523929600641,-0.74780816409854,0.80256530606083,0.97860913821951,0,1
|
|
||||||
0.92366073400576,-1.04443572760339,1.0571455684053,-0.63787897921022,-0.68181146263549,-1.05547227363073,0,1
|
|
||||||
-1.05552025798144,-1.23135975075603,-0.95876715291473,0.46169287767299,-1.3305156049459,0.13205044831487,0,1
|
|
||||||
-0.85762829736705,1.11059817091309,0.59723848409216,1.17634959870467,1.27533668364802,-1.40726364942593,0,1
|
|
||||||
-0.27496296730112,0.68178897162477,-0.43039050324919,-0.45092291301374,-1.24253672371709,-0.29676009294593,0,1
|
|
||||||
-0.12106237721344,0.26397656633581,0.53644111620631,0.0219409059789,-0.59386311461117,0.50591913019392,0,1
|
|
||||||
-0.86873447803392,0.05507321581805,1.28196499104802,0.5606895238861,0.48369938493955,0.78078596415488,0,1
|
|
||||||
1.31932151032833,0.01109711278317,-1.25169293634833,0.87956467267585,-0.94562714408445,0.82479612489983,0,1
|
|
||||||
-0.28601663661822,0.09906374725869,-0.79070078610214,-0.52783772558848,0.87959453815811,0.42895549713663,0,1
|
|
||||||
-0.94574307465469,0.39593993982189,-0.39555506561822,0.36282004413695,0.10997196644099,-0.23076943186689,0,1
|
|
||||||
0.17587756675078,0.96769873694957,-0.34481196498808,0.71462668912636,-0.61570503685629,1.31952367613183,0,1
|
|
||||||
1.06658264829447,1.22055570968813,-0.63341837104071,1.38526402469115,0.95665279445251,-0.16487423155713,0,1
|
|
||||||
-0.32968789996025,1.16558985908461,-0.52683267125571,-0.76975091470084,-1.09945559151869,0.8466692513408,0,1
|
|
||||||
1.2756252498279,1.03365383246061,0.64299721374762,-0.25294639233795,-1.01148929260541,0.30790771492096,0,1
|
|
||||||
|
@@ -1,20 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.09895436793348,0.98966682423533,1.34431710815266,-0.26388547652611,-1.27537359473661,-1.08838363597058,0,1
|
|
||||||
0.31887464529669,1.23156340887789,-0.71944055121858,-1.34141341396996,-0.31879394881277,0.78081968503806,0,1
|
|
||||||
-0.58267942429689,-1.33029516062483,-1.02559751907691,-0.42887345518341,0.16504636445955,-0.64859324667649,0,1
|
|
||||||
0.23105061572103,-1.18735747460883,-0.19166509879222,-0.75877844879621,-0.13189307743485,0.51689209883391,0,1
|
|
||||||
1.24260114466567,-1.08840730013459,-1.07398532344581,0.64861623166973,1.03360233446403,-0.94552832628993,0,1
|
|
||||||
1.36356403343621,-0.90150156414739,1.3461002896546,-1.3855213834829,-1.28640595536381,0.84669676632575,0,1
|
|
||||||
1.022682210217,-0.62659480104723,0.75339740376647,0.98940091552,-1.03356374722301,0.51682247487999,0,1
|
|
||||||
0.73677697521922,-0.52765536399123,1.06259149305964,1.37423904435457,-0.53882931664125,0.51684327859199,0,1
|
|
||||||
-1.03347952668927,-0.61562468282131,0.66851080726662,-0.52790499970558,0.54968753022979,1.00060188745471,0,1
|
|
||||||
-0.17588260276224,-0.91249953320723,0.63790336371273,0.35174741906435,-0.89070759895805,-0.60467032508929,0,1
|
|
||||||
-0.824646639936,-1.38529221750547,-1.11858428198779,1.37426672490755,-1.37448415822078,0.54986520254975,0,1
|
|
||||||
-0.19799480465408,1.01164145332461,0.20511865554006,0.21981894155011,-1.09959954098941,-1.11040037521409,0,1
|
|
||||||
-0.31895886749184,0.58283393175789,1.1447611833355,1.28636854056962,-0.40694647340541,-0.2417935718656,0,1
|
|
||||||
1.20934971262464,0.26397958623469,-1.02551458104704,-1.2095421482931,0.76957492477699,0.2090372333824,0,1
|
|
||||||
-0.29703104625663,0.07706831376621,0.79789256686272,-0.96763264568063,-0.46188061476349,0.38498694332672,0,1
|
|
||||||
-1.35255096837631,0.12105582530797,-1.35525038828015,-1.19853596007423,-0.87961785867517,0.08809749734143,0,1
|
|
||||||
-0.36298278639101,0.48391211077869,-0.58906741382634,0.41779965229311,-1.08849184910077,-0.43969073397249,0,1
|
|
||||||
0.91253576147973,0.81373724627181,-0.2598333480395,0.38471934718715,-0.80256815890685,0.76978648439039,0,1
|
|
||||||
0.76975947042311,0.92370384408813,-0.13114471393551,0.78045092674811,0.24199053724163,-0.87953430925056,0,1
|
|
||||||
|
@@ -1,23 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.4508672127462,0.17602553532653,-1.37597286572309,1.22045270410494,1.36343887772163,-0.79151381912321,0,1
|
|
||||||
-0.81368205934843,0.36294553194733,0.06739856860247,0.0549953767347,-0.63766892946429,1.25361287228671,0,1
|
|
||||||
1.27536251932677,0.58285054185709,0.51326141066358,1.02254832972541,9.562964739e-05,0.23106068314879,0,1
|
|
||||||
1.00052873692421,0.83574022951149,-1.03209968026427,-0.31889796572932,0.27498175741187,-1.12138442073345,0,1
|
|
||||||
0.53882897894407,1.14360415637741,1.30599131724997,-0.24195949745669,0.02210498827267,0.26400291473407,0,1
|
|
||||||
0.73683938627079,1.27554202849517,1.10137999561392,0.95650985525243,-1.08843782664957,-0.78060812507905,0,1
|
|
||||||
-0.57158867846649,-1.33030740799251,0.4000423369629,-1.31950840688387,0.08803944743683,1.37444993263103,0,1
|
|
||||||
-1.14333304724731,-0.95648905735955,-0.56974574594021,0.59364417340415,0.68172707258883,1.20954298553343,0,1
|
|
||||||
-0.96746906726141,-0.84650786402067,-0.74669639658957,-0.14310763753728,1.12148457969155,1.25350113756415,0,1
|
|
||||||
-0.09891091694846,-0.89049906654995,-0.32345126388997,-0.30802163161599,-1.09957085159421,-1.19838965971713,0,1
|
|
||||||
0.61579932350977,-1.14339445845779,1.19484759706227,-0.57187674037246,-0.48388041131005,-0.36278212896257,0,1
|
|
||||||
0.14298399107071,1.37448230375661,1.25921100013786,-0.35199471567357,1.31928510494722,0.59384700928,0,1
|
|
||||||
0.28589953102591,0.89069584535789,-0.90042362373583,0.76955059729155,1.09939284567042,-1.05541774791168,0,1
|
|
||||||
-0.09900017114113,0.35193548329197,0.97478041567766,-0.61583439005181,1.34129597345794,0.0661242100864,0,1
|
|
||||||
0.25277862300159,-0.15387979525907,0.33236103138885,1.05545817996291,-0.57184972953085,0.75880663705856,0,1
|
|
||||||
-1.30856563753728,-0.37377876537107,1.03370237334625,1.06644054583042,0.63765533978115,1.05566236139008,0,1
|
|
||||||
-1.38551635275775,-0.45074088832787,-0.16787884923149,-1.28648195802623,-0.45087056677373,0.85777694340608,0,1
|
|
||||||
0.93442902279426,-0.18684903796499,0.05290971677802,-1.07758364116991,-1.22049666162429,0.46193447013888,0,1
|
|
||||||
-0.14309270819325,0.15405207933165,0.160474108316,1.3083725299763,-1.07752139465981,-0.5716322975744,0,1
|
|
||||||
-1.36344911365882,0.29695654711533,-0.19344694603726,1.18740427529723,0.93463286688515,1.05562679218688,0,1
|
|
||||||
0.69277386067463,0.52786690740461,-0.49963976786808,0.79157153473531,-0.59367369969661,-0.2747946930688,0,1
|
|
||||||
1.16563633819143,0.45091015315693,-1.05122608550307,-1.19847622792194,-0.40674145577469,-1.2643568356352,0,1
|
|
||||||
|
@@ -1,26 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.40685772216062,0.50587231277293,-0.65503113870817,1.19847908166656,0.79171514426371,-0.69255240410625,0,1
|
|
||||||
1.25340366113027,0.72577782599917,-0.89985427832775,1.07752407853311,1.31948072554499,-0.92345487911681,0,1
|
|
||||||
0.736662220073,0.91269849370861,0.23024125254818,-0.84659509841922,-0.43973452355581,1.15465481229823,0,1
|
|
||||||
0.36282189088005,1.04464341225709,0.38054265508999,-1.17647157070851,0.31897916673795,0.22006237900031,0,1
|
|
||||||
-1.07755495044603,1.22056963477741,-0.35093259599686,-0.09897097845252,0.81373121416195,-1.14338035767809,0,1
|
|
||||||
-0.4507791329049,1.38549889552621,0.16483698491063,0.91256210449915,0.78076381701123,0.18702921544447,0,1
|
|
||||||
-0.41773120590841,1.34151759155437,-0.58378020221323,-0.42888972852484,0.03311017089027,-1.01147369082625,0,1
|
|
||||||
-1.38526016664313,-1.31930524528403,-1.2709814351704,-1.34146491802883,-1.13245016781053,0.97861098212864,0,1
|
|
||||||
1.24257144940294,-1.18737005752083,0.55639764798591,-0.20900535432706,0.06601884877827,0.571806611584,0,1
|
|
||||||
-0.9674428953702,-0.98946769530643,-0.72353516191131,-1.09961027618305,1.09951498379779,0.39590068947712,0,1
|
|
||||||
-1.3962759181414,-0.86848786247443,-1.16141776350597,1.00042740482048,-0.69269349997309,0.56079992028415,0,1
|
|
||||||
-0.58265694246654,-0.79153580584723,-1.37959706259783,0.92349128591105,0.38482453974531,0.91265907618047,0,1
|
|
||||||
-1.06645766080255,-0.86851000839955,-0.0870709539819,0.92347954223617,-1.07756837165565,-1.17639959481857,0,1
|
|
||||||
-0.02198788422655,-1.22036027240211,-1.03264162605873,1.18736199652866,0.40673524870915,0.2419831557504,0,1
|
|
||||||
0.54977410087168,1.14358586855661,1.12905814860303,-0.73677060184574,-0.13205967450109,-1.25334728922624,0,1
|
|
||||||
0.30785922881024,0.57183847993581,-1.31315054288849,0.53871321678595,-0.07707436233469,0.05511399428352,0,1
|
|
||||||
0.32977899768832,-0.08790892982035,0.05175673456776,1.27536587483651,0.39576546598659,1.15462092450304,0,1
|
|
||||||
1.29731215241216,-0.49472370224915,-1.3995784783242,-0.45085865719293,1.35234108557571,-1.00038831216896,0,1
|
|
||||||
-0.9567400358784,-0.81357586673427,-1.27530561356055,-0.36291936975613,-0.18697921972477,-0.70353191676928,0,1
|
|
||||||
-1.18763630404863,-0.73660367744787,1.25439865044016,-1.22054313702654,-1.19849854378237,-0.94544058111744,0,1
|
|
||||||
0.73656273114626,-0.48370895662867,-1.13408596055823,-1.31948106359808,0.92358976791555,-1.40721097080832,0,1
|
|
||||||
1.3413028496026,-0.13189744733971,0.47015872491749,-1.15455448774657,0.39590438091523,0.60487484042239,0,1
|
|
||||||
0.3298075165159,0.17602050216173,1.08045518218401,-1.31947200366084,-0.37374922887933,-0.52764159837185,0,1
|
|
||||||
0.28591446019591,0.31896892559597,-0.83145657445743,-1.36350934092549,1.19857756504579,-0.12088152004352,0,1
|
|
||||||
-1.23132853957113,0.30798404341997,0.22722060709936,-0.56084018230532,0.9786542692301,1.2315201311744,0,1
|
|
||||||
|
@@ -1,23 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
1.09948126059266,0.31895214837997,0.7481220195042,1.694377473e-05,-0.27487539057149,-0.75851337076481,0,1
|
|
||||||
1.12149481317122,0.39592131776749,-0.96669701718876,0.02199476112384,0.80268694097155,-0.98942071118593,0,1
|
|
||||||
-0.4838347780326,0.56085359841517,0.93306929426162,-1.04451289567234,-0.96752342439421,1.29755357604607,0,1
|
|
||||||
1.37433786017541,0.65981467807981,0.37707907343013,-0.97852424636164,-0.15387659907581,0.41797916984831,0,1
|
|
||||||
0.27485139787783,0.82474528100589,-0.69384283054405,-1.08853328901381,-0.04390933014525,-1.00043478612481,0,1
|
|
||||||
1.18748279066119,0.82474393882861,1.36483534492748,-1.16554255455237,-0.61568188385021,0.37396045235712,0,1
|
|
||||||
0.27499517758983,0.95667946213613,1.21195965542987,-1.07763900090884,0.26393513606659,-0.93452599615232,0,1
|
|
||||||
0.11010249116166,1.22055403196653,-0.76777202803186,0.45068081895422,-1.05552428344829,-1.22038727534592,0,1
|
|
||||||
-0.06585342700796,-1.25331995209491,-0.10677043242466,-0.62685148169985,-0.45084070320381,-1.26439139571968,0,1
|
|
||||||
-0.95646925388797,-1.09939939716883,-0.43104142968672,-0.83579090357503,0.23089576397571,-1.00048981394689,0,1
|
|
||||||
-1.18742356948479,-1.16537932230419,1.26119905102041,-0.3300180718515,1.38533901670659,-0.27479670458881,0,1
|
|
||||||
-1.24240670080256,1.36349171732717,0.89071514919529,0.65959054304259,0.23081171052035,0.68178948456704,0,1
|
|
||||||
-0.91261998486017,0.81373120581869,-1.15834087342454,1.38527392125955,-0.06609367444221,-0.9784698856448,0,1
|
|
||||||
1.20941547850239,0.45089371082989,0.95266516878422,0.21982816942339,0.06589738146307,0.11008823341568,0,1
|
|
||||||
0.75854776434687,-0.10989681356563,-0.62842575358894,-0.24197644613629,1.12143408072963,1.05570061272064,0,1
|
|
||||||
1.24229295057152,-0.31879865413395,-1.03353546094344,0.4068045358157,-0.28594264819453,1.18762892179968,0,1
|
|
||||||
0.63754645595393,-0.31879328542483,-0.23272347366284,0.15391098962433,-1.30845239091453,0.98970089037824,0,1
|
|
||||||
-1.36355447320574,-0.09888273903379,0.62196968692747,-0.52784963711488,0.81363910845699,0.30802817516032,0,1
|
|
||||||
1.24236039273476,0.25301416562925,-1.11495355072381,0.4947330874547,0.15401702375939,-0.57164336988417,0,1
|
|
||||||
0.81363725981702,0.45089522143469,0.49425813146171,1.00049115726844,-0.93453606156541,1.077607965056,0,1
|
|
||||||
-0.59367907122681,0.67081264648429,-0.09955396656554,0.95652612834811,0.24199791920131,-0.1978372677248,0,1
|
|
||||||
-1.01145322402297,0.50589227765997,-0.92196054276597,-0.85769255166725,0.37395542059267,-1.1214283770624,0,1
|
|
||||||
|
@@ -1,24 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.29692837014269,0.43989188432109,1.13062172711055,1.23146594011903,-0.62668723543805,-0.87945663002113,0,1
|
|
||||||
-1.18753933192444,0.61581877793005,0.84459638884456,0.85764188520446,0.35191921739267,-1.11036279603457,0,1
|
|
||||||
-0.31890383953403,0.91269245391085,0.94767321874552,0.62676122027006,1.28650644974339,1.14362731675903,0,1
|
|
||||||
1.30839367019269,1.05563332759789,-1.33276956786487,-0.35184741281283,-0.51672533478909,0.03315379101951,0,1
|
|
||||||
0.18695958950917,1.09961781924077,-1.07483300186037,-1.03357817519108,-0.07690692636925,-1.09939049720577,0,1
|
|
||||||
0.02206488942343,1.16559019462893,0.22018223780366,1.27540261929467,-0.38475223045117,0.40694345293055,0,1
|
|
||||||
-0.46173784264441,1.19857369796845,-1.31373882864578,-0.63777915342597,-1.37434004154109,-0.74761992464384,0,1
|
|
||||||
1.25353754185735,1.30851798208749,1.03851202272287,-0.18704313911043,-0.30785050457597,1.34146827431168,0,1
|
|
||||||
-0.08783359321851,-1.29733464207123,0.98977429236326,0.95646321458942,0.52777833259779,0.94566136883968,0,1
|
|
||||||
-0.02189527498236,-1.11038511820563,0.95501389989606,0.10986409092351,1.31938107055107,1.03359713387264,0,1
|
|
||||||
-1.23133524861949,-0.98944873770771,-0.40892342982057,-0.64887140979968,-0.61580351851517,-1.374316050432,0,1
|
|
||||||
-1.12144397972991,-1.12140338704147,0.1833867960527,-0.93473386449662,0.69261515062019,-0.47274520403712,0,1
|
|
||||||
-0.93455384696064,1.29751749644525,1.16578278865663,0.42868672607491,-0.32996824431869,1.231551170624,0,1
|
|
||||||
0.09893490694143,0.79174046994669,0.71432534471766,-0.75875613753341,-0.30797146865917,-0.2088092294656,0,1
|
|
||||||
0.46175008813055,0.20900199157997,-0.43837147904361,0.13187109785347,0.45074004075267,0.85775211390464,0,1
|
|
||||||
1.06643970794752,-0.21984713748243,1.3231950122395,-1.17654690083582,-1.19852438089213,-1.16531757290752,0,1
|
|
||||||
0.94541155668993,-0.59367354117907,1.34638233620685,0.15391233209601,0.59371883120387,-0.9234412887424,0,1
|
|
||||||
-0.23108333383678,-0.63764628877075,-0.01650471739886,1.06648567567872,-0.13196706389501,-1.00042555770112,0,1
|
|
||||||
-0.94578132702716,-0.51668977561363,-0.3723792492429,-1.24247330762754,-0.67069370379517,1.15464038456576,0,1
|
|
||||||
-0.40697080175098,-0.16487658860307,1.0834676583245,0.13192428184572,1.37443869235971,0.05510996629248,0,1
|
|
||||||
0.5387910622055,0.27498376286445,-0.48206462861133,0.64864022262268,-0.16486601040893,1.22057987606016,0,1
|
|
||||||
-1.27534406813177,0.31897060331757,0.2222636666645,0.90154618542332,0.28599683918595,-0.59366178907392,0,1
|
|
||||||
-1.1873653539737,0.34096251359469,1.24216912265334,-0.79169417221889,0.13203165750019,-1.27535748824832,0,1
|
|
||||||
|
@@ -1,20 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.0440244213734,-0.08788930047763,1.38600690271246,-0.04400814830081,0.43979609460227,-1.39622994615809,0,1
|
|
||||||
0.37378496397828,-0.05490479050515,-1.06684390311798,0.13196303637759,0.41780703645187,1.27558364489471,0,1
|
|
||||||
1.37429994458372,-0.01092482871059,0.52788751025692,-0.27490408098817,0.42880181718531,0.95672510506495,0,1
|
|
||||||
-0.6268199421798,0.09906945151213,0.88026073448068,-0.86861754291969,0.43979659791875,0.54990563501055,0,1
|
|
||||||
1.34133707705348,0.25299906613485,0.67009722965544,0.95653518621951,0.46178599161603,0.01114476962047,0,1
|
|
||||||
-0.5717861439846,0.43991553954029,-1.08898714833902,0.26386198742271,0.46178481720835,-0.52765887767041,0,1
|
|
||||||
0.50585487213572,0.61583706444013,0.51523346592344,1.1984264037248,0.36282843515907,-1.13238943409153,0,1
|
|
||||||
1.23156073312003,0.80275253121261,1.37037484055578,-0.43983937835264,0.28586312452611,-1.33030068822529,0,1
|
|
||||||
1.05565967634691,0.85772744151277,-0.84714190493058,0.52776860288768,0.20889865275651,1.29753277325823,0,1
|
|
||||||
-0.14289205069566,0.84673148637421,-1.20906133980469,-0.02200566630912,0.18690942683395,1.18758177826303,0,1
|
|
||||||
-1.1544197645491,0.92369713254637,1.23265942592536,1.39634621400833,0.21989678893571,1.18758144273663,0,1
|
|
||||||
-0.38482638514431,0.87971700297965,1.1819482810428,-0.56082089096701,0.48378310283267,1.27554002418175,0,1
|
|
||||||
0.95659591931648,0.80275303452909,-1.16529499378596,-1.25352361823484,0.95653367699715,1.3744918757504,0,1
|
|
||||||
-0.16496164125697,0.57185844482285,-0.51781096900516,0.87956232538884,-0.83566541085693,-1.37429625334528,0,1
|
|
||||||
-0.5497850071424,0.46191382515949,-0.96417506108863,0.7476182463104,0.59374567482371,-1.34128037060608,0,1
|
|
||||||
0.46175612714756,0.35192994746605,0.36001771290213,-0.40687131231236,-0.52775517892605,-1.35229041859584,0,1
|
|
||||||
-1.03358522340601,0.26398076129517,0.41885107060424,0.35182342037243,0.85767376382723,1.36349071911424,0,1
|
|
||||||
1.38538062302727,0.16503360671981,0.93154196857991,-0.81368088263685,-1.24239159979773,1.19855726408448,0,1
|
|
||||||
-0.96760429097465,0.04409185751277,-1.29003386960189,-0.15393565330437,-0.89054636900093,1.08860274587904,0,1
|
|
||||||
|
@@ -1,22 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.24194892897789,-0.84654829711123,0.53238707057901,-0.29687803904513,0.57172021005571,-0.6595583303808,0,1
|
|
||||||
-0.50587081073404,-0.73659679878931,-0.43636947422041,-3.69288193e-06,0.68166952734723,-0.75851538352896,0,1
|
|
||||||
1.2753371875354,-0.62664664264467,-1.13321839114503,-1.00059467348225,0.62669075828739,-1.12135371740672,0,1
|
|
||||||
0.23082412586244,-0.45072645992211,-0.67321864161663,0.91257703403263,0.46176065867523,1.2975733736192,0,1
|
|
||||||
1.36331673994244,-0.25281638018835,-0.32231308635538,1.27542073649152,0.25284975840003,0.824785219136,0,1
|
|
||||||
-1.01161495411453,-0.01092600311571,1.17279934901309,-1.26447679201024,0.08791965878275,0.30801626400256,0,1
|
|
||||||
1.04451390059523,0.14304605786349,-1.08896932881397,1.31937335272448,0.04397929056003,-0.25277727965953,0,1
|
|
||||||
1.25346523415043,0.41792362926317,0.37454275649553,1.29738916046848,0.04397744506627,-0.83551844239873,0,1
|
|
||||||
-0.70362519779837,0.58284919902445,0.81389939348008,-1.33043222027009,0.05497239357187,-1.31930355862017,0,1
|
|
||||||
-0.83552095897597,0.79175607275757,-0.52636422942473,-0.96759237646849,0.06596851648259,1.15459743611135,0,1
|
|
||||||
0.81375738781443,0.80275169235181,1.19794933936263,-0.02200164036352,0.04398029719299,1.00066597601279,0,1
|
|
||||||
-1.15440147727101,0.79175640830189,-0.36355376293178,-0.35187073099776,-0.01107916962301,0.92370066474496,0,1
|
|
||||||
-0.15390478411774,0.78076062093549,1.31963519082526,1.36338921804033,-0.02207176932093,0.92370083254016,0,1
|
|
||||||
1.00056111788801,0.67080979370221,0.68422458862666,-1.04460936245245,0.09892433806851,1.02265570469632,0,1
|
|
||||||
-0.31888555137025,0.58284869570797,-1.33426968550774,0.13185801319684,0.43978049243395,1.12160873136384,0,1
|
|
||||||
-1.1545014707021,0.40692985516269,-0.5635606183359,1.33028542207236,1.35238252548611,1.18757137603072,0,1
|
|
||||||
-1.25345097480961,0.23101403451629,-0.83446169420143,0.1648663467597,-0.02200348600317,1.2095488579328,0,1
|
|
||||||
1.37438466794754,0.07709264072941,-0.26283041332004,0.58267606645243,-1.00052353628413,1.220570984896,0,1
|
|
||||||
-1.39647187563001,-0.14288383946515,0.88335815081573,-1.19847237265413,0.47286583338243,1.1325968006912,0,1
|
|
||||||
-1.31947133219321,-0.26382156214035,0.26798731783891,0.92361174533627,1.02262198276867,1.02264060475904,0,1
|
|
||||||
-0.47287187288569,-0.34078469173011,0.84553077336586,1.23147332338939,1.07759756415235,1.0116449851648,0,1
|
|
||||||
|
@@ -1,21 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.71473574123773,-0.58266869411603,-0.9436147092675,0.18694784607743,0.03294374184451,-0.3296999767936,0,1
|
|
||||||
0.54970028181251,-0.50570304794387,0.24483696207436,-0.78069587058433,0.10990838138883,-0.54960297345024,0,1
|
|
||||||
-1.00066429751548,-0.35177158782739,-1.34027427821333,1.38535260471039,0.16492657625603,-0.82448138305537,0,1
|
|
||||||
-0.38497989650428,-0.26381199978259,-1.00201005616482,-1.33042282932225,0.09895571081219,-1.37423652585729,0,1
|
|
||||||
-0.70383910742524,-0.13187211439891,0.976750852651,0.12092329246975,-0.02203670559485,0.74782192235519,0,1
|
|
||||||
0.51671778421252,0.08807097979117,-1.1155837277722,-0.72574662920448,-0.21995198628093,-0.07685307045633,0,1
|
|
||||||
-0.82459429489661,0.50588254621933,1.08282817586361,0.47272624857601,-0.26393983337725,-1.05541791592961,0,1
|
|
||||||
0.70394312580866,0.89071044153581,0.04426951337474,-0.06607102208768,-0.25294807254781,0.97867859542783,0,1
|
|
||||||
0.01124056633092,1.18757925212397,-1.28651778046863,-0.28592016473345,-0.25294622704893,0.67081533966591,0,1
|
|
||||||
1.20960204186115,1.17658396807405,-0.21171197909474,-1.06654238439935,-0.36289252443645,0.60484548090367,0,1
|
|
||||||
0.9566566534861,1.08862203121901,0.18496114363532,-0.46182357235966,-0.42885684676093,0.74778266366207,0,1
|
|
||||||
0.38485440369152,0.92369562259693,-0.3227988884261,0.45076302555907,-0.27496380580093,0.90171294875648,0,1
|
|
||||||
0.45083181124864,0.82474142159085,-0.58868890694036,1.36330851956995,0.53872160723203,1.05563719470336,0,1
|
|
||||||
-0.51680989203968,0.73678300795117,-0.36946915008953,0.59365054760451,-1.07755998223869,1.09960692240128,0,1
|
|
||||||
-0.38484937081344,0.70380470554861,1.03668532352562,1.34135301506305,0.38483393570307,1.12162752106496,0,1
|
|
||||||
-1.15452261008381,0.61585266725101,1.17239966147824,-0.75872912549891,-0.69268527852541,1.07763178870784,0,1
|
|
||||||
0.25288297500167,0.37393259516141,0.70943780287734,0.51673909157883,0.83568151801091,0.97866181714688,0,1
|
|
||||||
0.45079641050631,0.27498695053549,-0.57004303436126,-1.05554206802181,-1.09945659815165,0.83571708472576,0,1
|
|
||||||
-0.98960106664441,0.20901977608429,0.18447673022642,-0.25292122837765,-0.70363107001853,0.72580501222144,0,1
|
|
||||||
0.0658460421607,0.15404352360685,0.14072499824141,0.06598596538364,-0.94552413141757,0.74775464456448,0,1
|
|
||||||
|
@@ -1,20 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.13200430956797,-0.85754475556627,0.59724891539476,-1.3743947368448,-0.26396231418365,0.1101503083904,0,1
|
|
||||||
-0.87966097561597,-0.76958483197715,-1.29454392214794,-0.49479449444352,-0.15401131917053,0.06616883664384,0,1
|
|
||||||
-1.28648094892029,-0.73659897982739,0.55298644395636,-1.03355334603009,-0.06605038894333,-0.0768114635008,0,1
|
|
||||||
0.93452364681988,-0.68162406952723,0.88026136343597,0.93457196357375,-0.12102429261309,-0.3406937508352,0,1
|
|
||||||
0.15382056329219,-0.68162541170451,-1.26740852832527,1.3743665475712,-0.21998067466493,-0.68154151659008,0,1
|
|
||||||
1.19831667952899,-0.49470994493203,-0.76817060357109,0.30783305498368,-0.25297088889085,-1.27527746008576,0,1
|
|
||||||
-1.15460985013501,-0.19784381869843,-0.89139615400366,-0.24196117790977,-0.26392909594877,0.79180456850687,0,1
|
|
||||||
1.02254480668932,0.13205110935789,1.16634073519123,-0.91267383856385,-0.24194540651005,-0.06585761866497,0,1
|
|
||||||
-0.90148981210876,0.56085896646893,-0.03478814631396,1.36331758166783,-0.20896525861885,-0.84651120997633,0,1
|
|
||||||
0.02224256182019,0.86872171892973,-1.04474035466063,1.31937218070784,-0.21996222039293,-1.20934987938817,0,1
|
|
||||||
-1.19831047158525,0.91270302290157,1.37188878767843,-0.95658870397952,-0.27493679515133,-1.36328100395265,0,1
|
|
||||||
-0.92350755858686,0.86872239001837,-0.0870052065984,-0.47280358924031,-0.30791794967805,-1.28631502219521,0,1
|
|
||||||
-0.30786946291199,0.76976550465773,-1.16181136786875,1.36336639987203,-0.14298684342013,-1.20935071816193,0,1
|
|
||||||
-1.2424833715072,0.69280086511853,-0.95821043414834,-1.011614115479,0.23089324739331,-1.24233942240769,0,1
|
|
||||||
-1.16551554454274,0.65981820063981,0.44794059515521,-1.03363320525308,1.18747205458947,-1.38528449036545,0,1
|
|
||||||
0.86864102786048,0.64882794975469,0.86123002475644,1.25334796111873,-0.25292827465981,1.31950220150784,0,1
|
|
||||||
0.7147244995354,0.57187069219053,1.25790672229938,0.47277204779516,1.33041360003075,1.3195313932288,0,1
|
|
||||||
0.45075698535943,0.38492116832493,0.38410681053744,1.02256577871099,-0.17591531681533,1.29752958441216,0,1
|
|
||||||
-1.19848814260729,0.30796407853293,1.27945715594381,-1.03352264233477,0.40686913108483,1.16558282037248,0,1
|
|
||||||
|
@@ -1,23 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.42888704450045,-1.02247183527699,1.12657098044965,0.14295429542655,-0.38489953356029,0.52796590143232,0,1
|
|
||||||
-0.23097562249469,-0.94550451138323,-0.50126160591351,0.09899345890815,-0.20897817641981,0.51696910742784,0,1
|
|
||||||
1.0444523287962,-0.91251865923347,-0.30369462969169,-0.54977796093185,-0.07703745216509,0.38502653768192,0,1
|
|
||||||
0.15387693451268,-0.92351411105555,0.57511929491521,-1.30845658702081,-7.314816253e-05,0.17611865730304,0,1
|
|
||||||
-1.25355113272572,-0.84654947151635,-1.30866028112652,-1.35242732199425,-0.08803558833917,-0.15377710962688,0,1
|
|
||||||
0.02188302636292,-0.69262036021011,-0.54199116036542,0.72564562820863,-0.24196973281789,-0.60457536708864,0,1
|
|
||||||
0.7145652854682,-0.43973520240403,-0.93714474249022,-0.39589683224065,-0.45088231081469,-1.28627073086464,0,1
|
|
||||||
0.93458102467331,0.00010853961965,-0.17050200219611,-0.67075192130305,-0.67074672053501,0.73683267811839,0,1
|
|
||||||
0.76970310294787,0.36294418911469,-1.02712498195221,-0.19795638345472,-0.89065810580989,-0.43968570009345,0,1
|
|
||||||
-0.79150106764541,0.76976231698669,0.1407063110932,0.86858046634751,-0.97862323034877,-1.06640648910337,0,1
|
|
||||||
0.63788200004611,0.92369327378669,1.28191259792104,-0.93461289987584,-1.08857506422525,1.33052986607615,0,1
|
|
||||||
-1.27534708442622,1.03364376547565,0.11711139205233,1.11049684644865,-1.23150771708413,1.14361439933695,0,1
|
|
||||||
-0.72560351849471,1.00065791332589,0.64647816997083,-0.08800639585534,-1.31946428523517,1.06664925652223,0,1
|
|
||||||
-1.30837739762433,0.94568216416493,-1.31365461649905,1.05545566555908,-1.11055204276989,1.06664741107711,0,1
|
|
||||||
0.21992849787134,0.91269715087597,0.83706332779771,0.30781980218117,-0.62680517790461,1.0556477643392,0,1
|
|
||||||
-0.45083936172802,0.76976399470829,-0.10706306404121,-0.69281396012284,0.51673204576515,0.98966666481664,0,1
|
|
||||||
0.74768887730432,0.74778131189997,-1.26781056184608,0.68162120907264,-0.71471896402941,0.92368204207616,0,1
|
|
||||||
1.297401574057,0.63783937659117,-0.25484051595532,-0.2529339807642,1.01156177109251,0.81375872886272,0,1
|
|
||||||
0.06596331490823,0.49487434436845,-0.25435802031987,-0.78067036848901,-0.31884444644861,0.63782378221824,0,1
|
|
||||||
-0.17593293419001,0.36294100209901,-0.10659790576985,-0.27490474989061,0.43986253297155,0.49488039195904,0,1
|
|
||||||
0.30789680942599,0.46189973295341,-1.13970509634026,0.19792668958204,0.76971551796483,0.4399017906688,0,1
|
|
||||||
-0.16493362369786,0.40692549374189,-0.80743255821269,0.13195146227965,0.61578321900035,0.4838837657216,0,1
|
|
||||||
|
@@ -1,19 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.29682099501572,-0.75857948159763,0.60371249213148,1.22044918107647,-1.13253623471613,0.24207425539072,0,1
|
|
||||||
-1.19855625842684,-0.64862882213651,0.40464980204623,1.26440397712639,-1.24248689417981,0.06615340158464,0,1
|
|
||||||
-0.00013690215677,-0.61564498325267,0.58160872232678,0.28583711824384,-1.30845910179837,-0.2857325979008,0,1
|
|
||||||
0.89049670835715,-0.50569600151315,-0.96724272145344,-0.53881707074816,-1.33045134761981,-0.75852243009024,0,1
|
|
||||||
-0.11007128801789,-0.29679030218515,0.63998200722133,-1.20952100876288,-1.25344375906045,-1.39623984464129,0,1
|
|
||||||
1.17643667304963,-0.03290818260755,-0.30669681071512,-0.90165036985345,-1.18747339693821,0.71482197736959,0,1
|
|
||||||
0.37388797548804,0.15405023383789,0.08999008123459,-0.06602505461249,-1.13249731223037,-0.04388466655233,0,1
|
|
||||||
-0.03287562633212,0.41793185009901,0.77267580810909,0.60470908383231,-1.05557377621245,-0.758567728576,0,1
|
|
||||||
0.03318566871556,0.57186364575981,-0.56110921039292,1.31941127107583,-1.07756132441597,1.37448499710464,0,1
|
|
||||||
1.20959382091524,0.60484865904877,1.28339774855773,-0.15395628891392,-1.25348117159933,1.18756953035008,0,1
|
|
||||||
-0.63765399725821,0.65982323380461,-0.65261309370143,-0.06600961956095,1.38534824500739,1.09961011009024,0,1
|
|
||||||
-1.07750797313535,0.65982289826029,1.08731809284343,1.03351777813507,1.37435329650179,1.0886151615872,0,1
|
|
||||||
0.5717774197683,0.68181279527149,1.0838487665613,-0.62678873604858,-1.17651233775613,1.05562746395392,0,1
|
|
||||||
0.52780030912508,0.63783451119853,-1.33322022945045,-1.02265050301178,-0.17595205884925,0.989648042176,0,1
|
|
||||||
-0.39583643575041,0.40694512242925,-0.25832301445024,-0.1980501698483,-1.33039279515389,0.93470098143232,0,1
|
|
||||||
0.86853331731206,0.31895634268397,1.39011259679278,-0.60483826694661,1.37445463069187,0.79173980738048,0,1
|
|
||||||
1.33034044870151,0.07707737411821,0.11371163350698,-1.23149815411205,-0.21983588754941,0.54987828649216,0,1
|
|
||||||
0.18698156690951,-0.09887770521363,-0.98683980761936,0.83562095209467,0.39593256696067,0.37395021847552,0,1
|
|
||||||
|
@@ -1,18 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.83572144673533,-1.39629991669523,-0.7445634487324,0.08796663340543,0.78064654532099,1.07771114585856,0,1
|
|
||||||
0.19780673249796,-1.29734437351187,-0.5042311400444,-0.83563957643009,0.73666440249091,0.86880427211008,0,1
|
|
||||||
-1.0007163066214,-1.14341425557267,-0.45353173924688,0.89057438557695,0.56073985769219,0.56094269403136,0,1
|
|
||||||
0.76952140450564,-0.96749608611603,-0.76170061354473,-1.25349174441472,0.14291688275715,-0.13178889022976,0,1
|
|
||||||
1.20930172902915,-0.68162608279315,0.07284712524859,0.4287597047168,-0.23096958338045,-0.95641925570304,0,1
|
|
||||||
0.86854221130755,-0.25282091003667,0.88374356303405,0.52770367344128,-0.59381781580541,0.84678316920832,0,1
|
|
||||||
-0.68162758405629,0.23100296155373,1.30251978023021,1.38530429075456,-0.86865948463869,-0.16480796084225,0,1
|
|
||||||
-0.25267930153725,0.67080543162605,0.204082838186,-0.35190277367809,-1.07757004937725,-0.93446408705025,0,1
|
|
||||||
0.79184114278147,0.89070624723181,-0.65410767139838,0.98952037001728,-1.31946109756157,-1.25332027805441,0,1
|
|
||||||
-1.06640380519678,0.89070557614317,-0.52288672460608,0.5937176574669,1.29737993197059,-1.39625477636865,0,1
|
|
||||||
0.69276312546048,0.94568065421549,0.39667857599501,-0.58279904380412,1.37430548125955,-1.39625561586176,0,1
|
|
||||||
1.28643313475838,0.91269664755949,-0.41625735356386,0.69262806927109,-0.96765176927997,-1.39625997791232,0,1
|
|
||||||
0.61575402544893,0.80274951131373,-1.19948063996922,0.92347299837701,0.24185850087939,1.3964883159424,0,1
|
|
||||||
0.06599535881983,0.60484379365613,-1.13557358141925,0.02187312781058,-0.70371881458941,1.33050117662464,0,1
|
|
||||||
0.85760346483717,0.57187387986157,0.05440060326473,0.78052759374588,-1.25342597457917,1.27554891496192,0,1
|
|
||||||
-0.46186736267769,0.28597149716717,1.32875857903348,-0.58279904420101,0.74772847307779,1.16557963280384,0,1
|
|
||||||
-0.43981891318265,0.24200227279085,0.99141508703969,-1.00058963859205,-0.62666341059325,1.00068224809728,0,1
|
|
||||||
|
@@ -1,20 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.17602654974973,-1.17639390015251,-0.98485227970414,-0.74770431445249,0.70366210871043,-1.04434562482944,0,1
|
|
||||||
1.35229108955652,-1.11042488020755,-1.14118137245644,-1.12152686004482,0.71465655389955,-1.31922353177856,0,1
|
|
||||||
-0.39598608550907,-0.98948078219027,-0.91653246692257,0.78062322291709,0.53873351904515,1.09970355926784,0,1
|
|
||||||
0.96747158181638,-0.84654745825043,-0.37256490131262,-0.72572465249282,0.06593966032131,0.51696659081728,0,1
|
|
||||||
0.29681327790596,-0.47272055123731,-0.98092546368926,1.04447816392703,-0.51685200185341,-0.18675843199232,0,1
|
|
||||||
-0.58276112796925,0.01110214594797,0.13821120282327,0.75859037814528,-1.18751869558269,-1.08835175860993,0,1
|
|
||||||
0.9896071060045,0.40692230541549,1.28236223131141,-0.84667965285887,1.09945777261315,0.78082304169983,0,1
|
|
||||||
-0.50565572665087,0.79174768414957,-1.33830394718026,0.84658369048833,0.68163597202691,-0.26379487692033,0,1
|
|
||||||
-1.18733800348671,1.01164866752749,1.14919907518589,1.09946985482241,0.58267858333443,-0.72558875396865,0,1
|
|
||||||
0.84676052108033,1.09960875888877,1.19794767444063,0.64867780399362,0.54969424113411,-0.98947137685249,0,1
|
|
||||||
0.53888635904769,1.13259511435501,-0.21669144151829,-1.06656973188861,0.70362972780547,-1.01146295154689,0,1
|
|
||||||
-0.31885736492545,1.04463468744941,-0.3861423224415,-0.19800487130619,1.07746854669059,-0.94545299580161,0,1
|
|
||||||
-1.17650025931523,0.95667593826541,0.09856159702616,-0.82473639861497,-0.79173427089405,-0.8684960743424,0,1
|
|
||||||
1.05548586255869,0.71479109767405,-1.16369316069252,1.35226088886277,0.81360555398403,-1.0004520657664,0,1
|
|
||||||
1.22044481796098,0.62683838828781,0.70647982088207,0.86840346430974,0.62673706344963,-1.36327077088,0,1
|
|
||||||
1.30838158888455,0.39592131776749,1.39613553133643,-1.06665076532741,0.78071885506307,0.9456769717504,0,1
|
|
||||||
-1.05553301025273,0.25299722129645,-0.76159184824186,1.23141846246651,-0.74759861669629,0.63784458544384,0,1
|
|
||||||
-1.09951716569593,0.24200797704429,1.39501314095801,0.40683322779131,-0.41774630280445,0.52789006721536,0,1
|
|
||||||
-0.32985030159355,0.22001724117229,-0.69385018677215,1.38538985222909,-0.39575841905661,0.50589966686464,0,1
|
|
||||||
|
@@ -1,19 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.89067119120637,-0.89051970252563,0.74907217447872,-0.18693258020353,-1.25348536590077,-1.30823596539136,0,1
|
|
||||||
1.03346459383044,-0.76957392678675,0.09000611399266,-1.01158895043329,-1.19846784212733,1.36357678743551,0,1
|
|
||||||
-0.890701559191,-0.70360322912019,0.71430105131753,0.80262738079999,-1.20946430058237,1.07770393197311,0,1
|
|
||||||
-0.86871149406205,-0.57166401482515,0.26396536026727,0.69267571429888,-1.18747742347005,0.49496243367935,0,1
|
|
||||||
-0.09905738115581,-0.35176370253587,-0.24033730245913,0.34081605553664,-1.15449291349757,-0.08782184649473,0,1
|
|
||||||
-0.74773535133181,-0.15385278394131,-0.36353167082906,-0.30793657242369,-1.12150655802877,-0.81349985636097,0,1
|
|
||||||
-0.62675199508732,0.00012095475949,-0.15185009992097,-0.32993217309441,-1.04454057631229,1.26457644904703,0,1
|
|
||||||
-1.22044767315708,0.24201149960429,0.92451061856879,0.04397878773759,-1.06652846005501,0.53889894250751,0,1
|
|
||||||
1.1105704970266,0.37395155276013,-0.14535507192176,0.37380409175039,-1.08851718266365,-0.13184593232129,0,1
|
|
||||||
-1.06641504648444,0.61584293646573,0.72694448530988,1.16547830066943,-1.12154363502077,-0.63762094619648,0,1
|
|
||||||
-0.82450839553532,0.64882845307117,-1.22169266224397,-0.93461508077313,-1.16552108023549,-0.97846921523712,0,1
|
|
||||||
0.13203350289667,0.67081784676589,-0.64959761820553,-0.637739727744,-1.27546704208125,-1.16538518528,0,1
|
|
||||||
0.68174988975363,0.61584260092141,0.00949933364448,-0.61576845367295,-1.31944515838461,-1.18737508227072,0,1
|
|
||||||
0.90160138056961,0.58285674877165,-0.7651657151587,-1.35242295785725,-1.18750208532989,-1.17638114038272,0,1
|
|
||||||
0.41783237014781,0.57186347798765,0.0674240892059,1.08845779173639,-0.41784059043325,-1.22036831634944,0,1
|
|
||||||
0.9786027601254,0.51689259421933,-0.31921992838435,-0.53891706092284,0.95659541715971,-1.29730309307136,0,1
|
|
||||||
-0.87961903614975,0.30795451551981,0.9945248991711,-1.25357562915075,0.45086721224451,-1.3632942588928,0,1
|
|
||||||
-1.37451150717433,-0.06589940281107,-1.26931605707536,1.35234058098171,-0.47271869652477,1.31953911033344,0,1
|
|
||||||
|
@@ -1,18 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.38492973241341,-1.12141999648531,-0.54096316666655,-0.02199023410433,1.24242599400707,1.13268270057472,0,1
|
|
||||||
-0.39597769739771,-0.95649308454675,-0.5866999121814,-0.82465335232771,-1.30844333123069,0.81382197968896,0,1
|
|
||||||
-0.31906708051194,-0.86853349650195,-0.80290854303108,1.11047469714174,-1.38541115844093,0.38501311592704,0,1
|
|
||||||
-0.28605606322427,-0.65963014598419,-1.16135913331032,-0.28593224906753,1.00052521506563,-0.29672335201536,0,1
|
|
||||||
-0.31900836101372,-0.36276670410515,-1.22920382299941,1.15440466455039,0.50573927829507,-1.13234765932544,0,1
|
|
||||||
-1.19854233301757,0.07707536019693,-1.1991085440138,1.17640093821183,-0.06605458324477,0.68185155962624,0,1
|
|
||||||
0.56085159320835,0.47289535189229,-0.84817546623339,0.36276384511232,-0.59378107435517,-0.30774698903041,0,1
|
|
||||||
-0.54957176835837,0.82473538179309,-0.23833472452421,0.06592322131712,-0.96761620223485,-1.04441642420737,0,1
|
|
||||||
0.51698219291394,1.02264713924845,1.10645173120103,-0.70375320648702,-1.20950741818877,1.33053104060927,0,1
|
|
||||||
1.13259579488512,1.01165168742637,0.08849449047797,-0.43986890684157,-1.23153489551101,1.26456051011328,0,1
|
|
||||||
-0.08795472217601,0.90170102796525,-1.046685119139,-1.12158104827644,-0.81371678593533,1.31953223277568,0,1
|
|
||||||
-0.96758784896002,0.91269748642029,0.58065153254445,1.19833983242758,-0.03306017471741,1.3085299023232,0,1
|
|
||||||
0.05501517408252,0.81374747971821,0.7918971546383,0.63757178950149,-1.35242295748349,1.14358990422784,0,1
|
|
||||||
-0.36288111824896,0.56086769062125,0.11126623209207,-1.13270769818369,0.89062857824771,0.95669641499392,0,1
|
|
||||||
-0.43987495052793,0.42890096234733,0.92666047210087,-0.18704498761477,0.24196637830659,0.82473572593152,0,1
|
|
||||||
-0.82475351093753,0.09906156687597,-0.41069400969526,0.86865143112955,-0.92351376625405,0.53884726770944,0,1
|
|
||||||
0.27486247112199,-0.04391017688851,-0.50321602770781,0.82465704154875,-0.61565118159869,0.48391161543936,0,1
|
|
||||||
|
@@ -1,18 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.73672765184253,-0.51669615095571,-1.20754599670554,0.18694583237632,0.92355235469315,-0.01084948999424,0,1
|
|
||||||
0.67065075516675,-0.42873656291091,0.48813210043086,0.71470738670335,1.07748264040963,-0.12080216273408,0,1
|
|
||||||
0.38473612436228,-0.31878472904467,0.07239211428097,-0.70369063178753,1.24244730043651,-0.42866676007425,0,1
|
|
||||||
-0.22007009744892,-0.13186892672787,1.12207573160017,0.87959369727999,1.30841246162179,-0.87946719860225,0,1
|
|
||||||
-0.61587113116925,0.14305125880045,0.25131138495189,-0.5058250112,1.27542107298563,1.27557592733183,0,1
|
|
||||||
-0.11002481488381,0.48389818568941,-0.91650574867867,-0.36290359707136,1.20944735541251,0.57188915661567,0,1
|
|
||||||
-1.26432227387901,0.83573922222317,0.68919806720195,0.17591666082048,1.14347632219907,-0.09885538268673,0,1
|
|
||||||
0.01118906042628,1.03365114745069,-1.00198524124577,0.15391502070783,1.07750696670979,-0.63761557697025,0,1
|
|
||||||
0.74780346733315,1.14360197468397,-0.27958386946493,-1.19849535480064,0.87959973910019,-1.02244296892673,0,1
|
|
||||||
0.80273878319874,1.13260635508973,-1.15831975657313,1.03352079826434,0.74766320915715,-1.13239278948353,0,1
|
|
||||||
1.04461976413697,1.09961999962349,-0.85666069163779,-0.70373844400125,0.75866302305795,-1.16537830670336,0,1
|
|
||||||
-0.91258760513537,1.00066462421229,1.04113772086286,-0.03308215298042,1.15444962876163,-1.15438671359232,0,1
|
|
||||||
1.0995228677222,0.91270520393965,0.89031796094021,0.47270091246854,-0.74769525317373,-1.13240436624128,0,1
|
|
||||||
-0.18699381822209,0.67081851785453,0.40426524160604,0.14281772864768,1.33042903505155,-1.20934535052032,0,1
|
|
||||||
-1.04460701638138,0.40691089756397,-0.7881542762235,-0.09905838825989,0.37390710254339,-1.36329375552256,0,1
|
|
||||||
-0.91269548356089,0.03308919148781,-0.71691447761213,-0.70368593202693,1.26452259389187,1.29751616297216,0,1
|
|
||||||
0.49472134434311,-0.36277341433619,1.28144246798562,-1.30833411236101,-1.39633161573373,1.22054900692224,0,1
|
|
||||||
|
@@ -1,17 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
1.40724720995331,-0.97849036353299,0.75505828873931,0.26389906312447,0.42879527469059,1.20965572879616,0,1
|
|
||||||
1.0004203571482,-0.91252151136019,0.97324631677667,-0.65971402509058,0.54973903717635,0.90179129858816,0,1
|
|
||||||
0.58258932956676,-0.70361547648787,1.25477507918892,0.61572533511934,0.40679782794755,0.34104171055872,0,1
|
|
||||||
-0.86878380303612,-0.49471044824851,1.17279317475954,-0.38491161489665,0.14290966856707,-0.37368144840704,0,1
|
|
||||||
0.80258661326852,-0.15386503130899,-0.69834487528241,1.38533163474431,-0.24196956504573,-1.26428234375168,0,1
|
|
||||||
1.02257416730883,0.36294251139309,-0.80892518713626,-0.7147620805888,-0.57183043537405,0.65986602468608,0,1
|
|
||||||
-0.49468997085693,0.69279381868781,1.2582691977587,0.85758618865664,-0.86865847800573,-0.01087633294593,0,1
|
|
||||||
-0.65961000311038,0.96767071899885,0.84250860081914,-0.17593863576576,-1.07756702947837,-0.47266937112833,0,1
|
|
||||||
-1.40727405134334,0.96767071899885,0.53734816002113,-0.76969588668159,-1.16552678530301,-0.70356580631809,0,1
|
|
||||||
-0.36279555125246,1.05563114590445,0.76969043357342,0.80261379338242,-1.17656334064893,-0.84650231857152,0,1
|
|
||||||
-0.47278714753024,1.11060655952109,0.86417438275827,0.52770518337028,-0.96765395031549,-0.890484796928,0,1
|
|
||||||
0.64875447375101,1.01165219074285,1.21461277702396,-1.29754099307002,-0.47286985901821,-0.92347467557376,0,1
|
|
||||||
0.64873333335804,0.97867053289709,0.49319749885156,0.12080501544966,0.76963146420483,-1.0004517301632,0,1
|
|
||||||
-0.49475070772225,0.80275840323821,-0.91636209449856,0.74747329149952,1.03356441876739,-1.05541120601856,0,1
|
|
||||||
-0.6267734731673,0.52785466003693,1.39265369202422,-0.93471574731525,0.87967657927171,-1.06643014592512,0,1
|
|
||||||
0.83553840516615,0.22001002696941,1.1448313878392,0.25287609713403,-0.07689685938173,-1.19834654382336,0,1
|
|
||||||
|
@@ -1,19 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.96751587461379,-1.01147386687251,1.38749863546566,-0.08797720533248,0.69267252890371,1.17666803110144,0,1
|
|
||||||
-1.01165354131197,-0.94550451138323,-0.52636384560534,-0.63771875881473,0.70366613523459,1.03373135170304,0,1
|
|
||||||
0.19779935027204,-0.89052943331091,-1.33077331050247,1.40733780430847,0.59371379804931,0.65989840488192,0,1
|
|
||||||
-1.04469391989244,-0.76958583861011,0.18497432917079,1.28639521638911,0.39580002732035,0.16512001786112,0,1
|
|
||||||
0.21978740226563,-0.51669950639891,1.15220026668195,1.20943561015808,0.14291000411139,-0.50562284373504,0,1
|
|
||||||
-1.30848695210749,-0.26381468413715,0.2940590507678,-0.90163258582016,-0.12101674287613,-1.30826398321152,0,1
|
|
||||||
0.93461558647299,0.06607806288109,0.93249091870801,-1.30845876593409,-0.34091822958589,0.75881989028352,0,1
|
|
||||||
-0.8685797924198,0.18702249644269,0.04264030306031,-0.69271430264833,-0.49484885085437,0.1101093720832,0,1
|
|
||||||
1.34147532136452,0.43990949974253,-0.61335578860832,-0.14299757895937,-0.58281028439805,-0.49466413401088,0,1
|
|
||||||
1.07761434163459,0.60483641168109,-0.61485463915403,0.59371463830016,-0.65977827938301,-1.05541422533632,0,1
|
|
||||||
0.42891439293698,0.79175238177005,-0.89138575970763,0.43977227268353,-0.70375891226877,-1.2203406339584,0,1
|
|
||||||
-0.80258946507519,0.83573267910893,-0.46002779583834,-0.29691444388606,-0.67077238903037,-1.3522823648256,0,1
|
|
||||||
0.12102211142145,0.86871886680301,0.60025701080106,0.50569565773827,-0.50584296050173,-1.39626433986048,0,1
|
|
||||||
1.04454762149375,0.78075944653037,1.2985545723962,-0.56088028190459,-0.02205331440893,-1.37427846934272,0,1
|
|
||||||
-0.85758249668101,0.67081096810733,0.0287039428211,-0.35199320458233,0.93457297229571,-1.34130167682048,0,1
|
|
||||||
-0.29690001866754,0.37395121721581,-0.12411776694149,1.07734120744451,0.36287893522947,-1.26431254312448,0,1
|
|
||||||
0.13178469260295,-0.05492592914195,-1.29182434702279,-0.92373489245445,-1.37434356420605,-1.31932302103296,0,1
|
|
||||||
-1.20963643748857,-0.41774111043347,-0.61221665987958,0.60470924752635,0.56084337328899,1.27554807582976,0,1
|
|
||||||
|
@@ -1,20 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.60467569552899,-0.54968032538387,-0.3494036212766,0.31887783294207,1.24241391442947,0.56093648625152,0,1
|
|
||||||
0.14287896580868,-0.50570069913363,-0.30666667194755,0.23090079638783,1.28639320513795,0.45098498791936,0,1
|
|
||||||
-0.461901586455,-0.36276435529491,-0.87875831729419,-0.39582519432705,1.27539557227779,0.17610724872448,0,1
|
|
||||||
-0.71479882382076,-0.18684366925587,-1.13472295688538,-0.64872394175489,1.19842740952067,-0.16478363449088,0,1
|
|
||||||
-1.25355666911228,-0.05490546159379,-0.89439067149748,-0.72569076195842,1.02254564596227,-0.64856724013057,0,1
|
|
||||||
-1.31949800656636,0.26399418241261,-0.14987721405782,0.90157470407935,0.56074740683267,1.34155283264511,0,1
|
|
||||||
-0.17595994456828,0.52787378540781,-0.1670063867018,-0.01105601700353,0.14293080721667,0.63786924960767,0,1
|
|
||||||
1.06661201035011,0.79175456280813,1.19040625331844,-0.12100818541568,-0.15398699286781,-0.08784869010177,0,1
|
|
||||||
0.98969132738051,1.11061008273645,0.46647952761559,0.28586262267649,-0.39588609411837,-0.71456813695745,0,1
|
|
||||||
-0.31875351425278,-1.35229663457043,0.81739336037563,1.22045119683842,-0.60479665886205,-1.12138542600193,0,1
|
|
||||||
0.0550873182848,-1.18737173589779,-0.45501913081783,0.51676459313411,-0.73673788643325,-1.38526704226305,0,1
|
|
||||||
0.19796947122944,-1.19836618108691,-0.32730363293504,-0.75874875409917,-0.56081199943677,1.36351034949631,0,1
|
|
||||||
0.1759292421683,-1.28632593690387,0.66611757764861,-0.75876335110651,-0.04403566231037,1.35251053565183,0,1
|
|
||||||
-0.42881305978883,1.39648696471789,-0.58615464607,1.07738247962117,-1.24248756526845,1.34150099045376,0,1
|
|
||||||
-0.51680905498625,1.13261323374829,0.86528772891329,0.85743535969025,1.17649069629187,1.19858645642496,0,1
|
|
||||||
-0.06598949185532,0.84671420649709,-1.25163484497374,0.63755551428603,1.04460265233667,0.91268927411968,0,1
|
|
||||||
0.76960914656775,0.49489128935661,0.28772422423211,-0.39593055262981,0.24201251533827,0.30798103087872,0,1
|
|
||||||
-0.39581227627001,0.29699328921837,-0.21766654926161,-0.75867174726149,1.3305333893581,-0.13187831387136,0,1
|
|
||||||
-1.04455014068729,0.11003722223853,-0.59271238432145,-1.05552596166661,1.3305322149581,0.01110114739968,0,1
|
|
||||||
|
@@ -1,18 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
1.00050592110852,-0.50569851809555,0.75856974383677,0.58277337315327,1.06652443335171,0.82482095520255,0,1
|
|
||||||
-1.06662308302588,-0.37375913602835,-0.56411260414322,-1.11052671072001,0.92358641178627,0.40700771103999,0,1
|
|
||||||
-1.110631230743,-0.18684551474963,0.62284925974599,-1.05555297486336,0.74766388024579,-0.08781379341825,0,1
|
|
||||||
-1.07763397014525,0.00011172729069,1.06220085752515,0.69268997494784,0.62671709786883,-0.78050511228673,0,1
|
|
||||||
-1.11056076707325,0.20901809770733,0.2307167209372,0.20888288196096,0.60472434872835,1.26458685089791,0,1
|
|
||||||
1.33043792608515,0.60483993489645,-1.01148179767242,-0.54981033931009,0.62671256801795,0.43995279450367,0,1
|
|
||||||
1.08863227370244,0.93469291991277,-0.71897282274142,-0.34089708925696,0.61571376074755,-0.28576766176257,0,1
|
|
||||||
0.63792360698883,1.18758143316205,-0.85666375972219,0.43978737257728,0.60471629565443,-0.91248912184321,0,1
|
|
||||||
-1.34126980001277,1.34151289327853,0.53588213297793,-1.25346909119743,0.49476781723139,-1.06641991084801,0,1
|
|
||||||
0.67080476959234,1.29753192485101,-0.93715409356033,1.1324637587149,0.41780686867971,-1.11039970482689,0,1
|
|
||||||
0.04402609965824,1.18757992321261,0.26697051761721,-0.80271277784572,0.57174403305987,-1.05542546556417,0,1
|
|
||||||
0.98957120197886,1.06663565742317,-0.83350177416626,0.36276166214918,1.13245889288963,-1.00045475016448,0,1
|
|
||||||
-0.20893489284866,0.89071664910573,-0.98278542602216,-0.69279919623421,-0.25292022160125,-1.03345268186368,0,1
|
|
||||||
-0.97853297018623,0.72579913240813,-0.5443605558014,1.11042738812926,-1.31939566561277,-1.11039081398528,0,1
|
|
||||||
-0.41789897666297,0.56084135104749,-1.07172840758271,-0.79165055376645,0.37390307602179,-1.2423474765056,0,1
|
|
||||||
1.30837102120455,0.15403580608749,-0.98579283093806,1.18748983833339,-1.25336759009277,1.3634841762048,0,1
|
|
||||||
0.34083232992775,0.07707619971309,-1.1557796810019,-1.38536720426757,-0.65963131116285,1.14361892765184,0,1
|
|
||||||
|
@@ -1,17 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.09886259779332,-0.53868571242259,0.51326238423056,0.02200348509438,-1.30846027620349,0.8468073283712,0,1
|
|
||||||
0.51665654791429,-0.32977917423379,-0.79029976445799,-0.94560466383618,-1.27543566934013,0.39600722606335,0,1
|
|
||||||
-0.90172687384315,0.01111070232813,-0.05840779630857,0.87957222341375,-1.38539069087997,-0.16478564717569,0,1
|
|
||||||
-0.23095666589436,0.30797515084013,0.17895701058675,0.16488563986687,1.14348370418179,-0.87946568866817,0,1
|
|
||||||
1.09953209578755,0.61583572226285,-0.85468327368611,-1.16552712028672,0.86860445505027,1.19861380439807,0,1
|
|
||||||
-0.92353205371902,0.71479109767405,1.21254313803495,-1.36340230197503,0.52775903809539,0.37398293572095,0,1
|
|
||||||
-0.06587087314686,0.85772475715821,-1.17894401425867,0.94555634606593,0.48378108956675,0.07711529956095,0,1
|
|
||||||
0.4509313013581,0.97867204284653,-0.63396832477584,0.76965075882497,0.59373627888387,-0.17581633175552,0,1
|
|
||||||
0.56083867518466,1.01165739167981,0.48816077997798,0.50576947799553,0.75862561051907,-0.28576900443392,0,1
|
|
||||||
-0.5277342082176,0.86872104784109,-0.2564212617055,-0.48383578325756,1.05550012536835,-0.26378128840448,0,1
|
|
||||||
-1.01152100289795,0.83573788004589,0.2931187680001,-1.33052768328955,-0.76967911039997,-0.3077704775808,0,1
|
|
||||||
0.01105131830782,0.68181044646125,0.09009078522403,1.38523063728899,0.73669762144771,-0.35172107987712,0,1
|
|
||||||
-0.23092881741054,0.58286446629101,0.99951917305592,-0.45089254667524,0.12101573719555,-0.39572117430784,0,1
|
|
||||||
-0.30798858301945,0.32994894237933,-0.04011523361714,1.13249076815099,-0.76958817816061,-0.49465222338816,0,1
|
|
||||||
-1.18751802569209,0.17603056849133,0.07597437325539,0.92362650906875,0.24200530116099,-0.72555973153536,0,1
|
|
||||||
1.28639370710535,0.05509435576557,-1.24578697667444,0.63772446184955,0.65982055850499,-0.89049100553216,0,1
|
|
||||||
|
@@ -1,15 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-1.14370147282436,-0.53873302351635,0.07540120718007,-0.54979658286591,-0.65968935845122,0.95655632540164,0,1
|
|
||||||
0.09869918650618,-0.36281518960403,0.66310818443862,0.4507777883981,-0.9015829232461,0.81362199486212,0,1
|
|
||||||
0.56042628967929,-0.17590593040147,-0.60528134173479,-0.43991118928124,1.09952521993213,0.56074153475332,0,1
|
|
||||||
-0.59400270276356,0.07700992970989,-0.5177394066632,0.52763824050433,1.11047419882237,0.09892802906884,0,1
|
|
||||||
-1.33060150451713,0.26395811139821,-1.02499288664464,-0.40692449637122,0.96748534181118,-0.26392641094908,0,1
|
|
||||||
-0.78061886287615,-1.20940642807571,1.04166222296107,-1.11064750346243,1.11040205595646,-0.53881924903932,0,1
|
|
||||||
0.79171279695617,-0.74761489985299,-1.36285439945063,0.18682571010813,-0.52793620428545,-0.80272334617852,0,1
|
|
||||||
-0.53863335811584,-0.37378262413075,1.34627768824467,-1.19858712533506,-1.15462864032001,-0.85768869346044,0,1
|
|
||||||
-0.91251009384192,-0.41776241815315,-0.49973050705716,-1.33052617175041,-1.34155048240129,-1.044602146967,0,1
|
|
||||||
0.76974403843839,-0.86855815900947,-1.18545107091437,0.42871642286847,-1.04467361875713,1.22038643748612,0,1
|
|
||||||
-0.41775787953411,-1.34134430019347,0.24934174410401,-0.96772743182336,-0.20906826912769,0.45071521173252,0,1
|
|
||||||
-0.57184838820098,0.06604987715821,0.99143118010896,-0.53896487499775,-1.00068426042881,-0.74777746138364,0,1
|
|
||||||
-0.22017596286464,-0.83561424924435,-0.93763247762206,-0.94568251026946,0.12093302713599,0.85751404429828,0,1
|
|
||||||
0.56042176100352,-1.33037267136275,-0.27809739860404,1.0664845013811,0.12098168109311,0.31877163382531,0,1
|
|
||||||
|
@@ -1,16 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.53897863570949,-0.69265492061971,1.06173682550502,0.46171602982146,0.67076031213566,0.67067122253316,0,1
|
|
||||||
-1.13278252687878,-0.72564127608595,0.11266678761676,-1.12162366451709,0.40687634698238,0.5057469949978,0,1
|
|
||||||
-1.34167061044485,-0.73664226438931,0.55607629544643,1.3633013028557,-0.73665819238658,0.14291839199748,0,1
|
|
||||||
1.29724604771325,-0.47277272772371,-0.98870407267795,-1.38552491020287,-2.969309699e-05,-0.27496363801596,0,1
|
|
||||||
-0.01111171890945,-0.01095485992723,0.51436574337627,-1.02271106929153,-0.31893789344771,-0.70374549042684,0,1
|
|
||||||
-0.27487874583296,0.63778669613293,-0.41717168639424,-1.25355901683203,-0.19800721835778,-1.12157685331708,0,1
|
|
||||||
-0.4837718613811,1.03360484233453,1.29807580499586,0.5276832075494,0.98944973699838,1.2863715631258,0,1
|
|
||||||
0.15393515246594,1.30848090378477,-1.12104780925715,0.31882515488508,0.08783946494974,0.78060745505028,0,1
|
|
||||||
1.25341423244289,1.24251020611821,-0.2182050965901,0.85760044805373,-0.06613712584194,0.50573172913156,0,1
|
|
||||||
-0.36287859731969,1.16554489549037,-0.03625516312339,0.3298120504883,0.12082481377022,0.3957780497946,0,1
|
|
||||||
0.26398110541309,0.89066933735661,0.7937691439075,0.94552950308607,0.61561108597246,0.23084476253956,0,1
|
|
||||||
0.38495858866173,-0.15389372034835,-0.51986685485916,-0.92372935025663,-0.57184352056066,-0.51688454896892,0,1
|
|
||||||
0.90151564634621,-0.68168480239379,-0.10112385908619,-0.0881855749504,-0.35192072628738,1.14339143006468,0,1
|
|
||||||
0.56040816990462,-1.07748164153107,1.10494151976011,-0.30799613347073,0.61573943258877,-0.14307056172028,0,1
|
|
||||||
0.28563394638844,-1.02253340634899,-0.82505546194883,0.79159971494143,0.56079841228797,-1.06668499152892,0,1
|
|
||||||
|
@@ -1,20 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-1.27546955799037,0.87970123305197,0.35495970018954,-0.2419319844352,-0.15400829927421,-1.22056041553664,0,1
|
|
||||||
-0.09905536647163,0.89070020808941,0.49414379626535,-0.91256663389954,0.38479216037379,-1.1106141181824,0,1
|
|
||||||
1.03337567636999,0.93468268646637,0.19907914393616,0.85766973491452,0.80260490122755,-1.04464711151872,0,1
|
|
||||||
0.24175465057799,0.79174483267821,0.46398433404131,-1.34134211345156,0.60469666697731,-1.19857706165248,0,1
|
|
||||||
0.26381098470919,0.90168844570861,-0.52099315737986,-0.17596212645893,-0.28594818466813,1.15438587487744,0,1
|
|
||||||
-0.25287895139067,-1.39626049023763,0.88658600318479,-0.26405073051651,0.37375342308355,0.13181758018816,0,1
|
|
||||||
-0.94548000857599,-1.39627173097235,-0.10836087691014,1.11030760032767,0.7365489752653,-1.04467596765184,0,1
|
|
||||||
-0.38477487981827,-1.39628095844115,-0.23494140162938,-1.0117594046694,1.08835662491905,1.0663823320192,0,1
|
|
||||||
-1.04448286254338,-1.27533585379091,1.13110926971642,-1.38552188796157,0.74750365801729,0.57161115916544,0,1
|
|
||||||
-0.40677719093249,-1.16538435546899,-1.15985186034099,0.01090837807617,0.69252488891649,0.16479353452288,0,1
|
|
||||||
0.36287776149759,-1.24235067272979,0.47099328489663,-0.40691845529087,0.67053851509761,0.5166379266304,0,1
|
|
||||||
-0.63774543123713,-1.36329711955731,0.79329495723091,-1.3744752657024,0.65954826483712,1.02241377889792,0,1
|
|
||||||
0.69265726247167,1.29752152297709,0.02665368851591,-1.33045839503103,0.69253797575424,1.38525127401984,0,1
|
|
||||||
-0.67079839309316,1.26453550305517,0.50932172313638,0.78060493642755,0.80249299669761,-1.33054546642944,0,1
|
|
||||||
-0.12100919322115,1.31951947305197,0.24350362754074,-1.28652809424124,-1.35255264545791,0.35169205652992,0,1
|
|
||||||
0.67072323160577,-1.39626585894675,0.60143102953652,-1.08867002263807,0.35172292534786,-0.43998282438656,0,1
|
|
||||||
-0.72570233693946,-1.05544443277075,1.23480989529098,1.11039869844476,-0.06606750264573,-0.69289767742209,0,1
|
|
||||||
-0.68152658506233,-0.80253998116627,0.22223581394997,-0.23101236392965,-1.05560078837501,-1.05571118178561,0,1
|
|
||||||
0.5388960906343,-0.84651490979603,0.79780932182031,-0.53877059441668,-0.01107262722301,-1.38557440096769,0,1
|
|
||||||
|
@@ -1,17 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
1.26434727237127,1.22055419973869,0.73594703395895,-0.46175428419843,0.12094359455747,0.02188520781567,0,1
|
|
||||||
-0.56088598557177,1.17657507680493,-0.43589707587028,0.04405210120956,0.46178951483139,-0.00015099433473,0,1
|
|
||||||
-0.86863129817593,1.25353787085037,0.53278071258863,1.23143356148731,-0.47283898959613,-0.43994725684481,0,1
|
|
||||||
-1.28639203029497,1.30854516052205,-0.06356202726895,0.15386535832315,0.59368997353219,-1.03370987539457,0,1
|
|
||||||
-0.68165946130941,1.39649283674349,-0.37273089491208,0.52762649827327,0.89047573779714,1.04439427956736,0,1
|
|
||||||
0.06609216398589,-1.30831784718099,0.20692218713615,0.54954861707778,-1.15465598737407,0.4286540114048,0,1
|
|
||||||
-0.10992230659332,-1.38528751988499,-0.5264669053671,1.407178255529,0.63755249580544,0.60459986347776,0,1
|
|
||||||
-0.68165459524612,-1.31931833216787,-0.41428099392424,0.09882115798788,0.35167930444544,-1.26459943067904,0,1
|
|
||||||
-0.97852894194434,-1.23135589199635,-0.6324563572731,-1.0996416509619,0.34068167156224,0.83546928818176,0,1
|
|
||||||
-0.45083013322754,-1.30832254480147,1.32220370986055,1.1433684449357,0.36267207194112,0.41765285629952,0,1
|
|
||||||
1.30841481113084,-1.36329644846867,0.16141295599694,0.48368764008451,0.46163080294656,0.1977446587264,0,1
|
|
||||||
-1.26452427067397,1.36349440168173,-0.6760535812747,1.08835360454661,0.79148781413889,-0.22008150458112,0,1
|
|
||||||
1.29741684140548,1.24256187994349,-0.03299089509287,-0.97876415832575,-0.17607923047166,-0.6819111172096,0,1
|
|
||||||
-0.48385373516281,1.33053539307757,0.12028561909324,0.70359667602939,-0.40694563454461,-0.90180136400384,0,1
|
|
||||||
0.01111289220615,-1.38528869363475,0.73397878130897,1.00051095509499,-1.07756585507325,-1.04471589750017,0,1
|
|
||||||
-1.18735360635385,1.26454271791341,-0.12524120755146,-1.11048862274565,-0.45084926035709,-1.34158990907137,0,1
|
|
||||||
|
@@ -1,18 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
1.12119097970183,0.12104206864621,0.2528340830984,0.30794680220155,1.00053595293443,1.13238423432192,0,1
|
|
||||||
1.40710963629575,-0.15388382113555,0.59519168737439,0.93459511418363,0.60471914883843,0.92348037990913,0,1
|
|
||||||
1.03343305182727,-0.05489505971987,-0.78989313635619,-0.94563234653189,-0.82468153513725,0.45070346630145,0,1
|
|
||||||
-0.67071450879739,0.29697919570157,1.08670907127899,-1.39653814312453,-0.53885582331902,-0.11010853220607,0,1
|
|
||||||
-1.35234041493503,0.69279365091565,1.30489634869412,0.32967665837567,-0.70384363656191,-0.36300191004927,0,1
|
|
||||||
-0.70362201147906,1.06662273896685,-0.54313904240606,-0.48401093618686,0.87948011817216,0.5276699525197,0,1
|
|
||||||
0.40691442858749,1.19856295989485,0.59564728095287,1.0993371465933,0.50563744010496,0.83554528874755,0,1
|
|
||||||
-0.83557800235268,1.20955623067885,0.93299382627475,0.9783648628941,0.48364016146175,-1.0665658706662,0,1
|
|
||||||
-0.76957542867461,1.30851361935597,0.79929355908752,0.24168854906115,0.47264068305663,-0.21994107882235,0,1
|
|
||||||
-1.36335264401157,1.27552978047213,0.75714280784404,0.82443289871875,0.40666814000127,-1.297459118167,0,1
|
|
||||||
1.23147349010428,1.30851798143213,-0.9651169159311,-0.57196733752828,0.38467891377152,0.73655250036226,0,1
|
|
||||||
0.73666221966081,1.17658497470701,-0.56790392685338,1.1542456177357,0.81349146840065,-0.81381828715007,0,1
|
|
||||||
0.18689852147205,1.14361422205165,-0.96256285577482,0.07680508757502,-0.64885882873086,0.6814903478528,0,1
|
|
||||||
-0.46180243288569,1.31951393722605,1.12966834386168,0.84653939642363,-0.87972053508861,-0.01123469407488,0,1
|
|
||||||
0.23095985425927,1.38549168132333,0.09854002011305,-0.85765128081925,0.68161835662083,-0.41807010260224,0,1
|
|
||||||
0.64882527593223,-1.30830660579091,-0.87922775647712,0.39587233806588,-1.39642707928573,-0.75888297185281,0,1
|
|
||||||
-0.6376607063961,-1.26431993310995,1.06171665954536,0.28594533418236,-0.90165540312829,-0.95679959478017,0,1
|
|
||||||
|
@@ -1,20 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.27488327608582,-1.39626619383571,-1.114113166341,-0.93454881284867,-1.00052353689853,-0.61582818157825,0,1
|
|
||||||
-0.39586243752441,-1.39626954927891,1.30750227954708,-1.07749522337796,-1.38535227106045,-0.57184419324929,0,1
|
|
||||||
-0.90161228558841,-1.37428149776147,0.36137531780845,-0.087984418921,0.73670634497027,-0.60482350227201,0,1
|
|
||||||
0.07700473613062,-1.35230032490259,-0.4314903808388,-0.31891071705348,-0.49478811785981,-0.69281681185281,0,1
|
|
||||||
0.30789244724996,-1.31932638457619,-0.06147574093596,0.0329392111923,0.79164115768579,-0.78076415252481,0,1
|
|
||||||
0.46182524973058,-1.22033359662867,0.31158661289726,0.87948213103872,-0.92363976365565,-0.85771453143297,0,1
|
|
||||||
0.25289639795969,-1.13238055169811,-0.80600549978106,0.24180397422593,0.27482807822083,-0.92371257530881,0,1
|
|
||||||
0.13197260083199,-1.11039635894035,1.05862865516034,0.57165930817794,-1.05562226354429,-0.97867423159809,0,1
|
|
||||||
-0.25291904716546,-1.13239128911635,1.07876968902658,0.82454312360195,0.72558892271106,-1.02264261709313,0,1
|
|
||||||
-0.28588829010434,-1.13239330238227,-1.03162991939353,-1.00064550721277,-0.01116674687486,-1.06661368758016,0,1
|
|
||||||
-0.17593209438978,-1.13239430901523,-0.30516200698144,-0.79173561404412,-0.13211185156094,-1.12163054024704,0,1
|
|
||||||
-0.78066936124931,-1.08841233395475,-0.37200406394639,-1.06662023162876,-0.01116322366462,-1.17656468253952,0,1
|
|
||||||
0.64869525065213,-1.22035104493331,-0.80282994016256,0.01088639934981,0.53864057320194,-1.25353787839744,0,1
|
|
||||||
-1.26448451043329,-1.29731081907987,-0.36589964075333,-0.76982020766972,-1.24256222444029,-1.39648663732224,0,1
|
|
||||||
-0.69274400072702,-1.39625545707283,-0.58305514320824,-1.28655913234174,0.68162909402627,1.07739456029696,0,1
|
|
||||||
1.31932855586311,1.18757052862701,-0.35026183336443,-0.07714482751493,0.30784178144259,0.68159050631936,0,1
|
|
||||||
-0.57179218457081,0.80275873943789,-0.6776528374567,-0.01105568266756,0.18695086723843,0.13185398567936,0,1
|
|
||||||
-1.31941647004153,0.48390724604141,-1.09744093010181,-0.17595675640837,0.87964856141827,-0.05511198046464,0,1
|
|
||||||
-1.34144092750329,0.68182017790189,1.3417884161644,-0.57172238993669,1.31945321251843,-0.13208165316608,0,1
|
|
||||||
|
@@ -1,18 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.03302611685882,-0.92348256923411,0.77571016072367,-1.37435950379267,1.33043356424707,-0.16502405218049,0,1
|
|
||||||
0.57178731826695,-0.95646624034579,0.97522472466597,-1.3633610324122,-1.24242347698429,-0.23099693088513,0,1
|
|
||||||
0.63773687664135,-0.98945242803987,-0.89197803388716,0.41785401216252,1.35242463566339,-0.30796089932801,0,1
|
|
||||||
0.68172673633799,-1.03344144953107,0.49153395297466,0.57173547619836,0.30789060256515,-0.43989306717441,0,1
|
|
||||||
0.98959804462086,-0.98946886971155,-0.65222254200074,0.52763924947452,0.89059217102083,-0.61583841503745,0,1
|
|
||||||
0.19794363235076,-0.97844221292307,0.50813128986362,0.87947374192639,-1.16553517391613,-0.73676590359553,0,1
|
|
||||||
-0.29690437958911,-0.92347904667411,-0.91614832855364,-0.49496444663039,-0.39591662894589,-0.86873011526145,0,1
|
|
||||||
0.45084003193598,-0.83552415624979,0.73183797940416,-0.35205779791101,0.7695680456525,-1.02264312042497,0,1
|
|
||||||
-0.25289438584323,-0.79154704658195,-0.36410108600121,-1.39650995859708,-0.29699984106494,-1.18759872073729,0,1
|
|
||||||
-1.28646501071108,-0.75856337547027,1.01495284195998,-0.64885815809531,-0.9237206302515,-1.36351085038849,0,1
|
|
||||||
-1.07756367325444,-0.70358779408147,0.44692123243657,-0.73682261160443,-1.07765208977407,1.20934887518975,0,1
|
|
||||||
-0.18693895517699,-0.63761625755411,0.7481018449427,1.02240622718724,-0.95670614686974,0.96745430381055,0,1
|
|
||||||
-0.72571575893762,-0.75855968448275,0.79337680609293,0.15379824849668,-0.39595370655486,0.87948448168959,0,1
|
|
||||||
-1.31943626806273,-0.81352905830163,0.17810029535474,-0.02217696314877,0.54962914637058,0.83553421429504,0,1
|
|
||||||
1.3743576569549,-1.09939352514323,-0.39002091023295,-0.05516013094399,-0.65982626254845,0.76954506176512,0,1
|
|
||||||
-0.41793588638201,1.24254493561069,0.07501944585899,-0.79180876246532,-0.50583624962813,0.6815978883328,0,1
|
|
||||||
0.03287931604487,0.83573620297965,0.60332763999405,0.42875970518779,-1.05553854411773,0.51665101159168,0,1
|
|
||||||
|
@@ -1,19 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.61572667985415,-0.79154352271123,-0.07751395792773,0.86864169995516,0.85763718895875,-0.07705892771073,0,1
|
|
||||||
0.14299623837191,-0.64860818550547,-1.05328487807782,-0.70371176870404,0.67072088333059,-0.21999392936449,0,1
|
|
||||||
-0.48374602609145,-0.63761810239251,0.27183028972575,0.0219617113318,-0.25291049148925,-0.36296533691905,0,1
|
|
||||||
0.90162486750214,-0.65961873682195,1.23954745940021,0.28582638223612,1.06650530730499,-0.46190829717505,0,1
|
|
||||||
0.2199232958618,-0.65958669299475,-1.16093023638995,0.30776695433726,-0.94564106918909,-0.56084622426369,0,1
|
|
||||||
-0.27489065838079,-0.69258110152467,0.90777628590327,-1.25358888204288,-0.12104660726013,-0.67082087447041,0,1
|
|
||||||
0.23091119913983,-0.67059757985555,0.77308748487401,1.16534290629634,1.0224485058893,-0.85771956401409,0,1
|
|
||||||
2.01376254e-06,-0.65960716119827,0.00443869723365,-0.61586358180093,-0.22004040244478,-1.03366843511809,0,1
|
|
||||||
0.2309204267187,-0.64861355486995,0.84148154410224,0.40672853738755,-1.09964903323135,-1.27554690038529,0,1
|
|
||||||
0.14297895804158,-0.64861389041427,0.66554994187003,-1.37448130632445,-1.35253637218303,-1.38549353332481,0,1
|
|
||||||
0.39584113166334,-0.64861422595859,0.62385111798796,-0.53885045598461,1.39624336831489,1.38527711085823,0,1
|
|
||||||
-0.68169771229186,-0.67060311633683,1.35031797212685,-0.47288395257853,-1.23158673762815,-1.36350548173825,0,1
|
|
||||||
1.20943057873406,-0.70358695522067,-0.31920630444826,0.53865365869571,-0.81377013852158,-1.33052734705921,0,1
|
|
||||||
0.85760598284288,-0.69258663800595,-0.91391320471416,-0.30802482099453,0.0328570034637,-1.39646767922432,0,1
|
|
||||||
-1.22045891442687,-0.86850044538643,1.35191988990148,-1.19861699163135,1.35227364145666,1.26433401835008,0,1
|
|
||||||
0.28586463392005,-1.05540567805715,-0.12261850964302,0.57163112226301,1.13242047286787,1.04444779832064,0,1
|
|
||||||
-0.62672246747641,-1.29732692455187,-0.41464549452043,0.35176369421819,0.42878235626243,0.87950159263488,0,1
|
|
||||||
-0.89074148848121,1.19857789227245,1.05676464428675,-0.70374414938116,-0.74768921338621,0.72555553638912,0,1
|
|
||||||
|
@@ -1,20 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.15390461709831,1.28653429264621,-0.89291658292043,-1.11050456360708,0.64871186097667,0.62667314102272,0,1
|
|
||||||
0.80264063602183,1.22056258834669,-1.36296246007152,0.36285209057788,0.35184607028995,0.53871489517568,0,1
|
|
||||||
1.02252366769158,1.14359023128813,1.32107100159085,1.26441152814588,-0.65974506035965,0.40673927499776,0,1
|
|
||||||
-1.07754421266683,1.25353367654637,0.47091070779481,-0.56080696666882,0.84658788292099,0.2748094559616,0,1
|
|
||||||
-1.23147030380284,1.20958827516141,-0.74267894090725,0.7586101748659,-0.71475956502525,0.12089192095744,0,1
|
|
||||||
-0.01101407514365,1.36351235330285,-0.0851224401192,-1.34152531689473,0.46171821207555,-0.05510023535616,0,1
|
|
||||||
-0.18695556429822,-1.37427763965715,0.58149842146371,-1.19859199283456,1.33028793874178,-0.27498192493824,0,1
|
|
||||||
1.15449509491968,-1.23134649675539,0.0663134269246,0.73656709472001,0.21977884562434,-0.47288042841088,0,1
|
|
||||||
-4.110315521e-05,-1.18736955485971,-1.38207607677297,-0.81376258787326,-0.54992358589182,-0.6598296167424,0,1
|
|
||||||
-0.23089811287809,-1.06642428243731,-0.39468627000163,-0.9347123899443,-0.96773867568894,-0.83574459853312,0,1
|
|
||||||
-0.10995250431746,-1.03343893360403,-1.07635794205029,-1.17656552217854,-1.20963240764671,-1.06663767830784,0,1
|
|
||||||
0.21994292643327,-1.06642277248787,0.55104408807146,-1.22057937324542,-1.16565294915071,-1.25355549390848,0,1
|
|
||||||
-0.75867225037313,-1.08841233395475,0.85872546565129,-1.31950505375742,-0.93475550788094,-1.36351068321792,0,1
|
|
||||||
-1.06655580680192,-1.09940409478931,0.90398002293479,1.05542932463618,-0.34101805426942,1.40724922354944,0,1
|
|
||||||
-1.1325043586432,-1.08840243539731,1.34440875974898,0.63761742233602,1.13237181917442,1.31931211632896,0,1
|
|
||||||
0.38480558130946,-1.26431473282835,-1.24315440507723,1.27531638313472,0.01091508918787,1.19834755012352,0,1
|
|
||||||
0.90159852706566,1.28652875616493,-0.25381710297528,-0.20902548910082,-0.60480789892093,0.9674719180416,0,1
|
|
||||||
-0.71468574650873,1.03365383246061,0.11221556541605,1.03349529546748,-1.24247598899965,0.70356949808128,0,1
|
|
||||||
-0.46186132156921,0.70380906828013,1.01402774767211,-0.3079211377818,0.12096892886531,0.49469349383424,0,1
|
|
||||||
|
@@ -1,19 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.82461358804487,1.29753343545581,-1.07285352864738,0.93458874194172,-1.27539490071293,0.87955309850879,0,1
|
|
||||||
-1.02257248973305,1.25355011821805,-1.16537091253658,-0.3408702478234,1.23149345612035,0.68164368988159,0,1
|
|
||||||
1.1104864435303,1.34150450532589,-0.85522992098726,-1.09953444489988,0.24193517217539,0.49473543733247,0,1
|
|
||||||
1.20943544321798,1.26453080609005,0.77455681839872,-0.65977089812995,1.15444778327043,0.1978407898624,0,1
|
|
||||||
-1.22048944823804,1.35252545786093,1.12246662820411,0.14288114619647,-0.58282102180605,-0.02208888252928,0,1
|
|
||||||
-0.73669560823037,-1.39626502008595,0.51563566959848,-0.97865896561409,0.41773623700995,-0.27500205761024,0,1
|
|
||||||
-0.26388597891071,-1.30831113629459,-1.25140582050234,0.34072898340609,-1.27555243866621,-0.51687699961088,0,1
|
|
||||||
0.26390963484928,-1.36329091198739,0.77711106094596,-1.13261542344703,0.28575809967874,-0.73676405782784,0,1
|
|
||||||
-1.37435832847873,-1.19836500668179,0.09246572805229,1.16538686366465,-0.57190375214078,-0.96769253682176,0,1
|
|
||||||
0.48379300242943,-1.19836651663123,0.33078941308093,-0.83573151335678,-1.01170991270399,-1.13261206678272,0,1
|
|
||||||
0.94558939591679,-1.13239565119251,-0.61483918292279,-0.64881839534334,-1.25360381309183,-1.27554421632512,0,1
|
|
||||||
0.83564209239038,-1.11040575418131,-0.78126619626445,-0.32995834535166,-1.20962334796287,-1.38549621796608,0,1
|
|
||||||
-1.07756367305473,-1.17637578075923,0.20763526431855,-0.82472146574078,-0.87976667248638,-1.3415214570752,0,1
|
|
||||||
0.50575588734719,-1.25333740039955,1.27849610826328,1.29732087587331,-0.25304118568958,-1.37451636889856,0,1
|
|
||||||
-0.2199583618688,1.36351017226477,1.36451449237576,0.7365686040781,1.00044887872002,1.26433804510976,0,1
|
|
||||||
0.75858786066691,1.17656467493101,-1.09829082708986,1.23132702569217,0.08790170685187,1.0334199673088,0,1
|
|
||||||
0.65962141204231,0.82474024784109,0.44907992293077,1.03345150662653,-0.08801612680701,0.70358426217728,0,1
|
|
||||||
0.71467567795719,0.65983162306797,-0.94054143302478,0.91248677292284,-0.36285041289981,0.36271317609472,0,1
|
|
||||||
|
@@ -1,21 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.89061297543417,1.37449522286829,-0.30172029452723,0.08797737183996,0.92362684490499,1.17642660670719,0,1
|
|
||||||
1.08847876328967,1.31951695712493,1.12451212657759,0.72569361212924,0.59377587316227,1.00050759841023,0,1
|
|
||||||
0.70364935766791,1.31951142064365,0.2226220462037,-0.1539618271898,-0.16492775086333,0.80255909952767,0,1
|
|
||||||
-0.67071148870906,-1.36330500419347,-0.32692020119999,1.04452144975613,1.19842472516611,0.5716744077312,0,1
|
|
||||||
0.26390845956868,-1.36327178596115,0.90925437164152,1.29733815732734,-0.51685535729661,0.37377774978048,0,1
|
|
||||||
1.17649874860291,-1.22034450181907,1.25716189529733,-1.03365199498241,0.35176201612291,0.21982162784256,0,1
|
|
||||||
1.00059567854082,-1.17637376749331,-1.22083759692072,0.45069709093376,0.65958886554882,0.17586884523008,0,1
|
|
||||||
0.31888219597824,-1.16538435546899,0.1647485783298,0.80253326241281,-0.75882123224318,0.38475273491712,0,1
|
|
||||||
-0.64873719329025,-1.08842256805651,0.05167719373545,-0.6158496560435,1.26428133758209,0.72561576803072,0,1
|
|
||||||
-0.5827559255373,-1.08842290360083,0.29451104630984,-0.40694446019582,0.82447735728641,1.14344075635712,0,1
|
|
||||||
-0.98956902064386,-1.07742711623443,-0.60536852192078,0.16484218752514,0.67054522660352,1.29737724970752,0,1
|
|
||||||
-0.74768703183106,-1.02245069598483,-0.46050498977105,-0.40694647324926,0.62656341928448,1.05548620152832,0,1
|
|
||||||
-0.93461961171969,-1.00045979234067,-1.27185817207061,-1.1546138769971,0.76949909150721,0.40676964341248,0,1
|
|
||||||
0.59372990419199,-1.05543436709651,0.74913893502199,1.05543049924865,1.09935308337665,-0.13204256032512,0,1
|
|
||||||
0.03295716365312,-1.11040441200403,-1.17681623744318,0.73656558394369,-0.72583319905278,-0.72579729431296,0,1
|
|
||||||
-0.35190277703679,-1.11039870775059,1.30267164294812,-0.35200276937471,0.72556694519042,-1.20955959420928,0,1
|
|
||||||
0.18689701101571,1.39650122535149,-0.01597075195349,-1.25358636559873,0.07690575171587,1.24232734435072,0,1
|
|
||||||
1.19842472379398,1.02264227451117,-0.43274781008145,-0.14305848201732,-0.12100080455677,0.8905015744512,0,1
|
|
||||||
0.94552496983559,0.67081986068717,-0.36692196483921,-0.79171699082501,-0.50577719375869,0.54963149508096,0,1
|
|
||||||
-0.15399856976377,0.42889592983789,-0.17190056239563,-0.96760009444099,1.17647895281155,0.27478194100736,0,1
|
|
||||||
|
@@ -1,21 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.05505040813049,0.96767860494573,-0.14890983139104,-1.38540428081668,0.95658769965315,0.90154836372224,0,1
|
|
||||||
-0.85767812605946,0.79174634262765,1.38741917939966,1.22042435206397,-0.24191336129021,0.65962325855232,0,1
|
|
||||||
-0.69274785870842,0.91268389753069,1.01336579821797,0.06594553178109,1.05551556037891,0.4947097684352,0,1
|
|
||||||
-0.64876017934076,0.98968594960621,1.19231651218687,0.87954370318846,-0.90166026788861,0.37378127321856,0,1
|
|
||||||
0.26385561204994,1.26455462908141,-0.21732961129803,0.62665720287744,-0.08806780089853,0.24181639043072,0,1
|
|
||||||
-0.84664257565695,1.34151020892397,-1.09760225899873,-1.04462379136,0.80253208806658,0.0219353719296,0,1
|
|
||||||
0.19794933844224,-1.20936213622547,0.68611875421436,1.35228320415489,-0.68185827039486,-0.2749983658752,0,1
|
|
||||||
0.51678271323391,-0.98946081730323,1.30645902285405,-0.9456992857523,1.06635615826689,-0.8687146801152,0,1
|
|
||||||
0.32986909182463,-0.94547984887571,0.91234377955449,-1.00068157808382,0.78052256066049,1.38529170712831,0,1
|
|
||||||
-0.45083080413698,-0.86851269275411,0.95112755729082,-1.18756667851006,0.67056904898049,0.84653436487423,0,1
|
|
||||||
-0.36287742404097,-0.82453239541523,-0.04370392762666,-1.38548061721598,0.76952459224065,0.62662901942015,0,1
|
|
||||||
-0.78066617367041,-0.83552449179411,0.92610340008674,0.68159621020929,1.05539778342913,0.57164588832255,0,1
|
|
||||||
-1.08855107233024,-0.93447818948371,-1.24919014201328,0.12084293076226,-1.05566219275263,0.61561226064127,0,1
|
|
||||||
-0.09900553959935,-1.16536455835411,1.26294186850876,-0.12110767623679,0.16480041209858,0.65961721924864,0,1
|
|
||||||
-0.03305178713596,-1.39629219852051,0.03181265059962,0.86849859062272,-0.53887880906749,0.6266072079872,0,1
|
|
||||||
-0.76972977832186,1.17658061328621,-0.2617973348077,0.51672667530493,-0.86868146215421,0.52766961583104,0,1
|
|
||||||
-0.78065610863097,0.96768581914861,0.88036169148635,-1.33048423132932,1.29740526637827,0.31874294502656,0,1
|
|
||||||
0.53873855155719,0.73679726924013,-1.16423695527691,-0.96757644064004,0.48381347026947,0.09886612021504,0,1
|
|
||||||
0.96755110628871,0.69282116620525,1.24020547359392,4.02653436e-06,1.27546603654659,-0.04412021968896,0,1
|
|
||||||
-1.34142935232761,0.70377467564269,-0.23385624411645,-0.25291854397956,1.39641265114115,-0.11009209175552,0,1
|
|
||||||
|
@@ -1,22 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.03306453676537,-1.38528298938131,-1.40012429837753,1.22049749981436,0.65974640305411,-1.34145267207169,0,1
|
|
||||||
0.90158258966023,-1.31931380166419,-0.45604726845912,-0.2639158423706,0.49482200770051,1.29737657679103,0,1
|
|
||||||
-1.35242178417657,-1.31931766042387,-0.6275486192071,1.40734921389052,-0.35188499224829,1.05544845100288,0,1
|
|
||||||
-1.33042500842235,-1.33032066199315,0.55337704880711,-0.42886825574146,1.09947320851203,0.85754826985472,0,1
|
|
||||||
-1.0445367180518,-1.31929165639443,0.15674463476247,-1.00060121574913,-0.65978398363133,0.6596521152512,0,1
|
|
||||||
-0.87964453372158,-1.40726047190803,0.63886614306013,1.01150187578111,0.41774160571395,0.4617136827264,0,1
|
|
||||||
-0.2968879364275,-1.33030069776147,0.88517943377148,-0.15404873246208,1.14337985389314,0.1538727407104,0,1
|
|
||||||
-0.45080144454143,-1.22035540700947,-0.6054370314443,-0.13206034541568,-0.03314020224254,-0.0440675379712,0,1
|
|
||||||
3.925893377e-05,-1.14339328405267,-1.09855453112771,-1.18758647489792,-0.94573703398143,-0.209023306048,0,1
|
|
||||||
0.34085867167232,-0.98946316611347,-0.12531327701826,-0.92370083221247,1.23129363992577,-0.24199674304256,0,1
|
|
||||||
-0.46181937748481,-0.98946467606291,-0.98888901161984,-0.83575097474815,0.84646389888513,-0.12104123646208,0,1
|
|
||||||
-0.39584649839618,-0.95647999831827,0.17695740836866,-0.71480452834814,0.74750919447809,0.01094612851968,0,1
|
|
||||||
-0.71472080886786,-0.98946434051859,-1.00145479355341,1.3852635197261,0.79149133733889,-0.04407374468608,0,1
|
|
||||||
-1.24248504819969,-1.01145406975763,0.11071634670083,-1.2865183632435,1.11035189063169,-0.41791575123456,0,1
|
|
||||||
-0.92360620869888,-1.01144937213715,-0.08137743399229,1.15435852834817,-1.08867119684351,-0.90171328268544,0,1
|
|
||||||
-0.90160205188095,-1.05542211972883,1.21719575682605,0.74754056820737,0.1977978405197,-1.33049916240896,0,1
|
|
||||||
-0.15399873720573,-1.17635329928979,0.0489409254869,0.87950041791232,-0.60484581576189,1.2863148557824,0,1
|
|
||||||
0.69262706174726,1.34150601527533,-0.064230834027,1.39629621650174,0.18689382466307,1.16537679693312,0,1
|
|
||||||
0.68161147751943,1.19858040885485,-0.19497832176407,-0.30791593750276,-0.30788338786813,0.87948313775616,0,1
|
|
||||||
1.15445113736711,0.98968578248941,-0.45295216914779,-0.813690614569,-1.38535663251197,0.46169673654528,0,1
|
|
||||||
0.18692922330631,0.72576742478061,-0.7239270864889,-0.03303836419589,-0.83559897315581,0.07686280144896,0,1
|
|
||||||
|
@@ -1,22 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.85758031448071,1.27553783419117,0.60370238972993,0.96758029874428,0.70372535821571,-1.26448719368193,0,1
|
|
||||||
1.04449695600135,1.28653244715245,-0.49579747050457,0.8686242517222,0.57178597615107,1.31936613824255,0,1
|
|
||||||
0.46181803592711,1.31951494385901,-0.43495900958672,-0.24189859849476,0.03302678849283,1.07747844553471,0,1
|
|
||||||
0.18694499422469,-1.37429676502803,0.51514880176796,0.18687604067326,1.17647677053955,0.80257201798655,0,1
|
|
||||||
-0.57175443566331,1.34153269039341,0.79668191342107,-1.02259060921858,-0.45087895537405,0.604674520576,0,1
|
|
||||||
-0.703705226135,1.33052784333037,-0.01376621890978,-0.54988164284929,0.63764477015555,0.461711501696,0,1
|
|
||||||
0.90156044394242,1.38549117735149,0.66594717467237,1.19837439261184,-1.18758462978045,0.42874511116544,0,1
|
|
||||||
-0.47281566844672,-1.28632811794195,0.84593005416162,1.28633817526528,0.05486267104514,0.39577888838912,0,1
|
|
||||||
-0.08796931857921,-1.05543436709651,0.64591848946239,0.68157825889538,-1.01171226151167,0.1978401202304,0,1
|
|
||||||
-0.35188599859969,-0.90150240366355,-0.67724744299452,1.28630210440962,1.17630983768577,-0.19801510370048,0,1
|
|
||||||
-0.23093518947586,-0.80254635716371,0.27041360300718,1.13240788922882,0.92341863993089,-0.61582331476224,0,1
|
|
||||||
5.3697715e-06,-0.71458542694163,1.19745239218882,1.14340233457154,0.83549847762945,-1.03363538391553,0,1
|
|
||||||
-0.76966535341825,-0.73657515618067,-1.14064460440002,0.78056483940098,1.00042572522241,-1.12160067619585,0,1
|
|
||||||
1.3743829916544,-0.81353878908691,0.11218633283779,1.18736468035841,-1.19863947240191,-1.18758412517376,0,1
|
|
||||||
-0.53877227388159,-0.80253897518867,-0.78615370722193,-1.00065003741951,-0.25301652381438,-1.34153101967361,0,1
|
|
||||||
-1.3414048571699,-0.82451662483219,1.05787174564004,-0.96768901536768,1.29733463373314,1.08841282957823,0,1
|
|
||||||
1.35237363283716,-0.92350186303251,0.23089016126183,-0.53887008553729,0.59369064462339,0.79152237639167,0,1
|
|
||||||
1.25346305203205,-0.96746387320595,-1.08879695421719,-0.03307695302146,0.51676543176963,0.42870098685695,0,1
|
|
||||||
1.14349729304071,-1.17635447303955,0.11971831973029,1.14342330636796,0.38486665061891,0.21981323849215,0,1
|
|
||||||
-0.35187224293881,1.35248888484077,0.81647037407797,0.14293500102908,-0.72567649938173,0.07686179456,0,1
|
|
||||||
0.65972777916934,1.06662106255597,-0.67322027604853,1.02251645433339,0.08801159791363,-0.09911039747328,0,1
|
|
||||||
|
@@ -1,21 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.47279218083334,-1.26432882503443,-1.14221761090998,-0.47280677773827,-1.23143138061053,-1.18752909740289,0,1
|
|
||||||
-0.92355319403002,-1.33030086487827,0.37851493741124,0.57171400225021,0.97859068222979,1.33035773117439,0,1
|
|
||||||
-0.92354983883258,-1.38528013725459,-0.06046628995406,-0.02205834765571,0.38485608096259,1.18742642051583,0,1
|
|
||||||
0.10996676529157,-1.27533904080659,-0.69390455936325,-0.13199088865794,-0.72569159949821,1.00047605780735,0,1
|
|
||||||
-0.20892281224956,-1.27534206070547,-0.08661902025055,-0.81369682166274,0.51675989528323,0.84655835503615,0,1
|
|
||||||
-0.60473189861374,-1.20934099693331,0.84590891279032,0.91253710491392,0.96752224929795,0.63767295618303,0,1
|
|
||||||
-1.0775343136051,-1.25332951510803,0.44429472003152,1.28636820591873,-0.68178394795773,0.43973469142271,0,1
|
|
||||||
-0.30786694613504,-1.19835980574483,-0.34302757777295,0.58269468973057,0.8135107626957,0.21984729695488,0,1
|
|
||||||
-1.19849015488,-1.23134918110995,-1.22075114492816,1.23139396673026,-0.12111589642238,-0.01112379618304,0,1
|
|
||||||
-0.41783723426049,-1.11040457977619,0.40211608585294,0.67065360625666,-0.65987810415102,-0.30798405040896,0,1
|
|
||||||
0.03300548254463,-1.06642512129811,1.10797139304123,0.52768052116994,-0.98973209526527,-0.59385170493184,0,1
|
|
||||||
0.75866587627007,-1.04443438542611,0.9682587773052,-0.41793705972734,-1.00072737932031,-0.75877828132864,0,1
|
|
||||||
0.81366309957375,-0.97846217781011,1.15423300839955,1.2643246228685,-0.80281528689918,-0.85773768327168,0,1
|
|
||||||
-1.28644185839616,-1.08841082400531,1.19200220165439,-1.35248922832894,-0.26405190475774,-0.81376527118592,0,1
|
|
||||||
0.37381449194753,-1.17636705660691,0.11068881631769,-0.53887058845439,0.48366398516738,-0.80273727216128,0,1
|
|
||||||
-0.78071516322046,-1.38526805831443,-0.34484279477202,0.35177090774528,-1.22057132079357,-0.85772610747392,0,1
|
|
||||||
0.80257134668548,1.13262346785005,-0.68157334741788,1.28638280168703,0.17585877833731,-1.00067738297856,0,1
|
|
||||||
-0.2529359934233,1.02264059678957,0.26508417612508,-0.78072808275202,-0.93464377123581,-1.24254343372032,0,1
|
|
||||||
-0.81366846825209,0.90170807505133,0.55259494936656,-0.57181684565252,0.95656035273219,1.33029649474048,0,1
|
|
||||||
-0.48378545254905,0.93470365798637,-0.54192337886643,0.53873200861436,0.54977762483715,1.19837724461824,0,1
|
|
||||||
|
@@ -1,21 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.15392692966919,1.22056762151149,-1.2503022144851,1.37442392720636,1.22049548771587,-1.30847235641857,0,1
|
|
||||||
0.09895101285639,1.24255768629485,-0.61136700922213,0.92362969619708,1.26447712722947,-1.39643362217473,0,1
|
|
||||||
0.46178666223111,1.22056527270125,-0.10365359378882,0.23090381705468,0.78069570200835,1.25339376287487,0,1
|
|
||||||
1.17646049648646,1.19857202024685,-1.08954520247266,-1.11052838713347,3.35603459e-06,1.04445014706944,0,1
|
|
||||||
1.39635325869318,1.26453583925485,-0.72253354226136,-0.09901342472963,-1.16551806033661,0.82455805564928,0,1
|
|
||||||
-0.84666019267835,1.26452963168493,-0.3887565604401,0.64866605830142,0.23086455900419,0.615663429312,0,1
|
|
||||||
-0.78068026763004,1.28655358578925,-1.27052644048855,-0.37396213104897,1.40730190305027,0.41776643583744,0,1
|
|
||||||
-0.51677885409534,-1.40726114299667,1.19033892436036,-1.00067738374656,-0.19802718451197,0.26380779730944,0,1
|
|
||||||
-0.61574815410431,-1.34129698844435,1.09988853138545,-0.90172133694975,1.20934702836482,0.15387190180864,0,1
|
|
||||||
-0.04398180689408,-1.19836383227667,0.15928970429535,-0.35196686522879,0.08784349005058,0.0219444315648,0,1
|
|
||||||
-0.05500192054529,-1.14339043192595,0.63940627890859,-0.0440995831475,-0.6488732570931,-0.09907700875264,0,1
|
|
||||||
-0.12095869346561,-1.12140238040851,1.14468810086578,0.75858400286978,-1.15464961203711,-0.22001489919232,0,1
|
|
||||||
0.56077592935678,-1.07742241861395,-0.04277032680239,0.24182326885634,-1.39654368020223,-0.38493711352576,0,1
|
|
||||||
0.85764390120446,-1.01145037877011,-0.430379427164,0.32978872884226,-1.30858258217215,-0.46190443742208,0,1
|
|
||||||
0.25289438636031,-1.07741939871507,-0.69327837984171,-0.30797566281214,-1.07768396583423,-0.48389903204608,0,1
|
|
||||||
-1.02255420225536,-1.15438336716563,0.70988302549629,-0.72580467778046,-0.56091048135166,-0.43992695551488,0,1
|
|
||||||
0.82461677609985,-1.25333589045011,1.23274694396038,-0.90169180972543,0.1868050730445,-0.39591411099648,0,1
|
|
||||||
-0.50585118156542,1.33052230684909,1.26239398557343,-0.37394032100864,1.30831263787778,-0.39592803604736,0,1
|
|
||||||
-0.53880951981308,1.06664941474029,-0.19647186420559,-0.04408817489665,-0.04408045713917,-0.43992427170816,0,1
|
|
||||||
1.17641066791174,0.76975057359085,-0.23772162229045,1.12148290349571,-0.95662846732797,-0.47288512645376,0,1
|
|
||||||
|
@@ -1,21 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.6486897162189,0.87971213758701,-0.96275514380545,-0.12095080948736,1.2533449417421,0.68172287937536,0,1
|
|
||||||
0.73664108325634,0.92369277047021,-1.35788878284786,-0.42881037409792,1.39628095006978,0.64873585280768,0,1
|
|
||||||
0.93457632846081,0.98966346813677,0.2428412099353,-1.28643078563584,-1.23155301468158,0.61574849069056,0,1
|
|
||||||
-1.14353302854911,0.94568451297517,-0.63293450231051,0.09891813041921,-0.90170154020349,0.53877898572544,0,1
|
|
||||||
-0.73669711719424,0.94568719732973,1.18901621336825,1.39630930331394,-0.35194757171197,0.43981706716672,0,1
|
|
||||||
0.63767698227457,0.90171126206701,-1.26732661021456,1.07747123082754,0.86855412381443,0.26388295934464,0,1
|
|
||||||
0.94555617603329,0.89072335999213,0.66967445344413,0.7366244715725,-0.49484297883901,0.03301470917376,0,1
|
|
||||||
0.52775400391171,0.90172787151085,-0.61222774372704,0.5167127511552,1.28640578803203,-0.18694650444544,0,1
|
|
||||||
0.62670719804165,0.93468671299821,1.26389191517799,0.12088571310334,0.45081939730435,-0.47279369141504,0,1
|
|
||||||
1.19845878099206,0.86872725606637,-0.85355021173083,-1.26448887195907,-0.50575605446141,-0.74768804003072,0,1
|
|
||||||
-0.17600138523129,0.80276645695725,-1.28746870256704,0.9895450293606,0.87967255274755,-0.95660783220224,0,1
|
|
||||||
0.93452716920327,0.71480972103917,0.07388429115547,0.27492085576699,-1.02248004681469,-1.13253824899584,0,1
|
|
||||||
0.56069506125319,0.68182571438317,-0.95925304657834,1.15452193712123,-0.80257486916605,-1.30841934142976,0,1
|
|
||||||
0.59366262623751,0.71481022435565,0.68965849335333,0.49481563155707,-0.93451559339517,1.33036679062528,0,1
|
|
||||||
1.19838613556743,0.91271829082349,0.99230361355964,1.11046010264059,0.81370235840259,1.04450383366912,0,1
|
|
||||||
0.83559444172295,1.22057248690413,-0.49541540176675,-0.50592349221892,-1.07751065724669,0.8136235044992,0,1
|
|
||||||
0.74762579452164,-1.06643267038995,-0.76035301943738,1.29726333023998,-0.78069603703549,0.59370020798464,0,1
|
|
||||||
-1.0775245843712,-0.82451058503443,0.99520741467812,0.32970266099713,-0.87966080849149,0.36282893918719,0,1
|
|
||||||
-0.52780383347715,-0.75854777265939,-0.60647588523279,-1.35256338364412,-0.42890935976701,0.02196053804799,0,1
|
|
||||||
0.89066615923965,-0.78053834075923,-0.74312895822761,0.31873975751939,0.93448271024642,-0.45085630548993,0,1
|
|
||||||
|
@@ -1,17 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
1.38536602860545,0.92370468229357,-1.3991211436935,0.89059015782913,-1.08859318295549,1.16551738991104,0,1
|
|
||||||
-1.08855660845568,1.03365819388141,-1.27138970684275,-0.38488007258622,-0.58281867299581,1.01158089661952,0,1
|
|
||||||
-0.09897601195775,1.06664756924653,0.46957228765284,-1.0445826873011,-0.06605055671293,0.9016250361984,0,1
|
|
||||||
-0.01099713061119,1.18755945566445,-0.25785896693603,-1.02262500183038,1.09946951752451,0.736687890112,0,1
|
|
||||||
-0.62675468023037,1.17657524457709,-0.50462004953584,1.25338503862784,0.60476897617155,0.54979373035007,0,1
|
|
||||||
-0.39584247465468,1.18758294376685,0.17960113367102,-1.37444439682561,-0.18687973144061,0.36285880200191,0,1
|
|
||||||
-0.18692117311738,1.01167601504493,-1.37494674540031,1.36334291225084,-1.17639556919037,0.13194441519359,0,1
|
|
||||||
1.16544843402759,0.90168945299693,-0.2126491095186,0.31884344015099,0.02207646767363,-0.09896477196032,0,1
|
|
||||||
1.40734686416391,0.84671806591213,0.75205617624591,-0.98958647009029,0.73676439432451,-0.39584046114816,0,1
|
|
||||||
-0.83565635330041,0.86870695629037,1.17627518165653,-1.25348620509957,0.78074704046595,-0.64872863883008,0,1
|
|
||||||
0.69266464161287,0.94566924701933,-1.02466137161167,-1.06654825731077,0.42890449403907,-0.8576319893376,0,1
|
|
||||||
-1.13250587062777,1.03366574428397,0.48853240953424,-0.81369229186309,-0.62666928261117,-1.04453822864384,0,1
|
|
||||||
-1.06654356152827,1.38549906329837,-1.18505386687803,-0.43991085110788,0.70373223740163,-1.1655133639296,0,1
|
|
||||||
-0.05499739368187,-1.13239246286611,-0.41341774181181,0.09890118462462,-1.18743850034429,-1.30843292999169,0,1
|
|
||||||
1.22043827666433,-0.95648251424531,1.10234243955225,0.2198546770125,-1.29744687344125,1.28639706378495,0,1
|
|
||||||
0.8356395744768,-0.90147153358611,0.3970536863095,0.1098921067981,-0.58281313720829,1.03352817981439,0,1
|
|
||||||
|
@@ -1,18 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.31884830637057,0.90170639667437,-0.14978955139446,0.54973249337601,-0.08806813644029,-1.36338468677888,0,1
|
|
||||||
1.07748951871746,0.94569239826669,0.25141633893009,-0.81369396984319,0.84655885810435,1.23145335951104,0,1
|
|
||||||
0.83561591850242,0.89072419885293,-1.29443128168313,-0.89065860893184,-0.69275993723901,1.00058678706688,0,1
|
|
||||||
0.97852642515203,0.94570816884973,1.28152869747778,-1.2534991241216,1.30839081966083,0.63772999824128,0,1
|
|
||||||
1.29740979487747,0.96766635757805,1.38712078774861,-0.67075812941824,0.24190262502659,0.36287994077696,0,1
|
|
||||||
-0.57175057819899,1.05564221952237,-0.47753516029207,-0.61578053484289,-0.72567297616637,0.04400529477632,0,1
|
|
||||||
-0.89061599670522,1.08863864131821,0.5359596101759,0.40680923593725,0.94562479549187,-0.24192594541056,0,1
|
|
||||||
-0.09896997298426,0.98964686000365,0.99642614433291,1.07747861332989,-0.73662514299389,-0.58274233839104,0,1
|
|
||||||
-0.05498363607801,0.94566991810797,-0.1237342718862,-0.71471879622405,9.412040963e-05,-0.89061297610496,0,1
|
|
||||||
-0.58278260323833,1.01164212572397,-1.15831101135179,0.20891090062843,0.20900267183107,-1.0775321338496,0,1
|
|
||||||
-1.14353286232569,1.02263422210285,1.19088947683003,0.37386935306235,0.07706060542979,-1.187481786688,0,1
|
|
||||||
-1.07753230184953,1.16560764293357,0.5372847518429,1.02253574733819,-1.07747206984445,-1.27547425745152,0,1
|
|
||||||
1.27542056794631,1.37450411479277,-0.08162604209005,-0.84668821041924,4.496344579e-05,-1.3634190815872,0,1
|
|
||||||
0.75862980321541,-1.20936129670931,0.01036943468152,1.27535648048638,0.62676222862851,1.33040370087935,0,1
|
|
||||||
0.95656974637571,-1.03345151586067,-0.67083555277299,0.6376382264064,1.00054870251779,1.07749438449919,0,1
|
|
||||||
0.08799498787071,-0.73655250693907,0.04916666639975,0.19785706314755,-1.18752758751485,0.78064620983295,0,1
|
|
||||||
-1.09950709767681,-0.78053397868307,-0.96280810466752,-0.13204189125629,0.12088604842499,0.43976925232127,0,1
|
|
||||||
|
@@ -1,19 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.82468908491006,0.80274833690861,-0.69779981662045,-1.06655899508479,-0.25299387400189,-0.90158812537856,0,1
|
|
||||||
0.74766253853953,0.89071060930797,-0.10855873790858,0.12093436713985,0.46172844616195,-1.1214976651776,0,1
|
|
||||||
1.14345837126145,1.01166141821165,-0.54190200766287,-0.80269583338751,1.40730509071619,-1.3303711529472,0,1
|
|
||||||
-0.43982964918271,1.07764084003053,0.11672258953253,-0.83568000780287,-0.05505191722237,1.22048340828416,0,1
|
|
||||||
-0.48379887470589,1.11059364172013,0.49425815498328,1.19842371742209,-1.23149177790205,0.98957120245248,0,1
|
|
||||||
-0.60476780254973,1.15458501202157,0.77079067136052,-0.96762895272449,0.65970748057091,0.76969555198208,0,1
|
|
||||||
-1.28644169242619,1.15459742716141,0.60183944488044,-0.71473607795969,-0.24189171872765,0.5607713977216,0,1
|
|
||||||
-0.84663855145466,0.96769135562989,-1.29443130443158,1.02253641819901,-0.84657748016381,0.29691092012288,0,1
|
|
||||||
-0.87963413441529,0.94570850504941,-0.87970817390456,-1.37439641388804,0.25297994926851,0.10998303824384,0,1
|
|
||||||
0.82462432415239,0.86870678851821,1.32718354810021,0.03300984312059,0.96766435269891,-0.04399925681408,0,1
|
|
||||||
-0.08801176662521,0.89069718884589,-1.31617888972189,0.67071685641467,1.13259160015363,-0.21992279497216,0,1
|
|
||||||
-0.64877192453625,0.97865543471341,-1.36142300699982,0.26392339071995,0.90169482944771,-0.4508177202176,0,1
|
|
||||||
0.2308606983399,1.04466404823277,1.16625410792599,0.80261362478843,0.05507154728195,-0.8136476654592,0,1
|
|
||||||
0.05494621966341,1.18759267455213,1.03851416265341,-0.24196704910339,-1.19841532899069,-1.19850726907136,0,1
|
|
||||||
-0.83565887006971,-1.40726181342995,1.12695995142659,0.60466898354174,-0.01099008260605,1.24242347626752,0,1
|
|
||||||
-0.37383999471613,-1.08841266884371,-1.13731926127395,-0.60486024374785,0.95661521363715,0.98955224413951,0,1
|
|
||||||
0.01099897465089,-0.93449177837331,-0.6522090951351,0.80258359332097,-1.14350400479485,0.84659107059711,0,1
|
|
||||||
0.23090717293055,-0.79152053858067,-1.3353850342121,-0.2419490978662,-0.87966936488189,0.63770684604927,0,1
|
|
||||||
|
@@ -1,20 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.06595643812865,0.85772022730989,-0.91895819919347,1.34138422062081,-0.52787211653117,-0.71466829652736,0,1
|
|
||||||
0.52772464576257,0.92369293824237,-0.45146880527681,1.03352515951361,0.07690055079171,-0.79164031806976,0,1
|
|
||||||
-1.00059198764799,0.98966699135213,0.36198793684103,-0.79170222745598,0.91252552925187,-0.93454210154752,0,1
|
|
||||||
-0.58275777254399,1.12161526534381,-0.78568830948773,-1.25348838681342,-0.15401098362621,-1.22043156654336,0,1
|
|
||||||
-0.90164214920446,1.13261994463469,0.46261774688297,-1.18752876210687,-1.19851012005629,1.36340498809088,0,1
|
|
||||||
1.00055373418244,1.17657256022253,0.2730633717925,0.91253794367232,0.74770984985859,1.16551889976575,0,1
|
|
||||||
-0.94563217894649,0.86872071295213,-1.02601653794662,-1.12155051535619,-0.20890184005117,0.98958059704832,0,1
|
|
||||||
0.65966620734982,0.85773616632045,0.40173317584519,1.17644522926076,1.39643144149507,0.80264885641216,0,1
|
|
||||||
0.94554543778055,0.83575230910701,-0.10357715210131,0.1429581536358,-0.35179120792829,0.5937741942912,0,1
|
|
||||||
1.34137985782279,0.80277149012205,0.11812242440866,1.31944180344315,0.34094423491843,0.40685017114368,0,1
|
|
||||||
0.68167774645511,0.83575734227181,-1.17896244700509,-0.69266665698564,0.54985110862083,0.25291636221696,0,1
|
|
||||||
-0.04405730556409,0.89073174925549,-0.48315187188624,0.93459310411515,0.36293362861059,0.05500628247552,0,1
|
|
||||||
-0.65976519504377,0.97868882071789,0.09594025615605,-1.24244897916677,-0.25283549698557,-0.12095232007168,0,1
|
|
||||||
0.68168848296967,1.24256188059885,0.84592300506826,1.18740108694011,1.26448971063043,-0.42884594196736,0,1
|
|
||||||
-0.80268593655034,1.37449589395693,0.24915847822553,-0.63780801232387,-0.68169049779453,-0.71470118136064,0,1
|
|
||||||
-0.71471393231615,-1.22037100916499,-1.07501575473928,-0.42890466180864,-0.62675954375421,-0.9786027618688,0,1
|
|
||||||
0.8796336290739,-0.96745129094931,0.02401870808666,-0.1980312108518,-0.43988870448637,-1.1984815993472,0,1
|
|
||||||
0.85763601524734,-0.95646120783635,-0.12380664066511,1.26435851268612,0.65962141317891,1.3853438830208,0,1
|
|
||||||
-0.81347720763649,-0.98944571780883,0.46650066052213,-1.13255368156924,-0.46188179013885,1.07749203639295,0,1
|
|
||||||
|
@@ -1,19 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-1.28644873703935,1.11060991496429,1.29911194408553,-0.62678890452479,-0.30797985725181,-0.71467064544768,0,1
|
|
||||||
-0.97860460680703,1.25354978201837,0.38065228871748,-1.12155588316927,-1.36347662640381,-1.022508232832,0,1
|
|
||||||
-0.39585069410046,1.35251472044269,0.63957770266171,-1.34145703414528,0.41781072744195,-1.24242699947009,0,1
|
|
||||||
-0.59377822208509,1.36352074191085,-1.38486980850633,-0.40687869363713,-0.46180193016317,1.39638379440383,0,1
|
|
||||||
-0.19794917137148,1.30851882094829,-0.85103521291199,-0.40688020359938,-1.17644388738301,1.20949147951103,0,1
|
|
||||||
-0.54976286225914,1.36350681747693,0.40425215562758,1.01152804830205,0.85769439914755,1.05554156444159,0,1
|
|
||||||
0.68172035981574,1.34152749011181,1.34982504509959,1.31940942321661,-0.34077428193021,0.83566658507775,0,1
|
|
||||||
0.73669090846726,1.34149225861357,-0.49721929684441,-0.52780584637188,1.09963225535491,0.50579816504575,0,1
|
|
||||||
-0.13196203315705,1.19856161902829,-0.51883590931929,0.25292391314427,-1.2973002404915,0.31887649073151,0,1
|
|
||||||
-0.52779125199865,1.20955740639469,-1.13621604722109,0.29690421007355,-0.98943329378814,0.01100954400767,0,1
|
|
||||||
-0.06600911958521,1.33050217550061,1.30748133261436,0.52775249452283,-1.13237081200126,-0.24191940234241,0,1
|
|
||||||
-1.05550599963129,-1.07743466467091,0.49050978175564,-0.78075324770053,0.81375386347011,-0.42882648062209,0,1
|
|
||||||
0.52776641784326,-0.92346814082835,0.80262816880152,-0.80274348109315,-0.85755531658749,-0.62672162870273,0,1
|
|
||||||
-0.39586361424124,-0.64860600446739,-0.08718063358395,-0.46191551217665,-0.70367301351933,-0.84664240857857,0,1
|
|
||||||
0.09898691578624,-0.38474233982739,-0.37021897105404,-0.04410461711614,-0.72571139665917,-1.12153843430401,0,1
|
|
||||||
0.73670852559103,-0.37371316645651,-0.93677256327454,1.14342666115076,-0.43988081990397,1.37437544220927,0,1
|
|
||||||
-1.14346709471234,-0.37371887070995,-1.22522549039401,1.29736852363524,0.47271517314307,1.05549224051711,0,1
|
|
||||||
0.0770183273907,-0.48366953017107,0.79527266728153,-0.01107111680763,-0.45091636958461,0.83559931019519,0,1
|
|
||||||
|
@@ -1,20 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
1.02252786212353,1.22056745308397,-0.08286926552894,0.91253257523969,-0.70376528760573,-0.87957792875264,0,1
|
|
||||||
0.79164484755971,1.24256741642477,-1.00734464488724,0.61566409971201,0.67066484806403,-0.94556104158208,0,1
|
|
||||||
-0.31892447543036,1.11059582275821,-1.15918435749779,-0.91263944697857,-0.01103538100477,-1.03354076231424,0,1
|
|
||||||
0.83561407141381,1.09961429602541,0.79592556553237,-0.95664725855746,0.01103907309059,-1.28641048575232,0,1
|
|
||||||
-0.7367050047257,1.07763681415405,-1.24417604542973,-0.17597655458563,-0.87952373873405,1.25344342343423,0,1
|
|
||||||
0.15394236376326,1.06665327415533,1.215626224973,1.18743296416764,0.47287673831171,0.94560952648704,0,1
|
|
||||||
-0.23093267568377,0.94567243469037,1.1688629533293,-0.90160087718149,1.39647019646979,0.62674108814336,0,1
|
|
||||||
-0.64874055103481,0.96766484828397,-1.01147649675635,-0.15397138969349,-1.04444276449022,0.35185881915904,0,1
|
|
||||||
1.30839803172615,0.94567394463981,-1.00304524334518,0.36286853232123,-1.02245051867646,0.1209610418048,0,1
|
|
||||||
0.91255539092999,1.03363017724141,-0.34801737259967,-0.98957103514373,1.23154932435459,-0.05499722519296,0,1
|
|
||||||
0.40677920286215,1.27555712798957,0.17735464930909,0.20888657328635,0.20900183297283,-0.24190329675008,0,1
|
|
||||||
-0.15400024844538,-1.27532041809683,-0.89850909885916,-0.81372333012995,1.28647507779331,-0.41785099350784,0,1
|
|
||||||
0.74766152976644,-0.97846519705363,-0.3465789608645,0.59365407037951,1.00059114889731,-0.72568623077633,0,1
|
|
||||||
-0.89061381439999,-0.64862496272147,1.17517869509237,0.64863854385665,1.28641216272643,-1.04456557377537,0,1
|
|
||||||
-0.06598395195648,-0.41769346379539,0.5961026301449,1.11043980236291,-0.82469931997949,-1.38539522019841,0,1
|
|
||||||
-1.18746198802689,-0.26376636575507,-0.34497435908972,1.17643080098819,0.47271852859651,1.07748247310591,0,1
|
|
||||||
-0.06592825121025,-0.14282277105427,1.07829820248797,-0.91267685934076,-0.29698692271869,0.83559780022783,0,1
|
|
||||||
0.49484532880896,-0.17580711325459,-0.21019794054579,0.41779713837827,-0.71480285129725,0.70366076694271,0,1
|
|
||||||
-0.54975480581119,-0.39570792886035,-0.768164161033,-0.79168796566527,-0.85773600747517,0.80261832342527,0,1
|
|
||||||
|
@@ -1,19 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.83564779458047,1.14359358607597,0.82097035625,1.18743984179458,-0.38493476668669,0.09901174796287,0,1
|
|
||||||
-0.16493899138303,1.26454422720749,0.2926383060606,0.19788541673474,0.40675001196547,-0.08795623155201,0,1
|
|
||||||
-0.18695053053439,-1.37427864629011,-1.03201102053241,-0.19798725504511,-1.19854166208765,-0.29683223589377,0,1
|
|
||||||
0.43981907898114,-1.29730477928211,-0.76707710842358,-0.27495441130495,0.39578912143107,-0.52774410615553,0,1
|
|
||||||
0.25291015489539,-1.16538905243411,0.48428283743999,-1.13256945427456,-0.21993873223933,-0.78065124211969,0,1
|
|
||||||
1.24246491483141,-1.16537797947155,-0.86865462759241,1.16541068671998,-0.56074170286845,-1.06650295891457,0,1
|
|
||||||
-0.28587134718458,-1.31929534672659,0.73154504830625,-0.97863413478403,-1.12144297262845,-1.36339190211841,0,1
|
|
||||||
-1.40736867776249,1.34149074866413,1.32970150027482,1.19843026165243,0.79176144987651,1.02257198546431,0,1
|
|
||||||
0.67072054639623,1.26453114228973,1.10896171339322,-0.10999260234501,-1.33028860921854,0.72569612851967,0,1
|
|
||||||
0.31887867104775,1.25353720041709,1.32613028017232,0.08800354378747,-1.22033425879038,0.43982193092863,0,1
|
|
||||||
-0.47281835487737,1.26453097451757,1.0410450637899,-0.54976252527621,1.31954062067203,0.13196169508607,0,1
|
|
||||||
-1.02258759066105,1.29755256148205,0.68956676477052,0.72566173564155,0.28596009716227,-0.252899251968,0,1
|
|
||||||
0.60470740238598,1.38550057324781,-0.08220222287675,-1.275495396457,1.24249830367235,-0.69272839710208,0,1
|
|
||||||
-1.36341237078269,-1.20936230334227,1.30037930793053,1.38533398317823,1.14350283087875,-1.16549222456064,0,1
|
|
||||||
-0.93459897672191,-0.97847777996563,-0.91464136190784,-0.74771773548287,1.15445214534403,1.27540513479424,0,1
|
|
||||||
0.4068219868544,-0.68157491228435,-0.54855614646247,-0.90168274915326,-0.81372366459133,0.94556943024896,0,1
|
|
||||||
-1.27541973047297,-0.56062997540627,0.66803856056414,1.24237146794755,0.56070294697475,0.63767698337023,0,1
|
|
||||||
-1.37436654979328,-0.63759562157843,-0.52392415222632,0.8575460894157,-0.64880648441341,0.32982614268927,0,1
|
|
||||||
|
@@ -1,21 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-1.0445451052672,-1.33031344844563,1.06277359420439,-1.36344005250559,-0.85777442666238,-1.14348085056768,0,1
|
|
||||||
-0.16496231096832,-1.27533803482899,1.03567608615619,0.26380880379649,-0.23105447633406,-1.31941227408896,0,1
|
|
||||||
-0.06599603121408,-1.17638165278483,-1.15974436031286,-1.1765950496179,0.47267356650242,1.28646366969344,0,1
|
|
||||||
0.62668757068032,-1.16538334883603,-0.43131066578196,-0.85772476674814,1.3632789918285,1.12152635587584,0,1
|
|
||||||
1.16546705793025,-1.20935827746579,0.33939706831413,-0.59384583435775,-0.22001775261181,0.89061549225472,0,1
|
|
||||||
-1.33043943685117,-1.18735999184659,-0.64997618021277,-0.63784240543487,1.30834686317315,0.59377520227328,0,1
|
|
||||||
0.76962223565572,-1.26431540391699,0.31229010977822,1.20939803034623,0.29683995428867,0.26390510449408,0,1
|
|
||||||
-1.01155321480188,-1.30832623513363,-1.37690197321681,-0.79172890216705,-0.56077659873021,-0.05501349774592,0,1
|
|
||||||
1.33037970910214,1.34150819631341,1.34936410446979,-0.94562294916611,1.27545597024259,-0.38483997537024,0,1
|
|
||||||
1.20945373066503,1.26455278424301,1.2392380133031,-1.2204443167642,0.09902718235907,-0.71470805982208,0,1
|
|
||||||
0.65968281800199,1.09963224764653,0.33733944027792,-0.81359347335429,1.25351925680899,-1.01158693668352,0,1
|
|
||||||
-4.345246201e-05,1.06665109311725,-0.9878501722974,-1.36327110615557,-0.89052439090685,-1.27547610264064,0,1
|
|
||||||
-1.29748378268153,1.19859164958957,0.05120475533568,-1.35229041827077,-1.01147066994941,1.26439693192448,0,1
|
|
||||||
1.37430615248391,1.30853912137965,0.14165580032684,1.16553634793467,1.00063158244355,1.04450215606528,0,1
|
|
||||||
-0.43985649349113,-1.17636252610323,0.81381246018723,-0.73669812424197,-0.16490258448637,0.80262033528064,0,1
|
|
||||||
0.96752778493189,-0.61562333998867,-1.40123811201982,0.94552027269629,0.82464429105923,0.5717389994496,0,1
|
|
||||||
-1.04457077609727,-0.27478496947987,-1.31129331976071,-1.02265956338688,-1.19847186865917,0.34081622520319,0,1
|
|
||||||
-0.38483343297025,-0.09882770976531,0.35730348379305,-1.39648949036285,-0.36289738983421,0.12093168339199,0,1
|
|
||||||
0.61574932851198,-0.01086879280915,-0.05744279056262,-0.79175390090748,0.87954319964675,-0.15401752614657,0,1
|
|
||||||
0.30790872228863,-0.12081928449811,-0.50030455506247,-0.36295896127486,-0.03309624669693,-0.41789125714945,0,1
|
|
||||||
|
@@ -1,18 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.3298395648128,-1.13240454311699,-0.52385567327037,-0.78067993206014,0.12082850334722,-0.75862342813184,0,1
|
|
||||||
0.12093587844095,-1.20937136369427,0.38310775338303,0.63768285398786,0.60461378746114,-0.54972225865984,0,1
|
|
||||||
0.46178498571775,-1.27534021586707,-0.17340649383892,0.62665518941443,1.27531688718594,-0.51674496289024,0,1
|
|
||||||
-0.13202410732032,-1.37429223583507,-1.13661175279549,0.7915364679245,-0.57186046692605,-0.50576058401792,0,1
|
|
||||||
0.36282860116481,1.26454204616941,1.23980505824497,-1.23160787691518,1.00048444622083,-0.59369433581824,0,1
|
|
||||||
-0.31894074958333,1.23156693143789,0.11378817396764,0.95641891975937,0.35181570345475,-0.70366563126272,0,1
|
|
||||||
0.56073515743239,1.22054681776365,-0.27942986684764,-0.22005986401283,0.41782800868099,-0.89056499257856,0,1
|
|
||||||
-0.65978566259193,0.91270184915181,0.13733533323838,-1.23152113864709,0.15399185857795,-1.02252903711488,0,1
|
|
||||||
-0.46187340116473,0.84673786237165,0.58217222984431,-1.14348085233157,-1.12143743547901,-1.1544846930304,0,1
|
|
||||||
-1.04459057246713,0.80276293374189,0.88480556039685,1.36344827301627,-0.23083133936893,-1.2424113983616,0,1
|
|
||||||
0.93453505490438,0.80276326928621,1.08583288900812,-0.47271047666692,-0.01092985270269,-1.2973891607936,0,1
|
|
||||||
1.01149449380357,0.85773784404205,0.70831838084677,-1.09943193699331,-0.21983806858237,1.3854212242304,0,1
|
|
||||||
0.6266556933351,1.00067100020973,-0.01217878339407,0.69276513763324,-0.59367302860797,1.14353252486656,0,1
|
|
||||||
1.12144867577351,1.24256003510509,0.60164520178744,0.69272554359291,1.38544353941251,0.73667832658688,0,1
|
|
||||||
1.03350586494471,-1.20935911567123,-0.3646499726792,1.19844468946427,0.07701748826883,0.2748955224448,0,1
|
|
||||||
-0.3738411691878,-0.80254920863507,0.33116492203726,0.98950040250877,0.87964872860675,-0.16493429394177,0,1
|
|
||||||
-0.14297258333696,-0.62659312332563,0.34064299204152,1.34129865704449,1.40736079059715,-0.60476192927745,0,1
|
|
||||||
|
@@ -1,19 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.25286955684609,0.96766719578349,-0.9390965327642,0.92360939624449,-0.69280540382461,0.45085865624064,0,1
|
|
||||||
-0.11002649076991,1.11060437848301,0.07540254976691,0.21991423713281,-0.46191031076093,0.39588072601344,0,1
|
|
||||||
0.57172708888065,1.16558163759341,0.99338440509585,-1.26446320269566,-0.03310480239101,0.25293985228032,0,1
|
|
||||||
-0.31892766159616,1.15459004453101,0.86672274254916,-0.51685418346494,0.49470288982275,0.0770126231168,0,1
|
|
||||||
-0.17599500948736,1.24255483351277,-0.10903870332922,0.49470037238019,1.38530881837059,-0.17588377606912,0,1
|
|
||||||
0.41778673487361,1.31952752611565,-0.74646519408442,1.25332480849154,-0.14301167304701,-0.52773940877824,0,1
|
|
||||||
1.39635443195395,1.28655358578925,0.99003105368253,1.11040373166593,-0.98959217336061,-0.95656639191552,0,1
|
|
||||||
0.50579699002885,1.27553145884909,-0.4563461898747,-0.53887209781506,1.31942452354563,-1.37435782634496,0,1
|
|
||||||
0.07699433377287,1.28654637224173,-1.31056559242677,-7.29806874e-05,0.83568168578307,1.1215124294144,0,1
|
|
||||||
0.89058948599303,1.19859198513389,-0.69825629911462,0.75869271856635,-0.23084174122237,0.82467046175232,0,1
|
|
||||||
-1.07753884430841,1.13258521710829,-1.3533615853563,-0.26388279045637,0.89070692736515,0.39584918291968,0,1
|
|
||||||
0.52775702416903,1.12159295295725,0.94862114931292,0.34091655188475,0.91269749545987,0.14296134076416,0,1
|
|
||||||
-1.39644519920121,1.19855524368621,1.12301191815183,-0.98952171066629,0.49488307697411,-0.05498917206528,0,1
|
|
||||||
0.90151598280199,-1.40725527031571,0.68758872574989,0.72564747445499,-0.54969877106173,-0.39582720707072,0,1
|
|
||||||
-0.13201135856634,-0.82452266397459,-0.58538683626439,-1.24257682068997,0.63776741176323,-0.82466425595136,0,1
|
|
||||||
0.5057599117645,-0.74756137987859,0.48647261173298,-0.41794612052481,0.89060492239875,-1.33041662000896,0,1
|
|
||||||
1.20948124365823,-0.45070666215187,-0.08263572447642,1.39624957568259,1.00055071578371,0.95654810545919,0,1
|
|
||||||
-0.26387524211715,-0.40673240461075,-1.00356733667098,-0.60486309593849,-1.27548281348605,0.35183751391487,0,1
|
|
||||||
|
@@ -1,19 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
0.94555282209792,1.16557861769453,1.23823538165289,0.17590961251074,-0.86872676098045,0.46185561801984,0,1
|
|
||||||
0.51673791749121,1.14359073394925,0.60380063263783,-1.28648598314494,-0.01110567792125,0.45085160982784,0,1
|
|
||||||
1.34137482516481,1.20956680032493,-0.21061367462889,0.07691497853442,1.17640848772099,0.37391700082432,0,1
|
|
||||||
0.48376145917186,1.09962503278829,-0.5664833272421,-0.70379112555518,0.10992331310083,0.28593996444928,0,1
|
|
||||||
0.49476311836674,1.16561015886061,1.12571868443265,-0.41793320132352,-0.53879441922813,0.17596950781952,0,1
|
|
||||||
-0.79173259514619,1.05563114655981,0.62197536989828,-1.14360802384641,-0.98955106920445,0.0220601929728,0,1
|
|
||||||
1.09949468059654,0.94569541882093,0.90950607940702,0.65962778763261,1.30846984019203,-0.19790588600832,0,1
|
|
||||||
0.61571929525767,0.83575717449965,-0.96215957918146,-0.98961885004037,0.19801007213571,-0.47275762110208,0,1
|
|
||||||
0.58272639733255,0.67079402442989,0.20011041106096,-0.64872662486277,1.33051107573506,-0.76963800791296,0,1
|
|
||||||
-0.70375237038585,0.67079637324013,-0.51836927619919,-0.39580992596485,-1.15438251875582,-0.96755379186176,0,1
|
|
||||||
-0.23100213244409,0.70378054766829,1.39597891345478,0.26394134192635,-1.29731886256382,-1.17645932342016,0,1
|
|
||||||
0.94546541006343,0.80273323872493,0.71226229525064,-0.94558922912517,0.92369496054275,1.33043373101568,0,1
|
|
||||||
-0.82473237361145,1.34152111476973,1.19729902007032,-1.37447728111109,-0.50571578937597,0.87964889530368,0,1
|
|
||||||
0.49471999944966,-1.33029650280211,0.29389726414892,-1.06668163720451,0.05502725571331,0.40683708555008,0,1
|
|
||||||
-0.27492169813759,-0.79155644116755,-0.80612092404672,-0.22007831923199,-0.15397457697021,-0.04402207260672,0,1
|
|
||||||
0.47280073545726,-0.60460658175763,0.18429772195433,0.49460843424005,-0.19796192149501,-0.57176231974913,0,1
|
|
||||||
1.03362515051517,-0.46167560662803,0.35235759657626,0.61560236104198,0.73661910318083,-1.09955306629121,0,1
|
|
||||||
-0.64864693232642,-0.46167543885587,0.97722597583984,1.08844940387844,-0.36293866209021,1.27540312262399,0,1
|
|
||||||
|
@@ -1,17 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-0.59373795620609,1.23154646323437,-0.35188057227648,1.40730139987714,0.70357671262978,-1.0664509483648,0,1
|
|
||||||
-1.09951414475777,1.23154696655085,-1.40652590074314,-0.35196787196925,-1.3195238434483,-0.9675042971136,0,1
|
|
||||||
1.22043223669759,1.27553045156077,0.06901814461408,-0.31899141544701,-0.15404218955261,-1.03348757772032,0,1
|
|
||||||
-0.6377605347968,1.31951846641901,-0.87510356805965,0.34070230704387,-1.08858529767421,-1.2203800603904,0,1
|
|
||||||
-0.28594281948158,1.29754148786413,-1.05454091847452,1.40716281890306,-1.38541535273725,1.31946915047936,0,1
|
|
||||||
0.47271869298694,1.39647555686637,0.59995507486735,1.19826399791613,0.24193936703491,0.7257367295104,0,1
|
|
||||||
0.07692671962631,1.39649938051309,-1.40345559389539,0.71451696657147,0.46188564856579,0.02206287664128,0,1
|
|
||||||
-0.75863333089785,1.25353921368301,-0.3649438788197,-1.33053607191046,-0.47269084615934,-0.92358171540992,0,1
|
|
||||||
0.60476813528583,1.15459071693037,-1.04574356282643,0.90156078050042,-0.02188554242046,1.28643078448384,0,1
|
|
||||||
0.78058916531719,1.25354240135405,1.3718038932294,1.2864435360665,-0.26377692606462,1.1325023442688,0,1
|
|
||||||
1.13241090674183,1.38547389812973,1.34564119163576,0.28583225339387,1.36349877336834,1.15450700517888,0,1
|
|
||||||
-0.24200144564729,-1.08839807266579,-0.54216478255544,-0.86874387536901,-0.52770837073661,0.97860510955264,0,1
|
|
||||||
1.17640697380355,-0.74757127843603,1.19371271875139,-0.34110076745986,-0.72567163399165,0.59376110867712,0,1
|
|
||||||
1.36337176632062,-0.46170765045523,-1.38270722779576,1.38513668311044,-1.33041057964029,0.10996290747135,0,1
|
|
||||||
1.0335902536038,-0.30774129438483,-0.23495441105363,0.17572774850054,1.37434171938819,-0.42881423184385,0,1
|
|
||||||
0.53892997879037,-0.38470727610131,0.80224828722906,-1.05566017777659,-0.87970342296829,-1.18749755482625,0,1
|
|
||||||
|
@@ -1,18 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-1.14350652094976,1.12159781703917,-1.07728872852917,-0.51681458950654,-0.61584026095613,-0.93452666585344,0,1
|
|
||||||
0.91257065907712,1.08861414592749,0.20868214239304,-0.13203501275901,0.27480945615363,-0.90155054447616,0,1
|
|
||||||
0.08792250918656,1.02264848142573,0.53201055653901,0.30776108223235,-1.23151895717629,-0.9455006434688,0,1
|
|
||||||
-0.95662226212863,1.00067318059245,0.62599330861746,-1.23161727239934,0.87958547910915,-1.11044668145152,0,1
|
|
||||||
-0.79170810163452,1.04462814499053,-0.89621703330666,0.62655435856896,0.74768283918595,-1.35231977868544,0,1
|
|
||||||
0.03296085134087,0.94569172783341,0.97841373210686,0.21978689813755,-0.98950476429565,1.06657057026048,0,1
|
|
||||||
-0.54976353415673,0.90168660087021,0.86829925461592,0.75858014386683,1.26453601535747,0.67076601295616,0,1
|
|
||||||
0.75865731681799,0.85771754426605,1.17534702645331,0.75866117752314,-0.23079761702142,0.19796007470848,0,1
|
|
||||||
0.36279152397831,0.85771855089901,0.48410027032071,-1.0225099114599,0.0001439488205,-0.20890536488704,0,1
|
|
||||||
-0.73678687711737,1.11060186321133,1.21197607160409,-1.23144178316294,-0.31875603064574,-0.59373024029952,0,1
|
|
||||||
1.15443519704583,1.18756180513005,-0.51951711835616,-0.19798541062405,1.38548598602498,-1.09949216733952,0,1
|
|
||||||
1.20945557294342,-1.16536220888851,-0.08068694012783,-0.47294435057413,-0.42875567968765,1.28646735866368,0,1
|
|
||||||
-0.91262636274173,-0.79154939473683,1.37170554455758,-0.11014376538114,-0.39581948784893,0.934606693376,0,1
|
|
||||||
-1.24242498945024,-0.54966824513299,1.06004627876417,-0.01118872478461,1.30841632038403,0.52777883596799,0,1
|
|
||||||
-0.9235731591245,-0.54963133591315,0.37493130574451,-0.02213871056635,-1.09955994639101,0.25292273937663,0,1
|
|
||||||
0.18696915405566,-0.39570692222739,0.86511560877269,-0.11004377265147,0.36279085394947,0.07697101614335,0,1
|
|
||||||
-0.27486381340416,-0.37371752853267,0.53436823156802,-0.39587317542908,-0.37392455089149,1.258417407e-05,0,1
|
|
||||||
|
@@ -1,16 +0,0 @@
|
|||||||
gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z,magneto,button
|
|
||||||
-1.26445783282944,-1.17638047837971,-0.92047581302197,0.60472418064386,0.85750246854146,1.28650192173568,0,1
|
|
||||||
-1.14350366885121,-1.18737509134099,0.5821614981745,1.15443805152259,1.29730661642754,1.374457651008,0,1
|
|
||||||
1.12148306962943,-1.22035708473107,-0.01906087934944,-0.76975695750141,-0.67081852670461,-1.4073161625088,0,1
|
|
||||||
-1.39638295673088,-1.26433117450003,-0.17285750668088,-1.03367816799997,0.59366245954819,1.35244510473984,0,1
|
|
||||||
-0.48382890706942,-1.26432010153747,0.26460053862556,0.38467555770882,-0.29694246208509,1.20953342273792,0,1
|
|
||||||
0.5717218846362,-1.33031848095507,-0.61119350033389,1.30826616431871,0.06598110012931,0.85770463290112,0,1
|
|
||||||
-0.43987109149945,1.39648679760109,-0.01847301607199,1.06640179185404,-0.21989125207805,0.5058384305536,0,1
|
|
||||||
1.37437745303047,1.36352292360429,0.11970348514424,0.87955007845627,-0.89054821449213,-0.02198989753856,0,1
|
|
||||||
-0.98958982656505,1.27552994955501,0.86671040787626,-1.16552292605957,0.67080409853187,-0.61569899805952,0,1
|
|
||||||
-1.30842085175801,1.29752336978157,0.31316030999572,0.48378780072955,1.18757624121603,-1.13247516733952,0,1
|
|
||||||
1.36333720669703,1.35249542795501,-0.39073819001116,1.06653819029499,1.01165521966083,1.319437775872,0,1
|
|
||||||
-0.36290343154169,-1.29733514473235,0.94701492865215,-0.27492085756421,-0.09889682269693,1.03357632888832,0,1
|
|
||||||
-0.28592000240378,-1.04441643314963,0.51508348348114,-0.33002025430275,-0.06596130191869,0.70370639945984,0,1
|
|
||||||
1.05550045782787,-0.94547565391635,1.39580844908631,0.54960716759808,-0.24192862853629,0.35184590198784,0,1
|
|
||||||
0.08800102568703,-0.90151012052755,0.42011033440974,-0.74787409828605,-0.53883938228733,0.03301521234432,0,1
|
|
||||||
|
Reference in New Issue
Block a user