Status: ✅ Tested
Credit: Reverse engineering by kristofferR
- Vibradorm VMAT series beds
- Device names starting with "VMAT" (e.g., "VMATMEM047")
| Analyzed | App | Package ID |
|---|---|---|
| ✅ | VIBRADORM Remote | de.vibradorm.vra |
| ✅ | VIBRADORM Remote for Beds | com.vibradorm.vmatbasic |
| Feature | Supported |
|---|---|
| Motor Control | ✅ |
| Position Feedback | ✅ |
| Memory Presets | ✅ (6 slots) |
| Flat Preset | ✅ |
| Light Control | ✅ |
| Massage | ✅ (vibration toggle via CBI characteristic) |
Position Feedback: The bed reports motor positions via BLE notifications. Position values are raw encoder counts that are converted to percentages.
Motor Configurations: The bed supports 2, 3, or 4 motor configurations. The standard 2-motor config has head/back and legs motors.
Primary Service UUID: 00001525-9f03-0de5-96c5-b8f4f3081186
Secondary Service UUID (some VMAT-BASIC-RF-CBI beds): 00001527-9f03-0de5-96c5-b8f4f3081186
Command Characteristic: 00001526-9f03-0de5-96c5-b8f4f3081186 (fallbacks: 00001528, 00001534)
Light Characteristic: 00001529-9f03-0de5-96c5-b8f4f3081186
Notify Characteristic: 00001551-9f03-0de5-96c5-b8f4f3081186
Manufacturer ID: 944 (0x03B0)
Commands are single bytes written to the command characteristic:
| Command | Value | Hex |
|---|---|---|
| Stop | 255 | 0xFF |
| Head Up | 11 | 0x0B |
| Head Down | 10 | 0x0A |
| Legs Up | 9 | 0x09 |
| Legs Down | 8 | 0x08 |
| All Down/Flat | 0 | 0x00 |
| Memory 1 | 14 | 0x0E |
| Memory 2 | 15 | 0x0F |
| Memory 3 | 12 | 0x0C |
| Memory 4 | 26 | 0x1A |
| Memory 5 | 27 | 0x1B |
| Memory 6 | 28 | 0x1C |
Light commands are 3 bytes written to the light characteristic:
[brightness, 0x00, timer]
brightness: 0 = off, 0xFF = full brightnesstimer: Auto-off timer value (0 = no timer)
Notifications provide motor positions as 16-bit little-endian values:
- Bytes 3-4: Motor 1 (head/back) position
- Bytes 5-6: Motor 2 (legs) position
- Higher values = more raised, 0 = flat
The bed is detected by:
- Manufacturer ID: 944 (0x03B0) - highest priority
- Service UUID:
00001525-...or00001527-... - Device name pattern: Names starting with "VMAT"
Commands not working:
- Ensure no other device (app, remote) is connected to the bed
- BLE beds only allow one connection at a time
Position values seem incorrect:
- Position calibration may vary by bed model
- Open an issue with your bed's position values for calibration assistance
- GitHub Issue #162
- APK analysis in
disassembly/output/de.vibradorm.vra/ANALYSIS.md