USB-Meter / Documentation / Research Resources / Specifications / HM-10 and DX-BT18 Module Working Summary.md
Newer Older
134 lines | 5.102kb
Bogdan Timofte authored 2 weeks ago
1
# HM-10 and DX-BT18 Module Working Summary
2

            
3
This note summarizes two imported module references used to reason about the Bluetooth path of the `UM25C` / `UM34C` family.
4

            
5
## Source Set
6

            
7
### `DSD TECH HM-10 datasheet.pdf`
8

            
9
- imported file: `Documentation/Research Resources/Manuals/DSD TECH HM-10 datasheet.pdf`
10
- pages: `38`
11
- SHA-1: `37f96b85b742312d8db592241c97fad95c7ac2a9`
12
- scope: generic `HM-10` BLE serial module reference
13

            
14
### `Users-Manual-4216091.pdf`
15

            
16
- imported file: `Documentation/Research Resources/Manuals/Users-Manual-4216091.pdf`
17
- pages: `14`
18
- SHA-1: `7e175833582422dcd8005399dc01d2f42d27e7b7`
19
- scope: `DX-BT18` dual-mode Bluetooth module user manual
20
- title page identifies:
21
  - `FCC ID: 2AKS8DX-BT18`
22
  - `Model Name: DX-BT18`
23

            
24
## Why These Matter
25

            
26
The current app models the `UM25C` / `UM34C` family as using an `HM-10`-style radio path over:
27

            
28
- service `FFE0`
29
- characteristic `FFE1`
30

            
31
These manuals help us understand whether that path is:
32

            
33
- generic `HM-10` BLE serial behavior
34
- or a more specific dual-mode module story that also explains desktop and iOS support
35

            
36
## Confirmed `HM-10` Baseline
37

            
38
The `HM-10` datasheet confirms a classic BLE-uart bridge shape:
39

            
40
- BLE version: `4.0 BLE`
41
- default service: `0xFFE0`
42
- default characteristic: `0xFFE1`
43
- characteristic mode: `Notify` and `Write`
44
- UART-side AT configuration before connection
45

            
46
Useful implications:
47

            
48
- this strongly supports the app's existing `FFE0` / `FFE1` assumption for the `UM` family
49
- it also supports the idea that the application-layer `0xF0` request and `130`-byte UM snapshot sit above a simple serial-like BLE transport
50

            
51
## Confirmed `DX-BT18` Details
52

            
53
The `DX-BT18` manual is even more interesting because it describes a dual-mode module:
54

            
55
- Bluetooth `4.2`
56
- `BR/EDR + BLE`
57
- UART interface
58
- default Bluetooth name: `DX-BT18`
59
- default SPP pairing code: `1234`
60
- default service UUID: `FFE0`
61
- default `Notify/Write` UUID: `FFE1`
62
- default `Write` UUID: `FFE2`
63

            
64
Additional points explicitly documented:
65

            
66
- the module supports `SPP` for desktop, notebook, Android phones, and Bluetooth master modules
67
- the module supports `BLE` at the same time
68
- the module can connect directly to `iOS` devices with BLE
69
- the SPP and BLE sides use the same module MAC address
70
- the Bluetooth names for SPP and BLE are the same
71

            
72
## Best Working Interpretation For `UM25C` / `UM34C`
73

            
74
These module documents help reconcile the previously awkward mix of clues around the UM family:
75

            
76
- Windows desktop software that looks serial-port-like
77
- Android app support
78
- iOS app support
79
- existing app code that uses an `HM-10`-style BLE service
80

            
81
Best current interpretation:
82

            
83
- the `UM25C` / `UM34C` family likely uses a radio path that is compatible with the `HM-10` style `FFE0` / `FFE1` serial bridge model
84
- a `DX-BT18`-class dual-mode module is a plausible concrete implementation because it explains:
85
  - BLE access for iOS
86
  - serial-port-style behavior for desktop
87
  - the same vendor family naming and wiring style
88

            
89
This does not prove every `UM25C` / `UM34C` device contains the exact same module, but it moves the current app assumptions onto much firmer ground.
90

            
91
## Transport-Level Validation For The Current App
92

            
93
High-confidence validations:
94

            
95
- keeping `UM25C` / `UM34C` on the `FFE0` / `FFE1` path is justified
96
- the current app's `HM-10`-style transport model is consistent with both manuals
97
- the family can plausibly expose BLE to iOS while still appearing as serial-port style in desktop workflows
98

            
99
Moderate-confidence inferences:
100

            
101
- `DX-BT18` may be closer to the real `UM25C` / `UM34C` module than a pure `HM-10`
102
- if so, `FFE2` may exist as a write-only characteristic even though the current app only needs `FFE1`
103
- dual-mode behavior may explain why family documentation mixes Bluetooth app control with desktop COM-port language
104

            
105
## Throughput and Framing Hints
106

            
107
The manuals provide useful transport hints, but not product payload maps:
108

            
109
- `HM-10` datasheet lists typical asynchronous throughput in the `2-6 KBytes` range
110
- `DX-BT18` lists example BLE throughput around `5 KB/s` under one test setup
111
- both manuals still describe a UART-bridge style transport, not a product-specific application protocol
112

            
113
This aligns with the existing UM-family parser model:
114

            
115
- BLE provides the transport
116
- the meter firmware defines the `0xF0` request and `130`-byte snapshot semantics
117

            
118
## What These Manuals Do Not Prove
119

            
120
These module manuals do not directly validate:
121

            
122
- the `0xF0` request command
123
- the `130`-byte UM payload size
124
- the byte offsets in the UM snapshot
125
- whether the installed module in a specific `UM25C` or `UM34C` is exactly `DX-BT18`
126

            
127
So they validate the radio shape, not the meter payload.
128

            
129
## Practical Implications For The Codebase
130

            
131
- keep the `UM25C` / `UM34C` transport separate from `TC66C`
132
- keep the `UM25C` / `UM34C` transport on the `FFE0` / `FFE1` path
133
- treat desktop serial-port clues for the UM family as compatible with BLE/iOS support, not contradictory
134
- if future captures show `FFE2` on a UM-family device, that would fit the `DX-BT18` manual and should not be surprising