Open Noah0996 opened 7 months ago
Hey @Noah0996 , This has been a long awaited feature and the current status of it is "it's complicated". We have been collecting rider submissions to help make sure we can get this right. Additionally this is a hobby project so it can only be worked on when free time allows.
The underlying problem is "X voltage = Y battery percent" seems like a straight forward thing it isn't. If you are riding your voltage will dip, if you go over a little bump the voltage may rise. If you are bombing down a hill the voltage may rise a lot. If you come to a stop does the voltage drop instantly or does it need 5 seconds or more to get to its resting voltage.
All of these things add up to battery percent fluctuating up and down which is not ideal. If this is the case how do we display to the end user that "oh hey this number is high because you are going down hill" or "you need to stop for 3 minutes to get an accurate battery reading".
Work has been done on this a long time ago. Now that we have the ride data we need to feed it through the the test app we can run on our computers. Does the work other people have done fix it? 🤷♂️ Is it still a mess and requires more work? 🤷♂️ Do different battery types need their own algorithm? 🤷♂️
It's all things that are ready to be answered, just time has unfortunately not allowed it.
On top of that, from memory FM have started removing voltage readings from apps. So now we also have to add in checking to that to be sure we can even read it in the first place. It's a whole mess, and I assure you I wish it was already resolved.
Yep this is what i expected because I am not at all knowledgeable in app creation and only slightly in one wheeling. Thank you for anything you have done working on this app and being willing to teach me a little too. -Noah
On Sat, Mar 30, 2024 at 9:22 PM Brad @.***> wrote:
Hey @Noah0996 https://github.com/Noah0996 , This has been a long awaited feature and the current status of it is "it's complicated". We have been collecting rider submissions to help make sure we can get this right. Additionally this is a hobby project so it can only be worked on when free time allows.
The underlying problem is "X voltage = Y battery percent" seems like a straight forward thing it isn't. If you are riding your voltage will dip, if you go over a little bump the voltage may rise. If you are bombing down a hill the voltage may rise a lot. If you come to a stop does the voltage drop instantly or does it need 5 seconds or more to get to its resting voltage.
All of these things add up to battery percent fluctuating up and down which is not ideal. If this is the case how do we display to the end user that "oh hey this number is high because you are going down hill" or "you need to stop for 3 minutes to get an accurate battery reading".
Work has been done on this a long time ago. Now that we have the ride data we need to feed it through the the test app we can run on our computers. Does the work other people have done fix it? 🤷♂️ Is it still a mess and requires more work? 🤷♂️ Do different battery types need their own algorithm? 🤷♂️
It's all things that are ready to be answered, just time has unfortunately not allowed it.
On top of that, from memory FM have started removing voltage readings from apps. So now we also have to add in checking to that to be sure we can even read it in the first place. It's a whole mess, and I assure you I wish it was already resolved.
— Reply to this email directly, view it on GitHub https://github.com/OnewheelCommunityEdition/OWCE_App/issues/112#issuecomment-2028531519, or unsubscribe https://github.com/notifications/unsubscribe-auth/BHOSZ6GHUHYECCYDM46Y3DLY25XQFAVCNFSM6AAAAABFPTOFWOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRYGUZTCNJRHE . You are receiving this because you were mentioned.Message ID: @.***>
I know this is a complicate scenario to get the most accurate % readings but since CBXR users are just performing conversions as we pull up the voltage number to convert it anyways, is it possible to create a toggleable feature to show % based on a user defined voltage range so we can build our own safety factor for the inaccuracies? For example, turning on the feature allows the users to input a top end voltage as 100% and a low end voltage as 0% and the code just performs a real-time calculation off of the current voltage reading in between the voltage range we defined ourselves to get us a % number? So we could define 62v as 100% and 45v as 0% and if real-time reading of the voltage is 56v, we would get a % as (56-45)/(62-45)*100 = 64.7%. Just an idea, since I think we need to transfer the risk of the converted readings to the user itself for accuracy reasons. I know we want a more refined solution long term but I think the community could benefit from a basic conversion tool instead of a perfect solution.
From what I understand even with given top end to bottom end voltage, the voltage to percent graph is not linear? Is that correct?
Do you know if users would also have to input cell size and configuration or is voltage the only metric that matters?
I think (I don't use aftermarket batteries, I will easily forget stuff if its not written down for me to reference, and electrical engineering always goes over my head, so this is based on what I remember now) we also needed the user to be able to select the battery type. Eg. CBXR, TwoX, etc. Do you know if any of the other battery stuff matters or is it just a matter of top voltage bottom voltage and done.
From memory the app was going to have a way to select the battery type from a list. If we did the above this would just be a custom setting (which could come first) which would also need a giant notice that people would have to agree to that voltage is inaccurate while riding, it is an estimate not a actual, etc etc.
It's just based on voltage. The battery info isn't as relevant from a percent standpoint because those things just determine the battery voltage total which user would be self defining using this feature. I built conversion charts using the formula I gave as an example for both onewheel and ebikes and the only thing I've noticed is that while riding the voltage will dip much lower temporarily and that's probably why we can't run the battery below a certain voltage to keep them healthy. I agree with the notice for this feature, because user would need to know what they are defining and should take responsibility of using it. If you want to be safe, we can even build in a threshold for what u can input as lowest voltage and max voltage to prevent fat fingering inputs. Let me know if you want more ideas around the safety thresholds.
From: Brad @.> Sent: Wednesday, May 15, 2024 7:02:31 PM To: OnewheelCommunityEdition/OWCE_App @.> Cc: aznrabbitz @.>; Comment @.> Subject: Re: [OnewheelCommunityEdition/OWCE_App] Accurate percentages for after market batterys (Issue #112)
From what I understand even with given top end to bottom end voltage, the voltage to percent graph is not linear? Is that correct?
Do you know if users would also have to input cell size and configuration or is voltage the only metric that matters?
I think (I don't use aftermarket batteries, I will easily forget stuff if its not written down for me to reference, and electrical engineering always goes over my head, so this is based on what I remember now) we also needed the user to be able to select the battery type. Eg. CBXR, TwoX, etc. Do you know if any of the other battery stuff matters or is it just a matter of top voltage bottom voltage and done.
From memory the app was going to have a way to select the battery type from a list. If we did the above this would just be a custom setting (which could come first) which would also need a giant notice that people would have to agree to that voltage is inaccurate while riding, it is an estimate not a actual, etc etc.
— Reply to this email directly, view it on GitHubhttps://github.com/OnewheelCommunityEdition/OWCE_App/issues/112#issuecomment-2113672119, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BIQPGT6B2PTH7H5AXKYS3CDZCPZRPAVCNFSM6AAAAABFPTOFWOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMJTGY3TEMJRHE. You are receiving this because you commented.Message ID: @.***>
The percentage provided are linked to stock voltages. This means people like me have to run a little calculation when using an aftermarket battery like my cbxr to determine the actual percentage. While I know nothing about apps is it possible to allow app users to choose there full and empty voltage and become the app already always knows the voltage it would be able to provide a percentage?? Thank you for everything you have provided the community