aiobmsble 0.3.0__py3-none-any.whl → 0.4.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- aiobmsble/__main__.py +1 -1
- aiobmsble/basebms.py +2 -2
- aiobmsble/test_data/__init__.py +102 -0
- aiobmsble/test_data/abc_bms.json +34 -0
- aiobmsble/test_data/ant_bms.json +18 -0
- aiobmsble/test_data/ant_leg_bms.json +19 -0
- aiobmsble/test_data/braunpwr_bms.json +34 -0
- aiobmsble/test_data/cbtpwr_bms.json +90 -0
- aiobmsble/test_data/cbtpwr_vb_bms.json +20 -0
- aiobmsble/test_data/daly_bms.json +100 -0
- aiobmsble/test_data/dpwrcore_bms.json +18 -0
- aiobmsble/test_data/ecoworthy_bms.json +100 -0
- aiobmsble/test_data/ective_bms.json +104 -0
- aiobmsble/test_data/ej_bms.json +107 -0
- aiobmsble/test_data/felicity_bms.json +24 -0
- aiobmsble/test_data/ignore.json +48 -0
- aiobmsble/test_data/jbd_bms.json +440 -0
- aiobmsble/test_data/jikong_bms.json +54 -0
- aiobmsble/test_data/neey_bms.json +65 -0
- aiobmsble/test_data/ogt_bms.json +16 -0
- aiobmsble/test_data/pro_bms.json +15 -0
- aiobmsble/test_data/redodo_bms.json +151 -0
- aiobmsble/test_data/renogy_bms.json +19 -0
- aiobmsble/test_data/renogy_pro_bms.json +16 -0
- aiobmsble/test_data/roypow_bms.json +54 -0
- aiobmsble/test_data/seplos_bms.json +96 -0
- aiobmsble/test_data/seplos_v2_bms.json +41 -0
- aiobmsble/test_data/tdt_bms.json +14 -0
- aiobmsble/test_data/tianpwr_bms.json +13 -0
- {aiobmsble-0.3.0.dist-info → aiobmsble-0.4.1.dist-info}/METADATA +48 -9
- aiobmsble-0.4.1.dist-info/RECORD +64 -0
- aiobmsble-0.3.0.dist-info/RECORD +0 -37
- {aiobmsble-0.3.0.dist-info → aiobmsble-0.4.1.dist-info}/WHEEL +0 -0
- {aiobmsble-0.3.0.dist-info → aiobmsble-0.4.1.dist-info}/entry_points.txt +0 -0
- {aiobmsble-0.3.0.dist-info → aiobmsble-0.4.1.dist-info}/licenses/LICENSE +0 -0
- {aiobmsble-0.3.0.dist-info → aiobmsble-0.4.1.dist-info}/top_level.txt +0 -0
aiobmsble/__main__.py
CHANGED
@@ -31,7 +31,7 @@ async def scan_devices() -> dict[str, tuple[BLEDevice, AdvertisementData]]:
|
|
31
31
|
scan_result: dict[str, tuple[BLEDevice, AdvertisementData]] = (
|
32
32
|
await BleakScanner.discover(return_adv=True)
|
33
33
|
)
|
34
|
-
logger.
|
34
|
+
logger.debug(scan_result)
|
35
35
|
logger.info("%i BT devices in range.", len(scan_result))
|
36
36
|
return scan_result
|
37
37
|
|
aiobmsble/basebms.py
CHANGED
@@ -379,8 +379,8 @@ class BaseBMS(ABC):
|
|
379
379
|
if reset:
|
380
380
|
self._inv_wr_mode = None # reset write mode
|
381
381
|
await self._client.disconnect()
|
382
|
-
except BleakError:
|
383
|
-
self._log.
|
382
|
+
except (BleakError, TimeoutError) as exc:
|
383
|
+
self._log.error("disconnect failed! (%s)", type(exc).__name__)
|
384
384
|
|
385
385
|
async def _wait_event(self) -> None:
|
386
386
|
"""Wait for data event and clear it."""
|
@@ -0,0 +1,102 @@
|
|
1
|
+
"""Test advertisements for aiobmsble package."""
|
2
|
+
|
3
|
+
from importlib import resources
|
4
|
+
import json
|
5
|
+
from typing import Any
|
6
|
+
|
7
|
+
from bleak.backends.scanner import AdvertisementData
|
8
|
+
|
9
|
+
from tests.bluetooth import generate_advertisement_data
|
10
|
+
|
11
|
+
type BmsAdvList = list[tuple[AdvertisementData, str, list[str]]]
|
12
|
+
|
13
|
+
|
14
|
+
def _json_dict_to_advdata(json_dict: dict[str, Any]) -> AdvertisementData:
|
15
|
+
"""Generate an AdvertisementData instance from a JSON dictionary."""
|
16
|
+
|
17
|
+
if "manufacturer_data" in json_dict:
|
18
|
+
json_dict["manufacturer_data"] = {
|
19
|
+
int(k): bytes.fromhex(v) for k, v in json_dict["manufacturer_data"].items()
|
20
|
+
}
|
21
|
+
if "service_data" in json_dict:
|
22
|
+
json_dict["service_data"] = {
|
23
|
+
k: bytes.fromhex(v) for k, v in json_dict["service_data"].items()
|
24
|
+
}
|
25
|
+
if "platform_data" in json_dict:
|
26
|
+
json_dict["platform_data"] = tuple(json_dict.get("platform_data", []))
|
27
|
+
|
28
|
+
return generate_advertisement_data(**json_dict)
|
29
|
+
|
30
|
+
|
31
|
+
def bms_advertisements() -> BmsAdvList:
|
32
|
+
"""Provide all available BMS advertisements from test data directory.
|
33
|
+
|
34
|
+
Load all *_bms.json files from the packaged test data directory.
|
35
|
+
|
36
|
+
Returns:
|
37
|
+
BmsAdvList: List of tuples containing advertisement, bms type,
|
38
|
+
and a list of comments, i.e. list[tuple[AdvertisementData, str, list[str]]]
|
39
|
+
|
40
|
+
"""
|
41
|
+
all_data: BmsAdvList = []
|
42
|
+
|
43
|
+
for resource in resources.files(__package__).iterdir():
|
44
|
+
if resource.name.endswith("_bms.json"):
|
45
|
+
with resource.open("r", encoding="UTF-8") as f:
|
46
|
+
raw_data: Any = json.load(f)
|
47
|
+
assert isinstance(raw_data, list)
|
48
|
+
|
49
|
+
for entry in raw_data:
|
50
|
+
assert isinstance(entry, dict)
|
51
|
+
assert {"advertisement", "type"}.issubset(set(entry.keys()))
|
52
|
+
adv: AdvertisementData = _json_dict_to_advdata(
|
53
|
+
entry["advertisement"]
|
54
|
+
)
|
55
|
+
bms_type: str = entry["type"]
|
56
|
+
comments: list[str] = entry["_comments"]
|
57
|
+
|
58
|
+
assert isinstance(adv, AdvertisementData)
|
59
|
+
assert isinstance(bms_type, str)
|
60
|
+
assert isinstance(comments, list)
|
61
|
+
assert all(isinstance(c, str) for c in comments)
|
62
|
+
assert resource.name == f"{bms_type}.json"
|
63
|
+
|
64
|
+
all_data.append((adv, bms_type, comments))
|
65
|
+
return all_data
|
66
|
+
|
67
|
+
|
68
|
+
def ignore_advertisements() -> BmsAdvList:
|
69
|
+
"""Provide a list of advertisements that shall not be identified as a valid BMS.
|
70
|
+
|
71
|
+
Load ignore.json files from the packaged test data directory.
|
72
|
+
|
73
|
+
Returns:
|
74
|
+
BmsAdvList: List of tuples containing advertisement, reason why not to detect,
|
75
|
+
and a list of comments, i.e. list[tuple[AdvertisementData, str, list[str]]]
|
76
|
+
|
77
|
+
"""
|
78
|
+
data: BmsAdvList = []
|
79
|
+
|
80
|
+
with (
|
81
|
+
resources.files(__package__)
|
82
|
+
.joinpath("ignore.json")
|
83
|
+
.open("r", encoding="UTF-8") as f
|
84
|
+
):
|
85
|
+
raw_data: Any = json.load(f)
|
86
|
+
assert isinstance(raw_data, list)
|
87
|
+
|
88
|
+
for entry in raw_data:
|
89
|
+
assert isinstance(entry, dict)
|
90
|
+
assert {"advertisement", "reason"}.issubset(set(entry.keys()))
|
91
|
+
adv: AdvertisementData = _json_dict_to_advdata(entry["advertisement"])
|
92
|
+
reason: str = entry["reason"]
|
93
|
+
comments: list[str] = entry["_comments"]
|
94
|
+
|
95
|
+
assert isinstance(adv, AdvertisementData)
|
96
|
+
assert isinstance(reason, str)
|
97
|
+
assert isinstance(comments, list)
|
98
|
+
assert all(isinstance(c, str) for c in comments)
|
99
|
+
|
100
|
+
data.append((adv, reason, comments))
|
101
|
+
|
102
|
+
return data
|
@@ -0,0 +1,34 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"advertisement": {
|
4
|
+
"local_name": "SOK-24V1127",
|
5
|
+
"service_uuids": [
|
6
|
+
"0000fff0-0000-1000-8000-00805f9b34fb"
|
7
|
+
],
|
8
|
+
"rssi": -94
|
9
|
+
},
|
10
|
+
"type": "abc_bms",
|
11
|
+
"_comments": [
|
12
|
+
"source pcap (https://github.com/patman15/BMS_BLE-HA/issues/168)"
|
13
|
+
]
|
14
|
+
},
|
15
|
+
{
|
16
|
+
"advertisement": {
|
17
|
+
"local_name": "SOK-AA02120",
|
18
|
+
"service_uuids": [
|
19
|
+
"00001800-0000-1000-8000-00805f9b34fb",
|
20
|
+
"00001801-0000-1000-8000-00805f9b34fb",
|
21
|
+
"0000180a-0000-1000-8000-00805f9b34fb",
|
22
|
+
"0000180f-0000-1000-8000-00805f9b34fb",
|
23
|
+
"0000ffe0-0000-1000-8000-00805f9b34fb",
|
24
|
+
"0000fff0-0000-1000-8000-00805f9b34fb",
|
25
|
+
"f000ffc0-0451-4000-b000-000000000000"
|
26
|
+
],
|
27
|
+
"rssi": -62
|
28
|
+
},
|
29
|
+
"type": "abc_bms",
|
30
|
+
"_comments": [
|
31
|
+
"source log (https://github.com/patman15/BMS_BLE-HA/issues/394)"
|
32
|
+
]
|
33
|
+
}
|
34
|
+
]
|
@@ -0,0 +1,18 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"advertisement": {
|
4
|
+
"local_name": "ANT-BLE24C-001",
|
5
|
+
"manufacturer_data": {
|
6
|
+
"8979": "88a0aabbcc900001"
|
7
|
+
},
|
8
|
+
"service_uuids": [
|
9
|
+
"0000ffe0-0000-1000-8000-00805f9b34fb"
|
10
|
+
],
|
11
|
+
"rssi": -70
|
12
|
+
},
|
13
|
+
"type": "ant_bms",
|
14
|
+
"_comments": [
|
15
|
+
"source advmon (https://github.com/patman15/BMS_BLE-HA/issues/366)"
|
16
|
+
]
|
17
|
+
}
|
18
|
+
]
|
@@ -0,0 +1,19 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"advertisement": {
|
4
|
+
"local_name": "ANT-BLE16S",
|
5
|
+
"manufacturer_data": {
|
6
|
+
"1623": "88a0aabbcca12345"
|
7
|
+
},
|
8
|
+
"service_uuids": [
|
9
|
+
"0000ffe0-0000-1000-8000-00805f9b34fb",
|
10
|
+
"0000fee7-0000-1000-8000-00805f9b34fb"
|
11
|
+
],
|
12
|
+
"rssi": -31
|
13
|
+
},
|
14
|
+
"type": "ant_leg_bms",
|
15
|
+
"_comments": [
|
16
|
+
"source HA Bluetooth"
|
17
|
+
]
|
18
|
+
}
|
19
|
+
]
|
@@ -0,0 +1,34 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"advertisement": {
|
4
|
+
"local_name": "HSKS-25A-118",
|
5
|
+
"manufacturer_data": {
|
6
|
+
"123": "02ffff7b"
|
7
|
+
},
|
8
|
+
"service_uuids": [
|
9
|
+
"0000ff00-0000-1000-8000-00805f9b34fb"
|
10
|
+
],
|
11
|
+
"rssi": -70
|
12
|
+
},
|
13
|
+
"type": "braunpwr_bms",
|
14
|
+
"_comments": [
|
15
|
+
"source pcap (https://github.com/patman15/BMS_BLE-HA/issues/303)"
|
16
|
+
]
|
17
|
+
},
|
18
|
+
{
|
19
|
+
"advertisement": {
|
20
|
+
"local_name": "BL-25F-170-118",
|
21
|
+
"manufacturer_data": {
|
22
|
+
"123": "02ffff7d"
|
23
|
+
},
|
24
|
+
"service_uuids": [
|
25
|
+
"0000ff00-0000-1000-8000-00805f9b34fb"
|
26
|
+
],
|
27
|
+
"rssi": -76
|
28
|
+
},
|
29
|
+
"type": "braunpwr_bms",
|
30
|
+
"_comments": [
|
31
|
+
"source LOG (https://github.com/patman15/BMS_BLE-HA/issues/303)"
|
32
|
+
]
|
33
|
+
}
|
34
|
+
]
|
@@ -0,0 +1,90 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"advertisement": {
|
4
|
+
"local_name": "170R000121",
|
5
|
+
"manufacturer_data": {
|
6
|
+
"21330": "2134ba03ec110cb4010500010000"
|
7
|
+
},
|
8
|
+
"service_uuids": [
|
9
|
+
"00001800-0000-1000-8000-00805f9b34fb",
|
10
|
+
"00001801-0000-1000-8000-00805f9b34fb",
|
11
|
+
"0000180a-0000-1000-8000-00805f9b34fb",
|
12
|
+
"0000fd00-0000-1000-8000-00805f9b34fb",
|
13
|
+
"0000ff90-0000-1000-8000-00805f9b34fb",
|
14
|
+
"0000ffb0-0000-1000-8000-00805f9b34fb",
|
15
|
+
"0000ffc0-0000-1000-8000-00805f9b34fb",
|
16
|
+
"0000ffd0-0000-1000-8000-00805f9b34fb",
|
17
|
+
"0000ffe0-0000-1000-8000-00805f9b34fb",
|
18
|
+
"0000ffe5-0000-1000-8000-00805f9b34fb",
|
19
|
+
"0000fff0-0000-1000-8000-00805f9b34fb"
|
20
|
+
],
|
21
|
+
"tx_power": 0,
|
22
|
+
"rssi": -75
|
23
|
+
},
|
24
|
+
"type": "cbtpwr_bms",
|
25
|
+
"_comments": [
|
26
|
+
"source LOG, https://github.com/patman15/BMS_BLE-HA/issues/59"
|
27
|
+
]
|
28
|
+
},
|
29
|
+
{
|
30
|
+
"advertisement": {
|
31
|
+
"local_name": "170R000086",
|
32
|
+
"manufacturer_data": {
|
33
|
+
"21330": "2134ba03ec110cf8010500010000"
|
34
|
+
},
|
35
|
+
"service_uuids": [
|
36
|
+
"00001800-0000-1000-8000-00805f9b34fb",
|
37
|
+
"00001801-0000-1000-8000-00805f9b34fb",
|
38
|
+
"0000180a-0000-1000-8000-00805f9b34fb",
|
39
|
+
"0000fd00-0000-1000-8000-00805f9b34fb",
|
40
|
+
"0000ff90-0000-1000-8000-00805f9b34fb",
|
41
|
+
"0000ffb0-0000-1000-8000-00805f9b34fb",
|
42
|
+
"0000ffc0-0000-1000-8000-00805f9b34fb",
|
43
|
+
"0000ffd0-0000-1000-8000-00805f9b34fb",
|
44
|
+
"0000ffe0-0000-1000-8000-00805f9b34fb",
|
45
|
+
"0000ffe5-0000-1000-8000-00805f9b34fb",
|
46
|
+
"0000fff0-0000-1000-8000-00805f9b34fb"
|
47
|
+
],
|
48
|
+
"tx_power": 0,
|
49
|
+
"rssi": -73
|
50
|
+
},
|
51
|
+
"type": "cbtpwr_bms",
|
52
|
+
"_comments": [
|
53
|
+
"source LOG"
|
54
|
+
]
|
55
|
+
},
|
56
|
+
{
|
57
|
+
"advertisement": {
|
58
|
+
"local_name": "140R000288",
|
59
|
+
"manufacturer_data": {
|
60
|
+
"0": "ffffffff6400ff000000000000000000"
|
61
|
+
},
|
62
|
+
"service_uuids": [
|
63
|
+
"0000fff0-0000-1000-8000-00805f9b34fb"
|
64
|
+
],
|
65
|
+
"rssi": -82
|
66
|
+
},
|
67
|
+
"type": "cbtpwr_bms",
|
68
|
+
"_comments": [
|
69
|
+
"source BT monitor (https://github.com/patman15/BMS_BLE-HA/issues/176)"
|
70
|
+
]
|
71
|
+
},
|
72
|
+
{
|
73
|
+
"advertisement": {
|
74
|
+
"local_name": "100R0002E3",
|
75
|
+
"manufacturer_data": {
|
76
|
+
"21330": "2134ba03ec110909010500010000"
|
77
|
+
},
|
78
|
+
"service_uuids": [
|
79
|
+
"000003c1-0000-1000-8000-00805f9b34fb"
|
80
|
+
],
|
81
|
+
"tx_power": 0,
|
82
|
+
"rssi": -76
|
83
|
+
},
|
84
|
+
"type": "cbtpwr_bms",
|
85
|
+
"_comments": [
|
86
|
+
"source advmon (https://github.com/patman15/BMS_BLE-HA/issues/197)",
|
87
|
+
"Creabest"
|
88
|
+
]
|
89
|
+
}
|
90
|
+
]
|
@@ -0,0 +1,20 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"advertisement": {
|
4
|
+
"local_name": "VB024000390",
|
5
|
+
"manufacturer_data": {
|
6
|
+
"16963": "545e0211f82e0ca88942"
|
7
|
+
},
|
8
|
+
"service_uuids": [
|
9
|
+
"0000fff0-0000-1000-8000-00805f9b34fb",
|
10
|
+
"0000ffb0-0000-1000-8000-00805f9b34fb"
|
11
|
+
],
|
12
|
+
"rssi": -73
|
13
|
+
},
|
14
|
+
"type": "cbtpwr_vb_bms",
|
15
|
+
"_comments": [
|
16
|
+
"source advmon (https://github.com/patman15/BMS_BLE-HA/issues/240)",
|
17
|
+
"Creabest"
|
18
|
+
]
|
19
|
+
}
|
20
|
+
]
|
@@ -0,0 +1,100 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"advertisement": {
|
4
|
+
"local_name": "DL-46640102XXXX",
|
5
|
+
"manufacturer_data": {
|
6
|
+
"25670": "010209ac"
|
7
|
+
},
|
8
|
+
"service_uuids": [
|
9
|
+
"0000fff0-0000-1000-8000-00805f9b34fb"
|
10
|
+
],
|
11
|
+
"rssi": -58
|
12
|
+
},
|
13
|
+
"type": "daly_bms",
|
14
|
+
"_comments": [
|
15
|
+
"source LOG (https://github.com/patman15/BMS_BLE-HA/issues/89)"
|
16
|
+
]
|
17
|
+
},
|
18
|
+
{
|
19
|
+
"advertisement": {
|
20
|
+
"local_name": "DL-401710015C9B",
|
21
|
+
"manufacturer_data": {
|
22
|
+
"770": "16401710015c9b444c"
|
23
|
+
},
|
24
|
+
"rssi": -36
|
25
|
+
},
|
26
|
+
"type": "daly_bms",
|
27
|
+
"_comments": [
|
28
|
+
"source LOG, proxy (https://github.com/patman15/BMS_BLE-HA/issues/160)"
|
29
|
+
]
|
30
|
+
},
|
31
|
+
{
|
32
|
+
"advertisement": {
|
33
|
+
"local_name": "JHB-501812XXXXXX",
|
34
|
+
"manufacturer_data": {
|
35
|
+
"260": "0150181201a3b34a4842"
|
36
|
+
},
|
37
|
+
"rssi": -46
|
38
|
+
},
|
39
|
+
"type": "daly_bms",
|
40
|
+
"_comments": [
|
41
|
+
"source BTctl (https://github.com/patman15/BMS_BLE-HA/issues/145)"
|
42
|
+
]
|
43
|
+
},
|
44
|
+
{
|
45
|
+
"advertisement": {
|
46
|
+
"local_name": "Randomname",
|
47
|
+
"manufacturer_data": {
|
48
|
+
"260": "0150181201a4944a4842"
|
49
|
+
},
|
50
|
+
"rssi": -36
|
51
|
+
},
|
52
|
+
"type": "daly_bms",
|
53
|
+
"_comments": [
|
54
|
+
"source LOG (https://github.com/patman15/BMS_BLE-HA/issues/160#issuecomment-2629318416)",
|
55
|
+
"JHB-50181201A494"
|
56
|
+
]
|
57
|
+
},
|
58
|
+
{
|
59
|
+
"advertisement": {
|
60
|
+
"local_name": "BT270-2",
|
61
|
+
"manufacturer_data": {
|
62
|
+
"770": "16401712011197444c"
|
63
|
+
},
|
64
|
+
"rssi": -60
|
65
|
+
},
|
66
|
+
"type": "daly_bms",
|
67
|
+
"_comments": [
|
68
|
+
"source BTctl (https://github.com/patman15/BMS_BLE-HA/issues/174#issuecomment-2637936795)"
|
69
|
+
]
|
70
|
+
},
|
71
|
+
{
|
72
|
+
"advertisement": {
|
73
|
+
"local_name": "DL-40160901534C",
|
74
|
+
"manufacturer_data": {
|
75
|
+
"258": "04"
|
76
|
+
},
|
77
|
+
"rssi": -87
|
78
|
+
},
|
79
|
+
"type": "daly_bms",
|
80
|
+
"_comments": [
|
81
|
+
"source advmon (https://github.com/patman15/BMS_BLE-HA/issues/204)",
|
82
|
+
"16S LiFePo 250A BMS"
|
83
|
+
]
|
84
|
+
},
|
85
|
+
{
|
86
|
+
"advertisement": {
|
87
|
+
"local_name": "DL-FB4C2E0000000",
|
88
|
+
"manufacturer_data": {
|
89
|
+
"771": "00b4c2e0000000444c00"
|
90
|
+
},
|
91
|
+
"rssi": -81
|
92
|
+
},
|
93
|
+
"type": "daly_bms",
|
94
|
+
"_comments": [
|
95
|
+
"proxy LOG (https://github.com/patman15/BMS_BLE-HA/issues/85)",
|
96
|
+
"Bulltron battery",
|
97
|
+
"MAC address (Bouffalo Lab)"
|
98
|
+
]
|
99
|
+
}
|
100
|
+
]
|
@@ -0,0 +1,18 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"advertisement": {
|
4
|
+
"local_name": "TBA-13500277",
|
5
|
+
"service_uuids": [
|
6
|
+
"00001800-0000-1000-8000-00805f9b34fb",
|
7
|
+
"00001801-0000-1000-8000-00805f9b34fb",
|
8
|
+
"0000180a-0000-1000-8000-00805f9b34fb",
|
9
|
+
"0000fff0-0000-1000-8000-00805f9b34fb"
|
10
|
+
],
|
11
|
+
"rssi": -72
|
12
|
+
},
|
13
|
+
"type": "dpwrcore_bms",
|
14
|
+
"_comments": [
|
15
|
+
"source BTctl (https://github.com/patman15/BMS_BLE-HA/issues/52#issuecomment-2390048120)"
|
16
|
+
]
|
17
|
+
}
|
18
|
+
]
|
@@ -0,0 +1,100 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"advertisement": {
|
4
|
+
"local_name": "ECO-WORTHY 02_B8EF",
|
5
|
+
"manufacturer_data": {
|
6
|
+
"49844": "e0fab8f0"
|
7
|
+
},
|
8
|
+
"service_uuids": [
|
9
|
+
"00001800-0000-1000-8000-00805f9b34fb",
|
10
|
+
"00001801-0000-1000-8000-00805f9b34fb",
|
11
|
+
"0000fff0-0000-1000-8000-00805f9b34fb"
|
12
|
+
],
|
13
|
+
"rssi": -50
|
14
|
+
},
|
15
|
+
"type": "ecoworthy_bms",
|
16
|
+
"_comments": [
|
17
|
+
"source LOG, proxy (https://github.com/patman15/BMS_BLE-HA/issues/164#issue-2825586172)",
|
18
|
+
"MAC address, correct, public"
|
19
|
+
]
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"advertisement": {
|
23
|
+
"local_name": "ECO-WORTHY 02_50DB",
|
24
|
+
"manufacturer_data": {
|
25
|
+
"47912": "ed0050dc"
|
26
|
+
},
|
27
|
+
"rssi": -49
|
28
|
+
},
|
29
|
+
"type": "ecoworthy_bms",
|
30
|
+
"_comments": [
|
31
|
+
"source BTctl (https://github.com/patman15/BMS_BLE-HA/issues/253)",
|
32
|
+
"MAC address, correct, public"
|
33
|
+
]
|
34
|
+
},
|
35
|
+
{
|
36
|
+
"advertisement": {
|
37
|
+
"local_name": "ECO-WORTHY 0B_5AD4",
|
38
|
+
"manufacturer_data": {
|
39
|
+
"57570": "5a783c31"
|
40
|
+
},
|
41
|
+
"service_uuids": [
|
42
|
+
"0000fff0-0000-1000-8000-00805f9b34fb"
|
43
|
+
],
|
44
|
+
"rssi": -86
|
45
|
+
},
|
46
|
+
"type": "ecoworthy_bms",
|
47
|
+
"_comments": [
|
48
|
+
"source advmon (https://github.com/patman15/BMS_BLE-HA/issues/286)",
|
49
|
+
"MAC address, correct, private"
|
50
|
+
]
|
51
|
+
},
|
52
|
+
{
|
53
|
+
"advertisement": {
|
54
|
+
"local_name": "ECO-WORTHY 02_3DDF",
|
55
|
+
"manufacturer_data": {
|
56
|
+
"15996": "821c3de0"
|
57
|
+
},
|
58
|
+
"rssi": -49
|
59
|
+
},
|
60
|
+
"type": "ecoworthy_bms",
|
61
|
+
"_comments": [
|
62
|
+
"source proxy LOG (https://github.com/patman15/BMS_BLE-HA/issues/295)",
|
63
|
+
"MAC address, correct, public"
|
64
|
+
]
|
65
|
+
},
|
66
|
+
{
|
67
|
+
"advertisement": {
|
68
|
+
"local_name": "DCHOUSE 01_4F9F",
|
69
|
+
"manufacturer_data": {
|
70
|
+
"57570": "5a72a745"
|
71
|
+
},
|
72
|
+
"service_uuids": [
|
73
|
+
"0000fff0-0000-1000-8000-00805f9b34fb"
|
74
|
+
],
|
75
|
+
"rssi": -68
|
76
|
+
},
|
77
|
+
"type": "ecoworthy_bms",
|
78
|
+
"_comments": [
|
79
|
+
"source advmon (https://github.com/patman15/BMS_BLE-HA/issues/326)",
|
80
|
+
"MAC address correct"
|
81
|
+
]
|
82
|
+
},
|
83
|
+
{
|
84
|
+
"advertisement": {
|
85
|
+
"local_name": "ECO-WORTHY 0B_198D",
|
86
|
+
"manufacturer_data": {
|
87
|
+
"59362": "798e373d"
|
88
|
+
},
|
89
|
+
"service_uuids": [
|
90
|
+
"0000fff0-0000-1000-8000-00805f9b34fb"
|
91
|
+
],
|
92
|
+
"rssi": -50
|
93
|
+
},
|
94
|
+
"type": "ecoworthy_bms",
|
95
|
+
"_comments": [
|
96
|
+
"source advmon (https://github.com/patman15/BMS_BLE-HA/issues/386)",
|
97
|
+
"MAC address, correct, private"
|
98
|
+
]
|
99
|
+
}
|
100
|
+
]
|
@@ -0,0 +1,104 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"advertisement": {
|
4
|
+
"local_name": "NWJ20221223010330\u0011",
|
5
|
+
"manufacturer_data": {
|
6
|
+
"65535": "30554437a2d2"
|
7
|
+
},
|
8
|
+
"service_uuids": [
|
9
|
+
"0000ffe0-0000-1000-8000-00805f9b34fb"
|
10
|
+
],
|
11
|
+
"rssi": -56
|
12
|
+
},
|
13
|
+
"type": "ective_bms",
|
14
|
+
"_comments": [
|
15
|
+
"source LOG"
|
16
|
+
]
|
17
|
+
},
|
18
|
+
{
|
19
|
+
"advertisement": {
|
20
|
+
"local_name": "NWJ20221223010388\u0011",
|
21
|
+
"manufacturer_data": {
|
22
|
+
"65535": "3055443762ec"
|
23
|
+
},
|
24
|
+
"service_uuids": [
|
25
|
+
"0000ffe0-0000-1000-8000-00805f9b34fb"
|
26
|
+
],
|
27
|
+
"rssi": -47
|
28
|
+
},
|
29
|
+
"type": "ective_bms",
|
30
|
+
"_comments": [
|
31
|
+
"source LOG"
|
32
|
+
]
|
33
|
+
},
|
34
|
+
{
|
35
|
+
"advertisement": {
|
36
|
+
"local_name": "$PFLAC,R,RADIOID\r\n",
|
37
|
+
"manufacturer_data": {
|
38
|
+
"65535": "10554433e8b4"
|
39
|
+
},
|
40
|
+
"service_uuids": [
|
41
|
+
"0000ffe0-0000-1000-8000-00805f9b34fb"
|
42
|
+
],
|
43
|
+
"rssi": -47
|
44
|
+
},
|
45
|
+
"type": "ective_bms",
|
46
|
+
"_comments": [
|
47
|
+
"nRF Connect (https://github.com/patman15/BMS_BLE-HA/issues/82#issuecomment-2498299433)"
|
48
|
+
]
|
49
|
+
},
|
50
|
+
{
|
51
|
+
"advertisement": {
|
52
|
+
"local_name": "NWJ20200720020539",
|
53
|
+
"manufacturer_data": {
|
54
|
+
"0": "3414b59d78e74c"
|
55
|
+
},
|
56
|
+
"service_uuids": [
|
57
|
+
"0000ffe0-0000-1000-8000-00805f9b34fb"
|
58
|
+
],
|
59
|
+
"rssi": -127
|
60
|
+
},
|
61
|
+
"type": "ective_bms",
|
62
|
+
"_comments": [
|
63
|
+
"BTctl (https://github.com/patman15/BMS_BLE-HA/issues/137)"
|
64
|
+
]
|
65
|
+
},
|
66
|
+
{
|
67
|
+
"advertisement": {
|
68
|
+
"local_name": "ZM20210512010036�",
|
69
|
+
"manufacturer_data": {
|
70
|
+
"0": "fc45c3bcd6a8"
|
71
|
+
},
|
72
|
+
"service_uuids": [
|
73
|
+
"0000ffe0-0000-1000-8000-00805f9b34fb"
|
74
|
+
],
|
75
|
+
"rssi": -48
|
76
|
+
},
|
77
|
+
"type": "ective_bms",
|
78
|
+
"_comments": [
|
79
|
+
"source BTctl (https://github.com/patman15/BMS_BLE-HA/issues/194)",
|
80
|
+
"Topband"
|
81
|
+
]
|
82
|
+
},
|
83
|
+
{
|
84
|
+
"advertisement": {
|
85
|
+
"local_name": "xxxxxxx20126\f",
|
86
|
+
"manufacturer_data": {
|
87
|
+
"65535": "3055443792f2"
|
88
|
+
},
|
89
|
+
"service_uuids": [
|
90
|
+
"00001800-0000-1000-8000-00805f9b34fb",
|
91
|
+
"00001801-0000-1000-8000-00805f9b34fb",
|
92
|
+
"0000ffe0-0000-1000-8000-00805f9b34fb",
|
93
|
+
"f000ffc0-0451-4000-b000-000000000000"
|
94
|
+
],
|
95
|
+
"rssi": -127
|
96
|
+
},
|
97
|
+
"type": "ective_bms",
|
98
|
+
"_comments": [
|
99
|
+
"source advmon (https://github.com/patman15/BMS_BLE-HA/issues/276)",
|
100
|
+
"renamed",
|
101
|
+
"value: MAC address"
|
102
|
+
]
|
103
|
+
}
|
104
|
+
]
|