Skip to content

Commit

Permalink
fix: updated to work with new uuid128
Browse files Browse the repository at this point in the history
  • Loading branch information
builder555 committed Mar 29, 2023
1 parent 3e27f3f commit f28bc0d
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 47 deletions.
91 changes: 49 additions & 42 deletions backend/crx_uuid_name_map.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,17 @@
bulk_data_names = {
bulk_data_names_v220 = {
'00000001-0000-1000-8000-00805f9b34fb': 'BulkData',
'00000002-0000-1000-8000-00805f9b34fb': 'Accelerometer',
'00000003-0000-1000-8000-00805f9b34fb': 'Build',
'00000004-0000-1000-8000-00805f9b34fb': 'DeviceID',
}

bulk_data_names_v221beta2 = {
'9eae1001-9d0d-48c5-aa55-33e27f9bc533': 'BulkData',
'9eae1002-9d0d-48c5-aa55-33e27f9bc533': 'Accelerometer',
'9eae1003-9d0d-48c5-aa55-33e27f9bc533': 'Build',
'9eae1004-9d0d-48c5-aa55-33e27f9bc533': 'DeviceID',
}

names_v220 = {
"00000000-0000-1000-8000-00805f9b34fb": "save_to_flash",
"00000001-0000-1000-8000-00805f9b34fb": "SetTemperature",
Expand Down Expand Up @@ -60,45 +67,45 @@ def reduce_idx(idx: str) -> str:
}

names_v221beta2 = {
'f6d75001-5a10-4eba-aa55-33e27f9bc533': 'save_to_flash',
'f6d75002-5a10-4eba-aa55-33e27f9bc533': 'SettingsReset',
'f6d75003-5a10-4eba-aa55-33e27f9bc533': 'SetTemperature',
'f6d75004-5a10-4eba-aa55-33e27f9bc533': 'SleepTemperature',
'f6d75005-5a10-4eba-aa55-33e27f9bc533': 'SleepTimeout',
'f6d75006-5a10-4eba-aa55-33e27f9bc533': 'DCInCutoff',
'f6d75007-5a10-4eba-aa55-33e27f9bc533': 'MinVolCell',
'f6d75008-5a10-4eba-aa55-33e27f9bc533': 'QCMaxVoltage',
'f6d75009-5a10-4eba-aa55-33e27f9bc533': 'DisplayRotation',
'f6d7500a-5a10-4eba-aa55-33e27f9bc533': 'MotionSensitivity',
'f6d7500b-5a10-4eba-aa55-33e27f9bc533': 'AnimLoop',
'f6d7500c-5a10-4eba-aa55-33e27f9bc533': 'AnimSpeed',
'f6d7500d-5a10-4eba-aa55-33e27f9bc533': 'AutoStart',
'f6d7500e-5a10-4eba-aa55-33e27f9bc533': 'ShutdownTimeout',
'f6d7500f-5a10-4eba-aa55-33e27f9bc533': 'CooldownBlink',
'f6d75010-5a10-4eba-aa55-33e27f9bc533': 'AdvancedIdle',
'f6d75011-5a10-4eba-aa55-33e27f9bc533': 'AdvancedSoldering',
'f6d75012-5a10-4eba-aa55-33e27f9bc533': 'TemperatureUnit',
'f6d75013-5a10-4eba-aa55-33e27f9bc533': 'ScrollingSpeed',
'f6d75014-5a10-4eba-aa55-33e27f9bc533': 'LockingMode',
'f6d75015-5a10-4eba-aa55-33e27f9bc533': 'PowerPulsePower',
'f6d75016-5a10-4eba-aa55-33e27f9bc533': 'PowerPulseWait',
'f6d75017-5a10-4eba-aa55-33e27f9bc533': 'PowerPulseDuration',
'f6d75018-5a10-4eba-aa55-33e27f9bc533': 'VoltageCalibration',
'f6d75019-5a10-4eba-aa55-33e27f9bc533': 'BoostTemperature',
'f6d7501a-5a10-4eba-aa55-33e27f9bc533': 'CalibrationOffset',
'f6d7501b-5a10-4eba-aa55-33e27f9bc533': 'PowerLimit',
'f6d7501c-5a10-4eba-aa55-33e27f9bc533': 'ReverseButtonTempChange',
'f6d7501d-5a10-4eba-aa55-33e27f9bc533': 'TempChangeLongStep',
'f6d7501e-5a10-4eba-aa55-33e27f9bc533': 'TempChangeShortStep',
'f6d7501f-5a10-4eba-aa55-33e27f9bc533': 'HallEffectSensitivity',
'f6d75020-5a10-4eba-aa55-33e27f9bc533': 'AccelMissingWarningCounter',
'f6d75021-5a10-4eba-aa55-33e27f9bc533': 'PDMissingWarningCounter',
'f6d75022-5a10-4eba-aa55-33e27f9bc533': 'UILanguage',
'f6d75023-5a10-4eba-aa55-33e27f9bc533': 'PDNegTimeout',
'f6d75024-5a10-4eba-aa55-33e27f9bc533': 'ColourInversion',
'f6d75025-5a10-4eba-aa55-33e27f9bc533': 'Brightness',
'f6d75026-5a10-4eba-aa55-33e27f9bc533': 'LOGOTime',
'f6d75027-5a10-4eba-aa55-33e27f9bc533': 'CalibrateCJC',
'f6d75029-5a10-4eba-aa55-33e27f9bc533': 'BLEEnabled',
'f6d7502a-5a10-4eba-aa55-33e27f9bc533': 'PDVpdoEnabled',
'f6d70000-5a10-4eba-aa55-33e27f9bc533': 'SetTemperature',
'f6d70001-5a10-4eba-aa55-33e27f9bc533': 'SleepTemperature',
'f6d70002-5a10-4eba-aa55-33e27f9bc533': 'SleepTimeout',
'f6d70003-5a10-4eba-aa55-33e27f9bc533': 'DCInCutoff',
'f6d70004-5a10-4eba-aa55-33e27f9bc533': 'MinVolCell',
'f6d70005-5a10-4eba-aa55-33e27f9bc533': 'QCMaxVoltage',
'f6d70006-5a10-4eba-aa55-33e27f9bc533': 'DisplayRotation',
'f6d70007-5a10-4eba-aa55-33e27f9bc533': 'MotionSensitivity',
'f6d70008-5a10-4eba-aa55-33e27f9bc533': 'AnimLoop',
'f6d70009-5a10-4eba-aa55-33e27f9bc533': 'AnimSpeed',
'f6d7000a-5a10-4eba-aa55-33e27f9bc533': 'AutoStart',
'f6d7000b-5a10-4eba-aa55-33e27f9bc533': 'ShutdownTimeout',
'f6d7000c-5a10-4eba-aa55-33e27f9bc533': 'CooldownBlink',
'f6d7000d-5a10-4eba-aa55-33e27f9bc533': 'AdvancedIdle',
'f6d7000e-5a10-4eba-aa55-33e27f9bc533': 'AdvancedSoldering',
'f6d7000f-5a10-4eba-aa55-33e27f9bc533': 'TemperatureUnit',
'f6d70010-5a10-4eba-aa55-33e27f9bc533': 'ScrollingSpeed',
'f6d70011-5a10-4eba-aa55-33e27f9bc533': 'LockingMode',
'f6d70012-5a10-4eba-aa55-33e27f9bc533': 'PowerPulsePower',
'f6d70013-5a10-4eba-aa55-33e27f9bc533': 'PowerPulseWait',
'f6d70014-5a10-4eba-aa55-33e27f9bc533': 'PowerPulseDuration',
'f6d70015-5a10-4eba-aa55-33e27f9bc533': 'VoltageCalibration',
'f6d70016-5a10-4eba-aa55-33e27f9bc533': 'BoostTemperature',
'f6d70017-5a10-4eba-aa55-33e27f9bc533': 'CalibrationOffset',
'f6d70018-5a10-4eba-aa55-33e27f9bc533': 'PowerLimit',
'f6d70019-5a10-4eba-aa55-33e27f9bc533': 'ReverseButtonTempChange',
'f6d7001a-5a10-4eba-aa55-33e27f9bc533': 'TempChangeLongStep',
'f6d7001b-5a10-4eba-aa55-33e27f9bc533': 'TempChangeShortStep',
'f6d7001c-5a10-4eba-aa55-33e27f9bc533': 'HallEffectSensitivity',
'f6d7001d-5a10-4eba-aa55-33e27f9bc533': 'AccelMissingWarningCounter',
'f6d7001e-5a10-4eba-aa55-33e27f9bc533': 'PDMissingWarningCounter',
'f6d7001f-5a10-4eba-aa55-33e27f9bc533': 'UILanguage',
'f6d70020-5a10-4eba-aa55-33e27f9bc533': 'PDNegTimeout',
'f6d70021-5a10-4eba-aa55-33e27f9bc533': 'ColourInversion',
'f6d70022-5a10-4eba-aa55-33e27f9bc533': 'Brightness',
'f6d70023-5a10-4eba-aa55-33e27f9bc533': 'LOGOTime',
'f6d70024-5a10-4eba-aa55-33e27f9bc533': 'CalibrateCJC',
'f6d70025-5a10-4eba-aa55-33e27f9bc533': 'BLEEnabled',
'f6d70026-5a10-4eba-aa55-33e27f9bc533': 'PDVpdoEnabled',
'f6d7ffff-5a10-4eba-aa55-33e27f9bc533': 'save_to_flash',
'f6d7fffe-5a10-4eba-aa55-33e27f9bc533': 'SettingsReset',
}
19 changes: 14 additions & 5 deletions backend/pinecil_ble.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import asyncio
from pinecil_setting_limits import value_limits
from pinecil_setting_limits import temperature_limits
from crx_uuid_name_map import names_v220, names_v221beta1, names_v221beta2, bulk_data_names
from crx_uuid_name_map import names_v220, names_v221beta1, names_v221beta2, bulk_data_names_v220, bulk_data_names_v221beta2
from ble import BleakGATTCharacteristic
from ble import BLE
import time
Expand All @@ -26,6 +26,7 @@ def set_version(self, version: str):
'2.21beta1': names_v221beta1,
'2.21beta2': names_v221beta2,
}
print('setting version to ', version)
self.names = names.get(version, names_v220)

def get_name(self, uuid: str) -> str:
Expand All @@ -36,11 +37,16 @@ def get_uuid(self, name: str) -> str:

class BulkDataToUUIDMap:
def __init__(self):
self.names = bulk_data_names
self.names = bulk_data_names_v220

def set_version(self, version: str):
self.names = bulk_data_names

names = {
'2.20': bulk_data_names_v220,
'2.21beta1': bulk_data_names_v220,
'2.21beta2': bulk_data_names_v221beta2,
}
self.names = names.get(version, names_v220)

def get_name(self, uuid: str) -> str:
return self.names.get(uuid, uuid)

Expand Down Expand Up @@ -72,22 +78,25 @@ def is_connected(self):
async def __set_ble_uuids_based_on_version(self):
# this is just a hack until the version is exposed in the settings
uuid_settings_pre_221 = 'f6d75f91-5a10-4eba-a233-47d3f26a907f'
uuid_settings_221beta2 = 'f6d75000-5a10-4eba-aa55-33e27f9bc533'
uuid_settings_221beta2 = 'f6d80000-5a10-4eba-aa55-33e27f9bc533'
uuid_bulk_data_pre_221 = '9eae1adb-9d0d-48c5-a6e7-ae93f0ea37b0'
uuid_bulk_data_221beta2 = '9eae1000-9d0d-48c5-aa55-33e27f9bc533'
services = await self.ble.get_services()
if uuid_settings_221beta2 in services:
self.settings_uuid = uuid_settings_221beta2
self.bulk_data_uuid = uuid_bulk_data_221beta2
self.settings_map.set_version('2.21beta2')
self.bulk_data_map.set_version('2.21beta2')
return
crx_settings = await self.ble.get_characteristics(uuid_settings_pre_221)
for crx in crx_settings:
if crx.uuid == '0000ffff-0000-1000-8000-00805f9b34fb':
self.settings_map.set_version('2.21beta1')
self.bulk_data_map.set_version('2.21beta1')
break
else:
self.settings_map.set_version('2.20')
self.bulk_data_map.set_version('2.20')
self.settings_uuid = uuid_settings_pre_221
self.bulk_data_uuid = uuid_bulk_data_pre_221

Expand Down

0 comments on commit f28bc0d

Please sign in to comment.