-
-
Notifications
You must be signed in to change notification settings - Fork 337
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
For SPEKTRUM telemetry, the sensor with 6 lipo cell provides wrong values for the last 5 cell voltages #4715
Comments
@frankiearzu Since I know you just love Spektrum telemetry ... this for you (pretty please?) |
I had a short look at the code in edgeTx and in spektrum.cpp, I see: The issue is that for e.g. cell2, startByte = 2. So cellIndex = 0X10000. I did not check the rest of the code to see how the "value" is processed. |
I also notice another point of attention. |
@mstrens I have found many inconsistencies on the use of NO-VALUE (0xFFFF or 0x7FFF) for the UINT type, what I have seen in the Spektrum TX is that they either fix it for individual cases or they treat it as INT (and not UINT), since is display correctly, Maybe for this case, since the value stored is not that big (32767 = 327.67v), we could be set to INT instead of UINT, so that no extra code is needed to ignore the value. Or Add a new condition to the From your example, the values are made up?? right?? Since is LIPO Cell, voltage should be around 4.20v MAX for each cell. Cell1 = 0x4 0x57 = 1111 = 11.11v Still have to see how the value is processed for DISPLAY. Compared to the "Smart" Battery, looks like it uses the name is "Cels" for all the cells, but in Smart Batt the name changes for each ("Cel1, Cel2...."). |
In Frsky format, there are 2 cells values (each in 3 bytes) in a field of uint32_t. and the MSB contains 2 informations (each in 4 bits). I expect that it is not so easy with the spektrum frame to build such a combined UINT32_t field. This could also be done in the same way for another Spektrum frame that contains 16 cells values (each in a format uint8_t). Note: I know that the cell values I used in my test (11.11 , 22.22, ...) are not realistic for lipo cells. In fact in the project oXs, I can measure 2X4 voltages that can be anything (so not only individual lipo cell). One of my friend want to get several voltages that can be e.g. 12V or more. As the voltages in the spektrum frame are define in uint16_t, it was in theory not an issue to use them to provide such high voltage. It is a "misused" of an existing spektrum frame. |
Individual Cells names is the easier change. |
Thank you. |
1. Fix processing of message 0x3A 2. Fix Temperatures to have no decimals, otherwise they will not convert correctly between C/F.
Thanks for your last firmware witch work very well. |
Maybe it's saying "sensor lost"? If it is saying it in English, are you using the English voice pack instead of the French one? |
No, all my sounds are in french :-) |
First thing will be to find out what message this is... this is the list of all the words/prasses for the french sound pack.. can you tell which one it is? There are no English phrases in that as far as I know, so it should not be saying anything in English ;) https://github.com/EdgeTX/edgetx-sdcard-sounds/blob/main/voices/fr-FR.csv If it is saying sensor lost... did you delete all your telemetry sensors and do discovery with the new firmware? Or at least delete the old lipo cell sensor and do discovery again, as perhaps the old sensor is not valid? Either way, you probably need to find out why it is saying that, as it shouldn't be happening, and is telling you there is a fault that needs fixing. |
I don't understand why i listen to an English sentence with only french sounds on my sd card :-) . I have try to delete all my sensor and discover them. I have added a lipo with the same issue . I need to investigate more. |
I have found my issue witch isn't an EdgeTx problem but a widget mahRe2 issue . Sorry :-) |
Oh, good, glad you found the culprit :)
…On Mon, 11 Mar 2024, 11:02 pm pierrotm777, ***@***.***> wrote:
I have found my issue witch isn't an EdgeTx problem but a widget mahRe2
issue .
I had forgotten to define the settings for this widget.
It's ok know.
Sorry :-)
—
Reply to this email directly, view it on GitHub
<#4715 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABJ66KNDSHEWCPAFTPKXTZTYXWTOJAVCNFSM6AAAAABEO22GHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOBYGM4TCMBTGI>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Here is the 2.9.4 + the Lipo monitor code + fix from converting Temp from unit Celsius->Fahrenheit correctly (when it has decimals). |
Thank you for your fantastic work |
Is there an existing issue for this problem?
What part of EdgeTX is the focus of this bug?
Transmitter firmware
Current Behavior
When the spektrum sensor (SRXL2) is filled with following data:
A6 80 16 21 3A 0 4 57 8 AE D 5 11 5C 7F FF 7F FF 7F FF F4 DC
The first cell should be reported as 11.11V based on 0X04 and 0X57. This is the case. So cell1 is OK
The other cells are reported with following values
cel2=677.58 (instead of 22.22 based on 0X08 0XAE)
cel3=1344.05 (instead of 33.33)
cel4=2010.52 (instead of 44.44)
cel5=2949.11 (for this the value is 7FFF which means that the value is not provided)
cel6=3604.47 (for this the value is 7FFF which means that the value is not provided)
Expected Behavior
Correct values for cell2...cell4;
Cell5 and 6 should not be displayed (because the value is 0X7FFF = not provided)
Steps To Reproduce
simulate the telemetry frame given above.
This has been tested with version 2.10.0 Rc1 Centurion
Version
Other (Please specify below)
Transmitter
RadioMaster TX16S / TX16SMK2
Operating System (OS)
No response
OS Version
No response
Anything else?
No response
The text was updated successfully, but these errors were encountered: