feat: add m1001 model #68
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds support for the Mopeka M1001 sensor model as requested in issue #67.
Key discovery: The M1001 uses a completely different protocol than other Mopeka sensors:
0000ada0-0000-1000-8000-00805f9b34fbChanges Made
MOPEKA_M1001_MANUFACTURER = 13constant for the M1001's manufacturer IDMOPEKA_M1001_SERVICE_UUIDconstant for M1001 devices0x01to0x02(based on real data analysis)_parse_m1001()method to handle the M1001's unique protocol_start_update()to route M1001 devices to the correct parser_parse_standard()methodTest Data Used
Real advertisement data from issue #67 comments:
Not connected to tank:
Connected to tank:
Current Parser Output
Not connected (quality=0):
Connected (quality=1):
Known Limitations
The framework is in place, but some readings may be incorrect due to limited real-world data:
Temperature readings appear incorrect (-1°C and -7°C for likely room temperature). The M1001 may use a different temperature offset than the standard -40 formula.
Battery formula is estimated. We derived
(raw - 50) / 32from observed values, but this needs verification.Tank level calculation uses the standard Mopeka PROPANE coefficients. This may not be correct for M1001.
No accelerometer data is exposed for M1001 as we couldn't identify which bytes contain this data.
What Works
Next Steps
Users with M1001 hardware should:
Related Issues